переключение потока на основе постепенного восстановления при декодировании

Классы МПК:H04N1/17 со скоростью развертки, зависящей от объема или емкости изображения
Автор(ы):
Патентообладатель(и):НОКИА КОРПОРЕЙШН (FI)
Приоритеты:
подача заявки:
2003-07-11
публикация патента:

Изобретение относится к потоковой передаче видеоданных. Техническим результатом является эффективность передачи точек переключения при операции постепенного восстановления потока видеоданных при декодировании (GDR). Способ и устройство обмена сигналами предназначены для использования при переключении потока в сети, в которой используются точки с произвольным доступом GDR. Для обозначения точек с произвольным доступом GDR в потоках битовых данных используется блок информации выборки синхронизации, который содержится в блоке выборки синхронизации, для передачи информации о таких точках переключения GDR. Эта информация также включает в себя то, какая группа срезов представляет собой изолированную область и какая группа срезов представляет собой оставшуюся область, если группы срезов применяются при кодировании. Способ обмена сигналами можно использовать при передаче видеоданных с использованием транспортного протокола реального времени (RTP), и протокол описания сеанса (SDP) можно использовать для передачи информации, обозначающей характеристики потоков битовых данных. 4 н. и 20 з.п. ф-лы, 8 ил. переключение потока на основе постепенного восстановления при   декодировании, патент № 2328086

переключение потока на основе постепенного восстановления при   декодировании, патент № 2328086 переключение потока на основе постепенного восстановления при   декодировании, патент № 2328086 переключение потока на основе постепенного восстановления при   декодировании, патент № 2328086 переключение потока на основе постепенного восстановления при   декодировании, патент № 2328086 переключение потока на основе постепенного восстановления при   декодировании, патент № 2328086 переключение потока на основе постепенного восстановления при   декодировании, патент № 2328086 переключение потока на основе постепенного восстановления при   декодировании, патент № 2328086 переключение потока на основе постепенного восстановления при   декодировании, патент № 2328086

Формула изобретения

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

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

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

3. Способ по п.1, отличающийся тем, что потоки битовых данных передаются из устройства-сервера в устройство-клиент в сети потоковой передачи данных, причем упомянутое переключение потока инициируется устройством-сервером.

4. Способ по п.1, отличающийся тем, что потоки битовых данных передаются из устройства-сервера в устройство-клиент в сети потоковой передачи данных, причем упомянутое переключение потока запрашивается устройством-клиентом.

5. Способ по п.1, отличающийся тем, что используется для передачи с применением транспортного протокола реального времени (RTP).

6. Способ по п.5, отличающийся тем, что для передачи информации, обозначающей характеристики первого и второго потоков битовых данных, используют протокол описания сеанса (SDP).

7. Способ по п.1, отличающийся тем, что упомянутое переключение потока выполняют при передаче видеоданных на основе условий передачи между устройством-сервером и устройством-клиентом в сети потоковой передачи данных.

8. Устройство-сервер потоковой передачи данных, выполненное с возможностью переключать потоки данных среди множества потоков битовых данных, причем потоки битовых данных содержат видеоданные, обозначающие множество видеокадров для каждого потока битовых данных, при этом потоки битовых данных содержат, по меньшей мере, одну точку переключения, что позволяет осуществлять переключение с первого потока битовых данных на второй поток битовых данных в упомянутой точке переключения, и, по меньшей мере, одну точку восстановления, которая определяет первое правильное или приблизительно правильное изображение во втором потоке битовых данных, декодируемом после упомянутого переключения потока, причем упомянутое устройство-сервер потоковой передачи данных отличается тем, что содержит

селектор потока, предназначенный для выбора первого потока битовых данных для передачи; и

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

9. Устройство-сервер потоковой передачи данных по п.8, отличающееся тем, что каждый видеокадр содержит один или больше срезов, и видеокадры содержат, по меньшей мере, одну изолированную область, ассоциированную с упомянутыми одним или больше срезами во втором потоке битовых данных, декодируемом после упомянутого переключения потока, при этом предоставленная информация дополнительно обозначает изолированную область.

10. Устройство-сервер потоковой передачи данных по п.8, отличающееся тем, что предоставленная информация используется при передаче данных с использованием транспортного протокола реального времени (RTP).

