2016-09-21 2 views
1

Я пытаюсь запустить одно из приложений примера qt без каких-либо изменений. Он называется player, и это демонстрация мультимедийного виджета. Моя система Ubuntu 16.04 64bit. Когда я пытаюсь воспроизвести видео, я вижу следующее сообщение об ошибке в консоли:Отсутствует декодер для типа 'video/x-h264

No decoder available for type 'video/x-h264

Вот полный ошибка после попытки двух различных видео:

Starting /home/aras/Qt5.7.0_Sept2016/Examples/Qt-5.7/multimediawidgets/build-player-Sept2016-Debug/player... 
Warning: "No decoder available for type 'video/x-h264, stream-format=(string)avc, alignment=(string)au, level=(string)3, profile=(string)constrained-baseline, codec_data=(buffer)0142e01eff0100192742e01ea9101405ff2e00d418041adb7a00f480f55ef7c04001000428de09c8, width=(int)640, height=(int)360, framerate=(fraction)2997/125, pixel-aspect-ratio=(fraction)1/1'." 
Warning: "No decoder available for type 'video/x-h264, stream-format=(string)avc, alignment=(string)au, level=(string)3, profile=(string)constrained-baseline, codec_data=(buffer)0142e01eff0100192742e01ea9101405ff2e00d418041adb7a00f480f55ef7c04001000428de09c8, width=(int)640, height=(int)360, framerate=(fraction)2997/125, pixel-aspect-ratio=(fraction)1/1'." 
Warning: "No decoder available for type 'video/x-h264, stream-format=(string)avc, pixel-aspect-ratio=(fraction)1/1, width=(int)1280, height=(int)720, framerate=(fraction)601600/10033'." 

У меня есть довольно много каждый пакет удаленно связан с установкой gstreamer. Когда я бегу gst-inspect-1.0 Я получаю много продукции и последняя строка:

Total count: 241 plugins (1 blacklist entry not shown), 1388 features

~$ gst-inspect-1.0 |grep x-h264 
typefindfunctions: video/x-h264: h264, x264, 264 

:~$ gst-inspect-1.0 avdec_h264 
Factory Details: 
    Rank      primary (256) 
    Long-name    libav H.264/AVC/MPEG-4 AVC/MPEG-4 part 10 decoder 
    Klass     Codec/Decoder/Video 
    Description    libav h264 decoder 

Так что мне кажется, что все установлено правильно. Как получилось, что мультимедийный пример Qt не работает из коробки?

+0

вы используете Qt GStreamer, как указано здесь: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/qt-gstreamer/html/? –

+0

возможно, у вас есть более 1 gstreamer установок в вашей системе? Ваше приложение qt может быть связано с другим. – soupybionics

+0

или у вас неправильный путь в GST_PLUGIN_PATH (установите его в переменных окружения QtCreator в настройках проекта или .pro) .. проверьте [this] (https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html /gst-running.html) – nayana

ответ

1

В вас интерфейсе командной строки, выполните:

ldd /home/aras/Qt5.7.0_Sept2016/Examples/Qt-5.7/multimediawidgets/build-player-Sept2016-Debug/player 
ldd echo $(which gst-inspect-1.0) 

Посмотрите на линию, которые ссылаются GStreamer, например:

libgstreamer-1.0.so.0 => /USR/Библиотека/x86_64-Linux-гну/libgstreamer-1.0.so.0

Если линии, относящиеся к GStreamer не одинаковы на обоих результатов команды, вы можете иметь несколько GStre amer. Затем попробуйте указать новую переменную окружения LD_LIBRARY_PATH (DYLD_LIBRARY_PATH, если вы запустите OS-X), которая указывает только на каталог, в котором libgstreamer-1.0.so.0 находится за вторым результатом GStreamer ldd (дано ldd echo $(which gst-inspect-1.0)).

Например, запустите:

export LD_LIBRARY_PATH="/usr/local/lib:/usr/lib" 
Смежные вопросы