如何创建只有媒体数据的校验和不元数据来获得对媒体文件稳定的识别。优选使用具有许多格式的支持库的跨平台的方法。例如VLC,FFMPEG或mplayer的。

(媒体文件应在常见格式的音频和视频,图像将是不错的有太多)

有帮助吗?

解决方案

我不知道任何现有的独立于平台的软件,将做到这一点的,但我知道的方式,这可能在解释(独立于平台)的语言如Java来完成。

基本上,我们只需要剥除从文件的任何元数据(代码),预先解复用的视频文件。解复用和删除元数据后,从理论上讲,人们可以散列文件,并与之比较的是经历了同样的过程,尽管有不同的标记相同的文件匹配另一个文件。不同于指纹,这将不能识别类似的歌曲/电影,但相同的文件(想象一下,你可能想您已存档的赋予歌曲的10个不同版本或比特率,但不希望任何人左右浮动2个完全相同的副本)

,因为有用于标签格式许多不同规格其不必实现在不同的应用程序相同的这方面最困扰部分去除的标签,即,通过两个不同的应用给定的相同的标记分别完全相同的音频文件可能不会导致相同的输出文件。如果流行标签软件使任何更改文件的二进制音频部分,或垫在非标准方式的声音的唯一方法,这可能造成致命的仅音频校验和的概念的一个问题是

以校验是微不足道的,但我不知道把我的任何平台无关库的头解复用器和detag MPEG文件的顶部。我知道,在“nix的环境,mpgtx是一个伟大的命令行工具,可以进行解复用和detag,但显然这不是一个独立于平台的解决方案。

也许有人在那里感觉雄心勃勃?

其他提示

一个可能的解决方案,我发现似乎与VLC:

./VLC -I rc snd.mp3 :sout='#std{mux=raw,access=file,dst=-}' vlc://quit | sha1sum
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top