Получить длительность видео ogg theora - PullRequest
3 голосов
/ 12 августа 2010

В настоящее время я играю с libtheoradec, но не могу найти простой способ узнать время воспроизведения файла ogg theora.В дистрибутиве libtheoradec есть несколько примеров, но ни один из них не показывает, как получить длину (т.е. время воспроизведения в секундах или около того) потока theora.Эта информация не доступна где-то в шапке или около того?Действительно ли мне нужно прочитать все страницы и получить длину из позиции гранул последнего пакета?Это действительно единственный способ?Спасибо за помощь!

Ответы [ 2 ]

1 голос
/ 30 августа 2011

Да, информация не указана в заголовке Theora, и вам нужно получить информацию из гранулезо последнего пакета.

Для этого у меня есть код в ветке chop-rewrite в liboggz. Функция oggz_get_duration() возвращает значение в секундах и используется oggz-chop для предоставления HTTP-заголовка ответа Content-Duration: https://github.com/kfish/liboggz/blob/chop-rewrite/src/liboggz/oggz_seek.c

0 голосов
/ 17 марта 2011

Извините, я не видел ваш вопрос, прежде чем задавать мой: Есть ли способ определить размер файла видео .ogg до его полной загрузки?

Я удивлен, что никто не ответил раньше, так как это может показаться хорошим вопросом, так как ogg-видео получает больше пользы благодаря HTML5.

...