VL C Есть ли успех с Dynami c Overlays? - PullRequest
0 голосов
/ 06 мая 2020

У кого-нибудь были успехи с наложениями Dynami c?

Я пытаюсь запустить тестовую программу (overlay-test) на ubuntu. Запускаю вот так:

Creating shared memory for RGBA... done, ID is 2490401. Text... done, ID is 2523170
Attaching shared memory for RGBA... done. Text... done
Queueing shared memory for destruction, RGBA... done. Text... done
Generating data... done
Making FIFOs... done
Please make sure vlc is running.
You should append parameters similar to the following:
--sub-source overlay{input=/tmp/fifoin,output=/tmp/fifoout}

и вроде там виснет. Он создает два FIFO:

xyz@norman:~/code/vlc_prep/test$ ls -l /tmp
total 44
-rw------- 1 norman  norman     0 May  4 21:49 config-err-a7lNcJ
prwx------ 1 norman  norman     0 May  5 21:40 fifoin
prwx------ 1 norman  norman     0 May  5 21:40 fifoout

Когда я запускаю vl c, журнал показывает это:

norman@norman:~/code/vlc3/vlc-3.0.8$ ./vlc --sub-source overlay{input=/tmp/fifoin,output=/tmp/fifoout}
VLC media player 3.0.8 Vetinari (revision 3.0.8-0-gf350b6b5a7)
[00005602ac97c820] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
[00007f8900001670] filesystem stream error: cannot open file /home/xyz/code/vlc3/vlc-3.0.8/overlayoutput=/tmp/fifoout (No such file or directory)
QObject::~QObject: Timers cannot be stopped from another thread

И всплывает окно с этим внутри:

Your input can't be opened:
VLC is unable to open the MRL 'file:///home/norman/code/vlc3/vlc-3.0.8/overlayoutput%3D/tmp/fifoout'. Check the log for details.

Похоже, что vl c ожидает, что файлы будут в одном месте (подкаталог overlayoutput, из которого вы запускаете vl c?), Но overlay-test принимает явные имена файлов (и создает фифос там). vl c также искажает (или как-то неправильно разбирает) имена. (Он пытается использовать для входного файла спецификацию имени выходного файла.)

Даже если я искажаю имена файлов, чтобы они совпадали:

 norman@norman:~/code/vlc_prep/test$ ./overlay-test /tmp/fifoin ../../vlc3/vlc-3.0.8/overlayoutput=/fifoout

 norman@norman:~/code/vlc3/vlc-3.0.8$ ./vlc --sub-source overlay{input=/tmp/fifoin,output=/fifoout}

Я не получаю всплывающее окно ошибка, но я получаю это в журнале:

[00007ff100c4e860] main subpicture error: Failed to create sub source 'overlayinput=/tmp/fifoin'
[00007ff100c4e860] main subpicture error: Failed to append 'overlayinput=/tmp/fifoin' to chain

хотя фифос существует, принадлежит запущенному пользователю и находится в режиме 777.

Что я здесь делаю не так? Заранее благодарим за любую помощь, которую можно оказать.

...