防止 libavformat (FFmpeg) 在输出中添加“ENCODER”标签/帮助剥离标签

Wya*_*740 5 tags audio encoding metadata ffmpeg

我制作了一个 bash 脚本,通过 FFMpeg 将音频或视频元数据从一个文件传输到另一个文件,无论媒体容器格式如何。我的问题是 FFMpeg 始终添加一个“编码器”标签。

例子:

在运行 FFMpeg 之前:

     文件:track01.cdda.flac

  Metadata:
    ALBUM           : Wish You Were Here
    ARTIST          : Pink Floyd
    COPYRIGHT       : 1975 Harvest Records
    DATE            : 1975
    GENRE           : Experimental Rock
    TITLE           : Shine On You Crazy Diamond
    track           : 1
Run Code Online (Sandbox Code Playgroud)

通过 FFMpeg 运行后:

     文件:track01-iphone-alac.m4a

  Metadata:
    ALBUM=Wish You Were Here
    ARTIST=Pink Floyd
    COPYRIGHT=1975 Harvest Records
    DATE=1975
    GENRE=Experimental Rock
    TITLE=Shine On You Crazy Diamond
    track=1
    ENCODER=Lavf55.12.100
Run Code Online (Sandbox Code Playgroud)

所以真的,我想要么强制 FFMpeg添加“编码器”标签,要么我想在之后去掉那个标签。有没有办法做到这一点?我真的不想花几个小时试图在我的 Pentium 4 HT 上再次编译 FFMpeg——这是我目前唯一的工作计算机。我宁愿不必使用另一个程序,除非它与 FFMpeg 或 MPlayer/Mencoder 足够相关,如果我安装了这些程序,我就不必安装任何新程序。

And*_*asT 9

老问题,但如果有人需要它,我发现这可以防止创建编码器标签,至少在 MP4 文件上。

-fflags +bitexact
Run Code Online (Sandbox Code Playgroud)


Geo*_* Y. 3

-metadata encoder='my encoder'命令行选项不起作用吗?

  • 这对我不起作用,至少对 Ogg​​ Vorbis 文件不起作用。 (3认同)