В настоящее время я использую MPlayer в подчиненном режиме для видеоплеера, который я создаю.
На данный момент медиаплеер показывает ==== PAUSED ====
, когда он приостановлен, и я могу прочитать вывод для этого статуса, чтобы узнать, когда видео приостановлено.
Аргумент командной строки, который я сейчас использую, — msglevel identify=6:statusline=-1
(я отключил строку состояния, так как она выдает A: 0.7 V: 0.6 A-V: 0.068 ...
и ненужные вещи)
Что мне нужно, чтобы установить msglevel (или что-то еще), чтобы он также отображал ==== PLAYING ====
или какие-либо признаки того, что он начал воспроизведение, остановился, мультимедиа закончился, загрузился и т. д.?
Заставить MPlayer отображать все сообщения об изменении состояния воспроизведения на выходе
Ответы (2)
Я узнал, как получить, если видео приостановлено.
Отправив команду pausing_keep_force get_property pause
в mplayer, он ответит ANS_pause=no
, если не приостановлено, и ANS_pause=yes
, если приостановлено. Проблема решена.
mplayer myfile.mp3 > /tmp/mplayerDump
- person b_laoshi; 19.11.2018
Основываясь на том, что я могу расшифровать из ответа ОП на его / ее собственный вопрос, он / она искал способ определить, был ли mplayer приостановлен или воспроизведен. Я написал небольшой сценарий bash, который может справиться с этой задачей с помощью нескольких простых вызовов функций.
На самом деле вы можете проверить последние пару строк вывода mplayer, чтобы увидеть, не приостановлен ли mplayer. Я собрал небольшую библиотеку bash, которую можно использовать для запроса информации о статусе mplayer. Загляните на мой GitHub. Есть инструкции по интеграции моего скрипта с другими bash-скриптами.
Если вы реализуете мой скрипт, вам нужно будет воспроизвести свой медиафайл с помощью функции playMediaFile
. Затем вы можете просто вызвать функцию isPaused
как условие в bash следующим образом:
if isPaused; then
# do something
fi
# or
if ! isPaused; then
# do something
fi
# or
ifPaused && #do something