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
相关推荐
史迪奇_xxx5 小时前
10、一个简易 vector:C++ 模板与 STL
java·开发语言·c++
我是华为OD~HR~栗栗呀7 小时前
华为od-21届考研-C++面经
java·c语言·c++·python·华为od·华为·面试
oioihoii7 小时前
C++ 中的类型转换:深入理解 static_cast 与 C风格转换的本质区别
java·c语言·c++
小妖6667 小时前
vscode 怎么运行 c++ 文件
开发语言·c++
lingran__7 小时前
算法沉淀第三天(统计二进制中1的个数 两个整数二进制位不同个数)
c++·算法
小冯记录编程8 小时前
深入解析C++ for循环原理
开发语言·c++·算法
磨十三9 小时前
C++ 容器详解:std::list 与 std::forward_list 深入解析
开发语言·c++·list
今麦郎xdu_9 小时前
【Linux系统】命令行参数和环境变量
linux·服务器·c语言·c++
情深不寿31711 小时前
C++特殊类的设计
开发语言·c++·单例模式
Vanranrr11 小时前
nullptr vs NULL:C/C++ 空指针的演变史
c语言·c++