I'm trying to run multiple omxplayer instances but I noticed a problem that only happens when output is set to "omx:hdmi" that probably relates to some shared state in omx components or firmware.
The following commands starts two omxplayer instances with two video side by side, you should run each command in a separate shell:
Code: Select all
omxplayer --video_fifo 8.0 --video_queue 1.0 --audio_fifo 1.0 --audio_queue 0.2 --stats -o hdmi --win 0,0,640,360 video_test1.mp4
Code: Select all
omxplayer --video_fifo 8.0 --video_queue 1.0 --audio_fifo 1.0 --audio_queue 0.2 --stats -o hdmi --win 640,0,1280,360 video_test2.mp4
Don't mind about video and audio buffer values I put in the omxplayer command line, they are just there to let the issue appear sooner. Also you can use any video you like, also the same video for both instances.
This doesn't happen if you force analog output changing -o hdmi with -o local
My test setup is a raspberry pi 2, just updated to latest firmware and kernel:
Code: Select all
pi@raspberrypi2 ~ $ uname -a
Linux raspberrypi2 4.4.44-v7+ #950 SMP Sun Jan 22 16:20:42 GMT 2017 armv7l GNU/Linux
pi@raspberrypi2 ~ $ vcgencmd version
Jan 25 2017 17:47:56
Copyright (c) 2012 Broadcom
version 11c16e89c0310830518e3d64cce7e9c2c3804e3a (clean) (release)
Code: Select all
pi@raspberrypi ~ $ uname -a
Linux raspberrypi 4.1.6+ #812 PREEMPT Thu Sep 10 11:27:23 BST 2015 armv6l GNU/Linux
pi@raspberrypi ~ $ vcgencmd version
Sep 9 2015 22:58:39
Copyright (c) 2012 Broadcom
version de72f07669414925f3fde745fb860bc5d4d193d8 (clean) (release)