当前位置: 首页 > news >正文

青海教育厅门户网站有赞商城

青海教育厅门户网站,有赞商城,公司起名大全2023最新版的免费,出国做博后关注哪些网站《FFmpeg开发实战#xff1a;从零基础到短视频上线》一书在第10章介绍了轻量级流媒体服务器MediaMTX#xff0c;通过该工具可以测试RTSP/RTMP等流媒体协议的推拉流。不过MediaMTX的功能实在是太简单了#xff0c;无法应用于真实直播的生产环境#xff0c;真正能用于生产环境…《FFmpeg开发实战从零基础到短视频上线》一书在第10章介绍了轻量级流媒体服务器MediaMTX通过该工具可以测试RTSP/RTMP等流媒体协议的推拉流。不过MediaMTX的功能实在是太简单了无法应用于真实直播的生产环境真正能用于生产环境的流媒体服务器还要看SRS或者ZLMediaKit。 ZLMediaKit是一款国产的开源流媒体服务器支持RTSP、RTMP、SRT等主流直播协议它的安装说明参见之前的文章《Linux环境安装ZLMediaKit实现视频推流》。结合ZLMediaKit与ffmpeg实现RTSP/RTMP协议的推流功能已在《Linux环境安装ZLMediaKit实现视频推流》一文中详细介绍这里单独讲解如何通过ZLMediaKit与ffmpeg实现SRT协议的推流功能。 ZLMediaKit在编译和启动的时候已经默认支持SRT查看ZLMediaKit的配置文件config.ini找到srt部分的配置信息如下可见ZLMediaKit默认把9000端口分配给SRT协议。 [srt] latencyMul4 pktBufSize8192 port9000 timeoutSec5 除此以外ZLMediaKit无需另外调整什么配置只要在启动之后运行下面的ffmpeg命令即可将视频文件向SRT地址推流。注意务必确保Linux服务器上的FFmpeg已经集成了libsrt库否则ffmpeg无法向srt地址推流详细的集成步骤参见之前的文章《Linux环境给FFmpeg集成libsrt和librist》。 ffmpeg -re -stream_loop -1 -i /usr/local/src/test/cctv5.ts -c copy -f mpegts srt://127.0.0.1:9000?streamid#!::rlive/test,mpublish 注意上面命令中的srt地址后半段为“rlive/test,mpublish”其中“rlive/test”表示SRT的服务名称叫做“live/test”而“mpublish”表示该地址属于发布功能也就是给推流方使用。 ZLMediaKit对视频源文件的封装格式也有要求不仅要求源文件为ts格式还要求推流格式也为ts格式所以ffmpeg命令中添加了“-f mpegts”表示转换成mpeg的ts流格式。如果源文件不是ts格式或者没转成mpegts格式后续通过ffplay播放srt链接都会报下面的错误。 non-existing PPS 0 referenced 此外ZLMediaKit支持的音视频编码标准罗列在src/Extension/Frame.h中详细的音视频支持标准如下所示。 #define CODEC_MAP(XX) \XX(CodecH264,  TrackVideo, 0, H264, PSI_STREAM_H264, MOV_OBJECT_H264)          \XX(CodecH265,  TrackVideo, 1, H265, PSI_STREAM_H265, MOV_OBJECT_HEVC)          \XX(CodecAAC,   TrackAudio, 2, mpeg4-generic, PSI_STREAM_AAC, MOV_OBJECT_AAC)   \XX(CodecG711A, TrackAudio, 3, PCMA, PSI_STREAM_AUDIO_G711A, MOV_OBJECT_G711a)  \XX(CodecG711U, TrackAudio, 4, PCMU, PSI_STREAM_AUDIO_G711U, MOV_OBJECT_G711u)  \XX(CodecOpus,  TrackAudio, 5, opus, PSI_STREAM_AUDIO_OPUS, MOV_OBJECT_OPUS)    \XX(CodecL16,   TrackAudio, 6, L16, PSI_STREAM_RESERVED, MOV_OBJECT_NONE)       \XX(CodecVP8,   TrackVideo, 7, VP8, PSI_STREAM_VP8, MOV_OBJECT_VP8)             \XX(CodecVP9,   TrackVideo, 8, VP9, PSI_STREAM_VP9, MOV_OBJECT_VP9)             \XX(CodecAV1,   TrackVideo, 9, AV1, PSI_STREAM_AV1, MOV_OBJECT_AV1)             \XX(CodecJPEG,  TrackVideo, 10, JPEG, PSI_STREAM_JPEG_2000, MOV_OBJECT_JPEG) 由此可见如果待推流的视频文件不属于上面的音视频编码标准将无法通过SRT服务地址正常推流。 运行ffmpeg的SRT推流命令之后ZLMediaKit输出以下的日志信息可见其SRT推流功能正常运行。 [MediaServer] [576478-event poller 0] SrtSession.cpp:103 onRecv | 1-11(127.0.0.1:33630)  [MediaServer] [576478-event poller 0] SrtTransportImp.cpp:166 operator() | test(127.0.0.1:33630) 允许 srt 推流 [MediaServer] [576478-event poller 0] Decoder.cpp:143 onTrack | Got track: H264 [MediaServer] [576478-event poller 0] Decoder.cpp:143 onTrack | Got track: mpeg4-generic [MediaServer] [576478-event poller 0] Decoder.cpp:97 onStream | Add track finished [MediaServer] [576478-event poller 0] MediaSink.cpp:161 emitAllTrackReady | All track ready use 172ms [MediaServer] [576478-event poller 0] MediaSource.cpp:517 emitEvent | 媒体注册:fmp4://__defaultVhost__/live/test [MediaServer] [576478-event poller 0] MultiMediaSourceMuxer.cpp:551 onAllTrackReady | stream: schema://__defaultVhost__/app/stream , codec info: mpeg4-generic[48000/2/16] H264[1280/720/25]  [MediaServer] [576478-event poller 0] MediaSource.cpp:517 emitEvent | 媒体注册:rtmp://__defaultVhost__/live/test [MediaServer] [576478-event poller 0] MediaSource.cpp:517 emitEvent | 媒体注册:rtsp://__defaultVhost__/live/test [MediaServer] [576478-event poller 0] MediaSource.cpp:517 emitEvent | 媒体注册:ts://__defaultVhost__/live/test [MediaServer] [576478-event poller 0] MediaSource.cpp:517 emitEvent | 媒体注册:hls://__defaultVhost__/live/test 接着按照《FFmpeg开发实战从零基础到短视频上线》一书“1.3  Windows系统安装FFmpeg”的介绍在个人电脑上安装FFmpeg并打开MSYS的命令行运行下面的ffplay命令期望从SRT地址拉流播放。注意务必确保电脑上的FFmpeg已经集成了libsrt库否则ffplay无法播放srt链接详细的集成步骤参见之前的文章《Windows环境给FFmpeg集成libsrt》。 ffplay -i srt://124.xxx.xxx.xxx:9000?streamid#!::rlive/test,mrequest 上面的SRT拉流地址与之前的推流地址大同小异除了把内网IP换成外网IP之外就是把链接末尾的“mpublish”改成了“mrequest”其中request表示请求也就是用于拉流方。 ffplay运行后弹出播放器窗口正常播放视频画面和声音。同时观察ZLMediaKit的服务日志如下所示 [MediaServer] [576478-event poller 0] SrtSession.cpp:103 onRecv | 2-16(112.5.138.145:57022)  [MediaServer] [576478-event poller 0] SrtTransport.cpp:731 onShutdown | peer close connection [MediaServer] [576478-event poller 0] SrtSession.cpp:118 onError | 2-16(112.5.138.145:57022) 6(peer close connection) [MediaServer] [576478-event poller 0] SrtTransportImp.cpp:14 ~SrtTransportImp | test(112.5.138.145:57022) srt 播放器(__defaultVhost__/live/test)断开,耗时(s):16 从以上日志可见ZLMediaKit通过SRT协议成功实现了视频直播的SRT推拉流功能。 更多详细的FFmpeg开发知识参见《FFmpeg开发实战从零基础到短视频上线》一书。 本系列的FFmpeg进阶文章目录为《FFmpeg开发笔记全目录FFmpeg开发实战详解含直播系统的搭建过程》
http://www.w-s-a.com/news/503678/

