企业网站备个人c2c电子商务网站的功能
2026/3/9 11:35:07 网站建设 项目流程
企业网站备个人,c2c电子商务网站的功能,最新外贸电商平台,微营销案例FFmpeg开发实战#xff1a;从零基础到短视频上线》一书的“10.2.2 FFmpeg向网络推流”介绍了轻量级流媒体服务器MediaMTX#xff0c;通过该工具可以测试RTSP/RTMP等流媒体协议的推拉流。不过MediaMTX的功能比较简单#xff0c;也不方便个性化定制#xff0c;如今出现了国产…FFmpeg开发实战从零基础到短视频上线》一书的“10.2.2 FFmpeg向网络推流”介绍了轻量级流媒体服务器MediaMTX通过该工具可以测试RTSP/RTMP等流媒体协议的推拉流。不过MediaMTX的功能比较简单也不方便个性化定制如今出现了国产的直播服务器smart_rtpmd更适合日常开发调试使用。smart_rtpmd是一款用于直播且录播性能卓越的流媒体服务器相当于nginxrtmp或者是简化版的SRS和ZLMediaKit。smart_rtpmd开源且跨平台支持Windows、Linux含Ubuntu、CentOS等、FreeBSD、ARM64等操作系统。smart_rtpmd支持的视频格式包括H.264、H.265、VP8等支持的音频格式包括AAC、OPUS等。smart_rtpmd的源码托管地址为https://github.com/superconvert/smart_rtmpd星星数0.6k国内的镜像地址为https://gitee.com/superconvert/smart_rtmpd最新版本是2025年3月发布的smart_rtpmd_v2025.03.10可见该框架的源码更新十分及时。smart_rtpmd不依赖其他第三方库下载后的压缩包文件解压即可运行。以Windows系统的smart_rtpmd程序为例它的解压步骤说明如下1、下载smart_rtpmd的源码得到压缩包smart-rtmpd-master.zip。2、解压smart-rtmpd-master.zip包找到smart-rtmpd-master目录下的压缩包rtmpd.zip。3、解压rtmpd.zip包找到rtmpd目录下的压缩包smart-rtmpd-win.zip。4、解压smart-rtmpd-win.zip包得到smart_rtmpd_win目录里面的smart_rtmpd.exe便是可运行于Windows系统的smart_rtpmd服务器程序。双击smart_rtmpd.exe弹出smart_rtpmd管理界面单击右下角的启动按钮如下图所示即可开启smart_rtpmd的直播推流服务。smart_rtmpd1由日志可见smart_rtpmd开启了下列五项流媒体服务1、侦听1935端口的RTMP服务对应的流媒体播放地址是rtmp://127.0.0.1:1935/live/stream2、侦听8554端口的RTSP服务对应的流媒体播放地址是rtsp://127.0.0.1:8554/live/stream3、侦听8080端口的HTTPHLS服务对应的流媒体播放地址是http://127.0.0.1:8080/live/stream.m3u84、侦听8888端口的TURN.TCPWebRTC服务5、侦听9000端口的SRT服务接下来验证smart_rtpmd的实际推拉流情况。打开MSYS窗口进入《FFmpeg开发实战从零基础到短视频上线》一书第十章的源码目录执行下面的编译命令。gcc pushvideo.c -o pushvideo -I/usr/local/ffmpeg/include -L/usr/local/ffmpeg/lib -lavformat -lavdevice -lavfilter -lavcodec -lavutil -lswscale -lswresample -lpostproc -lm编译完成后执行以下命令启动测试程序期望把2018.mp4推给smart_rtpmd的RTSP推流地址rtsp://127.0.0.1:8554/live/stream。./pushvideo ../file/2018.mp4 rtsp://127.0.0.1:8554/live/stream打开另一个MSYS窗口同样进入《FFmpeg开发实战从零基础到短视频上线》一书第十章的源码目录执行下面的编译命令。gcc pullvideo.c -o pullvideo -I/usr/local/ffmpeg/include -L/usr/local/ffmpeg/lib -I/usr/local/sdl2/include -L/usr/local/sdl2/lib -lsdl2 -lavformat -lavdevice -lavfilter -lavcodec -lavutil -lswscale -lswresample -lpostproc -lm编译完成后执行以下命令启动测试程序期望从rtsp://127.0.0.1:8554/live/stream拉取视频流并弹窗播放。./pullvideo rtsp://127.0.0.1:8554/live/stream然后果真弹出一个SDL窗口正在播放从RTSP服务拉取的视频画面如下图所示说明smart_rtpmd正确实现了RTSP协议的流媒体转发功能。smart_rtpmd2如果改成RTMP协议实现推拉流的话需要把推流命令改成下面这样表示向RTMP地址推流./pushvideo ../file/2018.mp4 rtmp://127.0.0.1:1935/live/stream注意pushvideo.c的代码需要按照前一篇文章《FFmpeg代码对RTSP和RTMP的推流区别》的说明加以修改才能支持RTMP协议的视频推流。对应的拉流命令要改成下面这样表示从RTMP地址拉流./pullvideo rtmp://127.0.0.1:1935/live/stream

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询