ffmpeg相关

1. 配置参考官网文档最优秀

https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu

必要修改:

cd ~/ffmpeg_sources && \
wget -O ffmpeg-snapshot.tar.bz2 https://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2 && \
tar xjvf ffmpeg-snapshot.tar.bz2 && \
cd ffmpeg && \
PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure \
  --prefix="$HOME/ffmpeg_build" \
  --pkg-config-flags="--static" \
  --extra-cflags="-I$HOME/ffmpeg_build/include" \
  --extra-ldflags="-L$HOME/ffmpeg_build/lib" \
  --extra-libs="-lpthread -lm" \
  --ld="g++" \
  --bindir="$HOME/bin" \
  --enable-gpl \
  //--enable-gnutls \
  //--enable-libaom \
  --enable-libass \
  --enable-libfdk-aac \
  --enable-libfreetype \
  --enable-libmp3lame \
  --enable-libopus \
  //--enable-libsvtav1 \
  --enable-libdav1d \
  --enable-libvorbis \
  --enable-libvpx \
  --enable-libx264 \
  --enable-libx265 \
  --enable-nonfree && \
PATH="$HOME/bin:$PATH" make && \
make install && \
hash -r

2. RTMP推流实验

参考链接
用到依赖包:
链接:https://pan.baidu.com/s/1AZ37PJ6skyU6TqSQN5-LKg
提取码:1234

2.1 安装时的修改

  1. openssl库不好使
    openssl-1.1.0.tar.gz->openssl-1.1.0i.tar.gz
  2. nginx config命令修改
./configure --prefix=/usr/local/nginx --with-pcre=../nginx-dependence/pcre-8.40 --with-zlib=../nginx-dependence/zlib-1.2.11 --with-openssl=../nginx-dependence/openssl-1.1.0  --with-http_ssl_module --add-module=/nginx-dependence/nginx-rtmp-module

修改为:

./configure --prefix=/usr/local/nginx --with-pcre=/root/nginx-dependence/pcre-8.40 --with-zlib=/root/nginx-dependence/zlib-1.2.11 --with-openssl=/root/nginx-dependence/openssl-1.1.0i  --with-http_ssl_module --add-module=/root/nginx-dependence/nginx-rtmp-module

2.2 碰到的坑

 error: no /usr/build/ngnix-rtmp-module/config was found
 解决方法: 将nginx的configure命令中的位置都改成绝对路径。
 
 ngx_murmurhash.c:37:11: error: this statement may fall through 
 解决方法: 在./objs/Makefile找到-Werrori 后将其去掉,再重新make编译。
 
 nginx ‘struct crypt_data’ has no member named ‘current_salt’
 解决方法: 找到对应文件,将该行注释掉。
 
 参考文档中的推流命令失败。
 ffmpeg -re -i /home/lee/video.mp4 -vcodec copy -acodec copy -b:v 800k -b:a 32k -f flv rtmp://localhost/videotest
 暂时解决方法: ffmpeg -re -i /home/lee/video.mp4 -vcodec copy -an -f flv rtmp://localhost/videotest

2.3 应用

//摄像头推流到服务器
bin/ffmpeg -i "/dev/video0" -f flv rtmp://10.6.3.15/videotest

网页拉流参考链接https://www.cnblogs.com/shook/p/14137221.html

//编译nginx
./configure --prefix=/usr/local/nginx --with-pcre=/root/nginx-dependence/pcre-8.40 --with-zlib=/root/nginx-dependence/zlib-1.2.11 --with-openssl=/root/nginx-dependence/openssl-1.1.0i  --with-http_ssl_module --add-module=/root/nginx-dependence/nginx-http-flv-module
npm install --save videojs-flash
npm install -g npm@7.22.0
注: chrome和microsoft edge 不支持flash,下载一个360浏览器解决的。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值