Linux,Unix,BSD

[linux] GStreamer에서 'Missing element: ITU H.264 decoder' 오류

채윤아빠 2023. 10. 19. 09:38
728x90
반응형

문제점 및 증상

영상 파일을 GStreamer를 이용하여 처리하려는 중에 다음과 같이 'Missing element: ITU H.264 decoder' 오류가 발생하였습니다.

Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
WARNING: from element /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstAviDemux:avidemux0: Could not demultiplex stream.
Additional debug info:
../gst/avi/gstavidemux.c(4088): gst_avi_demux_stream_header_pull (): /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstAviDemux:avidemux0:
failed to parse stream, ignoring
Missing element: ITU H.264 decoder
Missing element: ITU H.264 decoder

(gst-launch-1.0:65191): GStreamer-Base-CRITICAL **: 09:06:28.088: gst_flow_combiner_update_pad_flow: assertion 'pad != NULL' failed
WARNING: from element /GstPipeline:pipeline0/GstDecodeBin:decodebin0: Delayed linking failed.
Additional debug info:
gst/parse/grammar.y(540): gst_parse_no_more_pads (): /GstPipeline:pipeline0/GstDecodeBin:decodebin0:
failed delayed linking some pad of GstDecodeBin named decodebin0 to some pad of GstVideoConvert named videoconvert0
ERROR: from element /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstAviDemux:avidemux0: Internal data stream error.
Additional debug info:
../gst/avi/gstavidemux.c(5798): gst_avi_demux_loop (): /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstAviDemux:avidemux0:
streaming stopped, reason not-linked (-1)
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...

운영 환경

  • Ubuntu 22.04 (x64)
  • Gstreamer 1.20.3

해결 방법

다음과 같이 "gstreamer1.0-plugins-bad" 패키지를 설치하면 H.264 영상 파일을 GStreamer에서 정상적으로 다룰 수 있게 됩니다.

$ sudo apt-get install gstreamer1.0-plugins-bad

참고자료