RTP timestamp и clock rate без подмены UTC

Запросить

Число RTP timestamp попало в общий преобразователь календарного времени, и журнал показал правдоподобную, но неверную дату. Для голосового IP участка хозяйства нужно знать шкалу медиапотока. Она служит своей задаче и не становится UTC отметкой только потому, что поле называется timestamp и увеличивается в ходе разговора между участниками связи.

Прочитать профиль шкалы

RFC3550 определяет RTP timestamp в контексте медиавремени. (IETF — RFC3550 RTP) RFC3551 описывает профили и clock rates. (IETF — RFC3551 RTP Audio Video Profile) Сохраните фактическое согласование кодека и шкалы. Нельзя автоматически подставить привычную частоту дискретизации другого аудиоформата, если профиль текущего payload задаёт собственное определение и библиотека использует именно его на конкретном участке разговора.

Запишите SSRC и границы наблюдаемого контекста. Разность отметок из разных источников не является готовой длительностью одного аудиофрагмента. Если шлюз преобразует поток, нужно знать, к какому выходу относятся данные. Иначе можно сравнить исходное и пересозданное представление как будто это один неизменный счётчик с общей опорой.

Сопоставить учебный фрагмент

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

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

Проверить смену контекста

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

Для календарного сопоставления используйте только предусмотренный механизм и известное качество часов. Если необходимой связи нет, храните медиавремя и время наблюдения раздельно. Не создавайте точную UTC историю произвольным смещением до удобного первого пакета: такая картинка не доказывает физический момент появления каждого фрагмента речи на исходном устройстве.

В одном подтверждённом контексте SSRC интервал вычисляется по разности RTP с правилами перехода счётчика и согласованному clock rate. Медиавремя и серверное время приёма показаны раздельно. Для календарной привязки требуется предусмотренная связь с известным качеством часов.
Учебная интерпретация не превращает RTP timestamp в UTC дату. Профиль задаёт медиашкалу, серверная отметка описывает другое наблюдение, а календарное сопоставление требует собственного подтверждённого механизма.
Увеличить схему
В одном подтверждённом контексте SSRC интервал вычисляется по разности RTP с правилами перехода счётчика и согласованному clock rate. Медиавремя и серверное время приёма показаны раздельно. Для календарной привязки требуется предусмотренная связь с известным качеством часов.

Принять правильную интерпретацию

В паспорте укажите clock rate, источник профиля и ограничения вычислений. Для хозяйства приёмка подтверждает согласованную длительность медиапоследовательности и отдельное происхождение календарных отметок. Это помогает анализировать голосовой тракт без ложных дат и сохраняет различие между RTP шкалой, сетевым приёмом и фактическим воспроизведением речи в проверяемой системе связи бригады.

Все разборы