У меня есть видео .MOV, отправленное телефоном. Могу ли я получить реальные данные о создании файла и автора? Я пытался использовать ffprobe, mediainfo и аналогичный инструмент, но даю мне только дату, когда я его загружу.Получение метаданных для видео MOV
ответ
Я написал быстрый скрипт Python, который может получить временные метки создания и изменения, поскольку их легко найти. Найти автора немного сложнее, потому что его можно хранить несколькими способами. Пример использования:
$ ./mov-timestamps.py file.mov
creation date: 2013-03-29 16:14:01
modification date: 2013-03-29 16:14:13
Иногда вы можете увидеть дату 1/1/1904 Это означает, что отметка времени равна 0. Если вы видите дату 1/1/1970, файл, вероятно, был создан FFmpeg, который не сохраняет эти метаданные по соображениям безопасности.
#!/usr/bin/python
import datetime
import struct
import sys
ATOM_HEADER_SIZE = 8
# difference between Unix epoch and QuickTime epoch, in seconds
EPOCH_ADJUSTER = 2082844800
if len(sys.argv) < 2:
print "USAGE: mov-length.py <file.mov>"
sys.exit(1)
# open file and search for moov item
f = open(sys.argv[1], "rb")
while 1:
atom_header = f.read(ATOM_HEADER_SIZE)
if atom_header[4:8] == 'moov':
break
else:
atom_size = struct.unpack(">I", atom_header[0:4])[0]
f.seek(atom_size - 8, 1)
# found 'moov', look for 'mvhd' and timestamps
atom_header = f.read(ATOM_HEADER_SIZE)
if atom_header[4:8] == 'cmov':
print "moov atom is compressed"
elif atom_header[4:8] != 'mvhd':
print "expected to find 'mvhd' header"
else:
f.seek(4, 1)
creation_date = struct.unpack(">I", f.read(4))[0]
modification_date = struct.unpack(">I", f.read(4))[0]
print "creation date:",
print datetime.datetime.utcfromtimestamp(creation_date - EPOCH_ADJUSTER)
print "modification date:",
print datetime.datetime.utcfromtimestamp(modification_date - EPOCH_ADJUSTER)
Спасибо за скрипт. Я запускаю его, но он дает мне дату, когда я скачал его на ПК. Поэтому я считаю, что метаданные были перезаписаны. –
Если вы играете, вы можете расширить скрипт так, чтобы он немного углубился в файл и обнаружил время создания/модификации атомов трака. –
Я не знаю, как это сделать. Можете ли вы мне что-то связать (учебник, руководство)? –
- 1. youtube получение метаданных видео
- 2. Получение видео метаданных с видео Youtube
- 3. Предотвращение загрузки .mov-видео
- 4. Получение метаданных из нескольких предварительных загрузок видео
- 5. Выход FFMPEG как видео Mp4 для видео ввода mov
- 6. Изменение метаданных FFmpeg видео
- 7. Получение временных метаданных на Chromecast
- 8. Получение метаданных с замедленным движением из захваченного видео в iOS
- 9. Есть ли стандартная схема для метаданных видео?
- 10. Как играть .mov файлы в теге видео
- 11. андроид формат .mov воспроизведения видео с URL
- 12. Включите VideoJS для воспроизведения .mov
- 13. Получение метаданных индекса Rethinkdb
- 14. Подтверждение даты создания видео метаданных?
- 15. AVAssetWriter Как создать видео mov без сжатия?
- 16. Предварительный просмотр видео в HTML5 типа .mov
- 17. Получение метаданных SHOUTcast вручную
- 18. Как получить продолжительность видео с mp4, wmv, flv, mov видео
- 19. Получение метаданных службы WCF
- 20. получение файлов полей метаданных
- 21. Получение метаданных от NSFileManager
- 22. Получение полей столбца метаданных
- 23. Получение метаданных от MPMoviePlayerController
- 24. Получение метаданных mp3-файлов
- 25. FFMPEG - использование метаданных Orientation для мобильных записей
- 26. Использование Flash для экспорта mov/quicktime видео показывает призрачные изображения
- 27. Получение метаданных проверки для встроенных валидаторов
- 28. Получение видео для воспроизведения на веб-странице
- 29. Получение метаданных URL из JS
- 30. Получение метаданных подкаста из iPodLibrary
Готовы ли вы копаться в двоичном файле программно? Если да, то какой язык? Не уверен в том, что инструмент будет делать это, поскольку вы уже пытались обычным подозреваемым. –
Я не пытался это сделать. Не могли бы вы объяснить мне, как я могу? –