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!