百摩网
当前位置: 首页 生活百科

mac ffmpeg环境搭建(流媒体开发学习4)

时间:2023-07-09 作者: 小编 阅读量: 3 栏目名: 生活百科

编译参数–enable-libvorbislibOpus编码Opus音频。

安装相关环境

硬件环境:

  • nVidia 2060 2块

yum安装驱动

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.orgrpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpmyum install yum-plugin-fastestmirrorsudo vim /lib/modprobe.d/dist-blacklist.conf

dist-blacklist.conf

#blacklist nvidiafbblacklist nouveauoptions nouveau modeset=0

mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bakdracut /boot/initramfs-$(uname -r).img $(uname -r)lspci | grep nouveau

没有输出,说明屏蔽默认带有的nouveau成功。

一些命令:

sudo yum install nvidia-detectnvidia显卡检测nvidia-detect -v检测结果# yum -y install kmod-nvidia安装显卡驱动 这一步应该不需要

run脚本安装

参考:https://github.com/keylase/nvidia-patch

cd /opt/nvidiawget https://international.download.nvidia.com/XFree86/Linux-x86_64/430.40/NVIDIA-Linux-x86_64-430.40.runchmodx NVIDIA-Linux-x86_64-430.40.run./NVIDIA-Linux-x86_64-430.40.run --kernel-source-path=/usr/src/kernels/3.10.0-957.27.2.el7.x86_64# 下面是移除NVENC同时运行最大数量的限制 restriction on maximum number of simultaneous NVENCgit clone https://github.com/keylase/nvidia-patchcd nvidia-patchbash ./patch.sh

如果需要卸载,使用命令:

./NVIDIA-Linux-x86_64-430.40.run --uninstall

安装Cuda

sudo yum-config-manager --add-repo http://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/cuda-rhel7.reposudo yum clean allsudo yum -y install nvidia-driver-latest-dkms cudanvidia-smi

编译支持

库说明

  • x264 编码H.264视频,编译参数–enable-gpl --enable-libx264
  • fdk-aac 编码AAC音频,编译参数–enable-libfdk-aac
  • libvpx VP8/VP9视频编码器,编译参数–enable-libvpx
  • libvorbis 编码Vorbis音频,需要libogg。编译参数–enable-libvorbis
  • libOpus 编码Opus音频。
  • LAME 编码MP3音频,编译参数–enable-libmp3lame
  • libass 字幕渲染器,编译参数–enable-libass

下载路径

mkdir ~/ffmpeg_sources

yasm

cd ~/ffmpeg_sourcescurl -L -O http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gztar xvzf yasm-1.3.0.tar.gzcd yasm-1.3.0./configure --prefix=”/usr”makesudo make install

nasm

curl -L -O http://www.nasm.us/pub/nasm/releasebuilds/2.14.02/nasm-2.14.02.tar.xztar xf nasm-2.14.02.tar.xzcd nasm-2.14.02./configure --prefix=”/usr”makesudo make install

libfdk-aac

git clone --depth 1 git://git.code.sf.net/p/opencore-amr/fdk-aaccd fdk-aacsudo autoreconf -fiv./configure --prefix="/usr" --disable-sharedmakesudo make install

lame

curl -L -O http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gztar xzvf lame-3.99.5.tar.gzcd lame-3.99.5./configure --prefix="/usr" --disable-shared --enable-nasmmakesudo make install

libopus

curl -L -O https://archive.mozilla.org/pub/opus/opus-1.2.tar.gztar xvzf opus-1.2.tar.gzcd opus-1.2./configure --prefix="/usr" --disable-sharedmakesudo make install

libogg

curl -L -O http://downloads.xiph.org/releases/ogg/libogg-1.3.2.tar.gztar xzvf libogg-1.3.2.tar.gzcd libogg-1.3.2./configure --prefix="/usr" --disable-sharedmakesudo make install

libvorbis

curl -L -O http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.4.tar.gztar xzvf libvorbis-1.3.4.tar.gzcd libvorbis-1.3.4./configure --prefix="/usr" --with-ogg="/usr" --disable-sharedmakesudo make install

