folibis
folibis

Reputation: 12874

Gstreamer misses H.264

I wanted to try GStreamer to connect to a remote IP camera using RTSP stream. So I've downloaded and installed the last version.

On Using GStreamer page said: GStreamer also provides playbin, a basic media-playback plugin that automatically takes care of most playback details So I've tried to connect to the camera using the following command:

gst-launch-1.0 playbin uri=rtsp://192.168.1.2:554/av0_0

Unfortunately I get error:

ERROR: from element /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: Your GStreamer installation is missing a plug-in. Additional debug info: ../gst/playback/gsturidecodebin.c(988): no_more_pads_full (): /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: no suitable plugins found: ../gst/playback/gstdecodebin2.c(4679): gst_decode_bin_expose (): /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0: no suitable plugins found: Missing decoder: H.264 (Main Profile) (video/x-h264, stream-format=(string)byte-stream, alignment=(string)au, level=(string)3.1, profile=(string)main, width=(int)1280, height=(int)720, framerate=(fraction)0/1, interlace-mode=(string)progressive, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8, parsed=(boolean)true)

Does it mean that my installation missed decoder for h264? How could it been? I guess that h264 is the most popular codec. Did I do something wrong?

Update:

./gst-inspect-1.0 | grep h264
videoparsersbad:  h264parse: H.264 parser
typefindfunctions: video/x-h264: h264, x264, 264
rtp:  rtph264pay: RTP H264 payloader
rtp:  rtph264depay: RTP H264 depayloader
openh264:  openh264enc: OpenH264 video encoder
openh264:  openh264dec: OpenH264 video decoder

Upvotes: 0

Views: 7279

Answers (1)

rabindra
rabindra

Reputation: 87

Have you installed GStreamer MSI with the "Complete" option? If it's installed in Typical mode, then the libav plugins won't be installed. You can change the installation and select the additional feature or do a re-install.

When you install in the Complete mode, you should be able to find avdec_h264. Alternatively, you can select Custom mode and then enable the "GStreamer 1.0 libav wrapper".

$ gst-inspect-1.0.exe libav | grep h264
  avdec_h264: libav H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 decoder

Upvotes: 1

Related Questions