Gstreamer - vaapidecode с mpeg ts не играет - PullRequest
5 голосов
/ 29 марта 2012

Я пытаюсь использовать плагины gstreamer-vaapi для воспроизведения видео в формате mpegts.

При использовании vaapi, как предложено для

gst-launch-0.10 -v filesrc location=video.mp4 ! qtdemux ! vaapidecode ! vaapisink

, и он работает, конечно.

Кроме того, воспроизведение TS работает с

GST_DEBUG="*:3" gst-launch-0.10 -v udpsrc buffer-size="5000"   \
port=1234 multicast-group="239.0.0.17"   \
caps="application/x-rtp,media=(string)video,clock-rate=(int)90000,encoding-name=(string)H264"   \
! .recv_rtp_sink_0 gstrtpbin ! rtpmp2tdepay   \
! mpegtsdemux ! ffdec_h264 ! xvimagesink

, но когда я хочу заменить ffdec_h264 ! xvimagesink на vaapidecode ! vaapisink, у меня нет видео, и здесь - это журнал с GST_DEBUG=*:3.

Я нашел похожую проблему здесь , и предлагается использовать ffdemux_mpegts вместо tsdemux из-за заглушек, которые vaapidecode хочет.Но он говорит, что ffdemux_mpegts больше не находится в пакете gstreamer-ffmpeg, так как раньше у него были некоторые проблемы.

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

Есть ли способ узнать, какие заглавные буквы нужны vaapidecode, и добавить их вручную, когда demuxer не может этого сделать?

Или это какая-то другая проблема?

1 Ответ

0 голосов
/ 14 февраля 2014

Я вижу, что этот вопрос в последнее время привлекает к себе внимание, поэтому вот что я знаю до сих пор.

Прежде всего, нам нужно перейти на Gstreamer 1.x, есть много вещей, которые решаются с более новой версией.

Еще одна вещь, которую я имею в виду, это добавление парсера перед декодером.

Также был патч для парсера / декодера Gstreamer (не помню), который исправляет некоторые проблемы с воспроизведением потокового видео h264.

Надеюсь, это поможет вам, ребята.

...