http://rk3588使用gstreamer推流-CSDN博客

http://RK3399平台多媒体测试-RK3399 视频编解码及摄像头测试-飞凌嵌入式 - 飞凌嵌入式行业资讯 - 保定飞凌嵌入式技术有限公司 (forlinx.com)

       由于项目需要用到gstreamer中的decodebin3来自动识别解码器测试视频,网上搜了好多都是用decodebin,decodebin3是GStreamer 1.18版本新添加的插件。decodebin3和decodebin之间的区别:decodebin3可以避免覆盖用户对流的显式选择。                                                                               在 GStreamer 中,"避免覆盖用户对流的显式选择"指的是当用户明确指定要使用特定的解码器或元素时,确保系统不会在后续的管道构建过程中自动选择其他解码器,从而覆盖用户的显式选择。

1.安装gstreamer

sudo apt update

sudo apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-doc gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio

2.查看安装版本和mpp支持的解码和编码器

gst-inspect-1.0 --version

gst-inspect-1.0 | grep mpp

如果没有下面的mpp解码和mpp编码器

gst-inspect-1.0 version 1.18.5

GStreamer 1.18.5

rockchipmpp: mpph264enc: Rockchip Mpp H264 Encoder

rockchipmpp: mpph265enc: Rockchip Mpp H265 Encoder

rockchipmpp: mppvp8enc: Rockchip Mpp VP8 Encoder

rockchipmpp: mppjpegenc: Rockchip Mpp JPEG Encoder

rockchipmpp: mppvideodec: Rockchip's MPP video decoder

rockchipmpp: mppjpegdec: Rockchip's MPP JPEG image decoder

下面安装插件gstreamer1.0-rockchip

sudo apt-get install gstreamer1.0-rockchip

gst-inspect-1.0 |grep mpp

3.udp传输测试视频

接收端:gst-launch-1.0 udpsrc port=10000 caps='application/x-rtp, media=(string)video, clock-rate=(int)50000, encoding-name=(string)H264' ! rtph264depay ! decodebin3 ! videoconvert !ximagesink

发送端:gst-launch-1.0 videotestsrc ! mpph264enc ! h264parse ! rtph264pay ! udpsink host=127.0.0.1 port=10000

gst-launch-1.0 filesrc location=a.mp4 ! decodebin3 ! mpph264enc ! rtph264pay ! udpsink host=127.0.0.1 port=10000

参考文章

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: