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

网站外包建设dw做网站学习解析

网站外包建设,dw做网站学习解析,北京最近确诊病例轨迹,做水晶接单在哪个网站接前言: 本人因为之前实习,在ffmpeg的编译安装上面踩了很多坑,虽然网上有编译好的ffmpeg,但是自己学会编译以后感觉还是不一样,而且有些功能需要自己添加到编译选项里面去 一 准备工作: 1.1 下载ffmpeg最新…

前言:

本人因为之前实习,在ffmpeg的编译安装上面踩了很多坑,虽然网上有编译好的ffmpeg,但是自己学会编译以后感觉还是不一样,而且有些功能需要自己添加到编译选项里面去

一 准备工作:

1.1 下载ffmpeg最新的源码,当然你也可以下载其他版本的

1.2 下载一个Git,这个应该都有

1.3 下载MSYS
https://www.msys2.org/

1.4 下载x264的源码

:https://www.videolan.org/developers/x264.html,为了支持ffmpeg的H264编解码必须先编译这个

1.5 总结

  • 安装并配置 MYSY2
  • 安装 git (可选)
  • ffmpeg 源码
  • x264 源码(可选)

1.6 相关环境配置

MSYS2 支持多个编译器工具链,它们的环境是独立的(可以去安装文件夹查看),这里选择启动 MINGW64 (如果你也是64位系统的话)

pacman -S mingw-w64-x86_64-toolchain  # mingw64编译工具链,win下的gcc
pacman -S base-devel    # 一些基本的编译工具
pacman -S yasm nasm     # 汇编器

这个路径根据你的来

二 编译ffmpeg

对应编译来说,我们可以直接在对应目录去直接./configue,这里推荐一个更简便的方法就是写一个脚本,让他编译和安装

你需要创建两个.sh文件和两个install文件

对于build-x264.sh来说

#!/bin/sh
basepath=$(cd `dirname $0`;pwd)
echo ${basepath}cd ${basepath}/x264   # 根据路径名称自行修改
pwd./configure --prefix=${basepath}/x264_install --enable-shared
make -j8
make install

对于build-ffmpeg来说

#!/bin/sh
basepath=$(cd `dirname $0`;pwd)
echo ${basepath}cd ${basepath}/ffmpeg-8.0
pwdexport PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:/d/software/FFmpeg/x264_install/lib/pkgconfig
echo ${PKG_CONFIG_PATH}
S
./configure --prefix=${basepath}/ffmpeg-8.0_install \
--enable-gpl --enable-libx264 --disable-static --enable-shared \
--extra-cflags=-l${basepath}/x264_install/include --extra-ldflags=-L${basepath}/x264_install/libmake -j8
make install

这个是最基本的配置,对应的路径记得更改

在 MSYS2 的 shell 中,打开源码所在文件夹,并执行脚本

cd /d/software/FFmpeg

./build-x264.sh

对于ffmpeg也一样

cd /d/software/FFmpeg

./build-ffmpeg.sh

ffmpeg 代码量较大,可能会编译比较久,多线程 make 可加快编译速度。我使用make -j8大约花了七八分钟。

编译完成后,就可以在 ffmpeg-8.0_install 路径下看到库文件了。其中 bin 下的一堆 dll 就是动态库文件。

弄完以后就可以在里面看到

对应的bin文件就有ffmpeg.exe文件,你可以把他的路径加入到系统变量里面,然后通过命令行去使用他

三 让ffmpeg支持硬件编解码

当前这个只是最基础的配置,如果想支持硬件的编解码还需要下载对应的SDK才行,这个你需要到官网去下载,然后安装到对应的路径,然后在编译的脚本里面加上对应的编译选项和下载的SDK的路径

对应的安装地址你可以去找一下,很简单,无脑点安装就行了

比如:

这是我下载的英伟达支持硬件编码的文件

然后编译脚本改成

#!/bin/sh
basepath=$(cd `dirname $0`;pwd)
echo "当前脚本目录: ${basepath}"cd ${basepath}/ffmpeg-8.0 || { echo "FFmpeg源码目录不存在!"; exit 1; }
pwdexport PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:/d/software/FFmpeg/x264_install/lib/pkgconfig
echo "PKG_CONFIG_PATH: ${PKG_CONFIG_PATH}"# CUDA 13.0路径(请确认与你的安装路径一致)
CUDA_PATH="/c/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v13.0"
echo "CUDA路径: ${CUDA_PATH}"# 检查CUDA解码库是否存在(关键!)
if [ ! -f "${CUDA_PATH}/lib/x64/nvcuvid.lib" ]; thenecho "错误:未找到nvcuvid.lib(NVIDIA解码核心库),请检查CUDA安装是否完整!"exit 1
fi# 配置编译参数(重点补充解码相关参数)
./configure \
--prefix=${basepath}/ffmpeg-8.0_install \
--enable-gpl \
--enable-libx264 \
--disable-static \
--enable-shared \
--extra-cflags="-I${basepath}/x264_install/include -I${CUDA_PATH}/include" \
--extra-ldflags="-L${basepath}/x264_install/lib -L${CUDA_PATH}/lib/x64" \
# 编码+解码全支持
--enable-cuda \
--enable-cuvid \          # 强制启用NVIDIA硬件解码(关键参数)
--enable-nvenc \
--enable-nonfree \
--enable-libnpp \
# 显式指定支持的解码格式(避免自动检测遗漏)
--enable-decoder=h264_cuvid,hevc_cuvid,mpeg4_cuvid,vp9_cuvid \
# 显式指定硬件加速方式
--enable-hwaccel=h264_cuvid,hevc_cuvidmake -j8 || { echo "编译失败!"; exit 1; }
make install || { echo "安装失败!"; exit 1; }echo "FFmpeg编译完成,已支持NVIDIA硬件编解码!"

这个执行完以后就支持硬件的编码器了,但是还是不支持硬件的解码,如果要支持硬件的解码,需要下载另外一个SDK

为什么呢?

你之前只装 CUDA Toolkit 能支持硬件编码(NVENC),是因为 FFmpeg 对 NVENC 编码的支持,默认依赖 CUDA Toolkit 中的部分基础库(如 libnvidia-encode.so,无需额外装 Video Codec SDK;
但 硬件解码(NVDEC)必须依赖 Video Codec SDK 提供的 cuvid 接口—— 你之前没装 SDK,所以解码模块编译失败,只能用软件解码。

所以安装完以后,对编译脚本更改一下,就可以让其支持硬件编解码了 

四 总结

其实实际操作下来,并没有多复杂,如果觉得麻烦就直接用编译好的能支持硬件编解码的ffmpeg,这样确实效率会更高一点,但是自己编译虽然有点痛苦,但是弄出来心情好一点

http://www.dtcms.com/a/562250.html

相关文章:

  • JavaScript基础篇:Array常用方法
  • asp网站 换模板网站如何做快捷支付接口
  • 网站建设文章官网图片站手机网站怎么做
  • HTTP 协议基本格式与 Fiddler 抓包工具实战指南
  • 金仓数据库KingbaseES通过KDTS实现SQLServer至KingbaseES迁移深度实战指南
  • 做英语quiz的网站wordpress个人资料页修改
  • (论文速读)FDConv:用于密集图像预测的频率动态卷积
  • 网站定位案例wordpress默认域名
  • 句容网站建设制作郑州市建设局官方网站
  • dbDiffo:一个免费的在线数据库设计工具
  • 拥抱现代安卓开发:从构建到发布的全新视角
  • 38_AI智能体核心业务之对话历史Agent:构建有记忆的智能对话系统
  • 体育 网站建设询价函格式池州网站seo
  • 莱阳网站制作天津网站制作费用
  • 001主引导扇区
  • PyCharm的初始设置
  • 天津 交友 网站建设网站建设流费用
  • 阜阳网站优化wordpress素锦 下载
  • 自建站怎么搭建学ui有前途吗
  • 南昌网站建设技术托管wordpress固定链接设置访问出错
  • 河南艾特网站建设果乐宝的网站建设
  • 惠州专业网站设计公司多说插件 wordpress
  • 网站建设分类方案合击版手游带月灵
  • C++世界的混沌边界:undefined_behavior
  • 【AI学习-comfyUI学习-文生图-各个部分学习-第一步】
  • 学习RT-thread(线程、线程调度方式、线程状态)
  • asp.net网站第一次运行慢成长厉程网站
  • 网站如何做攻击防护做啥英文网站赚钱
  • 云南省建设厅网站职称评审wordpress 代码行号
  • 频繁从一个网站链接到另一个网站会影响百度收录么简单的网站开发软件