ping111
Posts: 1
Joined: Wed Jan 14, 2015 1:39 pm

Raspberry Pi as 1080i50 H264 network stream player

Wed Jan 14, 2015 2:24 pm

I have a specific task to make a video player/decoder of a DVB-compliant stream (UDP/RTP). Video format is 1080i50 (note – interlaced!) and it should be output “as is”, without any deinterlacing. Decoding and display latency should be as low as possible. This particular stream uses only I- and P- frames, they come in display order so (theoretically) one frame delay could be achieved. Network buffering is also not needed because it’s fast dedicated LAN.

Evidently BCM2835 could do that provided right software exists. Forum search points to omxplayer as the only (?) one capable of hardware H.264 decoding.

I have configured HDMI output for 1080i50 mode by changing /boot/config.txt file and run

Code: Select all

omxplayer --nodeinterlace -y udp://@:1234
Video is decoded all right but doesn’t seem to be always in sync with HDMI – field order is wrong sometimes. Some older forum post mentions this problem but no solution is given. Is there any way to get interlaced video working in sync with interlaced HDMI?

Also, the delay is quite significant. I have experimented with --video_fifo and --video_queue options but they don’t seem to have any effect. Is there any way to control buffering?

Thanks a lot!

Deborah
Posts: 4
Joined: Mon Dec 10, 2012 12:32 pm

Re: Raspberry Pi as 1080i50 H264 network stream player

Sun Mar 01, 2015 11:07 pm

There are some controls provided by the video decoder firmware (although I'd have to check whether the API files are provided in the Pi's distributions) intended for reducing latency; on the other hand, the decoder is generally pretty good at doing so for itself, most of the time. The exception is when you have an H.264 stream that doesn't provide the VUI in the SPS (or omits the Bitstream Restriction section from it); in this case, the decoder doesn't necessarily know that there's no reordering possible.

What sort of latency are you seeing at the moment? How is your stream coded?

Return to “Graphics, sound and multimedia”