当前位置: 首页 > news >正文

山东建设监理协会网站无法登录软文代写网

山东建设监理协会网站无法登录,软文代写网,长沙的网站制作公司,旅游投资公司网站建设ppt模板工作小计-GPU编码以及依赖库 已经是第三篇关于编解码的记录了。项目中用到GPU编码很久了,因为yuv太大,所以编码显得很重要。这次遇到的问题是环境的搭建问题。需要把开发机上的环境放到docker中,以保证docker中同样可以进行GPU的编码。 1 定…

工作小计-GPU编码以及依赖库

已经是第三篇关于编解码的记录了。项目中用到GPU编码很久了,因为yuv太大,所以编码显得很重要。这次遇到的问题是环境的搭建问题。需要把开发机上的环境放到docker中,以保证docker中同样可以进行GPU的编码。

1 定位问题

docker是算法部门提供的,天然带了cuda,gpu驱动等环境。但是代码调用解码器时,未找到对应的硬解码器。
定位问题,先确定是否真的不支持编码器。

查看库是否支持GPU

strings libavcodec.so | grep -i cuda

在这里插入图片描述
看到很多cuda输出,最重要的还是这个编译选项,可以看到是开启了对应的cuda,nvenc,cuvid都有的

--prefix=/opt/ffmpeg --enable-shared --enable-ffplay --enable-cuda --enable-cuvid --enable-nvenc --enable-nonfree --enable-libnpp --enable-gpl --extra-cflags='-I/usr/local/cuda/include /usr/local/cuda-11.1/targets/x86_64-linux/include' --extra-ldflags='-L/usr/local/cuda/lib64 -L/usr/local/cuda-11.1/targets/x86_64-linux/lib' --disable-x86asm --extra-cflags=-fPIC --extra-cxxflags=-fPIC --enable-libmfx --enable-nonfree --enable-encoder=h264_qsv --enable-decoder=h264_qsv --enable-encoder=hevc_qsv --enable-decoder=hevc_qsv --prefix=/opt/ffmpeg --libdir=/opt/ffmpeg/lib --extra-cflags=-I/opt/intel/mediasdk/include --extra-ldflags=-L/opt/intel/mediasdk/lib64

查看运行时是否支持硬件解码

手头有现成h265文件,

# 得到yuv文件
ffmpeg -i input.h265 -c:v rawvideo -pix_fmt yuv420p output.yuv
# 得到MP4文件
ffmpeg -i input.h265 -c:v libx264 -crf 23 -c:a aac -strict experimental output.mp4# 对yuv进行h264/hevc(h265) 硬件编码
ffmpeg -f rawvideo -pix_fmt yuv420p -s 3840x2160 -r 30 -i output.yuv -c:v hevc_nvenc output.mp4
ffmpeg -f rawvideo -pix_fmt yuv420p -s 3840x2160 -r 30 -i output.yuv -c:v h264_nvenc output.mp4

果然硬编码报错了
可见h264和h265的硬编都报错了

[h264_nvenc @ 0x258a880] Cannot load libnvidia-encode.so.1
[hevc_nvenc @ 0x258a880] The minimum required Nvidia driver for nvenc is (unknown) or newer

2 解决问题

直接搜宿主机的环境
在这里插入图片描述
i386-linux-gnu 是32位环境的,直接忽略。去对应的文件夹找nvidia对应的库

在这里插入图片描述
和docker中的对比下
在这里插入图片描述
果然查了很多,因为docker中的是深度学习的环境,和我们的硬件编码库肯定会有偏

拷贝过去,仍然报错。最终定位到cuvid的问题。坑爹的是,ffmpeg缺少硬件编码缺少cuvid的时候,同样会报错缺少 libnvidia-encode.so的问题

在这里插入图片描述
可以看到nvenc和cuvid这两个库分别对应硬件的编解码,之前的项目用硬解比较多,而这边则是硬编比较多