11. Устройство-сервер потоковой передачи данных по п.10, отличающееся тем, что для передачи информации, обозначающей характеристики первого и второго потоков битовых данных, используется протокол описания сеанса (SDP).

12. Устройство-сервер потоковой передачи данных по п.8, отличающееся тем, что упомянутый селектор потока данных выбирает второй поток битовых данных для переключения потока на основе условий передачи между данным устройством-сервером потоковой передачи данных и устройством-клиентом в сети потоковой передачи данных.

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

по меньшей мере, один клиент потоковой передачи данных; и

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

селектор потока, предназначенный для выбора первого потока битовых данных для передачи и для дополнительного выбора второго потока битовых данных, и

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

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

15. Система потоковой передачи данных по п.13, отличающаяся тем, что упомянутое переключение потока инициируется сервером потоковой передачи данных.

16. Система потоковой передачи данных по п.13, отличающаяся тем, что упомянутое переключение потока запрашивается клиентом потоковой передачи данных.

17. Система потоковой передачи данных по п.13, отличающаяся тем, что предоставленная информация используется при передаче данных с использованием транспортного протокола реального времени (RTP).

18. Система потоковой передачи данных по п.17, отличающаяся тем, что для передачи информации, обозначающей характеристики первого и второго потоков битовых данных, используется протокол описания сеанса (SDP).

19. Система потоковой передачи данных по п.13, отличающаяся тем, что упомянутый селектор потока выбирает второй поток битовых данных для переключения потока на основе условий передачи между сервером потоковой передачи данных и клиентом потоковой передачи данных.

20. Система потоковой передачи данных по п.13, отличающаяся тем, что дополнительно содержит

видеокодер, который преобразует входной видеосигнал в видеоданные; и

средство, предназначенное для, в качестве реакции на видеоданные, кодирования видеоданных с получением упомянутого множества потоков битовых данных.

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

отличающийся тем, что упомянутая компьютерная программа содержит

код для определения упомянутой точки переключения; и

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

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

23. Машиночитаемый носитель по п.21, отличающийся тем, что предоставляемая информация используется при передаче данных с использованием транспортного протокола реального времени (RTP).

24. Машиночитаемый носитель по п.23, отличающийся тем, что для передачи информации, обозначающей характеристики первого и второго потоков битовых данных, используется протокол описания сеанса (SDP).

Описание изобретения к патенту

Область техники, к которой относится изобретение

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

Предшествующий уровень техники

В услугах потоковой передачи видеоданных или передачи видеоданных по требованию, из-за динамичного состояния сети, характеристики передачи данных между сервером и клиентом могут часто изменяться. Например, скорость передачи битов может уменьшаться. Для поддержания непрерывности сеанса потоковой передачи данных и для обеспечения максимального качества обслуживания сервер должен адаптировать передаваемый поток к изменяющимся условиям передачи данных. Этот процесс называется адаптацией потока.

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

Для обеспечения возможности переключения с одного потока битовых данных на другой поток битовых данных поток, на который переключаются, должен содержать точки переключения, что позволяет декодеру на стороне клиента принимать данные изображения с приемлемым качеством декодирования после переключения. Точки переключения могут представлять собой точки с произвольным доступом или точки не с произвольным доступом. Для переключения потока в точках не с произвольным доступом можно использовать изображения SP/SI. Однако точки с произвольным доступом представляют собой точки естественного переключения.

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

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

Изображения IDR представляют собой изображения, которые кодируются без какой-либо связи с другими изображениями, и все изображения, следующие после изображения IDR в порядке декодирования, кодируются без какой-либо связи с предыдущим изображением, которое следует перед изображением IDR в порядке декодирования, в то время как GDR можно выполнять с использованием технологии, называемой технологией с изолированными областями, которая описана ниже в данном документе. Изображение в точке с произвольным доступом GDR называется изображением GDR. Период от изображения GDR до точки восстановления, включительно, называется периодом GDR.

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

Формат файла

