Способ проверки возможности синхронизации компонентов сервиса транспортного потока MPEG TS
METHOD FOR CHECKING THE POSSIBILITY OF SYNCHRONIZATION OF COMPONENTS OF THE MPEG TS TRANSPORT STREAM SERVICE

Область техники
Изобретение относится к сфере обеспечения надежности функционирования сетей связи и может быть использовано при передаче цифровых телевизионных сигналов.
Уровень техники
Одной из важных задач, возникающих при передаче цифровых телевизионных сигналов, является синхронизация компонентов сервиса.
Из уровня техники известен ряд технических решений, направленных на определение возможности синхронизации как таковой и устранение ошибок, возникающих при передаче сигнала и препятствующих синхронизации компонентов сервиса.
Так, например, из документа SE 509034 С2 известен способ корректировки ошибок синхронизации, возникающих при передаче одновременно нескольких MPEG-2 каналов. В известном способе один из каналов выбирается в качестве опорного, остальные считаются зависимыми. Декодер считывает значения временных меток PCR для всех каналов и вычисляет разность между значениями PCR для опорного канала и значениями PCR для каждого из зависимых каналов. Полученные значения разностей прибавляются к временным штампам PTS и DTS соответствующих зависимых каналов, добиваясь таким образом синхронизации всех каналов.
Наиболее близким аналогом является способ синхронизации аудио и видео сигналов, описанный в WO 2012151756 А1. Данный способ основан на анализе данных о загрузке буфера системы, находящейся в стабильном состоянии. При реализации этого способа определяют текущую загрузку буфера и сравнивают ее с величиной загрузки буфера в стабильном состоянии. В случае переполнения или недостаточного заполнения буфера значение временного штампа PTS корректируется таким образом, чтобы считывание информации осуществлялось медленнее или, напротив, быстрее.
Преимуществом заявленного способа перед известными является повышенная точность определения возможности синхронизации за счет применения трех численных критериев. Исходными данными для указанных критериев являются измеримые параметры цифровых потоков, что исключает необходимость анализа цифровых компрессированных аудио и видео потоков и, как следствие, снижает нагрузку на ЦПУ.
Таким образом, задачей настоящего изобретения является разработка способа определения возможности синхронизации компонентов сервиса транспортного потока MPEG TS (13818-1) при выполнении контроля качества транспортных потоков в спутниковом, кабельном или эфирном цифровом телевидении на основании измерения параметров цифровых потоков.
Техническим результатом заявленного изобретения является повышение точности определения возможности синхронизации, а также снижение нагрузки на ЦПУ.
Раскрытие изобретения
Поставленная цель, требуемый и получаемый при использовании изобретения технический результат достигаются тем, что для каждого из синхронизуемых потоков определяют моменты времени, привязанные к временным штампам PCR и PTS, вычисляют время, необходимое для буферизации элементарного потока до момента презентации, оценивают размер буфера и проверяют соответствие синхронизуемых элементарных потоков трем критериям. Первый из указанных критериев формулируется следующим образом: размер буфера приставки, выраженный в единицах времени, не должен быть меньше времени, необходимого для буферизации элементарного потока до момента презентации.
Согласно второму критерию, если время буферизации постоянно, то для синхронизации 2-х компонентов сервиса должно выполняться следующее неравенство:
1
2
где PTS и PTS - любые два соседние PTS из первого и второго потока соответственно,
pcr1
pcr2
B и B - количество байт между двумя соседними метками PCR для первого и второго потока,
pts1
pts2
B и B - количество байт между данной меткой PCR и ближайшей к ней меткой PTS для первого и второго потока,
pcr
T - разность между двумя соседними PCR, считается одинаковой для обоих потоков.
В соответствии с третьим критерием, расхождение между одновременно декодируемыми элементами доступа не должно превышать 2/FPS секунды, где FPS - скорость в кадрах в секунду. Для синхронизации двух любых потоков должно выполняться отношение:
1
2
где PTS и PTS - любые два PTS из первого и второго потока соответственно,
М - масштабный коэффициент для перехода из шкалы 27 МГц в шкалу UTC.
Осуществление изобретения
В стандартах, регламентирующих деятельность сетей связи цифрового телевидения, описан способ синхронизации компонентов сервиса, но не описан способ, определения возможности синхронизации как таковой. Предложенный способ предполагает три критерия для определения возможности синхронизации. Указанные критерии формулируются следующим образом.
1. Размер буфера приставки не должен быть меньше некоторой величины, зависящей от параметров компонента цифрового видеопотока.
2. Размеры буферов синхронизируемых компонентов цифрового потока должны подчиняться соотношению, которое определяется параметрами потоков этих компонентов.
3. Расхождение во времени между декодируемыми элементами синхронизируемых компонентов потока должно быть меньше некоторой величины.
i
i
i
pcr
i
pcr
i
В любом отдельном передаваемом потоке присутствуют временные штампы PCR и PTS. Далее будем обозначать PCR - некоторый PCR с условным номером i, a PCR(i+1) - PCR, следующий за PCR. При вычислениях также рассматривается PTS, размещающийся между PCR и PCR(i+1) и содержащий информацию о некотором моменте времени в будущем, в который нужно презентовать ближайший за PCR(i+1) access unit (AU). Величина B используется для обозначения количества байт между PCR и PCR(i+1), a T - для обозначения разности значений PCR и PCR(i+1). Битрейт потока во временной шкале 27 МГц (в тиках) определяется по формуле:
pcr
pcr
В=B / T (байт за тик).
Для любого элементарного потока верно следующее уравнение:
buff
diff
i
T+T=PTS - PCR,
buff
где T - время, необходимое для буферизации элементарного потока ES до момента презентации, а
diff
i
T - временной интервал между PCR и моментом времени презентации ближайшего следующего за ним AU.
Указанное равенство также может быть переписано в виде:
buff
i
diff
T=PTS - PCR – T.
i
diff
Значения PTS и PCR берутся из соответствующих временных меток элементарного потока, a T вычисляется по формулам:
pts
Tdiff=T+Tau,
pts
pts
T=B / В.
d
buff
d
Значение Таu, вообще говоря, неизвестно, если не разобрать ES и не найти в нем AU. Эта операция на встроенном ПО может загружать ЦПУ. Поэтому можно предположить, что AU находится в первом байте нагрузки элементарного потока, который отстоит от PTS на фиксированное количество байт B. Вычисления в соответствии с данным предположением дадут максимальное значение T. Используя значение B, получим:
d
Tau=B / В.
Тогда:
buff
i
pts
d
T (max) = PTS-PCR-(B/B+B/B)
Или:
Размер буфера приставки во временном выражении определим как:
Buff=N/B, где N - размер буфера в байтах.
buff
Тогда первый критерий может быть сформулирован следующим образом. Для правильного декодирования и синхронизации должно выполняться условие: T≤Buff.
buff
buff
Данное условие должно выполняться для всех потоков, которые необходимо синхронизировать. В случае, если для потоков используется буфер одного и того же размера, можно упростить вычисления путем вычитания T одного потока из T другого. Принимая во внимание, что оба потока имеют один и тот же PCR, второй критерий может быть сформулирован в виде:
buff
Если T=const, то для синхронизации 2-х компонентов сервиса должно выполняться следующее неравенство:
1
2
pcr
pts
pcr
где PTS и PTS - любые два PTS из первого и второго потока соответственно, индексы 1 и 2 у величин B и B также показывают принадлежность этих величин к характеристикам первого или второго потоков соответственно. T считается одинаковым для обоих потоков.
Также необходима проверка третьего критерия, а именно - расхождение между одновременно декодируемыми элементами доступа не должно превышать 2/FPS секунды (эмпирическая величина), где FPS - скорость в кадрах в секунду. Третий критерий формулируется следующим образом.
Для синхронизации двух любых потоков должно выполняться отношение:
1
2
где PTS и PTS - любые два PTS из первого и второго потока соответственно,
М - масштабный коэффициент для перехода из шкалы 27 МГц в шкалу UTC.
Как следует из описания возможных выполнений заявленного изобретения, предложенный способ проверки возможности синхронизации компонентов сервиса обеспечивает достижение заявленного технического результата, а именно увеличение точности определения возможности синхронизации, благодаря проверке соответствия потоков трем критериям. Предложенный способ вычислений также позволяет снизить нагрузку на ЦПУ за счет приближенного вычисления Tau.
Учитывая новизну совокупности существенных признаков, техническое решение поставленной задачи, изобретательский уровень и существенность всех общих и частных признаков изобретения, доказанных в разделе «Уровень техники» и «Раскрытие изобретения», доказанную в разделе «Осуществление и промышленная реализация изобретения» техническую осуществимость и промышленную применимость изобретения, решение поставленных изобретательских задач и уверенное достижение требуемого технического результата при реализации и использовании изобретения, по нашему мнению, заявленное изобретение удовлетворяет всем требованиям охраноспособности, предъявляемым к изобретениям.
Проведенный анализ показывает также, что все общие и частные признаки изобретения являются существенными, так как каждый из них необходим, а все вместе они не только достаточны для достижения цели изобретения, но и позволяют реализовать изобретение промышленным способом.