декодирование mpeg 2

Метод 2 показывает фактическую версию x509, в то время как метод 1 показывает версию x509, основанную на нуле, где 0 = v1, 1 = v2, 2 = v3. Таким образом, на практике они оба показывают, что используется версия 3. Вы можете попробовать это самостоятельно, используя openssl x509 -text -in YOURCERT.pem, и вы получите что-то вроде

Certificate:
    Data:
        Version: 3 (0x2)

, и вы можете увидеть, что версия 3 дана, но также в скобках шестнадцатеричное значение (2), которое основано на нулевой версии. Вопрос в том, какие из ваших библиотек используют какой метод

5
задан David Segonds 23 February 2009 в 10:39
поделиться

6 ответов

Можно просмотреть исходный код ffmpeg (доступный через svn), или его документация API.

3
ответ дан 18 December 2019 в 12:02
поделиться

Чтение исходного кода от кодека, который работы кажутся правильным способом пойти. Я предлагаю следующее:

http://www.mpeg.org/MPEG/video/mssg-free-mpeg-software.html

Учитывая, что это упоминается на веб-сайте mpeg.org, я сказал бы, что Вы найдете то, в чем Вы нуждаетесь здесь.

В прошлом у меня было некоторое время для работы над декодированием mpeg видео (никакое аудио хотя), и принципы довольно просты. Существуют некоторые чистые включенные изображения, некоторые посреднические изображения, которые описаны относительно к самым близким основным, и остальные описаны с помощью самых близких основных/посреднических изображений.

Один временной интервал, одно изображение. Но недавние кодеки намного более сложны, я предполагаю!

РЕДАКТИРОВАНИЕ: синхронизация

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

6
ответ дан 18 December 2019 в 12:02
поделиться

Для аудио/видео синхронизации, в основном, нужно добавить метку времени к каждому видео и аудио кадру. Метка времени обычно известна как PTS (Метка времени Презентации). После того как видео/аудио является декодером декодером, аудио/видео рендерер должен запланировать кадр, который будет отображен в нужное время так, чтобы аудио/видео синхронизировалось.

Я думаю, что можно обратиться к главе, "Синхронизирующей Модель" Учебного руководства MPEG2 для деталей.

3
ответ дан 18 December 2019 в 12:02
поделиться

В зависимости от того, сколько Вы знаете о формате MPEG-2, Вы могли бы хотеть получить широкий обзор путем чтения статьи об этом сначала. Я имею в виду что-то как они:

Руководство новичков для стандарта MPEG-2

СЖАТИЕ ВИДЕО MPEG-2

1
ответ дан 18 December 2019 в 12:02
поделиться

Patric и Nils

Таким образом, Вы говорите, что существуют метки времени, hein... Это для видео части, только я предполагаю. Для аудио я предполагаю, что существует достаточно информации в заголовке (как "образцы в секунду"). Как часто эти метки времени необходимы? Я предполагаю, что чередование аудио и видео пакетов гарантирует, что видеоданные всегда перед аудиоданными или чем-то?

Править: Найденный, в чем я нуждался: http://www.dranger.com/ffmpeg/tutorial01.html

1
ответ дан 18 December 2019 в 12:02
поделиться

Helltone,

Метки времени для аудиоданных все еще необходимы, потому что аудио и видеокадр не может быть выровненный в том же месте. Например:

V: 1000 1040 1080 1120... A: 990 1013 1036 (проиграл) 1082

Вы, возможно, должны компенсировать смещение между первым видео/аудио кадром. Кроме того, если возможно, что существует потеря пакетов (во время потоковой передачи видео), Вам нужны метки времени обоих видео/аудио для хранения точной синхронизации.

1
ответ дан 18 December 2019 в 12:02
поделиться