FFmpeg限制CPU的使用率,使用“-threads 2”

–threads 2 参数

 使用–threads 2 可以将CPU的使用率控制在50%左右。

FFmpeg -i IN  –threads 2   OUT

源文链接:https://stackoverflow.com/questions/11357713/how-to-limit-ffmpeg-cpu-usage

The solution as outlined here

How can I limit FFMpeg CPU usage?

is to limit the number of threads that FFMpeg uses to less than the number of available cores on the computer.

Following up on your comment, you can supply an Argument via StartInfo

Process ffmpeg = new Process();
ffmpeg.StartInfo.UseShellExecute = false;
ffmpeg.StartInfo.FileName = "..ffmpeg.exe";
ffmpeg.StartInfo.Arguments = "-threads 2";  // <=== Add this line
ffmpeg.StartInfo.CreateNoWindow = true;
ffmpeg.Start();

测试一 -threads

-threads 2 以两个线程进行运行, 加快处理的速度。

 

 转换视频:7752c7dd-36aa-47eb-95a5-2193c9726541.wmv

目标视频:7752c7dd-36aa-47eb-95a5-2193c9726541.mp4

转换命令:FFmpeg -i IN -map 0 -r 25 -threads 4 -y Out

 

本机测试机环境:win7旗舰版+Intel(R) CoreTMi5-2400 CPU @3.10GHz  3.10GHz+4.00GB+64bit

 

序号

开启的线程数

占用CPU

CPU使用率(%

转换时间(min

其他

1

1

1

25

7

 

2

2

4

40-55

3

2CPU50%1=50%1CPU=40%

3

4

4

60-70

3

4CPU比较平均

4

4

4

70-80

2

4CPU使用平均

5

-

4

80-85

2

4CPU使用较平均

 

为了达到更快的转换速度,CPU使用率在可允许范围内,选择-threads 2

 

 
原文地址:https://www.cnblogs.com/yuanloo/p/4366194.html