Стандарт MPEG-4 Часть 12 определяет основной формат мультимедийного файла ISO (Международная организация по стандартизации). Он разработан так, что содержит хронированную мультимедийную информацию для представления в гибком расширяемом формате, который обеспечивает возможность взаимного обмена, управления, редактирования и представления мультимедийных данных. Такое представление может быть "локальным" для системы, содержащей представление, или может выполняться по сети, или с использованием другого механизма потоковой передачи данных. Структура файла является объектно-ориентированной в том смысле, что файл можно разделять на составляющие объекты и структуру объектов можно определять непосредственно по их типу. Формат файла разработан так, чтобы он был независимым от какого-либо конкретного сетевого протокола, что, в общем, обеспечивает для них эффективную поддержку. Основной формат мультимедийного файла ISO используется как основа для формата файла MP4 (MPEG-4 Часть 14) и формата файла (MPEG-4 Часть 15) AVC (усовершенствованное видеокодирование). Формат файла AVC определяет, как содержимое AVC сохраняется в основном формате мультимедийного файла ISO. Его обычно используют в контексте спецификации, такой как формат файла MP4, полученный из основного формата мультимедийного файла ISO, которая позволяет использовать видео AVC.

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

Каждая точка с произвольным доступом IDR соответствует выборке синхронизации, обозначенной в блоке выборки синхронизации. Конструкция блока выборки синхронизации определена в основном формате мультимедийного файла ISO следующим образом:

Определение

Тип Блока:'stss'
Контейнер:Sample Table Box ('stbl')
Обязательный: Нет
Количество: Ноль или один

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

Синтаксис

aligned(8) class SyncSampleBox

extends FullBox('stss', version=0, 0) {

unsigned int(32) entry_count;

int i;

for (i=0; i<entry_count; i++) {

unsigned int(32) sample_number;

}

}

Семантика

version представляет собой целое число, которое определяет версию блока;

entry_count представляет собой целое число, которое задает количество записей в следующей таблице. Если entry_count равно нулю, в пределах потока данных отсутствуют точки с произвольным доступом и следующая таблица будет пустой;

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

Изолированные области

Методика изолированных областей обеспечивает изящное решение для многих вариантов применения, таких как GDR (постепенное восстановление при декодировании) (JVT-C074), устойчивость к ошибкам и восстановление после ошибок (JVT-C073), кодирование области, представляющей интерес, и установление приоритетов, функция изображения-в-изображении, и кодирование передачи видеосцены с маской (JVT-C075). При использовании GDR, которое основано на изолированных областях, переключение канала мультимедийных данных для приемников, переключение потока битовых данных для сервера и обеспечение многоадресной потоковой передачи данных для вновь подключившихся представляет собой простой, мгновенно выполняемый произвольный доступ с более гладко изменяющейся скоростью передачи битов.

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

Кодированная изолированная область может быть декодирована без присутствия какой-либо другой изолированной или оставшейся области того же кодированного изображения. Может потребоваться декодировать все изолированные области изображения до оставшейся области. Изолированная область содержит, по меньшей мере, один срез.

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

Кодирование изолированных областей может быть реализовано в кодеке AVC с использованием групп срезов. Каждая точка с произвольным доступом GDR характеризуется сообщением вспомогательной информации расширения (SEI) точки восстановления. Кодирование изолированных областей также может быть реализовано в кодеке AVC или в других стандартных кодеках без использования групп срезов, хотя его эффективность может быть ниже по сравнению с кодированием, в котором используются группы срезов.

Изображения SP/SI

Стандарт кодирования AVC поддерживает изображения SP/SI. Известно, что при переключении потока, в котором используются только P-срезы, декодер не будет иметь правильно декодированные опорные кадры, требуемые при воссоздании изображения. Путем вставки I-среза через правильные интервалы в кодированной последовательности, для создания точек переключения, эту проблему можно решить. Однако I-срез, вероятно, будет содержать намного больше кодированных данных, чем P-срез. При этом в каждой точке переключения получают пик скорости передачи битов кодированного потока. SP-срезы и SI-срезы разработаны так, что они поддерживают переключение без нежелательного увеличения скорости потока битовых данных в I-срезах.

