`
haoningabc
  • 浏览: 1449322 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

srt学习笔记二:支持srt的ffmpeg

阅读更多
注意:scl enable devtoolset-7 bash  
这个不是默认的gcc


centos安装ffmpeg
https://www.jianshu.com/p/94a1759ceb34

~/ffmpeg_source 源码
~/ffmpeg_build  安装
~/bin 二进制

注意pkgconfig的设置,so的寻找路径,配置错误有可能找不到so,会有lib和lib64的问题,
也可以用LD_LIBRARY_PATH 帮助解决

yum install autoconf automake bzip2 cmake freetype-devel gcc gcc-c++ git libtool make mercurial pkgconfig zlib-devel harfbuzz-devel -y
yum install bzip2 bzip2-devel -y
yum install openssl-devel  tcl tcl-devel -y
 


yum install centos-release-scl -y
yum install devtoolset-7-toolchain -y
scl enable devtoolset-7 bash



####Nasm
cd ~/ffmpeg_sources
curl -O -L https://www.nasm.us/pub/nasm/releasebuilds/2.14/nasm-2.14.tar.bz2
tar xjvf nasm-2.14.tar.bz2
cd nasm-2.14
./autogen.sh
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"
make
make install


########Yasm
cd ~/ffmpeg_sources
curl -O -L http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
tar xzvf yasm-1.3.0.tar.gz
cd yasm-1.3.0
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"
make
make install



########264
cd ~/ffmpeg_sources
git clone https://github.com/mirror/x264
PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static
make
make install 


########265
cd ~/ffmpeg_sources
hg clone https://bitbucket.org/multicoreware/x265
cd ~/ffmpeg_sources/x265/build/linux
cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="$HOME/ffmpeg_build" -DENABLE_SHARED:bool=off ../../source
make
make install 
cp ~/ffmpeg_build/bin/x265 ~/bin/


###########fdk-acc
cd ~/ffmpeg_sources
git clone --depth 1 https://github.com/mstorsjo/fdk-aac
cd fdk-aac
./configure --prefix="$HOME/ffmpeg_build" --disable-shared
make 
make install


####libmp3lame  mp3编码库
cd ~/ffmpeg_sources
curl -O -L http://downloads.sourceforge.net/project/lame/lame/3.100/lame-3.100.tar.gz
tar xzvf lame-3.100.tar.gz
cd lame-3.100
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --disable-shared --enable-nasm
make
make install

######libopus   音频编码
cd ~/ffmpeg_sources
curl -O -L https://archive.mozilla.org/pub/opus/opus-1.3.tar.gz
tar xzvf opus-1.3.tar.gz
cd opus-1.3
./configure --prefix="$HOME/ffmpeg_build" --disable-shared
make
make install


######libogg
首先对输入音频PCM信号进行时频分析,决定MDCT的长度,即加窗,然后进行MDCT变换;同时对原始音频信号要进行FFT分析。两种变换的频谱系输入给心理声学模型单元,MDCT系数用于噪声掩蔽计算,H可结果用于音调掩蔽特性计算,共同构造总的掩蔽曲线。然后根据MDCT系数及掩蔽曲线,对频谱系数进行线性预测分析用LPC(Linear Prediction Coefficience,线性预测系数)表示频谱包络,即基底曲线(Floor Curve);或通过线性分段逼近方式获得基底曲线。从MDCT系数中去掉频谱包络则得到白化的残差频谱(Residue),由于残差频谱波动范围明显变小,从而降低量化误差。之后可以选择是否采用声道耦合(Channel Coupling)技术进一步降低冗余度,耦合主要是将左右声道数据从直角坐标映射到平方极坐标;最后对白化的残差信号有效地以矢量量化表示。最后将要传输的各种信息数据按Vorbis定义的包格式组装,形成Vorbis压缩码流。
cd ~/ffmpeg_sources
curl -O -L http://downloads.xiph.org/releases/ogg/libogg-1.3.3.tar.gz
tar xzvf libogg-1.3.3.tar.gz
cd libogg-1.3.3
./configure --prefix="$HOME/ffmpeg_build" --disable-shared
make
make install

#####vorbis 压缩
cd ~/ffmpeg_sources
curl -O -L http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.6.tar.gz
tar xzvf libvorbis-1.3.6.tar.gz
cd libvorbis-1.3.6
./configure --prefix="$HOME/ffmpeg_build" --with-ogg="$HOME/ffmpeg_build" --disable-shared
make
make install





########vpx   264 265
cd ~/ffmpeg_sources
git clone --depth 1 https://chromium.googlesource.com/webm/libvpx.git
cd libvpx
./configure --prefix="$HOME/ffmpeg_build" --disable-examples --disable-unit-tests --enable-vp9-highbitdepth --as=yasm
make
make install



#####freetype2   字体引擎
cd ~/ffmpeg_sources
curl -O -L  https://github.com/aseprite/freetype2/archive/VER-2-6-3.tar.gz
tar xzvf VER-2-6-3.tar.gz
cd freetype2-VER-2-6-3
./autogen.sh
./configure --prefix="$HOME/ffmpeg_build" --disable-shared
make
make install
cp ~/ffmpeg_build/bin/freetype-config ~/bin/


#######srt add by hao
git clone https://github.com/Haivision/srt
#./configure --prefix="$HOME/ffmpeg_build"  --bindir="$HOME/bin"  这里的bindir 不起作用
#./configure
PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build" 
make 
make install 


这里检查 pkgconfig 的路径
如果不是$HOME/ffmpeg_build/lib/pkgconfig
则需要把haisrt.pc  srt.pc 从 $HOME/ffmpeg_build/lib64/pkgconfig copy 到$HOME/ffmpeg_build/lib/pkgconfig



#####ffmpeg  注意加上enable-libsrt 
cd ~/ffmpeg_sources
curl -O -L https://ffmpeg.org/releases/ffmpeg-4.1.tar.bz2
tar xjvf ffmpeg-4.1.tar.bz2
cd ffmpeg-4.1
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 \
  --extra-libs=-lm \
  --bindir="$HOME/bin" \
  --enable-gpl \
  --enable-libfdk_aac \
  --enable-libfreetype \
  --enable-libmp3lame \
  --enable-libopus \
  --enable-libvorbis \
  --enable-libvpx \
  --enable-libx264 \
  --enable-libx265 \
  --enable-libsrt \
  --enable-nonfree

make
make install


如果rtmp找不到尝试 查一下https://blog.csdn.net/fireroll/article/details/8607955

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/root/ffmpeg_build/lib64/


分享到:
评论

相关推荐

    ffmpeg-4.3.2-1.5.5-API文档-中文版.zip

    Maven坐标:org.bytedeco:ffmpeg:4.3.2-1.5.5; 标签:bytedeco、ffmpeg、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码...

    FFMPEG: Download failed: 6;"Couldn't resolve host name"

    opencv4.1.0使用cmake编译时,提示FFMPEG: Download failed: 6;"Couldn't resolve host name

    ffmpeg开发学习笔记

    个人整理的ffmpeg开发学习笔记, 整理了利用libavcodec和libavformat开发的一些关键的数据结构和函数,并且对整个流程进行了解释

    ffmpegSRT推拉流(EXE,非源码)(水印版,不喜勿下)

    ffmpegSRT推拉流(EXE,非源码)(水印版,不喜勿下),只是一个测试程序,需要srs支持。

    ffmpeg 学习 笔记 文档 杂记

    ffmpeg学习笔记文档

    video-srt-gui-ffmpeg-0.3.2-x64_2.zip

    支持中文字幕和英文字幕制作,视频识别无需上传原视频,可同时处理多个文件,video srt软件适合视频后期制作人员使用,轻松配字幕。 软件介绍 video srt是一款非常智能好用的视频、音频自动生成srt字幕软件。video ...

    ffmpeg-5.0-1.5.7-API文档-中文版.zip

    Maven坐标:org.bytedeco:ffmpeg:5.0-1.5.7; 标签:bytedeco、ffmpeg、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和...

    ffmpeg-5.0-1.5.7-API文档-中英对照版.zip

    Maven坐标:org.bytedeco:ffmpeg:5.0-1.5.7; 标签:bytedeco、ffmpeg、中英对照文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的...

    ffmpeg库:ffmpeg-n5.1-latest-win64-gpl-shared-5.1

    ffmpeg库:ffmpeg-n5.1-latest-win64-gpl-shared-5.1

    最新ffmpeg支持https

    最新ffmpeg支持https

    ffmpeg-4.3.2-1.5.5-API文档-中英对照版.zip

    Maven坐标:org.bytedeco:ffmpeg:4.3.2-1.5.5; 标签:bytedeco、ffmpeg、中英对照文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的...

    ffmpeg-20181107-0c6d4e7-win64-shared.zip

    ffmpeg最新(2018.11.07)编译出的可执行程序,解压即可运行。 附上使用说明: 1. 下载好对应的包后解压出来,在对应的bin文件夹通过:“Shift + 鼠标右键” 的方式用 “在此处打开PowerShell窗口” 打开PS窗口 我的...

    srt协议的caller模式的c语言源码

    适合开发SRT协议的软件工程师,源码是srt协议的caller即client端,主动连接srt的server端,连上后发送数据

    java ffmpeg实现视屏剪辑、srt字幕嵌入、视频合成、图片转视频

    java ffmpeg实现视屏剪辑、srt字幕嵌入、视频合成、图片转视频 通过test类运行。demo基于jave的源码。对ffmpeg的两种系统下的执行文件进行了替换。所以ffmpeg版本是最新的。可以执行ffmpeg官网上大多数的命令

    opencv+ffmpeg图片序列写Mp4

    本程序使用opencv3.2+ffmpeg3.4编译,实现Mat到mp4的无缓冲,并可以设置比特率、帧率,实现高质量图片与高质量视频的转换,说明请查看https://blog.csdn.net/weixin_39212021

    ffmpeg学习的笔记

    自己整理的ffmpeg学习的笔记,有一些 ffmpeg 主要的使用命令,一些编程使用方式。

    ffmpeg 手册合集,全面介绍ffmpeg

    音视频转换:FFmpeg可以将视频文件从一种格式转换为另一种格式,支持几乎所有流行的视频和音频格式。 解码和编码:FFmpeg包含许多不同的解码器和编码器,可以用于转换视频和音频数据。 复用和解复用:FFmpeg可以...

    CMake+opencv编译时Download: opencv_ffmpeg.dll、ippicv等文件

    opencv_ffmpeg.dll opencv_ffmpeg_64.dll ffmpeg_version.cmake boostdesc_bgm.i boostdesc_bgm_bi.i boostdesc_bgm_hd.i boostdesc_binboost_064.i boostdesc_binboost_128.i boostdesc_binboost_256.i boostdesc_...

    activejob-ffmpeg:ffmpeg 的 ActiveJob 作业定义

    ActiveJob::Ffmpeg ffmpeg 的 ActiveJob 作业定义。 安装 宝石安装: $ gem install activejob-ffmpeg 将此行添加到应用程序的 Gemfile 中: gem 'activejob-ffmpeg', github: "joker1007/activejob-ffmpeg" ...

    基于ffmpeg4.3.1编译的android动态库--开启了openssl(支持https)

    ffmpeg版本4.3.1,openssl版本1.1.1i, android cup架构支持armeabi-v7a,arm64-v8a,x86,x86_64,ffmpeg和openssl都是基于Android API level 21编译的。自测播放本地视频文件,http视频文件和https视频文件均可正常...

Global site tag (gtag.js) - Google Analytics