ffmpeg实用命令汇总

基于RKMpp硬编码的rtmp推流程序

linux下截屏/截屏上传到rtmp服务器

截屏上传rtmp

./ffmpeg -f fbdev -i /dev/fb0 -f flv  rtmp://zjsos.net:8455/live/227

截屏

./ffmpeg -f fbdev -framerate 1 -i /dev/fb0 -frames:v 1 screenshot.jpeg

视频切割

ffmpeg -ss <offer time> -t <len time> -i <in file> -vcodec copy -an <out file>

推实时流

ffmpeg -r 25 -i rtsp://admin:zjsos12345@192.168.9.230:554/h264/ch1/main/av_stream -an -c:v h264 -f flv rtmp://172.16.3.21:1935/hls/test

ffmpeg -r 25 -i rtsp://admin:zjsos12345@172.16.3.110:554/h264/ch1/main/av_stream -vcodec copy -f flv rtmp://172.16.3.21:1935/hls/test

查看封装格式和编码

# 可用的bit流
ffmpeg –bsfs
# 可用的编解码器
ffmpeg –codecs
# 可用的解码器
ffmpeg –decoders
# 可用的编码器
ffmpeg –encoders
# 可用的过滤器
ffmpeg –filters
# 可用的视频格式
ffmpeg –formats
# 可用的声道布局
ffmpeg –layouts
# 可用的license
ffmpeg –L
# 可用的像素格式
ffmpeg –pix_fmts
# 可用的协议
ffmpeg -protocols

如何查看ffmpeg支持的编码器和封装格式

编译ffmpeg

没有发现yasm汇编编译器,yasm是x86架构下的一个汇编器,ffmpeg默认是使能的。没有该汇编器的话,后面编译ffmpeg时会报错误

交叉编译配置
参考配置
我的配置

#! /bin/sh
  echo "build ..."
  PWD=`pwd`
  ./configure --enable-cross-compile --prefix=/home/cp/out_arm \                                                                                                                                          
      --arch=arm --target-os=linux --enable-shared \
      --cross-prefix=${PWD}/../../gcc/gcc-linaro-5.4.1-2017.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf- \
      --enable-gpl \
      --enable-libx264 \
      --extra-cflags=-I/home/cp/out_arm/include \
      --extra-ldflags=-L/home/cp/out_arm/lib \

#make && make install
 

编译libh264

源码下载地址
源码下载地址2

配置

./configure --prefix=/home/cp/out_arm --host=arm-linux --cross-prefix=/home/cp/gcc_tools/gcc-linaro-5.4.1-2017.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf- --disbable-asm --enable-shared
make
make install

编译librtmp

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值