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

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

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

编译参数–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```

    推荐阅读
  • 情感问答:我和男朋友经过花镇帮忙后复合

    现在当下这个社会,情感问题越来越被大家重视,情感问题包含了方方面面,没有处理好这些情感上面的问题,势必也会影响到我们的生活,今天唯象情感专家就为大家列举一下网友们自身所出现的情感问题,案例为:我和男朋友经过花镇帮忙后复合问题:我和男朋友经过花镇帮忙后复合,感情也都相对稳定,但是复合后的两个月期间因为不可抗力因素见面次数有点少,期间因为信任问题吵了一架,之后他的态度开始变得有一些冷淡,最近有朋友在探

  • 苹果无线充电怎么打开 苹果13无线充电怎么打开

    还可以在状态栏中看到充电的一个指示,就跟平常手机充电一样会有一个指示标。

  • 5s店和4s店的区别 5s和4s店哪个好

    广泛的汽车4S店为整车销售、零配件、售后维修服务、反馈机制,5s店比汽车4S店多了一项为“二手车买卖”。拿宝马五系做为事例。此外,车子还必须根据汽车资源、检验、武器装备等苛刻挑选,最后能够得到宝马官方验证。例如宝马官方验证二手车,会出现7天安心退货服务项目,而且也有认购服务项目,有利于你随意升級车辆置换。

  • 白墙上涂鸦怎么清除(墙上的涂鸦难清理)

    生活中我们常遇到这样的问题,家里的墙上一不小心就弄上各种污渍,清洗起来还特别麻烦。尤其是对于有孩子的家庭来说,一不留神,墙上就会被孩子画上充满艺术感的蜡笔印,非常的不好去除,并且还影响美观。操作时间:50min操作难度:☆操作材料:牙膏、卸妆水、卸妆棉操作过程:第一种方法:卸妆水去除法1、在卸妆棉上倒上适量的卸妆水。

  • 隔离霜和防晒霜有什么区别(你知道吗)

    接下来我们就一起去了解一下吧!隔离霜和防晒霜有什么区别防晒霜是用来隔离紫外线,而隔离霜是用来隔离灰尘与彩妆。俗话说得好,美白一年功,晒黑十分钟。就防晒霜而言,防晒霜防晒指数30倍防晒50倍有所不同,能够有效地避免皮肤晒黑,很多人在夏天会被晒伤也是因为没有使用好防晒的原因,所以它一定要用在护肤的最后一步!如果你每天在户外活动超过两小时,一定要使用高倍数的防晒保护自己的皮肤。

  • 过期的螺蛳粉还可以煮吗(螺蛳粉过期了还能煮吗)

    因螺蛳粉中的配料较多较为复杂,过期后容易滋生细菌,再食用不利于人体健康。螺蛳粉是广西柳州最具地方特色的小吃,煮熟后会有独特的酸臭味,但味道鲜美,受到广大人群的喜爱。

  • 米线怎样做好吃又简单(米线怎样做好吃)

    米线怎样做好吃用料:油菜1棵、米线250克、金针菇50克、甜不辣适量、鱼丸适量、豆瓣酱15克、盐2克2做法:食材清洗净,油菜分好备用豆瓣酱放入水里大火烧开烧开后放入米线、金针菇甜不辣等配菜,最后放入油菜加盐大火煮五。

  • 蚊香能杀死蚊子吗(屋里点蚊香能杀死蚊子吗)

    蚊香的主要作用为驱蚊而不是灭蚊,蚊香的主要成分为菊酯类、有机磷类、氨基甲酸酯类物质,燃烧之后这些物质会随着烟雾散发出来。蚊子闻到这种气味后会头晕从而会飞走以达到驱蚊的效果。但如果蚊香的量过多导致室内蚊香浓度过高时,蚊子麻痹后就可能会出现死亡的情况。蚊香当中含有一定对人体有害的物质,长期处在这种环境中会对身体造成不好的影响,所以不建议在睡觉时使用蚊香。

  • 混元金斗是什么级别法宝(混元金斗人间之净桶)

    小刘分析过许多原因,第一是元始天尊和老子为了引出三宵背后的通天教主。第二个原因是因为三宵阻挡了商周大战的进程。第三个原因,三宵敢于对圣人出手,让元始与老子颜面无光。第四个原因,便是昊天上帝看中了三宵的耿直无私,明事理。云霄娘娘琼霄娘娘碧霄娘娘以上三姑,正是坑三姑娘之神。混元金斗即人间之净桶。凡与将对敌,逢之即擒。这两位便是哼哈二将。可以说龙吉公主是有了姻缘的典型代表,封她为红鸾星,也正合适。

  • 东江盐焗鸡是哪个地方的菜(东江盐焗鸡的简介)

    东江盐焗鸡是哪个地方的菜东江盐焗鸡菜系:客家菜,粤菜系。东江盐焗鸡是广东省惠州市的一道传统名菜,属于客家菜,其主料为项鸡,主要烹饪工艺是盐焗,其制法独特,味香浓郁,皮爽肉滑,以沙姜油盐佐食,风味极佳,其色泽微黄,皮脆肉嫩,骨肉鲜香,风味诱人,是宴会上常用的佳肴。300多年前的东江地区沿海的一些盐场,有人把熟鸡用纱纸包好放入盐堆腌储,这种鸡肉鲜香可口,别有风味。

热门推荐

萝卜可以刷火锅吗(萝卜能不能涮火锅) 致敬坚守抗疫一线的青年(志愿服务倡议书) 枸杞该怎么吃效果好(枸杞怎样吃效果好) 简短的个人离职申请怎么写(如何写简短的个人离职申请) 说说怎么关闭水印(QQ说说里的照片怎么去除水印) 空调温度多少度最合适(开空调时室外和室内的温差保持多少比较好) 螺杆式冷水机组正常运行参数(水冷螺杆式冷水机组安装使用手册) 推荐强大的pdf软件(很多人推荐这款PDF阅读软件) 长三角铁路全面恢复开行(长三角铁路今起实施新运行图) 沙棘油可以直接涂抹于脸部吗?(沙棘油能直接涂抹于脸部吗?) 比亚迪汽车销量排行榜10月份(9月各汽车品牌销量TOP10:比亚迪笑傲群雄) 十代雅阁加92还是95号汽油(为啥十代雅阁年销量是天籁两倍) 小米手机里莫名其妙多些图片怎么处理(下文教你) 呵怎么组词(呵的词语) 迷你世界怎么无限出东西冒险模式(冒险模式下不知怎么提升自己) 油画印象派和抽象派区别(西方油画中的印象派与后印象派) 李清照十首最好诗词(李清照十首最美的诗词) 明日之后反击后还可以继续吗 明日之后反击后还可以继续吗 如何在iOS系统主屏幕中隐藏部分应用程序(如何在iOS系统主屏幕中隐藏部分应用程序) 福特野马有什么好车型(全球销量最高的跑车)