博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ffmpeg 转码线程数的控制
阅读量:4200 次
发布时间:2019-05-26

本文共 861 字,大约阅读时间需要 2 分钟。

转码命令

ffmpeg -threads 1 -i 1080P_daxiongtu_30fps_2D.mp4 -c:v libx264 -s 3840x2160 -b:v 20M -r 120 -profile:v high -preset veryslow -threads 1 -c:a copy -f mp4 rm.mp4 -y

这里配置 编码线程为 1 ,解码线程为 1

 

TOP 分析

通过 top 可以发现单核的 cpu 使用率到了 100%

 

PS 分析

通过 ps 查看 ffmpeg 的线程数,可以看到是一个线程

[root@bogon ~]# ps -T -p 21097PID SPID TTY TIME CMD21097 21097 pts/5 00:00:55 ffmpeg

 

PROC 分析

可以看到 Threads 的值为1

[root@bogon ~]# cat /proc/21097/status Name:	ffmpegState:	R (running)Tgid:	21097Ngid:	0Pid:	21097PPid:	20392TracerPid:	0Uid:	0	0	0	0Gid:	0	0	0	0FDSize:	256Groups:	0 VmPeak:	 3191924 kBVmSize:	 3191924 kBThreads:	1SigQ:	0/61948SigPnd:	0000000000000000Seccomp:	0Cpus_allowed:	ffCpus_allowed_list:	0-7Mems_allowed_list:	0voluntary_ctxt_switches:	5nonvoluntary_ctxt_switches:	3839

 

分析

        ffmpeg 在配置单线程转码过程中是串行处理的方式,media的处理都是在主线程内完成了

        这样的架构在服务器或者是多核机器里面,就会出现cpu利用率不高的情况,发现cpu只用了30%,但是转码缺转不动的情况了;

转载地址:http://jrfli.baihongyu.com/

你可能感兴趣的文章
Install Python 2/3 on CentOS 6.5 Server
查看>>
PySpark in PyCharm on a remote server
查看>>
virtualbox增强功能-VBoxGuestAdditions安装
查看>>
Linux下安装MySql(版本5.5以上)
查看>>
Virtualbox中Linux添加一个新磁盘
查看>>
胜景之地
查看>>
jar 独立运行文件制作(于windows平台)
查看>>
使用selenium动态爬取
查看>>
在SAS中进行关联规则分析
查看>>
互联网金融产品如何利用大数据做风控
查看>>
数据库基础问答Q&A
查看>>
DeepCopy
查看>>
R语言问题——连接数据库乱码问题解决方案
查看>>
json读取+对象转换+csv读写
查看>>
加密算法比较3DES AES RSA ECC MD5 SHA1等
查看>>
[Python]Anaconda(python数据分析工具箱版)安装
查看>>
CentOS安装glibc-2.14
查看>>
Hadoop FS Shell Command
查看>>
Eclipse版本查看
查看>>
Linux下安装MySql(多实例+主备)
查看>>