dvgrab issue

Hi there,
I am using dvgrab to dump video to disk and stream it to an RTMP server at the same time like this:

dvgrab -f dv1 - | tee dump.dv | avconv ... rtmp://server/feed

However, I am having intermittent problems in that I am getting an error that reads "Buffer underrun. This means that frames could not be written fast enough."

This happens sometimes several times in a day, and other days it doesn't happen at all.

When it does happens, it tends to cluster together and happen repeatedly for about 10-15 seconds and then the capture and stream continue, or sometimes it dies and I have to restart it. This is bad because it breaks the live stream for viewers and it also creates breakages in our captured footage.

We are doing this on an i7 laptop with 8gb ram running Xubuntu Linux with no other processes running at all. The laptop is dedicated to video capture and streaming. I initially thought that it would be due to the hardware not being sufficient for the task, however we were running it on a Core2Duo based laptop with 2gb RAM until 2 weeks ago, and after upgrading to the i7/8GB there has been no change in the frequency of the occurrence.

It happens when using either of our two laptops and with any of our collection of 5 cameras, which are 3x Canon HV30 and 2x Canon XH-A1s.

It has also happened with Xubuntu prior to and since the replaced firewire stack. Currently we are using the latest Xubuntu (12.10).

I don't know what else I can try to prevent this from happening. It does not seem to be related to the hardware's capability, nor does it seem to be related to a faulty camera, nor does it seem to be related to a specific camera model.

What else can I try to make this problem go away?

Looks like some high priority task kicks in every while. Maybe try to watch "top" in a console to see what task it is (it will probably jump to the top of the list, while overruns happen).

In my experience, the worst offender against real time performance was "Beagle", that is some strange indexing stuff that come enablad by default in the system - and it was preety HARD to get rid of!
It's more recent cousins are "akonadi" and "nepomuk", similar computer brakes nobody needs!



Otherwise, you could try to raise the priority of dvgrab, and set it for a more real-timish scheduling.
Locking it into memory to avoid swapping might also help.

On the other hand, decreasng the "nice" value does not seem to help much.