ffmpeg 开发记录一

项目背景:所要实现的功能类似于直播。整个直播流程要打通,从摄像头拉流,到解码拆帧,然后处理之后编码推流,最后展示。

摄像头:海航威视 DS-IPC-B系列的摄像头。

开发工具:pycharm,ffmpeg/gstreamer

环境:mac,VLC

rstp/rtmp server: node-rtsp-rtmp-server,gst-rtsp-server, rtsp-server,EasyDarWin,Nginx

一、关于开发工具的选择

由于接到项目之前对于视频开发完全没有接触过,所以事先进行调研。之后为了迅速实现整个流程决定采用最简单的方式先跑通。

1. 编解码:ffmpeg

2. server:node-rtsp-rtmp-server。

二、环境搭建

1.安装ffmepg

brew install ffmpeg

2.安装node-rtsp-rtmp-server

按照git上步骤一步一步来就好

三、实验过程

第一步启动server。默认node-rtsp-rtmp-server会把rtmp服务起在1935端口,rtsp服务起在80端口。当然这些都是可以配置的。

第二步拉流加推流。ffmpeg一行命令

ffmpeg -i rtsp://username:password@ip:port -vcodec copy -acodec copy -f flv rtmp://localhost:1935/live/stream

node-rtsp-rtmp-server默认会加live后缀,然后可以自定义哥流名称,我这是用stream。执行ffmpeg命令之后就可以用VLC播放器去查看视频流了。海康摄像头会有2s的延迟,之后在解决这个问题。

这里解释一下上面一行命令,-i 值得是输入源,可以是本地视频文件,也可以直接指定摄像头。如果是本地文件 -i 后面直接跟视频名称。 -vcodec copy指的是视频编码按原来视频编码, -acodec copy指的是音频编码按照原来音频编码, -f 是format的缩写,指的是转换的格式是 flv。然后后面跟的是rtmp server的地址。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值