LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Hardware (https://www.linuxquestions.org/questions/linux-hardware-18/)
-   -   Current state of video/audio IN/OUT devices? (https://www.linuxquestions.org/questions/linux-hardware-18/current-state-of-video-audio-in-out-devices-931814/)

Skaperen 02-28-2012 05:38 PM

Current state of video/audio IN/OUT devices?
 
Something I saw a couple days ago on TV got me thinking, again, about what might be available in video/audio stream in/out devices for Linux. This would need to include support for the full range of formats from standard definition to high definition (I don't yet need cinema formats like 4096x1728). I'm think just broadcast and cablecast formats for now.

I have seen a board that presumably had Linux drivers available which supported SDI-SD/HD interconnects. But it did not compress the video coming in. So the system would have to support recording and playing back video at full HD uncompressed rates, which means a data rate of over 233MB/sec a 4:4:4 sampling in the highest broadcast format (though it would certainly get quite compressed before going out of the air or cable).

I'm more interested in something that compresses incoming video with a GOP size of 1 (e.g. only I-frames, or MJPEG, etc). And of course it would have to play back the same format. Multiple (choice) formats would be a plus. Connections for SDI-SD/HD would be preferred, but component analog could be usable as could HDMI (there are converter devices available for many of these).

What I want to get out of this is a stream which can be sliced up into individual frames at the video frame rate. Then I would write software to gather those frames up in a different sequence, and play them back out in a stream. It would be a big plus if there is also software available to encode and decode the format(s) used, so I could augment this video with some processing of it.

Audio would need to come along with it. If the audio is in a separate stream on the inside, it would needs a reliable syncronization scheme. I have found that a sampling rate of exactly 120 kHz happens to exactly hit the frame rates of all world video broadcast standards at some whole integer division. For example, North American NTSC frame rate of 29.9700(repeating) is 120000/4004. PAL would be 120000/4800. So a usable sync scheme would be to label each chunk of video and audio data with a 120 kHz timing point value. If the actual audio stream is converted to a sample rate of 120 kHz, a whole number of samples could be matched to a whole video frame.

"Gen-lock" synchronization of output is essential to avoid any frame drops or dups (I've seen this on TV broadcasts and it makes it bad). The input could be used to do this as the gen-lock source. or a separate gen-lock input would be better.

Ideally this would be a PCIe card. Compressed should work on a 1x.

Don't confuse this with "graphics" as in the desktop windowing sense. This is NOT about video graphics displays. This is about audio/video streaming (in and out), like might be used in a broadcaster production or editing facility.


All times are GMT -5. The time now is 08:12 PM.