如何使用ffmpeg删除所有元数据? [英] How to remove ALL metadata using ffmpeg?

查看:516
本文介绍了如何使用ffmpeg删除所有元数据?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有输入文件:infile.mp3此文件包含元数据(艺术家,类型等)我尝试删除输出wav文件的所有元数据.

I have input file: infile.mp3 This file contains metadata (artist, genre, etc.) I try remove all metadata for output wav file.

是的!我找到了选项:

-map_metadata -1

-map_metadata -1

但是输出对我来说是意外的...

But output is unexpected for me...

$ ffmpeg -i infile.mp3 -acodec pcm_s16le -ac 2 -ar 44100 -map_metadata -1 ./outfile.wav

$ ffmpeg -i infile.mp3 -acodec pcm_s16le -ac 2 -ar 44100 -map_metadata -1 ./outfile.wav

好!

$ ffprobe outfile.wav
Input #0, wav, from 'inp.wav':
  Metadata:
    encoder         : Lavf56.25.101
  Duration: 00:04:00.47, bitrate: 1411 kb/s
    Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz, 2 channels, s16, 1411 kb/s

你看到了吗?编码器元数据存在!

You see? encoder metadata exists!

在"subchunk1_id"后带有"fmt"值的wav头中,我希望"subchunk2_id"具有数据"值(明确的示例):

And in wav header after "subchunk1_id" with "fmt " value I expect "subchunk2_id" with "data" value (clear expected example):

$ strings outfile.wav | more
RIFFFB
WAVEfmt
data

但不是(LIST,INFOISFT等):

But it is not (LIST, INFOISFT, etc):

$ strings outfile.wav | more
RIFFFB
WAVEfmt 
LIST
INFOISFT
Lavf56.25.101
data

好吧.如何真正删除输出文件的所有元数据?

Well.. How to really remove all metadata for output file?

推荐答案

-fflags +bitexact -flags:v +bitexact -flags:a +bitexact

这篇关于如何使用ffmpeg删除所有元数据?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