音视频入门-2-ffmpeg-Linux下编译浅析,推流拉流快速体验

 

 

 

 

下载ffmpeg

http://ffmpeg.org/download.html

1 、2 两种方式可以下载, 皆可。

 

编译ffmpeg

  ./configure -prefix=/usr/local/ffmpeg -enable =debug=3 --disable-static --enable-shared   // 使用动态库,不使用静态库

   make -j4

   make install

   对于编译参数,我们可以使用 ./configure --help 进行查看

  例如,我们希望查看静态库配置是哪个参数,我们可以使用 ./configure --help | grep static  , 这样就可以知道参数是 --disable-static 了 。

        

 

  安装的过程中可能需要安装一些依赖库,我们需要自行安装 《==  中途会遇到很多问题,并没有那么容易

  然后在启动脚本内设置环境变量,如下图

       

     对于ffmpeg的详细的编译过程,参考我的下述博文:

     https://www.cnblogs.com/happybirthdaytoyou/p/14256260.html

 

ffmpeg拉流命令

  ffplay rtmp://localhost/live/test  

 

ffmpeg推流命令1
  ffmpeg  -i ~/Documents/new_killer.mp4 -f flv rtmp://localhost/live/test
  命令1是追求效率的推流方式,但是存在问题:音视频不同步,画质不清晰,存在时间戳问题,推流失败

 

ffmpeg推流命令2

  ffmpeg -re -i ~/Documents/new_killer.mp4 -f flv rtmp://localhost/live/test  

  在命令1的基础上增加参数 -re, 增加-re参数,推流时,且让音视频保持原来的速度. 这样就解决了推流失败的问题。

 

ffmpeg推流命令3

  ffmpeg -re -i ~/Documents/new_killer.mp4 -c:v copy -f flv rtmp://localhost/live/test  

  在命令2的基础上增加参数 -c:v copy , -f flv 会将源音视频文件按照默认质量标准进行重新编码。

  增加-c:v copy参数,表示推流时则不会将视频进行重新编码,这样就不会影响视频的质量了,这样就解决了清晰度不高的问题。

 

 

.

posted @ 2021-01-03 16:07  一匹夫  阅读(528)  评论(0编辑  收藏  举报