Explain to me Nero's "read buffer"

iamtrout

Diamond Member
Nov 21, 2001
3,001
1
0
I have two NEC ND-3520s. I'm copying DVDs on the fly using Nero. These discs are already fully decrypted, so my burner should be able to rip them at a very high rate (~8x).

Every now and then the ripping drive experiences a hiccup and the read rate drops below the burning rate (6x), upon which the "used read buffer" level starts to drop, goes to zero, the burner's buffer level drops, goes to zero, and burning pauses while both buffers fill up again.

My question is why?

I say that as long as the time it takes to rip a whole DVD is below the time it takes to burn a whole DVD, there should NEVER be any buffer underruns.

I'm thinking that Nero's read buffer is very small, and it's not utilizing the rip speed of the ripper efficiently.

Wouldn't it be better if:

Pseudo On-the-fly method:

The ripper starts ripping to the hard drive, creating an incomplete image.
The burner at the same time starts to write from this incomplete image on the hard drive.
Once the ripper is done ripping the whole DVD, it can stop. It's work is done.
The burner finishes burning the image file.
Image file is delete.

Wouldn't this in essence be mimicing traditional on the fly, with the added benefit of the HDD acting as a huge buffer? As far as I can tell, as long as the final rip time is lower than the final write time there should be no buffer underruns.

I often notice from just ripping a DVD that it sometimes hits 10x for extended amounts of time, but on the same disc it also sometimes hits lows of 4X or 3X. The fact that Nero buffer underruns at those 4X spots tells me that it's not utilizing those periods of 10x efficiently, that it's not storing all the information that could be had in that 10x period in its buffer.

Comments? Any programs that actually do the HDD temp image thing that I stated above? Am I flat out wrong?
 

FreemanHL2

Member
Dec 20, 2004
33
0
0
well buffers are just basicly temporary storage while burning... Usually they do not slow down unless your cpu is somehow prevented from processing the data faster than the DVD is burning... but that SHOULD cause a buffer underun.

It is perculiar... but if you hit 10x then it just looks like its going up and down rather than just slow...
 

iamtrout

Diamond Member
Nov 21, 2001
3,001
1
0
No, it's not the CPU. It's a limit on the RAM buffer size that the burning software imposes on the user. Nero limits it to 80MB. Alcohol 120% limits it to 128MB. PlexTools limits it to 40% of your FREE memory.

Why use RAM anyway? Users with multiple hard drives should have an option to use a secondary HDD for the buffer. It's not like DVD writing requires the high speed of RAM anyway.
 

Calin

Diamond Member
Apr 9, 2001
3,112
0
0
Nero's buffer is around 80 MB of RAM. If you write DVD at 4x (5MB/s) it will last 16 seconds. You could use a rotating buffer on the hard disk, but I don't think many hard drives have the capacity to read 5MB/s from a place, write 5 MB/s to another place, and in the same time serve other read/write requests from other programs or from the operating system.
My 7200rpm 40GB 2MB buffer Seagate drive is hardly able to read 5.5 MB/s consistently AND serve other programs' need for disk access. Starting Firefox while burning DVDs takes like 30 seconds, while usually starts in 2-3 seconds
 

Calin

Diamond Member
Apr 9, 2001
3,112
0
0
I see you have 1GB of RAM. I agree Nero could use half of it for buffering, so it could last up to one minute and a half of no reading from a full buffer, with no inputs
 

iamtrout

Diamond Member
Nov 21, 2001
3,001
1
0
I understand that the primary HDD probably wouldn't be a good idea for use as the buffer, but when I burn I have at least one HDD that is not being used at all. I'm pretty sure that it could write an image and at the same time read from it to the burning program.

The read and write heads are seperate and independent of each other, right?
 

itachi

Senior member
Aug 17, 2004
390
0
0
i don't think it's nero or nero's buffer that's causing the problem.. you probably have both devices on the same channel (or you have one on the same channel as your hd). with ide.. on a single channel, only one transaction is allowed at any instance.. so if you're reading from the master/slave.. you can't write to the slave/master at the same time. considering the physical limitations of dvd media for read and write is 16x.. by running them on the same bus you increase the chances of saturating the bus significantly, leaving you with little to no headroom. in the latter case, you're mixing 2 different protocols.. atapi and ata, which don't mix well considering atapi's complexity.

no, the read/write heads aren't independent of one another.. they're both the same head. when writing, it emits a magnetic flux.. when reading, the changing magnetic field (relative to the head) for an arbitrary point x induces a charge.
 

iamtrout

Diamond Member
Nov 21, 2001
3,001
1
0
I do not have them on the same channel. One is IDE. The other is USB. The burner is the USB, the ripper is the IDE.
 

Calin

Diamond Member
Apr 9, 2001
3,112
0
0
The same heads in a hard drive are used for either reading or writing. (and all the heads are moved simultaneously)
 

imported_BikeDude

Senior member
May 12, 2004
357
1
0
Originally posted by: iamtroutI do not have them on the same channel. One is IDE. The other is USB.

But Nero doesn't necessarily know that. The majority of systems use EIDE and many of them would put an extra hard drive on the same channel as the DVD writer.

Perhaps that's also the reason for the small buffer -- if Nero were to allocate more virtual memory, there's a bigger chance the buffer might be paged out to a drive. Of course, keeping an eye on the available memory counter is a good strategy in that case. But what should the software do if available memory suddenly drops?

Where's your DVD reader? Is it on the other EIDE channel?

The DVDs you rip -- are they single layer DVDs, or do the slowdown occur during layer transitions? If not, perhaps you should try a different DVD reader? (or rip from cleaner DVDs)