libtheora

git clone git://git.xiph.org/mirrors/theora.git theora-gitcd theora-gitPKG_CONFIG_PATH=/usr/lib/pkgconfig ./autogen.sh --prefix=/usr --disable-examples --disable-shared --disable-sdltest --disable-vorbistest && make && make install

libx265

sudo yum install hg cmakehg clone http://hg.videolan.org/x265cd x265/build/linuxsudo cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="/usr" -DENABLE_SHARED:bool=off ../../sourcemakesudo make installvim /usr/lib/pkgconfig/x265.pc

加上:在Libs.private: -lstdc-lm -lrt -ldl后面加上-lpthread

x264

curl -L -O http://download.videolan.org/pub/x264/snapshots/last_x264.tar.bz2tar xjvf last_x264.tar.bz2cd x264-snapshot-20170625-2245/./configure --prefix="/usr" --enable-staticmakesudo make install

disable-gpl

./configure --prefix="/usr" --enable-static --disable-gpl --disable-openclmakesudo make install

安装ffnvcodec

git clone https://git.videolan.org/git/ffmpeg/nv-codec-headers.gitcd nv-codec-headersmake && sudo make install

libvpx

VP8/VP9 video encoder.

git clone --depth 1 https://github.com/webmproject/libvpx.gitcd libvpx./configure --prefix="/usr" --disable-examples --disable-unit-tests --as=yasmmakesudo make install

https

wget http://mirrors.ibiblio.org/openssl/source/old/1.0.2/openssl-1.0.2k.tar.gztar -xvf openssl-1.0.2k.tar.gzcd openssl-1.0.2kmake clean./config shared --prefix="/usr"make -j32 && make install

配置ffmpeg, 编译安装

下载

git clone https://git.ffmpeg.org/ffmpeg.gitgit clone https://github.com/libav/libav

配置

PKG_CONFIG_PATH="/usr/lib/pkgconfig" export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATHcd ffmpeg./configure --prefix="/usr" --pkg-config-flags="--static" --enable-gpl --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libxvid --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-nonfree --extra-cflags="-I/usr/local/cuda/include/" --extra-ldflags=-L/usr/local/cuda/lib64 --disable-shared --enable-nvenc --enable-cuda --enable-cuvid --enable-libnpp --enable-pthreads --enable-openssl

我实际编译去掉了–enable-libfdk-aac enable-libxvid

编译

make -j 10

安装

make install

使用 测试转码推流

