Невозможно указать параметры для cvlc в скрипте

4058
VxJasonxV

Я создаю сценарий, который выдает несколько команд curl, чтобы получить доступ к защищенной по времени ссылке на поток mms, а затем настраиваю ретранслятор, используя cvlc (интерфейс командной строки vlc), для собственного использования на незагруженном проигрывателе.

Это работает с помощью функции curl, так как я могу работать как браузер и свернуться бок о бок и получить тот же URL-адрес доступа. (Это время ограничено, что означает, что поток будет работать вечно, но вам нужно быстро подключиться, иначе срок действия URL истечет.)

В самом конце скрипта выводится команда, которую я буду запускать, после чего следует «exec $ CMD».

Когда я повторяю $ CMD, я получаю:
cvlc --sout '#standard' mms://[...]

Копирование / вставка этой команды вручную, дословно, прекрасно работает, но как часть скрипта вывод выполнения cvlc говорит:

[0x9743d0] ошибка основного интерфейса: нет подходящего интерфейсного модуля
[0x962120] основная ошибка libvlc: интерфейс «globalhotkeys, none» не удалось инициализировать
[0x9743d0] фиктивный интерфейс: используется фиктивный интерфейсный модуль ...
[0xb16e30] stream_out_standard ошибка потока: нет мультиплексора указан или найден расширением
[0xb16ad0] ошибка вывода основного потока: сбой цепочки потоков для `standard '"}'
[0xb11cd0] ошибка основного входа: невозможно запустить экземпляр потока вывода, прерывание
ошибки интерфейса [0xb11f70] сигналов: Пойман сигнал прерывания, выход ...

Почему --sout ведет себя в сценарии односторонне (неинтерактивная оболочка?) По сравнению с другим способом на переднем плане (интерактивная оболочка)?

0

1 ответ на вопрос

2
harrymc

Поток Invoking VLC из скрипта имеет такой забавный ответ в конце:

Хорошо, я исправил это. Эксперимент показал, что ответ таков:

#!/bin/bash VLCCMD="cvlc source.mp3 --sout "#duplicate}"" echo VLC Command:$VLCCMD $VLCCMD 

В моем исходном сценарии есть два изменения:

  • удалить двойные кавычки из имени файла MP3
  • измените одинарную кавычку вокруг #duplicate на двойную кавычку
Хммм. Но эти внутренние двойные кавычки не ушли ... VxJasonxV 13 лет назад 0
СВЯТОЙ Хлопок это работает. ... СВЯТОЙ ХЛОПОК ........ почему это работает? O_o. Щедрость вся ваша .......... через 18 часов. VxJasonxV 13 лет назад 0
Это, вероятно, ошибка в разборе параметров cvlc. Вы можете сообщить об этом на [VideoLAN Forums] (http://forum.videolan.org/). harrymc 13 лет назад 0

Похожие вопросы