Search code examples
ffmpeglamereplaygain

ffmpeg: remove lame replaygain tag from mp3


lame is writing a replaygain tag if the option --noreplaygain is not set:

ffmpeg -i testgain_0.mp3
Input #0, mp3, from 'testgain_0.mp3':
Duration: 00:01:00.42, start: 0.025057, bitrate: 192 kb/s
Stream #0:0: Audio: mp3, 44100 Hz, stereo, s16p, 192 kb/s
Metadata:
  encoder         : LAME3.99r
Side data:
  replaygain: track gain - -12.500000, track peak - unknown, album gain - unknown, album peak - unknown, 

Can I use ffmpeg to remove the "Side data"? In my trys with map metadata I cannot access this "Side data" to remove it: -map 0:0 -map_metadata -1


Solution

  • It appears to get removed if you roundtrip it via MP4.

    ffmpeg -i testgain_0.mp3 -c copy testgain_0.mp4
    
    ffmpeg -i testgain_0.mp4 -c copy nogain_0.mp3
    

    Or use a pipe for a single-step method:

    ffmpeg -i testgain_0.mp3 -c copy -f avi - | ffmpeg -i - -c copy nogain_0.mp3