Изображение SP/SI кодируют таким образом, что другое изображение SP/SI, в котором используются другие опорные изображения, может иметь точно такое же воссозданное изображение. Изображения SP/SI можно применять для переключения потока битовых данных, сращивания, произвольного доступа, быстрой прямой передачи, быстрой обратной передачи и устойчивости/восстановления в отношении ошибок. Например, предположим, что существуют два потока битовых данных bs1 и bs2 с различной скоростью передачи битов, происходящих из одной и той же последовательности видеоданных. В bs1 кодировано изображение SP (s1), и другое изображение SP (s2) кодировано в том же месте в bs2. В bs1 кодировано дополнительное изображение SP (s12), которое имеет точно такое же воссоздаваемое изображение, что и s2. Для s12 и s2 используются отличающиеся опорные изображения (от bs1 и bs2 соответственно). Таким образом, переключение с bs1 в bs2 можно выполнять путем передачи s12 вместо s1 в месте переключения. Поскольку s12 имеет точно такое же воссоздание, что и s2, воссозданные после переключения изображения не будут содержать ошибку. Изображение SP s12 называется изображением переключения, которое хранится в дорожке переключения в формате файла AVC.

Система потоковой передачи данных

Как указано выше, при адаптации потока данных на основе множественного кодирования сервер сохраняет в виде множества закодированных потоков одно и то же содержимое видеоданных, но для передачи выбирается только один из закодированных потоков. На фиг.1 представлена система 10 передачи данных, которая включает в себя сервер 20, который может принимать множество потоков от транскодера или генератора множественного потока или запоминающего устройства (хранилища) 12. Как показано на чертеже, сервер 20 потоковой передачи содержит селектор 22 потока, предназначенный для выбора одного из кодированных потоков 1-n. Выбранный кодированный поток разделяют на пакеты с помощью средства 24 формирования пакетов и кодируют в канальном кодере 26 для передачи. Для поддержания непрерывности сеанса потоковой передачи данных и для обеспечения максимального качества обслуживания сервер обычно выбирает наилучший возможный кодированный поток для передачи. Когда условия передачи изменяются, сервер может быть вынужден, например, увеличить или уменьшить скорость передачи битов. В соответствии с этим селектор потока переключает потоки путем выбора в точке переключения другого кодированного потока данных. Однако на стороне клиента декодер может просто декодировать любые переданные данные, которые он принимает. В принципе, устройство-клиент 40 потоковой передачи данных содержит канальный декодер 42, средство 44 расформирования пакетов и декодер 46, которые передают декодированные видеосигналы в дисплей 48 для отображения, как показано на фиг.2. Однако в системе потоковой передачи данных, которая поддерживает адаптацию потока под управлением клиента, устройство-клиент потоковой передачи данных может передавать сигнал запроса в сервер для запроса переключения потока. На фиг.3 представлена система потоковой передачи данных, в которой показано соединение между сервером 20 потоковой передачи данных и клиентом 40 потоковой передачи данных через сеть 60.

Мгновенное/постепенное восстановление при декодировании

Как указано выше, точка с произвольным доступом может представлять собой любое изображение, от которого может быть инициировано декодирование. В такой точке доступа все декодированные изображения в точке восстановления или после нее будут правильными или приблизительно правильными по содержимому. Следует отметить, что фраза "правильный по содержимому", используемая в этом описании, означает, что декодированный срез или изображение будет точно таким же, каким оно было в начале декодирования, от начала потоковой передачи, и фраза "приблизительно правильный по содержимому" означает, что декодированный срез или изображение будет приблизительно таким же, каким оно было в начале декодирования от начала потоковой передачи битовых данных. Как показано на фиг.4a, точка восстановления представляет собой то же, что и точка переключения, и изображения будут правильными или приблизительно правильными по содержимому, начиная от точки переключения. Как таковая, операция произвольного доступа называется мгновенным восстановлением при декодировании (IDR). Точки с произвольным доступом IDR содержат только I-срезы или SI-срезы.

В отличие от этого, точка с произвольным доступом с постепенным восстановлением при декодировании (GDR) может содержать срезы любого вида (I, P, SI, SP). Однако, как показано на фиг.4b, содержимое изображения будет правильным или приблизительно правильным, начиная от изображения, которое следует после точки переключения в порядке вывода. Изображения между точкой восстановления и точкой переключения могут быть визуально раздражающими или по другой причине неприемлемыми для просмотра.

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

Сущность изобретения

