GNOME Bugzilla – Bug 537871
Burn speed selection does not work
Last modified: 2009-04-14 14:29:32 UTC
Using 0.7.1 under Zenwalk, any attempt to set burn speed fails. Happens on two machines (desktop and IBM T42), with slightly different symptoms. On the T42, when the burn speed selection box is clicked, it vanishes, and the only option displayed is maximum speed. On the desktop machine, selecting the burn speed results in two options, one 61x, the other 56x. The drive fitted to the machine is a 52 spin Liteon CD writer (there is also a DVD ROM installed on the primary IDE channel), so the speed selections offered are beyond the drives' capabilities. A fresh install of the operating system on the laptop results in no change - still only maximum speed available. Reverting to 0.7.1 and reinstalling Nautilus-CDburner provides all the normal speed selection options.
can you please test with brasero 0.7.90 or svn trunk ?
(In reply to comment #1) > can you please test with brasero 0.7.90 or svn trunk ? > Sorry, thought I'd added this as a comment. The problem is in the most recent release version (0.7.90), not in 0.7.1. 0.7.1 works fine on both of my machines. With Nautilus-CD burner installed or removed, 0.7.90 produces strange results. Others in the Zenwalk forum have also seen similar results. Please see this thread: http://support.zenwalk.org/viewtopic.php?f=28&t=16810 If there is any further information I can supply, please let me know. paul.
I do also have the same problem with the speed selection in the newest version form the svn trunk (0.7.91). The only two options I get is "Max speed" and "56.3 x". My drive only support 48x. (SAMSUNG DVD±R/RW/RAM DL LS 20X IDE) In the 0.7.1 version it works fine, except that the highest available speed is 55x which is not supported by my drive. (By the way, is there a particular reason why only odd speeds shows up in the list, like 7x, 9x, 11x, and not even?? )
Hi guys, Could you report what are the speeds available from nautilus-cd-burner please?
(In reply to comment #4) > Hi guys, > Could you report what are the speeds available from nautilus-cd-burner please? > On the laptop, 18x to 1x (18x is above the burner's burning capability) On the desktop, 61x to 1x (again, 61 is above the drive's burning capability) In both instances, with 0.7.90 installed, the burn speeds displayed are correct for the drive concerned. I should also mention that I don't have Gnome installed on either machine - both run Xfce as a desktop.
@Paul: you're using 0.7.1 version, please try to upgrade to 0.7.91 (should be released in the hours to come) or SVN trunk. @all reporters: please attach a log to this bug: just run "brasero -g > log 2>&1" and close the window). @Daniel: please I need nautilus-cd-burners speeds displayed.
Created attachment 114014 [details] Log file from brasero
In nautilus-cd-burner I get 56.4x, 47.0x, 37.6x, 28.2x, 18.8x. It looks like the bug is in some of the libs and not in brasero then...
Upgraded to 0.7.91 earlier today (sorry to be slow - didn't have all the deps to build it initially). On the laptop, no change - max speed is the only option available. On the desktop, two speeds are offered, neither of them within the drive's capbilities (as a burner, anyway). Reverting to 0.7.1, both drives show the correct speed selection options. Anything else I can do to help narrow the problem down? I like Brasero, but the current version doesn't work properly on any of my hardware.
My guess is that the bug is in the cdrdao lib and not in brasero. If I use the cdrdao application and check the drive information I get: >$ cdrdao drive-info --device ATAPI:0,0,0 >Cdrdao version 1.2.2 - (C) Andreas Mueller <andreas@daneb.de> > SCSI interface library - (C) Joerg Schilling > Paranoia DAE library - (C) Monty > >Check http://cdrdao.sourceforge.net/drives.html#dt for current driver tables. > >Using libscg version 'ubuntu-0.8ubuntu1' > >ATAPI:0,0,0: TSSTcorp CDDVDW SH-S202N Rev: SB01 >Using driver: Generic SCSI-3/MMC - Version 2.0 (options 0x0000) > >Maximum reading speed: 7056 kB/s >Current reading speed: 7056 kB/s >Maximum writing speed: 8468 kB/s >Current writing speed: 8468 kB/s >BurnProof supported: yes >JustLink supported: yes >JustSpeed supported: no The write speed is 8468/150=56.4533x, which is the speed reported in brasero. As far as I understand the brasero Readme-file, it should be possible to use some other plug in for writing than cdrdao. I have not managed to do that yet, but it will probably solve the problem.
Just installed 0.8.0. I'm afraid it still has exactly the same problem. On my laptop, the only burn speed that I have available is maximum. Can't try it on the desktop at the moment - that machine has a problem with burning CDs - looks as though the drive may have developed a problem.
After messing around with the brasero code I understood that cdrdao is not used to determine the write speeds available. (It still shows up when the plugin is removed) In my opinion something is strange in the "burn-get-performance.c"-file. In my previous log file there is a really interesting line: (brasero:23511): BraseroBurn-DEBUG: At scsi-get-performance.c:162: Sizes mismatch asked 24 / received 88 As far as I understand the code, brasero checks for the write speed twice, in order to allocate memory properly. Anyway, brasero receives more data the second time which is bad since the buffer is to small! Just for fun, I tried to set the buffer size to 88 hard coded in the program (request_size=88;), and in this case Brasero reports 56.3x, 46.9x, 37.5x, 28.2x, 18.8x as available write speeds. Those are close to the speeds nautilus-cd-burner reports. Anyway, my point is that the problem exists both in cdrdao, nautilus-cd-burner and brasero. Maybe due to code sharing of the mmc implementation? To solve this bug I think we should try to dump the data brasero gets from the two calls to brasero_scsi_command_issue_sync. I started to implement this, but my gnome programming skills are not good enough to complete it in a resonably short time. Can anyone please help me? @Paul: Do you also get a similar debug message as I do?
MMh, that's interesting. Your experiments gave me an idea I'll try to integrate in brasero code for 0.8.1. That is, if the size of the returned buffer mismatch the one that was queried before, then, we'll re-issue the command with this new size. That way, we'll have more speeds as you did when you hardcoded 88. There is no sharing in the mmc code since brasero's one was written from scratch. NCB's one is in fact in HAL which returns the speeds it got from the drive. cdrdao's one is probably taken from cdrecord's. That means with 3 different implementations (minus the bug in the buffer size for brasero), there are exactly the same values. The discrepancy must come from the speed factor used. It seems that the factor for your drive is not 150 but rather something around 175. 175 (175 sectors/sec) would correspond to audio speed burning. Usually drive reports with a factor of 150 which is the speed for burning data (150 sectors/sec). But at least, we've got part of the problem solved. I'll work on that in the next days.
Right, I committed two changes to trunk: - the first one changes the factor, we now use audio rates as they fit better (172.3) - with the second change if the buffer received is bigger than the one we requested, then re-issue the command with the new size so that we won't miss some speed descriptors I must apologize here since I didn't see the problem fixed by the first change. It also affected me but I was blind somehow. Please test these changes and report. Thanks a lot for your help, especially Daniel was really gave the solution to some of the problems.
Created attachment 115911 [details] New log file
We are getting closer! Your patch seems to work for my drive (see the log file) Now I can choose between 49.0x, 40.9x, 32.7x, 24.5x, 16.3x. Just another observation: k3b seems to use some other method to get the write speeds than brasero, NCB and cdrdao. It reports 16x 24x 32x 40x 48x. I also want to thank you Philippe for making such a nice application!
No problem, that's my pleasure; strange as it may look. =) I guess K3b prefers rounding the speeds. I think it's just a matter of display. I checked the code HAL uses another method but this one should be deprecated with newer drives (compared to brasero's) though it is still implemented in most drives. OK, I'm waiting for Paul's answer before I close this bug.
Another small change for your greatest pleasure. After your comment, Daniel, I checked and stumbled about another mistake: rates returned by drives are in KB (1000) and not KiB (1024) as I thought before. Using KB now as a unit, brasero returns nice 10.0 and 4.0 speeds for my CD-RW so I guess it should also return rounded values for yours too. =)
*** Bug 546622 has been marked as a duplicate of this bug. ***
Sorry to be slow. I'm not getting debug messages as mentioned - I've currently got wodim installed, maybe that makes a difference? I've also not yet been able to test the patches - subversion is broken on my box at the moment (not that I've any experience building packages from svn). Hopefully have that fixed in the next day or so, at which point I'll try a build and get back to you. If its useful, I've got the debug log from a 0.8.0 burn.
Great! Now I get 47.9x, 39.9x, 31.9x, 23.9x and 16.0x. There might be a similar issue on the burn speed displayed while burning. They are a litte bit too high.
*** Bug 542676 has been marked as a duplicate of this bug. ***
Displayed speeds are either reported by backends or are calculated based on the amount of data burnt and the time it needed, so they are not always very accurate. I'll think about it though there isn't much I can do about it.
I'm closing this bug. If it still doesn't work for you, please, reopen it. Thanks for your help.
I'm not sure if this bug has regressed (I never used to use Brasero, in favour of the nautilus burner) but as Ubuntu is phasing in Brasero as the default burning application, I need to make sure somebody hears my screams of displeasure! When I try and burn a DVD with Brasero, I'm only offered the maximum speed (12x). Other applications give me the choices 2.4x, 4x, 8x, and 12x. This usually wouldn't be a problem but I have 60-odd discs that only burn at 4x. At 12x I only get coasters. In time I plan to get a better burner but for now, I'd like to be able to force Brasero to use 4x. Any ideas? I'm on Jaunty (so Brasero 2.26.0, package 2.26.0-0ubuntu3). Here's the output of dvd+rw-mediainfo: oli@bert:~$ dvd+rw-mediainfo /dev/dvdrw INQUIRY: [PHILIPS ][PBDV1640P ][B3.4] GET [CURRENT] CONFIGURATION: Mounted Media: 11h, DVD-R Sequential Media ID: CMC MAG. AE1 Current Write Speed: 12.0x1385=16620KB/s Write Speed #0: 12.0x1385=16620KB/s Write Speed #1: 8.0x1385=11080KB/s Write Speed #2: 4.0x1385=5540KB/s Write Speed #3: 2.4x1385=3324KB/s GET [CURRENT] PERFORMANCE: Write Performance: 12.0x1385=16620KB/s@[0 -> 2298495] Speed Descriptor#0: 00/2298495 R@3.5x1385=4787KB/s W@12.0x1385=16620KB/s Speed Descriptor#1: 00/2298495 R@3.5x1385=4787KB/s W@8.0x1385=11080KB/s Speed Descriptor#2: 00/2298495 R@3.5x1385=4787KB/s W@4.0x1385=5540KB/s Speed Descriptor#3: 00/2298495 R@3.5x1385=4787KB/s W@2.4x1385=3324KB/s READ DVD STRUCTURE[#10h]: Media Book Type: 00h, DVD-ROM book [revision 0] Legacy lead-out at: 2298496*2KB=4707319808 READ DVD STRUCTURE[#0h]: Media Book Type: 25h, DVD-R book [revision 5] Last border-out at: 2045*2KB=4188160 READ DISC INFORMATION: Disc status: blank Number of Sessions: 1 State of Last Session: empty "Next" Track: 1 Number of Tracks: 1 READ TRACK INFORMATION[#1]: Track State: blank Track Start Address: 0*2KB Next Writable Address: 0*2KB Free Blocks: 2298496*2KB Track Size: 2298496*2KB READ CAPACITY: 0*2048=0 To *me* that looks like 2.4x-12x speeds *should* be available.. But what do I know? I'm just a cat.