FFmpge命令记录

 日常开发中会用到FFmpeg进行编解码和视频呈现、视频推流,现将平时工作中用到的几个命令做一下记录,以备不时之需:

1.选定网卡,接受组播

// 【命令行】指定本地ip为192.168.70.61的网卡用来接收数据
ffmpeg -localaddr 192.168.70.61

// 【代码】方法如下
av_dict_set(&opts, "localaddr", "192.168.70.61", 0);
多网卡下接收udp组播,往往会接收失败,因为用错了网卡,例如电脑有:有线网、wifi
在window下可以这样:

route add 226.0.1.101 mask 255.255.255.255 192.168.70.61
即接收udp://226.0.1.101这路流,使用70网段192.168.70.61是本机70网段的IP

2.使用ffmpeg进行本地视频的rtmp推流 

// 使用ffmpeg将本地mp4文件推流到搭建的ZLM流媒体服务器上
./ffmpeg.exe -re -i E:/test.mp4 -c:v copy -c:a copy -f flv rtmp://127.0.0.1/live/video/123456

// 指定视频格式为libx264
./ffmpeg.exe -re -i E:/test.mp4 -c:v libx264 -c:a copy -bf 0 -f flv rtmp://127.0.0.1/live/video/123456

3.使用ffmpeg进行udp组播视频裸码的rtmp推流 

// -localaddr 指定网卡
// -bf 0 去掉B帧
// -s 640x480 指定分辨率
// -r 20 指定帧率
// -b:v 2000k 指定码率
// -preset ultrafast -tune film 指定整体解码速度
// -bufsize 10M 指定缓冲区大小
// -f lavfi -i anullsrc=channel_layout=stereo:sample_rate=44100 加入静音音频
./ffmpeg.exe -localaddr 192.168.70.61 -i udp://226.0.1.101:8000 -f lavfi -i anullsrc=channel_layout=stereo:sample_rate=44100 -c:v libx264 -c:a aac -bf 0 -s 640x480 -r 20 -b:v 2000k -preset ultrafast -tune film -bufsize 10M  -f flv rtmp://127.0.0.1/live/video/123456

4.使用ffmpeg进行本地摄像头图像的udp推流 

// 直推本地摄像头到ZLM流媒体服务器
./ffmpeg.exe -f dshow -i video="Integrated Camera" -vcodec libx264 -preset:v ultrafast -tune:v zerolatency -f h264 -max_delay 1 -g 5 -b 7000000 udp://127.0.0.1:6666

 5.使用ffplay进行rtsp流的播放测试

// ffplay播放rtsp流命令
ffplay -i -rtsp_transport tcp rtsp://222.209.92.239:5545/live/O_j30EGIg

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值