Video sampling rate 90kHz. Зачем?
От: Sharov Россия  
Дата: 18.07.23 16:46
Оценка:
Здравствуйте.

Читаю фрагмент отсюда -https://lmtools.com/content/rtp-timestamp-calculation:

Typically in video case there are 30 frames per second or 24 frames per second video. Lets consider a typical case, where sampling rate is 90kHz and fps is 30.

Then video RTP packet timestamp incremental value = 90kHz / 30 = 90,000Hz / 30 = 3000.
Hence each video RTP frame timestamp should be incremented by 3000.

In practice, one video frame may be sent as more than one RTP packet because of bigger size. Say one video frame you are sending as 3 RTP packets. For all these 3 RTP packets, you need to keep timestamp same. For next video frame you can increase RTP timestamp by 3000.

In certain cases, if you do not know fps, probably you need to go for system clock time and derive timestamp.


1) Зачем сэмплировать видео? Для синхронизации с аудио? В чем смысл?
2) Почему такая частота, а не скажем, 90Hz, чтобы шаг был 3? Не все ли равно какая частота сэмплирования?

Заранее благодарю.
Кодом людям нужно помогать!
Re: Video sampling rate 90kHz. Зачем?
От: andrey.desman  
Дата: 18.07.23 18:18
Оценка: 7 (1) +1
Здравствуйте, Sharov, Вы писали:

S>1) Зачем сэмплировать видео? Для синхронизации с аудио? В чем смысл?


Вопрос именно в термине? Так называется параметр rtp потока, это еще от аудио.

S>2) Почему такая частота, а не скажем, 90Hz, чтобы шаг был 3? Не все ли равно какая частота сэмплирования?


Это легась от кабельных систем и mpeg-ts. Там мастер клок 90kHz, по нему синхронизируется скорость локальных часов. И pts выражаются этих часах, что логично.
В принципе и в rtp можно часы подстраивать. Например, если захочешь, чтобы десяток компов у тебя в доме играл песню синхронно.
При этом частот кадров куча разных была. В 90Hz часах их не выразишь с достаточной точностью. Да в принципе и сейчас актуально. В rtp нет понятия fps.
Отредактировано 18.07.2023 18:19 andrey.desman . Предыдущая версия .
Re[2]: Video sampling rate 90kHz. Зачем?
От: Sharov Россия  
Дата: 18.07.23 20:20
Оценка:
Здравствуйте, andrey.desman, Вы писали:

S>>1) Зачем сэмплировать видео? Для синхронизации с аудио? В чем смысл?

AD>Вопрос именно в термине? Так называется параметр rtp потока, это еще от аудио.

Нет, зачем это нужно вообще. Если про аудио понятно, то зачем это для видео -- Разве только
легаси.
Кодом людям нужно помогать!
Re[3]: Video sampling rate 90kHz. Зачем?
От: andrey.desman  
Дата: 18.07.23 21:00
Оценка:
Здравствуйте, Sharov, Вы писали:

S>Нет, зачем это нужно вообще. Если про аудио понятно, то зачем это для видео -- Разве только

S>легаси.

Так я и написал: и легась, и для pts, которые могут быть очень разных fps, которых в свою очередь в rtp нет.

https://datatracker.ietf.org/doc/html/rfc3551#section-5
Re[3]: Video sampling rate 90kHz. Зачем?
От: DiPaolo Россия  
Дата: 19.07.23 04:28
Оценка: 7 (1)
S>Нет, зачем это нужно вообще. Если про аудио понятно, то зачем это для видео -- Разве только
S>легаси.

Тут речь идет не о разбиении видео на сэмплы (фреймы), а именно о разбиении в контексте присвоения меток времени. И, как коллега уже упомянул, 90 килогерцовые тики пошли из MPEG-2 TS исторически, плюс, это дает вполне приемлемую точность.

И все это нужно для аудио-видео синхронизации. Ну она очевидно для чего нужна. Особенно, кстати, это важно на стриминге 24/7 либо же просто достаточно длительной трансляции. Там даже мелкая погрешность приведет к разъезжанию картинки и звука уже через несколько часов, не говоря уж о днях.
Патриот здравого смысла
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.