Надлежащая установка gstreamer1.0-vaapi

Парни Okey здесь являются моей проблемой в течение прошлых нескольких недель, я пытаюсь использовать vaapi. У меня есть процессор intel i5 (Уэйленд), который поддерживает vaapi, но по некоторой странной причине я не могу сделать его работающий, также я выполняю 14,10 64-разрядных версий.

Список установленных пакетов dpkg --get-selections | grep va:

gstreamer1.0-vaapi:amd64            install
i965-va-driver:amd64                install
i965-va-driver-dbg:amd64            install
libva-dev:amd64                     install
libva-drm1:amd64                    install
libva-egl1:amd64                    install
libva-glx1:amd64                    install
libva-intel-vaapi-driver            install
libva-tpi1:amd64                    install
libva-wayland1:amd64                install
libva-x11-1:amd64                   install
libva1:amd64                        install
libvdpau-va-gl1:amd64               install
libgstreamer-vaapi1.0-0:amd64       install
libgstreamer-vaapi1.0-dev           install
libavahi-client3:amd64              install
libavahi-client3:i386               install
libavahi-common-data:amd64          install
libavahi-common-data:i386           install
libavahi-common3:amd64              install
libavahi-common3:i386               install
libavahi-core7:amd64                install
libavahi-glib1:amd64                install
libavahi-gobject0:amd64             install

Вывод vainfo:

libva info: VA-API version 0.36.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_35
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.36 (libva 1.4.0)
vainfo: Driver version: Intel i965 driver for Intel(R) Haswell Desktop - 1.3.2
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            : VAEntrypointVLD
      VAProfileMPEG2Simple            : VAEntrypointEncSlice
      VAProfileMPEG2Main              : VAEntrypointVLD
      VAProfileMPEG2Main              : VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline: VAEntrypointVLD
      VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
      VAProfileH264Main               : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointEncSlice
      VAProfileH264High               : VAEntrypointVLD
      VAProfileH264High               : VAEntrypointEncSlice
      VAProfileVC1Simple              : VAEntrypointVLD
      VAProfileVC1Main                : VAEntrypointVLD
      VAProfileVC1Advanced            : VAEntrypointVLD
      VAProfileNone                   : VAEntrypointVideoProc
      VAProfileJPEGBaseline           : VAEntrypointVLD

с gstreamer простым конвейером как этот:

gst-launch-1.0 playbin video-sink=vaapisink uri=rtsp://ip_of_my_camera/

Я получаю это, как произведено:

New clock: GstSystemClock
Progress: (request) Sending PLAY request
Progress: (request) Sending PLAY request
Progress: (request) Sent PLAY request
Got context from element 'vaapidecode0': gst.vaapi.Display=context, display=(GstVaapiDisplay)NULL;
0:00:03.405005415 27214 0x7f2560023370 ERROR                  vaapi ../../../../gst-libs/gst/vaapi/gstvaapidecoder_h264.c:1351:ensure_context: unsupported profile_idc 66
0:00:03.405029986 27214 0x7f2560023370 ERROR            vaapidecode ../../../gst/vaapi/gstvaapidecode.c:284:gst_vaapidecode_decode_frame: decode error 9
ERROR: from element /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstUDPSrc:udpsrc0: Internal data flow error.
Additional debug info:
gstbasesrc.c(2943): gst_base_src_loop (): /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstUDPSrc:udpsrc0:
streaming task paused, reason not-supported (-6)
Execution ended after 0:00:02.567426400
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...

Я пытался играть простой mp4 после этого:

gst-launch-1.0 playbin video-sink=vaapisink uri=file:///home/user/test.mp4

Я получаю это, как произведено:

Setting pipeline to PAUSED ...
libva info: VA-API version 0.36.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_35
libva info: va_openDriver() returns 0
Pipeline is PREROLLING ...
Got context from element 'vaapidecode0': gst.vaapi.Display=context, display=(GstVaapiDisplay)NULL;
0:00:00.082428099 27226 0x7fb268008c00 ERROR                  vaapi ../../../../gst-libs/gst/vaapi/gstvaapidecoder_h264.c:1351:ensure_context: unsupported profile_idc 66
0:00:00.082457191 27226 0x7fb268008c00 ERROR            vaapidecode ../../../gst/vaapi/gstvaapidecode.c:284:gst_vaapidecode_decode_frame: decode error 9
ERROR: from element /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstQTDemux:qtdemux0: GStreamer encountered a general stream error.
Additional debug info:
qtdemux.c(4432): gst_qtdemux_loop (): /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstQTDemux:qtdemux0:
streaming stopped, reason not-supported
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...
0
задан 27 May 2015 в 04:50

2 ответа

Скажите нам больше о Вашем источнике?

Попытка вывести в файл и загрузиться это с помощью различных инструментов как vlc, интересная информация может появиться

, можно адаптироваться:

location=/tmp/tmp.ts
uri="file://${location}"    
gst-launch-1.0 udpsrc port=${port} ! filesink location=$location

gst-launch-1.0 playbin uri=$uri 
#| Got EOS from element "playbin0".

gst-launch-1.0 playbin  --gst-debug-level=3  uri=$uri audio-sink=fakesink

#| 0:00:00.062872448  1532 0xb5002060 ERROR                  vaapi gstvaapidecoder_h264.c:1351:ensure_context: unsupported profile_idc 66
#| 0:00:00.062892542  1532 0xb5002060 ERROR            vaapidecode gstvaapidecode.c:284:gst_vaapidecode_decode_frame: decode error 9


gst-launch-1.0 playbin  --gst-debug-level=3  uri=$uri 
vlc $location
#| [0x7f25e0c826d8] ts demux error: MPEG-4 descriptor not found

mediainfo $location | grep Codec
#| Format/Info                              : Advanced Video Codec
#| Codec ID                                 : 27
0
ответ дан 6 October 2019 в 03:50

Я решил это путем выбора правильной версии gstreamer1.0-vaapi версии. Можно получить файл здесь: https://www.freedesktop.org/software/vaapi/releases/gstreamer-vaapi /

, как установить:-./настраивать - делают - делают установку

, Когда не правильная версия (ошибка все еще происходят), использование - делает удаление , чтобы удалить ее и продолжиться, пробуют следующую версию

(Вы должны, полностью удалил версию, которую Вы установили от , sudo - склонный добираются

0
ответ дан 6 October 2019 в 03:50

Другие вопросы по тегам:

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