Как я могу создать стабильную контрольную сумму медиафайла?

StackOverflow https://stackoverflow.com/questions/2395817

Вопрос

Как я могу создать контрольную сумму только медиа-данных без метаданных, чтобы получить стабильную идентификацию для медиафайла. Предпочтительно перекрестный подход с библиотекой, которая имеет поддержку для многих форматов. Например, VLC, FFMPEG или MPLayer.

(Медиа-файлы должны быть аудио и видео в общих форматах, изображения были бы приятно иметь)

Это было полезно?

Решение

Я не знаю о каком-либо существующем независимом от платформы программного обеспечения, который выполнит это, но я знаю способ, которым это может быть достигнуто в интерпретанном (независимом на платформе) языке, таком как Java.

По сути, нам просто нужно прокрутить любые метаданные (теги) из файла, Demultiplexing видео файлов заранее. Теоретически после Demux и удаления метаданных, можно использовать файл и сравнить с другим файлом, который претерпел тот же процесс, чтобы соответствовать идентичным файлам, несмотря на разные теги. В отличие от отпечатков пальцев, это не будет идентифицировать аналогичные песни / фильмы, но и идентичных файлов (представьте, что вы можете захотеть 10 разных версий или битрейты данной песни, которую вы заархивировали, но не хотите 2 одинаковых копий любого из них, плавающих вокруг) Отказ

Наиболее тревожную часть этого является удаление тегов, так как существует много разных спецификаций для форматов тегов, которые не обязательно реализованы одинаковыми в различных приложениях, то есть одинакового точного аудиофайла, приведенного идентичными тегами отдельно через два разных приложения, могут привести к тому, что они могут привести к тому, что два разных приложения не могут привести к идентичным выводам. Отказ Единственный способ, которым это может представлять проблему, фатальный к понятию аудиозаконной контрольной суммы - это если популярное программное обеспечение для мечения вносит любые изменения в двоичной аудиологии файла или прокладывают аудио нестандартным способом.

Принимая контрольную сумму тривиально, но я не осознаваю вершину головки каких-либо независимых библиотек платформы для Demux и Detag MPEG файлов. Я знаю, что в «NIX-средах MPGTX - это отличный инструмент командной строки, который мог бы выполнять Demux и diTAG, но, очевидно, это не независимое от платформы решения.

Может быть, кто-то там чувствует себя амбициозным?

Другие советы

Одним из возможных решений, которые я нашел, кажется, с VLC:

./VLC -I rc snd.mp3 :sout='#std{mux=raw,access=file,dst=-}' vlc://quit | sha1sum
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top