Gerd Knorr wrote:
Is there a simple programmatic way to retreive data from /dev/vbi
regardless of what is happening on /dev/video
It just works ...
Is this something that depends on a certain version of bttv?
I am using the stock bttv from kernel 2.4.18.
The README in the ccdecoder code says:
"To use the decoder the bttv card must be active, meaning that xawtv,
kwintv, or similar must be running".
It seems to follow that behaviour, as long as a TV app or encoder is
reading /dev/video then vbi data flows in.
I am using some example code I found on the net (called ccdecoder,
I think it's now abandonware) but it requires that another application
be using /dev/video for characters to appear on /dev/vbi.
Shouldn't happen. Which driver is this? Maybe it is just the fact
that you have to tune some station before you get any usable data on
/dev/vbi?
I am using the Ituner quad-bttv card, which doesn't have any tuners
on it. I can also start ccdecoder and start and stop xawtv or similar,
and the captions flow or don't flow right on cue.
I'm fine with this, except I run into loading issues, where the
encoder running on /dev/video will drop frames, and then the
characters in the captions for those frames are also lost.
That shouldn't happen, the video + vbi streams are not linked in a way
that video frame drops also mean vbi frame drops. Unless the frame
drops happen due to input bad signal of course ...
The input signal SHOULD be solid, I have no technical way of testing,
but I am using a satellite receiver on a short composite cable and the
video is very clear otherwise.
It also has strong ties in time to system loading, ie: I can make it
happen by doing something that eats CPU/disk for a period of time, like
gunzipping a file or copying a large video file around.
Of note, if I use ffmpeg set to 10 frames per second, the vbi data is
extremely hacked up, I beleive because ffmpeg is only reading 10fps from
the video device so I am only getting the characters from those frames.
If I use ffmpegrec, it works fine except under load. I strongly
suspect that what is happening is that ffmpegrec is falling behind, not
reading a frame because it has fallen far behind, and characters in that
frame are being lost.
Since I have the quad-bttv card, I'd like to be able to do this
process four times at the same time. However, loading becomes an issue,
and captions that are perfect at 1 video stream become noticeably
affected at 4 streams... :<
--
Trevor Boicey, P. Eng.
Ottawa, Canada, tboicey@xxxxxxx
ICQ #17432933 http://www.brit.ca/~tboicey/
"I wouldn't take that down, it's a load-bearing poster..." - Bart