Рейтинг:1

Как использовать GStreamer для воспроизведения видео в формате mp4?

флаг us

Я хочу использовать GStreamer на Ubuntu 21.04. Вот что я пытался:

user@host:~$ gst-launch-1.0 -v playbin uri=file:///home/user/thisVideo.mp4
Установка конвейера в состояние ПРИОСТАНОВЛЕН...
Трубопровод ПРОКАЧИВАЕТСЯ...
/GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: максимальный размер кольцевого буфера = 0
/GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: размер буфера = -1
/GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: продолжительность буфера = -1
/GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: использование-буферизации = ложь
/GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: загрузка = ложь
/GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: uri = файл:///home/user/thisVideo.mp4
/GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: скорость соединения = 0
/GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: источник = "\(GstFileSrc\)\ источник"
/GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstTypeFindElement:typefind.GstPad:src: caps = video/quicktime, variant=(string)iso
Отсутствует элемент: демультиплексор Quicktime
ВНИМАНИЕ: из элемента /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: декодер недоступен для типа 'video/quicktime, variant=(string)iso'.
Дополнительная отладочная информация:
gsturidecodebin.c(921): unknown_type_cb (): /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0
ОШИБКА: из элемента /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: в вашей установке GStreamer отсутствует подключаемый модуль.
Дополнительная отладочная информация:
gsturidecodebin.c(988): no_more_pads_full (): /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0:
не найдено подходящих плагинов:
gstdecodebin2.c(4640): gst_decode_bin_expose (): /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0:
не найдено подходящих плагинов:
Отсутствует декодер: Quicktime (video/quicktime, variant=(string)iso)

ОШИБКА: конвейер не хочет выполнять предварительную прокрутку.
Установка конвейера в NULL...
Освобождение трубопровода...

Я думаю, что этот вывод означает, что демультиплексор Quicktime не установлен в моей системе. Может кто-нибудь сказать мне, что я должен сделать, чтобы воспроизвести это видео в GStreamer?

РЕДАКТИРОВАТЬ: Мне приходит в голову, что проблема гораздо глубже, чем просто отсутствие декодера. Вместо этого кажется, что мне не хватает всех декодеров. Я пытался применить GStreamer к различным файлам разных форматов, но постоянно получаю сообщения о том, что «отсутствует декодер». Вот еще один пример:

пользователь@хост:~$ gst-play-1.0 /home/user/someAudio.flac
Нажмите «k», чтобы увидеть список сочетаний клавиш.
Сейчас играет /home/user/someAudio.flac
ВНИМАНИЕ Декодер не доступен для типа 'audio/x-flac'.
ВНИМАНИЕ отладочная информация: gturidecodebin.c(921): unknown_type_cb (): /GstPlayBin:playbin/GstURIDecodeBin:uridecodebin0
ОШИБКА В вашей установке GStreamer отсутствует подключаемый модуль. для файла:///home/user/someAudio.flac
Информация об отладке ОШИБКИ: gsturidecodebin.c(988): no_more_pads_full (): /GstPlayBin:playbin/GstURIDecodeBin:uridecodebin0:
не найдено подходящих плагинов:
gstdecodebin2.c(4640): gst_decode_bin_expose (): /GstPlayBin:playbin/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0:
не найдено подходящих плагинов:
Отсутствует декодер: бесплатный аудиокодек без потерь (FLAC) (audio/x-flac)

Достигнут конец списка воспроизведения.

Поэтому я думаю, что проблема будет решена, когда я сделаю все распространенные декодеры доступными для моей системы.Но как это сделать?

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.