相关文章:

  • 网站建设多语种自动翻译插件wordpress谷歌翻译插件
  • 泰安高级网站建设推广wordpress教程 好看
  • 我自己的网站怎么做关键词优化泰安网站建设dxkjw
  • 平面设计做画册用网站泰州seo平台
  • 申请一个域名后怎么做网站evernote wordpress
  • 网站左侧导航栏设计网站开发后台数据怎么来
  • 临西做网站报价网站建设需要写语句吗
  • 建设网站网站首页购物网站开发代码
  • 淘宝客怎么建立网站网站360优化
  • 安徽建海建设工程有限公司网站网站空间和域名价格
  • 农产品网站建设策划哪里有做枪网站的
  • 更改各网站企业信息怎么做张家港企业网站制作
  • 郑州网站建设咨询银川做网站哪家好
  • 微信网站 微信支付合肥seo排名收费
  • 织梦做的网站如何上线广东省广州市番禺区南村镇
  • 网站设计的导航栏怎么做太原有网站工程公司吗
  • 苏州虎丘区建设局网站如何在一个数据库做两个网站
  • 淘宝天猫优惠券网站建设费用腾讯邮箱企业邮箱登录
  • 深圳福田做网站公司海航科技网站建设
  • 网站降权查询wordpress更换文章背景色
  • 大型电商网站开发金融企业网站建设公司
  • 成都营销型网站建设价格化妆品品牌推广方案
  • 深圳公司手机网站制作苏州网站推广哪家好
  • 网站建设开发方式包括购买学校网站建设费计入什么科目
  • 做简单网站的框架图中小微企业查询平台
  • 哪些网站可以免费做产品推广建设建设部网站
  • 网站开发销售怎么做django做网站
  • 淘宝客网站做百度竞价万网域名怎么绑定网站
  • 建设网站找哪个公司北京知名大公司有哪些
  • 专业彩票网站开发网站流量在哪设置