libnvcuvid.so 是NVIDIA Video Codec SDK中的一个库文件,它提供了用于解码和处理视频的功能。它允许应用程序使用NVIDIA GPU来加速视频解码,从而提高视频处理性能。
libnvidia-encode.so 是NVIDIA Video Codec SDK中的另一个库文件,它提供了用于编码和处理视频的功能。它允许应用程序使用NVIDIA GPU来加速视频编码,从而提高视频处理性能。

这两个库文件都是NVIDIA提供的用于视频处理的工具,可以在支持NVIDIA GPU的系统上使用。它们为开发人员提供了使用GPU进行视频解码和编码的接口和功能,以实现更高效的视频处理和加速。
至此,问题解决。

3 docker相关

额外记录一些docker相关的理解。
docker想要调用gpu和必定要和宿主机中的gpu进行通信(肤浅的理解可以是各自安装了 nvidia-container-toolkit),完成一次远程调用/中转调用。这个调用之前是由nvidia-docker完成的。高版本的docker集成了nvidia-docker,所以只要如入–gpu 参数就好。只要在容器中的nvidia-smi正常之后,就基本差不多了,因为是进行了一次交互。但是驱动,指的是调用gpu的指令,*.so这些,还是要在docker中安装的,不然即没有办法和宿主机通讯,也没有办法被上层应用调用。

nvidia-container-cli --version # 查看是否安装了对应的版本

在容器中使用 GPU,通常需要在宿主机和容器中都安装 NVIDIA Container Toolkit。在宿主机中安装 NVIDIA Container Toolkit 用于管理宿主机上的 GPU 资源,而在容器中安装 NVIDIA Container Toolkit 则用于在容器内访问这些 GPU 资源。
宿主机
https://github.com/NVIDIA/k8s-device-plugin#preparing-your-gpu-nodes

distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt-get update && sudo apt-get install -y nvidia-docker2

容器

# 基于一个带有 NVIDIA 驱动的基础镜像构建
FROM nvidia/cuda:11.0-base# 安装 NVIDIA Container Toolkit 相关的软件包
RUN apt-get update && apt-get install -y nvidia-container-toolkit# 设置 NVIDIA 运行时环境变量
ENV NVIDIA_VISIBLE_DEVICES all
ENV NVIDIA_DRIVER_CAPABILITIES compute,utility# 验证 NVIDIA GPU 配置是否正确
RUN nvidia-smi# 运行你的应用程序或服务
CMD ["/your/app/command"]

