Понимание (и перекодирование) длительности и поиск в файлах.ogv?

Я использую recordMyDesktop v0.3.8.1 в Ubuntu 11.04 для захвата .ogv моей сессии. После того, как я закончу, я открываю .ogv в медиаплеере VLC 1.1.9 Багаж; Вот как это выглядит:

VLC -1.png

... в частности, нет никакой длины - и, кроме того, поиск ужасен.

Теперь можно обвинить в этом старое программное обеспечение и т. Д., Но потом я загружаю

http://archive.org/download/Elephants_Dream_teaser_2/elephantsdream_teaser.ogv

... и откройте это в той же версии VLC - и о чудо

VLC -2.png

... продолжительность этого файла распознается VLC; и кроме того, поиск работает относительно хорошо!

Итак, я пытаюсь сравнить эти два файла, используя oggz-info:

$ oggz-info ./out.ogv ./elephantsdream_teaser.ogv 
Filename: ./out.ogv
Content-Duration: 00:00:34.916

Skeleton: serialno 1766583216
    3 packets in 3 pages, 1.0 packets/page, 36.842% Ogg overhead
    Presentation-Time: 0.000
    Basetime: 0.000

Theora: serialno 0666666463
    842 packets in 56 pages, 15.0 packets/page, 0.593% Ogg overhead
    Theora-Version: 3.2.1
    Video-Framerate: 24.000 fps
    Video-Width: 640
    Video-Height: 480
------------------------------------------------------------
Filename: ./elephantsdream_teaser.ogv
Content-Duration: 00:01:15.228

Theora: serialno 3398283591
    1799 packets in 310 pages, 5.8 packets/page, 0.594% Ogg overhead
    Theora-Version: 3.2.1
    Video-Framerate: 24.000 fps
    Video-Width: 532
    Video-Height: 300

Vorbis: serialno 4073121151
    3295 packets in 76 pages, 43.4 packets/page, 0.821% Ogg overhead
    Audio-Samplerate: 44100 Hz
    Audio-Channels: 2

... и единственное, что я могу заметить, это: ./out.ogv есть скелет, но нет звука; ./elephantsdream_teaser.ogv не имеет скелета, но имеет звуковую дорожку. Я не думаю, что аудио является основным отличием здесь, так как я взял recordmydesktop с аудио, и они ведут себя одинаково - и я также удалил скелет из этих видео, используя oggCat, без улучшения в VLC.

Я знаю, что: ( Настройка серверов для Ogg Media - HTTP | MDN):

Формат Ogg не инкапсулирует продолжительность медиа

( Получение длины ogg-трека из s3 без загрузки всего файла):

Способ [получить длину] состоит в том, чтобы использовать HTTP-запросы диапазона, чтобы извлечь конец файла, найти последнюю страницу Ogg и извлечь из нее временную метку.

( manpage: oggCut)

видеопоток состоит из I-кадров (которые являются полными изображениями) и P-кадров (которые являются дельта-изображениями для ведущего I-кадра)

( Thundering Herd: индексирование ключевых кадров в видео Ogg для быстрого поиска)

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

Итак, разница между out.ogv от recordmydesktop, а также elephantsdream_teaser.ogv с точки зрения производительности в VLC, должен иметь отношение к ключевым кадрам. Итак, мои вопросы:

  • Какой инструмент я могу использовать, чтобы проверить разницу между этими двумя файлами с точки зрения существования и количества ключевых кадров?
  • Какой инструмент я могу использовать, чтобы конвертировать out.ogv к версии, которая ведет себя так же в VLC (показывая продолжительность, и с разумным временем поиска), как elephantsdream_teaser.ogv делает - надеюсь, без перекодировки с потерями?

0 ответов

Другие вопросы по тегам