ffmpeg -hwaccel cuvid -c:v h264_cuvid -i "rtsp://aaa:bbb@ip:554/cam/realmonitor?channel=1&subtype=0&unicast=true&proto=Onvif"-c:v h264_nvenc -an-preset slow -tune film-f flv rtmp://rtmpip:port/live/v_test```

    推荐阅读
  • top命令怎么退出(退出方法详解)

    以下内容大家不妨参考一二希望能帮到您!top命令怎么退出首先连接linuxshell。在窗口中输入top后按回车键,下面是输入top命令后出现的界面,显示的是一些进程信息并且会每隔几秒就自动刷新一次,在这个过程中如果不主动结束就不能操作任何其他命令。

  • 敦煌石窟设计元素(设计灵感来自敦煌壁画)

    今年1月2日,首钢滑雪大跳台启动造雪塑形工作。1月26日,首钢滑雪大跳台组织开展首次闭环内外全要素实战演练。2月3日,正值农历大年初三,包括谷爱凌在内,首钢滑雪大跳台迎来首批冬奥运动员,运动员们对赛道情况、运动员流线和用房设置等现场踏勘,与大跳台首次亲密接触。2月4日,冬奥会赛时官方训练正式开始。从官方训练到资格赛、决赛,参赛运动员对首钢滑雪大跳台好评如潮。

  • 红烧鱼块(做红烧鱼块的步骤)

    鱼剁成长方块,我来为大家科普一下关于红烧鱼块?下面希望有你要的答案,我们一起来看看吧!红烧鱼块鱼剁成长方块。锅置旺火上烧热,滑锅后放少量油,下鱼块稍煎。撒姜末、烹酒略焖,加酱油、糖稍烧,添沸水一勺,转小火将鱼烧熟。用旺火收浓汤汁,撒上葱段,加入味精,用湿淀粉勾芡,浇亮油出锅即成。

  • 鼻炎病根在脾胃(治疗鼻炎的方法)

    每天早晚洗脸时,用小手指蘸流动的自来水在鼻孔内清洗,清除鼻腔内的结痂和分泌物,充分暴露鼻粘膜后,用棉签或手指蘸市售的槐花蜜均匀地涂在鼻腔患处。后偶得一方,取得较好疗效。连续数日可治愈。长期吃药不但对身体有害而且疗效不甚理想。此外,醋有四大作用:①解除疲劳。②预防动脉硬化。

  • 感恩节手抄报图片展高中生(感恩节手抄报图片最多)

    感恩节展高中生手抄报怎么画?感恩节手抄报图片大全感恩节手抄报模板好画简单感恩节手抄报,下面我们就来选几张好看的感恩节手抄报图片展高中生?

  • 网友模仿古天乐对白声音(古天乐和韩雪是时候勇敢地在一起了)

    最近,有网友爆出古天乐在出席某活动时被发现还在用滑盖手机打电话。网友们纷纷表示不敢相信,古仔居然还是这么守旧节约的人。随后又联想到古仔在内地坚持多年的公益事业,纷纷表示,一定都是节约钱去做公益了。看到这则消息,二条君的脑子里突然出现的是韩雪。韩雪也是一个手机要用好多年,甚至屏幕碎了还依然咬牙坚持,自己亲自上阵当起修理员。比如二条君,现在正在喝白开水,你就真以为我没钱吗?

  • 高以翔去世71天(35岁高以翔因录节目猝死)

    11月27凌晨,演员高以翔在录制综艺节目《追我吧》时跑步发生意外晕倒了,抢救10多分钟后才送到医院。随后,高以翔被送往医院,关于他到底有没有脱离生命危险,目前官方还没有放出消息,有人说已经抢救过来,也有人借着朋友的口吻称情况不容乐观。有高以翔的粉丝是内部工作人员,称他是因为低血糖引起的摔倒,颅内重伤导致的死亡。祝福35岁高以翔通往天堂的路是快乐的。

  • 开老款兰博基尼大牛(检测老款兰博基尼盖拉多)

    每辆兰博基尼均由手工打造,将先进技术与孜孜不倦追求的精神完美相结合。二战后的1947年,费鲁吉奥回到家乡开设了以自己家族姓氏为商标的"兰博基尼拖拉机制造工厂",利用美军剩余的军用物资开始生产拖拉机和燃油设备及空调系统。为了与法拉利竞争,350GT的定价略低于同级别的法拉利车型。在奥迪的协助与管理下,该厂在2003年分别推出了“Murcilago”和入门级的跑车“Gallardo”。Murcielago(蝙蝠)和Gallardo(盖拉多)是兰博基尼加入大众集团的首批产品。

  • 竟然的近义词是什么(竟然的释义)

    接下来我们就一起去了解一下吧!竟然的近义词是什么的近义词是。表示结果与预想的相反,多用在不好的方面。言出于意料或常情常理以外。

  • 西安城南客运站有到眉县班车吗(城南客运站恢复商南勉县班线)

    西安网讯:从3月14日起,西安城南客运站——商南班线恢复运营,3月15日起西安城南客运站——勉县班线恢复运营。目前城南客运站恢复运营线路20余条,分别是汉中、安康、商州、石泉、镇安、汉阴、宁陕、柞水、平利、紫阳、岚皋、洛南、镇巴、山阳、丹凤、西乡、金堆城、白河、冷水、南江、旬阳、商南、勉县、鄠邑快客。其他线路恢复时间城南客运站站会及时进行公告。