FFmpeg从音频级别生成文本

7

社区的朋友们好,

我希望使用ffmpeg从音频值生成一个文件(txt、csv)。有什么想法吗?

我使用这个代码来生成音频级别:

ffplay -f lavfi "amovie=input.aac, asplit [a][out1]; [a] showvolume=f=1:b=4:w=800:h=70 [out0]"

显示卷轴

非常感谢你。

1个回答

13

以下命令将生成CSV格式的文件,其中第一列表示音频帧时间(以秒为单位),第二列表示该帧的总RMS dB音量,第三列表示第一个通道的RMS音量,最后一列表示第二个通道的RMS音量。

ffprobe -f lavfi -i amovie=input.aac,astats=metadata=1:reset=1 -show_entries frame=pkt_pts_time:frame_tags=lavfi.astats.Overall.RMS_level,lavfi.astats.1.RMS_level,lavfi.astats.2.RMS_level -of csv=p=0

输出:

  Duration: N/A, start: 0.023220, bitrate: N/A
    Stream #0:0: Audio: pcm_f64le, 44100 Hz, stereo, dbl, 5644 kb/s
0.023220,-inf,-inf,-inf
0.046440,-inf,-inf,-inf
0.069660,-inf,-inf,-inf
0.092880,-27.330401,-22.685612,-24.414572
0.116100,-21.141091,-18.986082,-19.931269
0.139320,-20.955719,-18.549085,-19.587788
0.162540,-20.938002,-18.198237,-19.355561
0.185760,-19.852306,-20.032553,-19.941494
0.208980,-20.495281,-21.684953,-21.049508

reset决定统计数据的计算频率。我已将值设置为1,即每个音频帧独立计算。


1
非常感激, 有没有办法将它导出到文件(.txt或.csv)中? - Jmv Jmv
1
当然。在结尾处添加 1> log.txt - Gyan
很高兴见到你,Malvya。抱歉再问一下,我在哪里可以找到关于视频级别(YCbCr)的文档?我已经解决了播放方面的问题(ffplay)。 - Jmv Jmv
你能否发布一个新问题,明确说明你需要什么? - Gyan
有没有办法使用这个来处理来自IP摄像头的RTSP流? - blahreport
哇,非常感谢,真的很欣赏你的回答。 - Stpn

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接