【问题标题】:How to remove "wrting library" from an MP3 file using ffmpeg?如何使用 ffmpeg 从 MP3 文件中删除“写入库”?
【发布时间】:2025-12-19 10:00:06
【问题描述】:

我尝试使用 ffmpeg 从我的一些 mp3 文件中删除“写作库”条目,这是我使用的命令:

ffmpeg -i input.mp3 -map_metadata -1 -c copy output.mp3

该命令删除了所有其他标签,但“写作库”仍然完好无损。

我也尝试过其他的 mp3 标签编辑工具,但都没有成功。

这是一个示例 mp3 文件的媒体信息:

Format                         : MPEG Audio
File size                      : 32.1 MiB
Duration                       : 1 h 9 min
Overall bit rate mode          : Variable
Overall bit rate               : 64.0 kb/s
Writing library                : LAMEUUULAME3.91
Cover                          : Yes
Cover MIME                     : image/jpeg

Audio
Format                         : MPEG Audio
Format version                 : Version 1
Format profile                 : Layer 3
Format settings                : Joint stereo / MS Stereo
Duration                       : 1 h 9 min
Bit rate mode                  : Variable
Bit rate                       : 64.0 kb/s
Channel(s)                     : 2 channels
Sampling rate                  : 44.1 kHz
Frame rate                     : 38.281 FPS (1152 SPF)
Compression mode               : Lossy
Stream size                    : 31.9 MiB (100%)
Writing library                : LAMEUUULAME3.91

任何帮助将不胜感激。谢谢。

【问题讨论】:

    标签: ffmpeg tags mp3 mediainfo


    【解决方案1】:

    您必须禁用 ID3 标记以及 Xing 标头。

    ffmpeg -i input.mp3 -map_metadata -1 -write_xing 0 -d3v2_version 0 -c copy output.mp3
    

    【讨论】:

    • 感谢您的建议。我尝试了您的代码,但该文件变得无法播放。 MPC-HC 显示以下消息:File Source (Async.)::Output Media Type 0: -------------------------- Unknown AM_MEDIA_TYPE: majortype: MEDIATYPE_Stream {E436EB83-524F-11CE-9F53-0020AF0BA770} subtype: MEDIASUBTYPE_MPEG1Audio {E436EB87-524F-11CE-9F53-0020AF0BA770} formattype: TIME_FORMAT_NONE {00000000-0000-0000-0000-000000000000} bFixedSizeSamples: 1 bTemporalCompression: 0 lSampleSize: 1 cbFormat: 0(第 1 部分)
    • Media Type 1: -------------------------- Unknown AM_MEDIA_TYPE: majortype: MEDIATYPE_Stream {E436EB83-524F-11CE-9F53-0020AF0BA770} subtype: TIME_FORMAT_NONE {00000000-0000-0000-0000-000000000000} formattype: TIME_FORMAT_NONE {00000000-0000-0000-0000-000000000000} bFixedSizeSamples: 1 bTemporalCompression: 0 lSampleSize: 1 cbFormat: 0(第二部分)
    • 是否可以在保留其他标签的同时删除“写作库”条目?对于h264视频流,-bsf:v "filter_units=remove_types=6" 可以完美的撕掉写库入口。我想知道是否有任何类似的 mp3 音频代码。
    • 这是玩家限制。在 .VLC 和 AIMP 中工作。无论如何,LAME 编码器总是会直接将自己的标签写入比特流。不能跳过。