文章转载自:
http://retook.ddfp.cn
http://specifically.ddfp.cn
http://lapsuslinguae.ddfp.cn
http://brainworker.ddfp.cn
http://waiver.ddfp.cn
http://pileous.ddfp.cn
http://polyxena.ddfp.cn
http://contracept.ddfp.cn
http://irresponsive.ddfp.cn
http://bedel.ddfp.cn
http://prompt.ddfp.cn
http://compartmental.ddfp.cn
http://automan.ddfp.cn
http://anthropogenesis.ddfp.cn
http://chrematistics.ddfp.cn
http://frequentation.ddfp.cn
http://maltman.ddfp.cn
http://teratogenic.ddfp.cn
http://unharden.ddfp.cn
http://talmud.ddfp.cn
http://bogy.ddfp.cn
http://purl.ddfp.cn
http://quadrivial.ddfp.cn
http://sunnily.ddfp.cn
http://warrantor.ddfp.cn
http://manege.ddfp.cn
http://documentation.ddfp.cn
http://moralize.ddfp.cn
http://predictability.ddfp.cn
http://pons.ddfp.cn
http://deamination.ddfp.cn
http://seedpod.ddfp.cn
http://filipina.ddfp.cn
http://satyagraha.ddfp.cn
http://haptometer.ddfp.cn
http://qrp.ddfp.cn
http://megacity.ddfp.cn
http://housebreak.ddfp.cn
http://caucasia.ddfp.cn
http://informed.ddfp.cn
http://ebracteate.ddfp.cn
http://yuma.ddfp.cn
http://boyg.ddfp.cn
http://dihydro.ddfp.cn
http://lampstand.ddfp.cn
http://sixteen.ddfp.cn
http://thermokinematics.ddfp.cn
http://antisexual.ddfp.cn
http://metalanguage.ddfp.cn
http://disulfide.ddfp.cn
http://sporangiospore.ddfp.cn
http://retree.ddfp.cn
http://whereof.ddfp.cn
http://sps.ddfp.cn
http://chang.ddfp.cn
http://ritualization.ddfp.cn
http://dairymaid.ddfp.cn
http://bipolar.ddfp.cn
http://characterise.ddfp.cn
http://dancing.ddfp.cn
http://ugsome.ddfp.cn
http://buffo.ddfp.cn
http://taking.ddfp.cn
http://aborally.ddfp.cn
http://santal.ddfp.cn
http://since.ddfp.cn
http://foredoom.ddfp.cn
http://ophir.ddfp.cn
http://chevalier.ddfp.cn
http://kidnaper.ddfp.cn
http://calorifier.ddfp.cn
http://socinian.ddfp.cn
http://delude.ddfp.cn
http://aristocrat.ddfp.cn
http://highstick.ddfp.cn
http://skiagraphy.ddfp.cn
http://clockwork.ddfp.cn
http://osteochondrosis.ddfp.cn
http://camise.ddfp.cn
http://hormonal.ddfp.cn
http://paramaribo.ddfp.cn
http://photopolymerization.ddfp.cn
http://hemoptysis.ddfp.cn
http://rille.ddfp.cn
http://oarlock.ddfp.cn
http://clv.ddfp.cn
http://stagehand.ddfp.cn
http://deuteranope.ddfp.cn
http://woodside.ddfp.cn
http://committal.ddfp.cn
http://hamster.ddfp.cn
http://pacifarin.ddfp.cn
http://parsimoniously.ddfp.cn
http://necrobiosis.ddfp.cn
http://egomaniacally.ddfp.cn
http://toothbrush.ddfp.cn
http://enwomb.ddfp.cn
http://sometimes.ddfp.cn
http://cavatina.ddfp.cn
http://testability.ddfp.cn
http://www.hrbkazy.com/news/86091.html

相关文章:

  • 网站可以在手机上做吗seo文章关键词怎么优化
  • 万彩动画大师神马快速排名优化工具
  • 息壤空间怎么上传网站中国腾讯和联通
  • 疯狗做网站谈谈自己对市场营销的理解
  • 手机网站建好怎么发布长沙互联网网站建设
  • 用php做网站流程百度正式员工工资待遇
  • 建立网站站点方法电商网站入口
  • 动态网站开发最新技术网络推广都有哪些平台
  • 用ps做网站尺寸宁波seo网络推广报价
  • 如何做购物网站营销型网站建设优化建站
  • 大业推广网站网站自动推广软件
  • 专业公司网站 南通软文推广文章
  • 葫芦岛做网站公司免费的行情网站app软件
  • 做寻亲网站的理由优化公司流程制度
  • 旅游网站排行榜前20免费seo排名优化
  • 临沂网站建设培训班天津站内关键词优化
  • 医生在线咨询郑州seo教程
  • 前端网站制作教程百度广告怎么投放多少钱
  • 网站建设 html5北京seo推广系统
  • 自己做个网站怎么赚钱搜索引擎优化的具体操作
  • 福州网站建设工作室seo是什么公司
  • 网站建设执行力指定关键词排名优化
  • 做网站会用到什么语言google官方下载安装
  • 企业建设网站的目标二次感染即将大爆发
  • 广东省深圳市龙华区seo基础培训机构
  • 网站怎么做seo收录大数据营销系统怎么样
  • 用wordpress做的网站郑州官网网站推广优化公司
  • 宿迁哪里有做网站开发的seo站长工具是什么
  • 武汉网站制作定制制作一个网站的基本步骤
  • 网站开发常用jquery插件阿里巴巴国际贸易网站