Настоящее изобретение обеспечивает эффективный способ и устройство обмена сигналами для точек переключения GDR в формате файла. Кроме того, информацию о том, как было кодировано GDR, передают с использованием изолированных областей, что обеспечивает быстрое переключение потока и уменьшенную скорость передачи битов. При использовании способа обмена сигналами в соответствии с настоящим изобретением точки переключения GDR могут быть идентифицированы так же просто, как другие точки переключения, такие как точки переключения IDR и SP/SI. Кроме того, сервер может выбирать, следует ли передавать только изолированную область, если она задана, для модулей доступа из точки переключения GDR в точку восстановления, включительно, для обеспечения более быстрого переключения GDR и снижения скорости передачи битов.

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

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

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

Способ обмена сигналами используется при передаче данных с применением транспортного протокола реального времени (RTP), при этом протокол описания сеанса (SDP) используют для передачи информации, обозначающей характеристики первого и второго потоков битовых данных.

В соответствии со вторым аспектом настоящего изобретения предложено устройство-сервер потоковой передачи данных, которое выполнено с возможностью переключать потоки данных среди множества потоков битовых данных, причем потоки битовых данных содержат видеоданные, обозначающие множество видеокадров для каждого потока битовых данных, при этом потоки битовых данных содержат, по меньшей мере, одну точку переключения, что позволяет осуществлять переключение с первого потока битовых данных на второй поток битовых данных в упомянутой точке переключения, и, по меньшей мере, одну точку восстановления, которая определяет первое правильное или приблизительно правильное изображение в порядке вывода во втором потоке битовых данных, декодируемом после упомянутого переключения потока. Устройство-сервер потоковой передачи данных характеризуется тем, что содержит

селектор потока, предназначенный для выбора первого потока битовых данных для передачи; и

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

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

по меньшей мере, один клиент потоковой передачи данных; и

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

селектор потока, предназначенный для выбора для передачи первого потока битовых данных и для дополнительного выбора второго потока битовых данных, и

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

Система потоковой передачи данных характеризуется тем, что дополнительно содержит

видеокодер, предназначенный для преобразования входного видеосигнала в видеоданные; и

средство, предназначенное для, в качестве реакции на видеоданные, кодирования видеоданных, с получением множества потоков битовых данных.

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

код для определения упомянутой точки переключения; и

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

Настоящее изобретение будет понятно при чтении его описания совместно с рассмотрением фиг.5-7.

Краткое описание чертежей

Фиг.1 - блок-схема, иллюстрирующая сервер потоковой передачи данных, который поддерживает переключение потока.

Фиг.2 - блок-схема, иллюстрирующая клиента потоковой передачи данных.

Фиг.3 - схематичное представление системы потоковой передачи данных.

Фиг.4a - схематичное представление переключения потоков с использованием изображения мгновенного восстановления при декодировании.

Фиг.4b - схематичное изображение переключения потока с использованием изображения постепенного восстановления при декодировании.

Фиг.5 - блок-схема, иллюстрирующая блок выборки синхронизации.

Фиг.6 - блок-схема, иллюстрирующая блок информации выборки синхронизации в соответствии с настоящим изобретением.

Фиг.7 - схема, представляющая систему потоковой передачи данных в соответствии с настоящим изобретением.

Подробное описание изобретения

В соответствии с настоящим изобретением информация о переключаемых изображениях GDR включена в блок информации выборки синхронизации (ssif), который содержится в блоке выборки синхронизации и который предназначен для обозначения точек с произвольным доступом (далее точки переключения). Кроме того, если для реализации изолированных областей используются группы срезов, эти группы срезов должны быть ассоциированы с изолированной областью и с оставшейся областью в ssif. Используя эту информацию, сервер потоковой передачи данных может использовать изображение GDR для правильного переключения потоков. При использовании изображения GDR для переключения информация изображения в точке переключения может быть передана более быстро, чем для изображений IDR, поскольку оставшуюся область в изображении GDR не требуется передавать. Хотя при использовании изображения GDR для переключения пользователи вначале могут видеть только часть области изображения, для пользователей более предпочтительно видеть хоть что-нибудь как можно скорее. Кроме того, не требуется передавать оставшуюся область в изображении от точки переключения GDR до точки восстановления включительно. Таким образом обеспечивается снижение скорости передачи данных по сравнению с передачей как изолированной области, так и оставшейся области.

