某些 MP3 上的 REPLAYGAIN 值被忽略 - FFmpeg Transcoder cs - 处理收到错误数据:454

某些 MP3 上的 REPLAYGAIN 值被忽略 - FFmpeg Transcoder cs - 处理收到错误数据:454

我遇到了以下问题。我使用 Windows,刚刚安装了 ffmpeg-2024-03-07-git-97beb63a66-full_build,但并没有解决问题。

我已使用 Foobar 将 Track ReplayGain 添加到我的音乐库。

我遇到了 FFMpeg 在转码某些 MP3 时不考虑 ReplayGain 值的问题,这些 MP3 似乎都是购买的,而不是我翻录的。这个问题出现在不到 1% 的文件中。

我将我的库设置为按 Track 进行 ReplayGain,并且作为故障排除步骤,还让 Foobar 处理罪魁祸首的 Album RG 值。

有问题的文件在 Foobar 中直接播放时运行良好,考虑到 ReplayGain 值且没有尖峰。

但是,当使用 FFMpeg 时,一小部分 MP3 的 ReplayGain 值会被忽略。

对于我收藏的 99% 的音乐,FFMpeg 都会为我转码新的 MP3,而且新文件明显更安静,这与负 ReplayGain 值所预期和期望的一致(对于少数具有正值的音频,新文件的声音会更响亮)。

但是,对于某些人来说,新转码的文件具有完全相同的音量,尽管存在 ReplayGain 值,但在播放时会产生尖峰,并且比应有的音量大 3 倍。

由于这些是来自商业来源,因此这些 MP3 几乎都受版权保护,因此 FFMpeg 在转码时无法改变音量。但是,查看时,版权标签设置为否。

我正在使用 MyMedia for Alexa 通过我的 Echo 设备播放我的媒体,因此它(而不是我)会向 FFMpeg 生成命令,然后播放生成的转码 MP3。

我想知道这些文件的问题是什么。即使我无法修复转码问题,最好有一种方法可以通过 MP3 标签标准搜索罪魁祸首,这样我就可以将它们转换为 WAV 并转换回 MP3,希望 ReplayGain 能够正常工作。但是,我不知道瓶颈是什么,也不知道 FFMpeg 不喜欢什么。

MyMedia for Alexa 提供了以下日志,给出了处理数据错误 454,但我找不到相关信息。

不过,当我输入这些内容时,我发现这很有趣。对于未转码的文件,MyMedia 发送:

FFmpegTranscoder.cs:CreateTranscodeStream:358 FFMpegTranscoder::OnTranscodeStream -  Commandline = -i "K:\Hornsby, Bruce\2009-07-25 - Asheville, NC - Biltmore House\bh090725d3_01_Lady_With_a_Fan.mp3" -movflags +faststart -codec copy "C:\Program Files\MyMediaForAlexa\TranscodeCache\i5ratntg.co1.mp3"

但是,对于正确处理的文件:

FFMpegTranscoder::OnTranscodeStream -  Commandline = -i "K:\Simon, Paul\For Kathy [vinyl]\10.Waiting For Art.mp3" -ab 384k -ac 2 -vn -f mp3 -af volume=replaygain=track "C:\Program Files\MyMediaForAlexa\TranscodeCache\sxb15ked.zf2.mp3"

所以:

-movflags +faststart -codec copy

相对:

-ab 384k -ac 2 -vn -f mp3 -af volume=replaygain=track

即使两者都有 ReplayGain 值,为什么 FFMpeg 需要其中一个文件的参数,而另一个文件则不需要。我想要后者的全部参数。

有人有什么想法吗?谢谢!

10/03/2024 16:27:44.137 11624:0 51 FFmpegTranscoder.cs:process_ErrorDataReceived:454 FFMpegTranscoder::OnTranscodeStream - 2568 Debug: ffmpeg version 2024-03-07-git-97beb63a66-full_build-www.gyan.dev Copyright (c) 2000-2024 the FFmpeg developers

[由于大小限制,无法包含整个日志,因此希望这些信息足够]

相关内容