有没有办法分析视频以找出它的响度,然后将其纠正为 ebu r128
Posted
技术标签:
【中文标题】有没有办法分析视频以找出它的响度,然后将其纠正为 ebu r128【英文标题】:Is there a way to analyse a video to find out its loudness and then correct it to ebu r128 【发布时间】:2019-11-13 10:44:48 【问题描述】:我想看看是否有人知道我可以分析视频音频并找出它的响度的最佳方法。
我想使用这些信息,然后通过 FFmpeg 或其他方式更正音频。 音频必须满足https://tech.ebu.ch/docs/r/r128.pdf ebu 标准响度-23 且不高于0.5。
有没有办法做到这一点?
我很难找到解决方案。
【问题讨论】:
ffmpeg 文件还不错trac.ffmpeg.org/wiki/AudioVolume 【参考方案1】:您可以使用我编写的名为ffmpeg-normalize
的Python 包。它使用内置的loudnorm
过滤器,但添加了一些方便的方法。请查看自述文件。
$ pip install --user ffmpeg-normalize
要获取 JSON 格式的响度统计信息,zse -p
和 -n
(试运行):
$ ffmpeg-normalize BigBuckBunny.avi -p -n
[
"input_file": "BigBuckBunny.avi",
"output_file": "normalized/BigBuckBunny.mkv",
"stream_id": 1,
"ebu":
"input_i": "-32.25",
"input_tp": "-8.70",
"input_lra": "20.60",
"input_thresh": "-44.86",
"output_i": "-23.26",
"output_tp": "-2.00",
"output_lra": "11.40",
"output_thresh": "-33.80",
"normalization_type": "dynamic",
"target_offset": "0.26"
,
"mean": null,
"max": null
]
在音频流上运行规范化并复制视频:
ffmpeg-normalize BigBuckBunny.avi -c:a aac -b:a 192k
这会将文件写入normalized/BigBuckBunny.mkv
并使用 ffmpeg 的内部 AAC 编码器重新编码音频流。要更改输出文件名,请使用-o
。
【讨论】:
有没有办法对视频文件执行此操作。我有 mxf 视频文件,还必须输出回 mxf 如何指定放置文件的位置及其格式。我会尝试使用-of C:/APerson/Desktop -o new.mxf
但转换失败
只需使用-o
指定完整的输出路径。如果您遇到任何错误,请提供完整的日志(例如复制到 pastebin)。输出格式是通过文件扩展名自动设置的(就像在 ffmpeg 中一样)。
"仅实现了 48khz" – 尝试将 -ar 48000
添加到命令选项中。
检查ffmpeg -i input.mxf -c:v copy -c:a aac -b:a 192k -ar 48000 -map 0 output.mxf
是否有效。如果不是,这是一个上游问题,与这里的特定问题无关。在这种情况下,请在Super User、Video Production 或 ffmpeg-user 邮件列表中提出新问题。以上是关于有没有办法分析视频以找出它的响度,然后将其纠正为 ebu r128的主要内容,如果未能解决你的问题,请参考以下文章