Вариант выполнения настоящего изобретения в формате файла AVC характеризуется тем, что каждая точка с произвольным доступом представляет собой точку переключения. Первый вариант выполнения настоящего изобретения состоит в следующем.

Все точки с произвольным доступом, включая обе точки с произвольным доступом IDR (модули доступа IDR) и точки с произвольным доступом GDR (модули доступа, содержащие сообщения SEI точки восстановления, с элементом синтаксиса changing_slice_group_idc, равным 1 или 2), помечаются в блоке выборки синхронизации. Кроме того, блок информации выборки синхронизации (содержащийся в блоке выборки синхронизации) определен следующим образом:

Определение

Тип Блока: 'ssif'
Контейнер: Sync Sample Box ('stss')
Обязательный: Нет
Количество: Ноль или один

Этот блок предоставляет информацию о точках с произвольным доступом в потоке. Информация включает в себя то, является ли точка с произвольным доступом точкой с произвольным доступом GDR или IDR. Если точка с произвольным доступом представляет собой точку GDR, информация также включает в себя то, какая группа среза представляет собой изолированную область и какая группа среза представляет собой оставшуюся область. Если блок выборки синхронизации не содержит блок информации выборки синхронизации, все выборки синхронизации, помеченные блоком выборки синхронизации, представляют собой точки с произвольным доступом IDR.

Синтаксис

aligned(8) class SyncSamplelnformationBox

extends FullBox('ssif', version=0, 0) {

int i;

for (i=0; i<entry_count; i++) {

unsigned int(2) random_access_point_idc;

bit (6) reserved='llllll'b;

}

}

Семантика

version представляет собой целое число, которое обозначает версию этого блока;

random_access_point_idc:

0 обозначает, что точка с произвольным доступом представляет собой точку с произвольным доступом IDR;

1 обозначает, что точка с произвольным доступом представляет собой точку с произвольным доступом GDR, и в пределах периода GDR изолированная область закрыта группой 0 срезов, в то время как оставшаяся область покрыта группой 1 срезов;

2 обозначает, что точка с произвольным доступом представляет собой точку с произвольным доступом GDR, и в пределах периода GDR изолированная область закрыта группой 1 срезов, в то время как оставшаяся область покрыта группой 0 срезов;

3 не разрешено.

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

Определение

Тип Блока:'ssif'
Контейнер:Sync Sample Box ('stss')
Обязательный: Нет
Количество: Ноль или один

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

Синтаксис

aligned(8) class SyncSampleInformationBox

extends FullBox('ssif', version=0, 0) {

int i;

for (i=0; i<entry_count; i++) {

unsigned int(2) random_access_point_idc;

bit (6) reserved='111111'b;

}

}

Семантика

version представляет собой целое число, которое определяет версию этого блока;

random_access_point_idc:

0 обозначает, что точка с произвольным доступом представляет собой точку с произвольным доступом IDR;

1 обозначает, что точка с произвольным доступом представляет собой точку с произвольным доступом GDR, и в пределах периода GDR изолированная область покрыта группой 0 срезов, в то время как оставшаяся область покрыта группой 1 срезов;

2 обозначает, что точка с произвольным доступом представляет собой точку с произвольным доступом GDR, и в пределах периода GDR изолированная область покрыта группой 1 срезов, в то время как оставшаяся область покрыта группой 0 срезов;

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

При использовании способов обмена сигналами в соответствии с настоящим изобретением все точки переключения могут быть явно помечены так, что для сервера потоковой передачи данных не требуется выполнять анализ каждого изображения для поиска точек переключения. Если отсутствуют точки переключения GDR, не требуется использовать блок информации выборки синхронизации (содержащийся в блоке выборки синхронизации).

Пример блока выборки синхронизации показан на фиг.5, и пример блока информации выборки синхронизации показан на фиг.6.

В соответствии с настоящим изобретением в системе потоковой передачи данных используется компьютерная программа для обеспечения информации об изображениях GDR, допускающих переключение, в блоке информации выборки синхронизации, который содержится в блоке выборки синхронизации. Информация включает в себя точки переключения. Кроме того, компьютерная программа также определяет группы срезов, которые ассоциированы с изолированной областью и с оставшейся областью, если эта информация доступна. Такая компьютерная программа обозначена ссылочной позицией 16, как показано на фиг.7. Компьютерная программа 16 представляет собой часть видеокодера 14, которая обеспечивает кодированный входной видеосигнал и информацию, относящуюся к GDR, для транскодера/генератора 12 множественного потока. Сервер 20 потоковой передачи данных выполнен с возможностью выбирать один из кодированных потоков для передачи на основе динамических условий сети в сети 60. Если характеристики сквозной передачи между сервером 20 потоковой передачи данных и клиентом 40 потоковой передачи данных изменяются, сервер 20 потоковой передачи данных может инициировать переключение потока таким образом, что сервер потоковой передачи данных выбирает другой кодированный поток в соответствии с информацией, относящейся к GDR, предоставляемой блоком информации выборки синхронизации. В качестве альтернативы клиент 40 потоковой передачи данных может передавать сигнал запроса в сервер 20 потоковой передачи данных, в котором он запрашивает другой передаваемый поток, если клиент 40 потоковой передачи данных определяет изменение в условиях передачи данных в сети 60.

Способ обмена сигналами GDR в соответствии с настоящим изобретением можно использовать при передаче видеоданных с использованием транспортного протокола реального времени (RTP), и протокол описания сеанса (SDP) можно использовать для передачи информации, обозначающей характеристики потоков битовых данных при переключении потоков. Как известно, RTP обеспечивает функции сквозной транспортировки в сети, пригодные для вариантов применения, в которых обеспечивается передача данных в режиме реального времени, таких как звук, видеоизображение или данные имитации, в многоадресных или одноадресных сетевых услугах. RTP не обращается к резервированию ресурсов и не гарантирует качество обслуживания (QoS) для услуг в режиме реального времени. Транспортировка данных совершенствуется посредством протокола управления (RTCP, протокола управления передачей в реальном времени), что позволяет обеспечить мониторинг передаваемых данных, который можно масштабировать для крупных сетей многоадресной передачи данных и для обеспечения минимального управления и функций идентификации. Протоколы RTP и RTCP разработаны так, чтобы они были независимыми от расположенных под ними транспортного и сетевого уровней. Протокол поддерживает использование трансляторов и миксеров уровня RTP. Протокол описания сеанса (SDP) предназначен для описания мультимедийных сеансов с целью обеспечения анонсов сеанса, приглашения к сеансу и других форм инициирования мультимедийного сеанса. SDP может использоваться, например, сервером для уведомления клиента о том, что доступны альтернативные скорости передачи битов в потоке битовых данных.

Способ обмена сигналами GDR в соответствии с настоящим изобретением можно применять для стандарта кодирования видеоданных ITU-T H.264 (также известен как MPEG-4 Часть 10 или AVC), разработанного Объединенной группой обработки видеоизображений (JVT). Однако применение настоящего изобретения не ограничивается указанным стандартом AVC. Настоящее изобретение также можно применять для других стандартов и устройств кодирования видеоданных. Например, для других стандартов кодирования видеоданных, которые поддерживают кодирование срезов, таких как H.263 и MPEG-4 Часть 2, изолированная область может покрывать первый ряд макроблоков изображения GDR, и все макроблоки в других рядах покрыты оставшейся областью. Изолированная область в последующих изображениях прирастает со скоростью в один макроблок на ряд (в то время как одновременно с этим оставшаяся область уменьшается с той же скоростью), пока она не покроет всю область изображения в изображении точки восстановления. Изолированная область в каждом изображении, в пределах периода GDR, может быть кодирована как один или больше срезов. Ограничения кодирования изолированной области, как описано выше, также применяются в процессе кодирования. В таких случаях или в аналогичных случаях можно применять способ обмена сигналами GDR в соответствии с настоящим изобретением.

Таким образом, хотя изобретение было описано в отношении предпочтительных вариантов его выполнения, для специалистов в данной области техники будет понятно, что все предыдущие и различные другие изменения, исключения и отклонения в его форме и деталях могут быть выполнены без отхода от объема настоящего изобретения.

Наверх