[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#301136: Bug#301139: Acknowledgement (option to reduce "last chance to quit" delay before burning)



I am finally getting around to sending in this patch which adds the
enhancement I suggested.  It will also fix bug#301136.

Lorenzo
-- 
The mind is its own place, and in itself
Can make a Heav'n of Hell, a Hell of Heav'n.
		-- John Milton
diff -uprN burn-0.4.3/burn burn-0.4.3-patched/burn
--- burn-0.4.3/burn	2005-03-21 17:07:32.000000000 -0500
+++ burn-0.4.3-patched/burn	2006-08-15 13:02:02.000000000 -0400
@@ -404,6 +404,8 @@ class CDROM:
 	driver = config.get('CD-writer','driver')
 	source_driver = config.get('CD-reader','driver')
 	burnfree = config.get('CD-writer','burnfree')
+	sao = config.get('CD-writer','sao')
+	gracetime = config.get('CD-writer','gracetime')
 	
 	def compute_media_size(self):
 		if config.get('Media','media-check') == 'yes':
@@ -479,6 +481,14 @@ class CDROM:
 		#for the ones who have buffer underrun protection
 		if self.burnfree:
 			self.cdrecord_line_append('driveropts=burnfree ')
+		#set write mode: TAO (track at once) or SAO (session at once)
+		if self.sao:
+			self.cdrecord_line_append('-sao ')
+		else:
+			self.cdrecord_line_append('-tao ')
+		#the amount of time cdrecord waits before burning
+		if self.gracetime:
+			self.cdrecord_line_append('gracetime=' + self.gracetime + ' ')
 		#enable multisession
 		if options.multisession:
 			self.cdrecord_line_append('-multi ')
diff -uprN burn-0.4.3/burn-configure burn-0.4.3-patched/burn-configure
--- burn-0.4.3/burn-configure	2004-12-13 13:51:08.000000000 -0500
+++ burn-0.4.3-patched/burn-configure	2006-08-15 13:32:17.000000000 -0400
@@ -279,6 +279,34 @@ if 'CD-writer' in cs:
 			if brnfr  in no:
 				config.set(section, 'burnfree', brnfr)
 				break
+	if 'sao' in options:
+		print
+		current = config.get(section, 'sao')
+		print _('Do you want cdrecord to burn in session-at-once mode (sao)?')
+		print _('\tThis allows gapless recording of audio tracks and works around the readahead')
+		print _('\tbug on GNU/Linux systems.')
+		while 1:
+			sssntnc = ask_value('yes/no', current)
+			if sssntnc == '':
+				break
+			if sssntnc  in yes:
+				config.set(section, 'sao', sssntnc)
+				break
+			if sssntnc  in no:
+				config.set(section, 'sao', sssntnc)
+				break
+	if 'gracetime' in options:
+		print
+		current = config.get(section, 'gracetime')
+		print _('How long should cdrecord wait before burning?')
+		print _('\tNote that cdrecord always waits at least 2 to 3 seconds.')
+		while 1:
+			grctm = ask_value('gracetime', current)
+			if grctm == '':
+				break
+			else:
+				config.set(section, 'gracetime', grctm)
+				break
 if 'CD-reader' in cs:
 	section = 'CD-reader'
 	print
diff -uprN burn-0.4.3/burn.conf burn-0.4.3-patched/burn.conf
--- burn-0.4.3/burn.conf	2005-03-16 14:39:07.000000000 -0500
+++ burn-0.4.3-patched/burn.conf	2006-08-15 13:40:01.000000000 -0400
@@ -42,6 +42,10 @@ driver: generic-mmc
 #Buffer Underrun Free writing support (yes/no)
 #If your unit supports Buffer Underrun Free writing support say yes.
 burnfree: yes
+# Enable this if you want to burn in session-at-once (also called disc-at-once) mode
+sao: yes
+# the amount of time in seconds cdrecord should display the `last chance to quit' message
+gracetime: 3
 
 [CD-reader]
 # this device should have the same CD-writer value if you only have one CD unit.
diff -uprN burn-0.4.3/burn.conf-dist burn-0.4.3-patched/burn.conf-dist
--- burn-0.4.3/burn.conf-dist	2004-04-26 17:08:38.000000000 -0400
+++ burn-0.4.3-patched/burn.conf-dist	2006-08-15 13:56:50.000000000 -0400
@@ -42,6 +42,10 @@ driver: generic-mmc
 #Buffer Underrun Free writing support (yes/no)
 #If your unit supports Buffer Underrun Free writing support say yes.
 burnfree: yes
+# Enable this if you want cdrecord to burn in session-at-once (also called disc-at-once) mode
+sao: no
+# The amount of time in seconds cdrecord should display the `last chance to quit' message
+gracetime: 10
 
 [CD-reader]
 # this device should have the same CD-writer value if you only have one CD unit.

Reply to: