windows 使用 ffmpeg + cuda 进行视频压缩测试

复制代码
参考博客:
    1. 【ffmpeg入门】安装CUDA并使用gpu加速:https://blog.csdn.net/m0_62599305/article/details/140518620

首先在使用之前,你需要先检查下你的电脑是否支持 cuda 加速:
    输入 
bash 复制代码
ffmpeg -hwaccels
复制代码
   输出如下信息表示支持 cuda 加速:
       
bash 复制代码
 Hardware acceleration methods:
        cuda
        dxva2
        qsv
        d3d11va
复制代码
测试情况:
    1. 使用 GPU:        
bash 复制代码
ffmpeg -hwaccel_output_format cuda    -c:v h264_cuvid    -i fastX.mp4 -vf "scale=iw/2:-1" -b:v 500k  -c:v h264_nvenc fastX_small_0001_gpu.mp4
复制代码
       速度 4x 左右

    2. 使用 CPU:        
bash 复制代码
ffmpeg 				  				  -c:v h264          -i fastX.mp4 -vf "scale=iw/2:-1" -b:v 500k  -c:v h264 		 fastX_small_0001_cpu.mp4
复制代码
        速度 14x 左右
        todo ??? 为啥 cpu 更快呢?

我的电脑环境情况:
    1. 显卡:NVIDIA GeForce RTX 4070 Ti
    2. cpu是 13th Gen Intel(R) Core(TM) i7-13700KF 3.40 GHz
    3. 内存32g
    4. gpu内存27.9g( 共享gpu内存15.9g,专用gpu内存 12g)
    5. cuda版本11.6
    6. ffmpeg版本:ffmpeg version 6.1.1-essentials_build-www.gyan.dev Copyright (c) 2000-2023 the FFmpeg developer
    7. fastX.mp4 的信息为:
        时长:02:20:50
        帧宽度:1920
        帧高度:1080
        数据速率:2997kbps
        总比特率:3377kbps
        帧速率:23.98 帧/秒

其他命令:
    1. 
bash 复制代码
ffmpeg -i input.mp4 -vf "scale=iw/2:-1" -b:v 1500k -c:v libx264 output.mp4
复制代码
    2. 
bash 复制代码
ffmpeg -i fastX.mp4 -vf "scale=iw/2:-1" -b:v 500k -c:v libx264 fastX_small_0001.mp4
相关推荐
sukalot33 分钟前
windows显示驱动开发-浮点、围栏支持、资源管理
windows·驱动开发
Maple_land1 小时前
Linux进程第八讲——进程状态全景解析(二):从阻塞到消亡的完整生命周期
linux·运维·服务器·c++·centos
ajassi20001 小时前
开源 C++ QT QML 开发(十一)通讯--TCP服务器端
c++·qt·开源
lyp90h1 小时前
高效SQLite操作:基于C++模板元编程的自动化封装
c++
minji...1 小时前
Linux相关工具vim/gcc/g++/gdb/cgdb的使用详解
linux·运维·服务器·c++·git·自动化·vim
Hello.Reader2 小时前
Flink State V2 实战从同步到异步的跃迁
网络·windows·flink
_OP_CHEN2 小时前
C++基础:(九)string类的使用与模拟实现
开发语言·c++·stl·string·string类·c++容器·stl模拟实现
爱编程的化学家2 小时前
代码随想录算法训练营第27天 -- 动态规划1 || 509.斐波那契数列 / 70.爬楼梯 / 746.使用最小花费爬楼梯
数据结构·c++·算法·leetcode·动态规划·代码随想录
月起星九2 小时前
为什么ffmpeg进行视频合成有时长误差
ffmpeg·音视频
数字化顾问3 小时前
C++分布式语音识别服务实践——架构设计与关键技术
c++