I have dvbackup basically working. The biggest problem left are buffer underruns when the filesystem data cannot be delivered fast enough.
Thinking about the problem, I wondered, whether it would be possible to insert dummy frames when the buffer is empty and discard those frames when restoring. I assume this has to be done in dvconnect. Unfortunately, I do not know enough about the frame header format, so I don't know whether there is an unused flag field there which could be used for marking such frames, and I do not know if the frame data has to have a special format etc. so I'd like to ask the experts here.
Another option might be the creation (and discarding) of dummy frames in dvbackup, but unfortunately there is no control about the output buffer there.
Anyway, I think this would be a _very_ useful feature to have.
Any ideas?
Greetings, Swen
Logged In: YES
user_id=92512
included. Could you try the attached dvconnect version?
(Haven't tested it myself, just wrote it.)
Usage: dvconnect -u underrun-data-file
Any video frame will do since dvbackup simply skips them if
I remember it
correctly.
And don't forget to generate a simple test frame using
encodedv saying
"UNDERRUN" in large friendly letters and send it to me, so
that I can include it ;-)
Logged In: YES
user_id=169149
Ok, I have created a simple test frame using
encodedv saying "UNDERRUN" in large friendly letters. I did not yet have the time to test it, but I'll attach it anyway for testing purposes.
--Swen
simple fillup test frame
Logged In: YES
user_id=169149
I've now tested the patch. There was an error reading the underrun frame, but I have fixed this. Apart from that, it really works great, many thanks!
After fixing a bug in rsbep I now can really make relativly reliable backups.
By the way, I have made another change on dvconnect: I call setpriority to raise the scheduling priority of the process and try to use the realtime scheduler.
I will later upload my version of dvconnect and the rsbep patch.
Fix for rsbep
working with underrun frames and setpriority