Это один вид ошибки декодирования2
см. Я проверил некоторые конвейеры и узнаю следующие вещи
pipe1:
gst-launch filesrc location="filename" !
decodebin2 name=dec !
queue ! ffmpegcolorspace ! autovideosink dec. !
queue ! audioconvert ! audioresample ! autoaudiosink
этот конвейер1 прекрасно работает со всеми форматами контейнеров, такими как .mkv, .mp4, ogg
, но когда вы даете файл расширения кодека, он создает проблему, о которой вы сказали
Я проверил это с файлом .h264
pipe2:
gst-launch filesrc location="smal.h264" ! decodebin2 name=dec ! queue !
autovideosink dec. ! queue ! autoaudiosink
pipe3:
gst-launch filesrc location="smal.aac" ! decodebin2 name=dec ! queue !
autovideosink dec. ! queue ! autoaudiosink
у всех одна и та же проблема, они не могут предварительно загрузить ahaead и не могут показать ошибку неверного подключения пэда
если вы попробуете только одно допустимое подключение пэда, то они отлично работают
pipe4:
gst-launch filesrc location="smal.h264" ! decodebin2 ! autovideosink
pipe5:
gst-launch filesrc location="smal.aac" ! decodebin2 ! autoaudiosink
конвейер 4 и 5 работает нормально
даже
gst-launch filesrc location="/home/dk/Music/Vangelis - Alpha.mp3" !
decodebin2 ! audioconvert ! audioresample ! autoaudiosink
это также будет нормально работать ...
Теперь, чтобы лучше понять эту ошибку и исправить ее, нам нужно изучить и изменить исходный код decodebin2 .........> !!!!