Нарисуйте график закодированной скорости передачи видео в зависимости от местоположения воспроизведения - PullRequest
1 голос
/ 28 января 2012

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

Я попытался обработать видео с помощью gstreamer, но он дает мне скорость передачи декодированного [не кодированного] видео, которая более или менее постоянна.

Есть ли способ получить закодированный битрейт видео со временем?

1 Ответ

1 голос
/ 01 февраля 2012

Поскольку здесь я не получил ответов, я опубликую найденное мной решение, чтобы оно могло помочь другим.

Привязки Python VLC Предоставление API Python для VLC Mediaигрок.Они также предоставляют класс MediaStats, который можно использовать для определения статистики видео.

class MediaStats(_Cstruct):
_fields_ = [
    ('read_bytes',          ctypes.c_int  ),
    ('input_bitrate',       ctypes.c_float),
    ('demux_read_bytes',    ctypes.c_int  ),
    ('demux_bitrate',       ctypes.c_float),
    ('demux_corrupted',     ctypes.c_int  ),
    ('demux_discontinuity', ctypes.c_int  ),
    ('decoded_video',       ctypes.c_int  ),
    ('decoded_audio',       ctypes.c_int  ),
    ('displayed_pictures',  ctypes.c_int  ),
    ('lost_pictures',       ctypes.c_int  ),
    ('played_abuffers',     ctypes.c_int  ),
    ('lost_abuffers',       ctypes.c_int  ),
    ('sent_packets',        ctypes.c_int  ),
    ('sent_bytes',          ctypes.c_int  ),
    ('send_bitrate',        ctypes.c_float),
]
...