RU2419245C2 - Системы и способы для переключения каналов - Google Patents

Системы и способы для переключения каналов Download PDF

Info

Publication number
RU2419245C2
RU2419245C2 RU2009122491/09A RU2009122491A RU2419245C2 RU 2419245 C2 RU2419245 C2 RU 2419245C2 RU 2009122491/09 A RU2009122491/09 A RU 2009122491/09A RU 2009122491 A RU2009122491 A RU 2009122491A RU 2419245 C2 RU2419245 C2 RU 2419245C2
Authority
RU
Russia
Prior art keywords
frame
nal
frames
csf
media
Prior art date
Application number
RU2009122491/09A
Other languages
English (en)
Other versions
RU2009122491A (ru
Inventor
Фан ШИ (US)
Фан Ши
Кристофер Джон БЕННЕТТ (US)
Кристофер Джон Беннетт
Серафим С. Мл. ЛУКАС (US)
Серафим С. Мл. ЛУКАС
Брайан Уилльям ОРР (US)
Брайан Уилльям Орр
Виджаялакшми Р. РАВИИНДРАН (US)
Виджаялакшми Р. РАВИИНДРАН
Скотт Т. СУЭЙЗИ (US)
Скотт Т. СУЭЙЗИ
Амнон СИЛБЕРГЕР (US)
Амнон Силбергер
Ань Мэй ЧЭНЬ (US)
Ань Мэй ЧЭНЬ
Тхади НАГАРАДЖ (US)
Тхади Нагарадж
Гордон Кент УОЛКЕР (US)
Гордон Кент Уолкер
Дэвид БРЭКМАН (US)
Дэвид БРЭКМАН
Фан ЛЮ (US)
Фан ЛЮ
Сумит СЕТХИ (US)
Сумит Сетхи
Рамкумар САМПАТХКУМАР (US)
Рамкумар Сампатхкумар
Original Assignee
Квэлкомм Инкорпорейтед
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Квэлкомм Инкорпорейтед filed Critical Квэлкомм Инкорпорейтед
Publication of RU2009122491A publication Critical patent/RU2009122491A/ru
Application granted granted Critical
Publication of RU2419245C2 publication Critical patent/RU2419245C2/ru

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44016Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/187Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/31Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • H04N19/68Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience involving the insertion of resynchronisation markers into the bitstream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234327Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into layers, e.g. base layer and one or more enhancement layers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
    • H04N21/4383Accessing a communication channel
    • H04N21/4384Accessing a communication channel involving operations to reduce the access time, e.g. fast-tuning for reducing channel switching latency
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8451Structuring of content, e.g. decomposing content into time segments using Advanced Video Coding [AVC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

Изобретение относится к обработке мультимедийного сигнала, в частности к способу видеокодирования и видеодекодирования кадров переключения каналов (CSF) для разрешения захвата и ресинхронизации видеопотока. Техническим результатом является обеспечение видеокодирования и видеодекодирования кадров переключения каналов (CSF), позволяющих обеспечить захват и ресинхронизацию видеопотока при сохранении эффективности сжатия. Указанный технический результат достигается тем, что создают CSF с одним или несколькими блоками уровня сетевой абстракции (NAL) в качестве кадра точки произвольного доступа (RAP) и передают смежные кадры, которые включают в себя CSF и кадр, не являющийся кадром RAP, причем каждый из них имеет одинаковый идентификационный номер. 10 н. и 36 з.п. ф-лы, 21 ил., 13 табл.

Description

Перекрестные ссылки на родственные заявки
Данная патентная заявка претендует на положительный эффект принадлежащей тому же правообладателю предварительной заявки США №60/865822 под заголовком «SYSTEMS AND METHODS FOR CHANNEL SWITCHING», поданной 14 ноября 2006 года. Эта предварительная патентная заявка включена в настоящий документ посредством ссылки.
Данная заявка во всех отношениях полностью включает посредством ссылки принадлежащие тому же правообладателю патентные заявки США № 11/527306, поданную 25 сентября 2006 года, и № 11/528303, поданную 26 сентября 2006 года.
Область техники, к которой относится изобретение
Данное изобретение относится к обработке мультимедийного сигнала и, в частности, касается способов видеокодирования и видеодекодирования кадров переключения каналов (CSF) для разрешения захвата и ресинхронизации видеопотока при сохранении эффективности сжатия.
Уровень техники
Системы мультимедийной обработки, такие как видеокодеры, могут кодировать мультимедийные данные с использованием способов кодирования на основе международных стандартов, таких как стандарты Экспертной группы по кинематографии (MPEG)-1, -2 и -4, стандарт H.263 Международного союза электросвязи (ITU)-Т, стандарт ITU-T H.264 и его аналог, ISO/IEC MPEG-4, часть 10, то есть стандарт усовершенствованного видеокодирования (AVC), каждый из которых целиком включен в настоящий документ посредством ссылки. Указанные способы кодирования в общем случае имеют своей целью сжатие мультимедийных данных для передачи и/или хранения. Сжатие в широком смысле слова можно рассматривать как процесс устранения избыточности из мультимедийных данных.
Видеосигнал можно описать на основе последовательности изображений, которые включают в себя кадры (целое изображение) или поля (например, чересстрочный видеопоток содержит поля чередующихся нечетных или четных строк изображения). Используемый здесь термин «кадр» относится к изображению, кадру или полю. Способы видеокодирования обеспечивают сжатие видеосигналов путем использования алгоритма сжатия без потерь или с потерями для сжатия каждого кадра. Внутрикадровое кодирование относится к кодированию кадра с использованием только данного кадра. Межкадровое кодирование относится к кодированию кадра на основе других, так называемых «опорных» кадров. Например, видеосигналы часто отличаются временной избыточностью, при которой близлежащие кадры во временной последовательности кадров имеют по меньшей мере несколько участков, которые полностью или по меньшей мере частично совпадают друг с другом.
Мультимедийные процессоры, такие как видеокодеры, могут кодировать кадр, разбивая его на блоки или «макроблоки», состоящие, например, из 16×16 пикселей. Кодер может дополнительно разбить каждый макроблок на субблоки. Каждый субблок может также содержать дополнительные субблоки. Например, субблоки макроблока могут включать в себя субблоки 16×8 и 8×16. Субблоки из субблоков 8×16 могут включать в себя субблоки 8×8, которые могут содержать субблоки 4×4 и т.д. Используемый здесь термин «блок» относится либо к макроблоку, либо к субблоку.
Кодеры используют преимущество временной избыточности между последовательными кадрами, применяя алгоритмы межкадрового кодирования на основе компенсации движения. Алгоритмы компенсации движения идентифицируют части одного или нескольких опорных кадров, которые, по меньшей мере, частично соответствуют одном блоку. Этот блок может быть сдвинут в кадре относительно участка совпадения опорного кадра (кадров). Этот сдвиг характеризуется одним или несколькими векторами движения. Любые отличия между данным блоком и участком частичного совпадения опорного кадра (кадров) могут быть охарактеризованы на основе одного или нескольких остатков. Кодер может закодировать кадр в виде данных, которые содержат один или несколько векторов движения, и остатки для конкретного варианта разбиения кадра. Конкретный вариант разбиения блоков для кодирования кадра можно выбрать путем приближенной минимизации функции затрат, которая, например, сопоставляет разрядность кодирования с искажением или воспринимаемым искажением для контента кадра, получающегося в результате кодирования.
Межкадровое кодирование позволяет обеспечить более эффективное сжатие, чем внутрикадровое кодирование. Однако межкадровое кодирование может создать проблемы, связанные с потерей опорных данных (например, опорных кадров или опорных полей) из-за канальных ошибок и т.п. Вдобавок к потерям опорных данных из-за ошибок эти опорные данные также могут оказаться недоступными из-за начального захвата или повторного захвата видеосигнала в кадре с межкадровым кодированием. В таких случаях декодирование данных, закодированных способом межкадрового кодирования, может оказаться невозможным или может привести к нежелательным ошибкам и их распространению. Эти сценарии могут привести к потере синхронизации видеопотока.
Наиболее общей формой кадра, которая предоставляет возможность ресинхронизации видеосигнала, является независимо декодируемый кадр с внутрикадровым кодированием. В стандартах MPEG-x и H.26x используется так называемая «группа изображений» (GOP), содержащая кадр с внутрикадровым кодированием (называемый также I-кадром) и P-кадры, кодированные на основе временного предсказания, или B-кадры, кодированные на основе предсказания «вперед/назад», которые обращаются к I-кадру и/или другим P- и/или В кадрам в группе GOP. Для увеличения степени сжатия желательно иметь более длинные группы GOP; но следует иметь в виду, что более короткие группы GOP позволяют обеспечить более быстрый захват и ресинхронизацию. Увеличение количества I-кадров позволяет обеспечить более быстрый захват и ресинхронизацию, правда, за счет меньшего сжатия.
Следовательно, имеется потребность в способах видеокодирования и видеодекодирования кадров переключения каналов (CSF), позволяющих обеспечить захват и ресинхронизацию видеопотока при сохранении эффективности сжатия.
Сущность изобретения
Предложены способы видеокодирования и видеодекодирования кадров переключения каналов (CSF), дающих возможность захвата и ресинхронизации видеопотока при сохранении эффективности сжатия. Согласно одному аспекту предложено устройство, содержащее процессор, использующийся для создания кадра переключения каналов (CSF) из одного или нескольких блоков уровня сетевой абстракции (NAL) для разрешения точек произвольного доступа в кодированном битовом потоке.
Другой аспект включает в себя компьютерный программный продукт, содержащий считываемый компьютером носитель с командами, заставляющими компьютер создавать кадр переключения каналов (CSF) из одного или нескольких блоков уровня сетевой абстракции (NAL) для разрешения точек произвольного доступа в кодированном битовом потоке.
Еще один аспект включает в себя устройство, содержащее процессор, использующийся для декодирования одного или нескольких смежных кадров, каждый из которых имеет одинаковый идентификационный номер кадра, причем первый кадр из смежных кадров является кадром точки произвольного доступа (RAP), а второй кадр не является кадром RAP.
Дополнительные аспекты изобретения станут более очевидными из подробного описания изобретения, в частности, взятого вместе с прилагаемыми чертежами.
Краткое описание чертежей
Фиг.1 - блок-схема примерной системы мультимедийной связи согласно конкретным конфигурациям;
фиг.2А - блок-схема примерного кодирующего устройства, которое можно использовать в системе по фиг.1;
фиг.2В - блок-схема примерного декодирующего устройства, которое можно использовать в системе по фиг.1;
фиг.3 - примерная взаимосвязь между сообщениями уровня синхронизации и медиапотоком реального времени, который выводится на устройство или выводится устройством в сети FLO;
фиг.4 - примерные уровни протокола для услуги реального времени в сети FLO;
фиг.5А-5В - примерные альтернативные взаимосвязи между пакетами уровня синхронизации и медиакадрами;
фиг.6 - примерный конечный автомат для обработки уровня синхронизации для отдельного потока в устройстве;
фиг.7 - примерный кадр переключения каналов (CSF);
фиг.8 - примерный кадр (CSF) с 3 блоками NAL;
фиг.9 - генератор кадра переключения каналов;
фиг.10 - процесс декодирования битового потока с кадрами CSF;
фиг.11 - генератор заголовка синхронизации, создающий заголовок синхронизации;
фиг.12А - генератор дополнительных полей генератора заголовка синхронизации;
фиг.12В - генератор типа адаптации генератора заголовка синхронизации;
фиг.13А - ассемблер общего медиазаголовка;
фиг.13В - ассемблер заголовка, отражающего специфику медиа;
фиг.14 - ассемблер каталога уровня синхронизации видео;
фиг.15 - ассемблер записи VSL;
фиг.16 - блок-схема процесса обработки с уровня синхронизации на медиауровень в устройстве;
фиг.17 - пример битового потока, созданного сетью с одинаковыми идентификационными номерами смежных кадров.
Изображения на чертежах в иллюстративных целях показаны в упрощенном виде и без соблюдения масштаба. Для облегчения понимания там, где возможно, использованы одинаковые ссылочные позиции для обозначения одинаковых элементов, являющихся общими для всех чертежей, за исключением того, что для различения некоторых элементов добавлены индексы, когда необходимо.
В прилагаемых чертежах показаны примерные конфигурации изобретения, причем их не следует рассматривать как ограничение объема изобретения, которое допускает другие, не менее эффективные конфигурации. Предполагается, что признаки или блоки из одной конфигурации можно с успехом включить в другие конфигурации без дополнительного перечисления.
Подробное описание изобретения
Сокращения
В последующем описании применяются следующие сокращения:
FLO - Связь только в прямом направлении;
IDR - мгновенное обновление декодирования;
IEC - Международная электротехническая комиссия;
IETF - Инженерная группа по развитию Интернет;
ISO - Международная организации по стандартизации;
ITU - Международный союз электросвязи;
ITU-T - Сектор стандартизации электросвязи ITU;
NAL - уровень сетевой абстракции;
RBSP - полезная нагрузка необработанной байтовой последовательности;
TIA - Ассоциации промышленности средств связи;
TM3 - Наземная мобильная мультимедийная многоадресная передача;
UINT - целое число без знака;
RAP - точка произвольного доступа;
PTS - отметка времени представления.
Используемый здесь термин «примерный» означает «служащий в качестве примера, варианта или иллюстрации». Любая конфигурация или техническое решение, описанное здесь как «примерное», не обязательно следует трактовать как предпочтительное или имеющее преимущество над другими конфигурациями или техническими решениями, а термины «ядро», «механизм», «машина», «процессор» и «блок обработки» используются как взаимозаменяемые.
Описанные здесь способы можно использовать для беспроводной связи, обработки данных, персональных электронных устройств и т.д. Примерное использование этих способов для беспроводной связи описано ниже.
Последующее подробное описание ориентировано на некоторые выборочные конфигурации изобретения. Однако изобретение может быть воплощено множеством различных путей, определенных и покрываемых формулой изобретения. В этом описании делаются ссылки на чертежи, в которых подобные компоненты обозначены везде одинаковыми ссылочными позициями.
Видеосигналы можно охарактеризовать на основе последовательности изображений, кадров и/или полей, каждый из которых может дополнительно включать в себя один или несколько сегментов (слайсов). Используемый здесь термин «кадр» имеет широкий смысл и может охватывать один или несколько кадров, полей, изображений и/или слайсов.
Конфигурации включают в себя системы и способы, которые облегчают переключение каналов в системе мультимедийной передачи. Мультимедийные данные могут включать в себя одно или несколько из следующего: ТВ- или киноизображение, звук, фотографические изображения, текст или аудиовизуальные данные любого другого подходящего типа.
На фиг.1 показана блок-схема примерной системы 100 мультимедийной связи согласно некоторым конфигурациям. Система 100 включает в себя кодирующее устройство 110, связанное с декодирующим устройством 150 через сеть 140. В одном примере кодирующее устройство 110 принимает мультимедийный сигнал от внешнего источника 102 и кодирует этот сигнал для передачи по сети 140.
В данном примере кодирующее устройство 110 содержит процессор 112, связанный с памятью 114 и приемопередатчиком 116. Процессор 112 кодирует данные от источника мультимедийных данных и подает их в приемопередатчик 116 для передачи по сети 140.
В этом примере декодирующее устройство 150 содержит процессор 152, связанный с памятью 154 и приемопередатчиком 156. Хотя декодирующее устройство 150 может иметь приемопередатчик 156 как для передачи, так и для приема, декодирующему устройству 150 необходим только приемник, такой как приемник 158. Процессор 152 может включать в себя один или несколько процессоров общего назначения и/или цифровой процессор сигналов. Память 154 может включать в себя одно или несколько запоминающих устройств на твердотельной основе или на дисках. Приемопередатчик 156 сконфигурирован для приема мультимедийных данных по сети 140 и предоставления их процессору 152 для декодирования. В одном примере приемопередатчик 16 включает в себя беспроводный приемопередатчик. Сеть 140 может содержать одну или несколько систем проводной или беспроводной связи, включая одно или несколько из следующего: сеть Ethernet, телефонные (например, обычные старые телефонные системы (POTS)) и кабельные системы, системы связи по линиям электросети и оптоволоконные системы, и/или беспроводную систему, содержащую одну или несколько из следующих систем: систему связи с множественным доступом и кодовым разделением каналов (CDMA или CDMA2000), систему с множественным доступом и частотным разделением каналов (FDMA), систему с множественным доступом и ортогональным частотным разделением каналов (OFDM), систему с множественным доступом и временным разделением каналов (TDMA), например GSM/GPRS (Пакетная радиосвязь общего назначения)/EDGE (усовершенствованная среда GSM для высокоскоростной передачи данных), система мобильной телефонной связи TETRA (наземная магистральная радиосвязь), широкополосная система с множественным доступом и кодовым разделением каналов (WCDMA), высокоскоростная система передачи данных (1xEV-DO или 1xEV-DO Gold multicast), система IEEE 802.11, система mediaFLO, система DMB, система DVB-H и т.п.
На фиг.2А показана блок-схема примерного кодирующего устройства 110, которое можно использовать в системе 100 по фиг.1 согласно некоторым конфигурациям. В данной конфигурации кодирующее устройство 110 содержит элемент 118 для межкадрового кодирования, элемент 120 для внутрикадрового кодирования, элемент 122, создающий опорные данные, и передающий элемент 124. Элемент 118 для межкадрового кодирования кодирует части видеоданных с использованием межкадрового кодирования с временным предсказанием (например, с использованием предсказания с компенсацией движения), обращаясь к другим частям видеоданных, расположенных в других временных кадрах. Элемент 120 для внутрикадрового кодирования кодирует части видеоданных, используя внутрикадровое кодирование, причем эти части могут декодироваться независимо без обращения к другим временно привязанным видеоданным. В некоторых конфигурациях элемент 120 для внутрикадрового кодирования может использовать пространственное предсказание для реализации преимуществ избыточности в других видеоданных, находящихся в том же временном кадре.
Генератор 122 опорных данных согласно одному аспекту создает данные, которые указывают, где находятся видеоданные, закодированные путем внутрикадрового кодирования и межкадрового кодирования, которые были созданы кодирующими элементами 120 и 118 соответственно. Например, опорные данные могут включать в себя идентификаторы субблоков и/или макроблоков, которые используются декодером для определения местоположения в кадре. Опорные данные могут также включать в себя порядковый номер кадра, используемый для определения местоположения кадра в последовательности видеокадров.
Передатчик 124 передает данные, закодированные путем межкадрового кодирования, данные, закодированные путем внутрикадрового кодирования, а в некоторых конфигурациях, и опорные данные по сети, такой как сеть 140 на фиг.1. Данные могут передаваться по одной или нескольким линиям связи. Термин «линии связи» используется в общем смысле и может включать в себя любые каналы связи, в том числе, но не только: проводные или беспроводные сети, виртуальные каналы, оптические линии связи и т.п. В некоторых конфигурациях данные, закодированные путем внутрикадрового кодирования, передаются по линии связи базового уровня, а данные, закодированные путем межкадрового кодирования, передаются по линии связи уровня улучшения. В некоторых конфигурациях данные, закодированные путем внутрикадрового кодирования, и данные, закодированные путем межкадрового кодирования, передаются по одной и той же линии связи. В некоторых конфигурациях один или несколько из следующих видов данных: данные, закодированные путем межкадрового кодирования, данные, закодированные путем внутрикадрового кодирования, и/или опорные данные, - могут передаваться по линии связи на боковой полосе частот. Например, можно использовать линию связи на боковой полосе частот, такую как сообщения SEI (формат дополнительной информационной поддержки) в стандарте H.264 или сообщения user_data в стандарте MPEG-2. В некоторых конфигурациях одно или несколько из нижеследующего: данные, закодированные путем внутрикадрового кодирования, данные, закодированные путем межкадрового кодирования, и/или опорные данные, - передаются по виртуальному каналу. Виртуальный канал может содержать пакеты данных с идентифицируемым заголовком пакета, который идентифицирует пакет данных как принадлежащий данному виртуальному каналу. Специалистам в данной области техники известны другие виды идентификации виртуального канала, такие как частотное разделение, временное разделение, кодовое расширение и т.д.
На фиг.2В показана блок-схема примерного декодирующего устройства 150, которое может быть использовано системой 100 по фиг.1 согласно некоторым конфигурациям. В данной конфигурации декодер 150 содержит приемный элемент 158, избирательный декодирующий элемент 160, элемент 162, определяющий опорные данные, и один или несколько детекторов доступности опорных данных, такие как элемент 164 - детектор переключения каналов, и элемент 166 - детектор ошибок.
Приемник 158 принимает кодированные видеоданные (например, данные, закодированные кодирующим устройством 110 по фигурам 1 и 2А). Приемник 158 может принимать кодированные данные по проводной или беспроводной сети, такой как сеть 140 по фиг.1. Данные могут приниматься по одной или нескольким линиям связи. В некоторых конфигурациях данные, закодированные путем внутрикадрового кодирования, принимаются по линии связи базового уровня, а данные, закодированные путем межкадрового кодирования, принимаются по линии связи уровня улучшения. В некоторых конфигурациях данные, закодированные путем внутрикадрового кодирования, и данные, закодированные путем межкадрового кодирования, принимаются по одной и той же линии связи. В некоторых конфигурациях один или несколько из следующих видов данных: данные, закодированные путем межкадрового кодирования, данные, закодированные путем внутрикадрового кодирования, и/или опорные данные, - могут приниматься по линии связи на боковой полосе частот. Например, можно использовать линию связи на боковой полосе частот, такую как сообщения SEI в стандарте H.264 или сообщения user_data в стандарте MPEG-2. В некоторых конфигурациях одно или несколько из нижеследующего: данные, закодированные путем внутрикадрового кодирования, данные, закодированные путем межкадрового кодирования, и/или опорные данные принимаются по виртуальному каналу. Виртуальный канал может содержать пакеты данных с идентифицируемым заголовком пакета, который идентифицирует пакет данных как принадлежащий данному виртуальному каналу. Специалистам в данной области техники известны другие виды идентификации виртуального канала.
Избирательный декодер 160 декодирует полученные видеоданные, закодированные путем межкадрового кодирования и внутрикадрового кодирования. В некоторых конфигурациях полученные данные содержат версию части видеоданных, закодированных путем межкадрового кодирования, и версию части видеоданных, закодированных путем внутрикадрового кодирования. Данные, закодированные путем межкадрового кодирования, могут быть декодированы после того, как декодированы опорные данные, на основе которых они были предсказаны. Например, данные, закодированные с использованием предсказания с компенсацией движения, содержат вектор движения и идентификатор кадра, идентифицирующий местоположение опорных данных. Если часть кадра, идентифицированная вектором движения и идентификатором кадра для версии, закодированной путем межкадрового кодирования, доступна (например, уже декодирована), то тогда избирательный декодер 160 может декодировать эту версию, закодированную путем межкадрового кодирования. Однако в том случае, если опорные данные не доступны, то тогда избирательный декодер 160 может декодировать версию, закодированную путем внутрикадрового кодирования.
Определитель 162 опорных данных согласно одному аспекту идентифицирует полученные опорные данные, которые указывают, где находятся видеоданные, закодированные путем внутрикадрового кодирования и межкадрового кодирования, в полученных закодированных видеоданных. Например, опорные данные могут включать в себя идентификаторы субблоков и/или макроблоков, которые используются избирательным декодером 160 для определения местоположения в кадре. Опорные данные могут также включать в себя порядковый номер кадра, используемый для определения местоположения кадра в последовательности видеокадров. Использование полученных опорных данных позволяет декодеру определить, доступны ли опорные данные, от которых зависят данные, закодированные путем межкадрового кодирования.
На доступность опорных данных может повлиять пользователь, переключающий канал в многоканальной системе связи. Например, приемнику 158 может быть доступно множество широковещательных передач видео при использовании одной или нескольких линий связи. Если пользователь дает команду приемнику 158 переключиться на другой широковещательный канал, то тогда опорные данные для данных, закодированных путем межкадрового кодирования, в новом канале могут не сразу оказаться доступными. Детектор 164 переключения каналов обнаруживает появление команды на переключение каналов и сигнализирует об этом избирательному декодеру 160. Затем избирательный декодер 160 может использовать информацию, полученную от определителя опорных данных, для идентификации того, доступны ли опорные данные версии, закодированной путем межкадрового кодирования, а затем идентифицирует местоположение ближайшей версии, полученной путем внутрикадрового кодирования, и избирательно декодирует эту идентифицированную версию, закодированную путем внутрикадрового кодирования.
На доступность опорных данных могут также повлиять ошибки в принятых видеоданных. Детектор 166 ошибок может использовать технологии обнаружения ошибок (например, прямое исправление ошибок) для идентификации неисправляемых ошибок в битовом потоке. Если неисправляемые ошибки имеются в опорных данных, от которых зависит версия, закодированная путем межкадрового кодирования, то тогда детектор 166 ошибок может просигнализировать об этом избирательному декодеру 160, идентифицируя, на какие видеоданные влияют эти ошибки. Затем избирательный декодер 160 может определить, декодировать ли версию, закодированную путем межкадрового кодирования (например, если опорные данные доступны), либо следует декодировать версию, закодированную путем внутрикадрового кодирования (например, если опорные данные недоступны).
В некоторых конфигурациях один или несколько элементов кодирующего устройства 110 по фиг.2А могут быть перекомпонованы и/или объединены. Эти элементы могут быть реализованы аппаратными средствами, программными средствами, программно-аппаратными средствами, межплатформенными программными средствами, микрокодом или любой их комбинацией. В некоторых конфигурациях один или несколько элементов декодера 150 по фиг.2В могут быть перекомпонованы и/или объединены. Эти элементы могут быть реализованы аппаратными средствами, программными средствами, программно-аппаратными средствами, межплатформенными программными средствами, микрокодом или любой их комбинацией.
Видео
Некоторые описанные здесь конфигурации можно реализовать, используя видеокодирование MediaFLOTM для доставки видеоуслуг реального времени в системах TM3 c использованием спецификации радиоинтерфейса FLO «Спецификация радиоинтерфейса связи только в прямом направлении (FLO) для наземной мобильной мультимедийной многоадресной передачи», опубликованной в виде технического стандарта TIA-1099, которая целиком включена в настоящий документ посредством ссылки. Некоторые конфигурации определяют синтаксис и семантику битового потока, а также процесс декодирования для предоставления этих услуг через уровни 412 радиоинтерфейса FLO.
Приведенное здесь описание формирует по меньшей мере частично стандарт совместимости для мультимедийных многоадресных систем FLO, который помогает адаптивному устройству 304 FLO получать услугу (услуги) через любую сеть 302 FLO (фиг.3), удовлетворяющую этому стандарту.
Нормативные ссылки
Рекомендации H.264 ITU-T и/или Международный стандарт ISO/IEC 14496-10 усовершенствованного видеокодирования (называемый здесь «стандарт H.264/AVC») целиком включены сюда по ссылке, и на них можно ссылаться по конкретным аспектам.
Также для описанных здесь конфигураций применяются определения из параграфа 3 стандарта H.264/AVC. Вдобавок, кадр переключения каналов (CSF) в соответствии с описанными здесь примерными конфигурациями определяется как кодированное изображение, содержащее набор параметров последовательности и/или набор параметров изображения, и/или изображение мгновенного обновления декодирования. Кадр переключения каналов (CSF) может быть инкапсулирован в независимый пакет транспортного протокола для разрешения точек произвольного доступа в кодированном битовом потоке или для облегчения устранения ошибок. Кадры переключения каналов (CSF) определены ниже.
Условные обозначения, используемые здесь для операторов, системы записи, математических функций, синтаксических элементов, таблиц и процессов, соответствуют заданным в параграфе 5 стандарта H.264/AVC.
Некоторые описанные здесь конфигурации включают в себя описание объема, нормативных ссылок, определения терминов, сокращения и структуру изобретения, а также описание синтаксиса, семантики и процессов декодирования битового потока.
Формат битового потока низкого уровня сложности и декодирование для мультимедийной широковещательной передачи
В приведенном здесь описании среди прочего описываются примерный формат битового потока и процесс декодирования, который обеспечивает расширение низкого уровня сложности для мультимедийной широковещательной передачи. Битовый поток, соответствующий расширению низкого уровня сложности, описанному в указанной спецификации, согласуется с профилями в разделе А.2 стандарта H.264/AVC при следующих дополнительных ограничениях и расширениях: 1) Наборы параметров последовательности могут иметь profile_idc, равный 66 или 88; 2) Наборы параметров последовательности могут иметь constraint_set0_flag, равный 0; 3) Наборы параметров последовательности могут иметь constraint_set1_flag, равный 1; 4) Наборы параметров последовательности могут иметь constraint_set2_flag, равный 0; 5) Может присутствовать слайс типа В; и/или 6) Слайсы для В-изображений могут иметь nal_ref_idc, равный 0 (idc представляет индекс профиля).
Согласно другому аспекту этих конфигураций битовый поток соответствующий расширению низкого уровня сложности, описанному в этой спецификации, соответствует профилям в разделе А.2 стандарта H.264/AVC при следующих ограничениях и расширениях: 1) Наборы параметров последовательности могут иметь profile_idc, равный 66 или 88; 2) Наборы параметров последовательности могут иметь constraint_set0_flag, равный 1; 3) Наборы параметров последовательности могут иметь constraint_set1_flag, равный 0; 4) Наборы параметров последовательности могут иметь constraint_set2_flag, равный 1; 5) Может присутствовать тип В слайс типа В; и/или 6) Слайсы для В-изображений могут иметь nal_ref_idc, равный 0.
Кадр переключения каналов
На фиг.7 показан примерный кадр 700 переключения каналов (CSF). Чтобы разрешить изменение канала в среде MediaFLOTM и облегчить устранение ошибок, кодирующие элементы 120 согласно некоторым конфигурациям могут вставлять кадры переключения каналов (CSF). Кадр 700 переключения каналов (CSF) может содержать до 3 или более блоков NAL: NAL1 … NALX, обозначенных ссылочными позициями 702 и 704. X может быть равен 2 или более. Тем не менее, CSF 700 может иметь только один блок NAL.
На фиг.8 показан примерный кадр CSF 800 с 3 блоками NAL. В этом примере кадр CSF 800 содержит 3 блока 802, 804 и 806 NAL. Если используются 3 блока NAL, то в некоторых ситуациях при их наличии может иметь место следующий порядок в битовом потоке: набор 812 параметров последовательности (SPS), набор 814 параметров изображения (PPS) и мгновенное обновление 816 декодирования (IDR). Блок IDR NAL может представлять собой блок IDR NAL с низким уровнем качества.
Такая компоновка CSF показана в Таблице 1. Таблица 1 определяет, какие типы блока NAL используются в данный момент для CSF 800. В данной примерной конфигурации типы блока NAL включают в себя номера 7, 8 и 5. Тем не менее, при других обстоятельствах тип 5 для IDR NAL можно заменить типом 1 NAL I-кадра (кодированный слайс). Полезная нагрузка RBSP обозначает полезную нагрузку необработанной байтовой последовательности, которая представлена в столбце под заголовком «синтаксическая структура RBSP». Столбец nal_unit_type представляет номер типа блока NAL, используемый здесь для кадра CSF. Столбец С представляет другие поддерживаемые структуры. Например, номера 2, 3 и 4 представляют участки А, В и С данных. Номер 1 также представляет блок 1 NAL кодированного слайса. Номер 0 не определен.
Таблица 1
Блоки NAL и синтаксис RBSP для кадров переключения каналов
Контент блока NAL Синтаксическая структура RBSP Nal_unit_type C
Набор параметров последовательности seq_parameter_set_rbsp() 7 0
Набор параметров изображения pic_paramete_set_rbsp() 8 1
Кодированные слайсы изображения IDR slice_layer_with_
partitioning_rbsp()
5 2, 3
Кодированный слайс Slice_layer_with_
partitioning_rbsp()
1 2, 3, 4
Синтаксис, семантика и процессы декодирования для этих блоков NAL соответствуют заданным в стандарте H.264/AVC.
Спецификации параметров кадра переключения каналов
Семантика битовых потоков кадров переключения каналов (CSF) предъявляет различные требования для ряда синтаксических элементов, переменных и функций, отличные от требований стандарта H.264/AVC.
На фиг.9 показан генератор 900 кадра переключения каналов (CSF). Генератор 900 CSF включает в себя генератор 902 набора SPS, генератор 904 набора PPS, генератор 906 обновления IDR и генератор 908 I-кадра. Следующие требования отличаются от стандарта H.264/AVC. Генератор 902 набора SPS допускает, чтобы блок NAL результирующего набора параметров последовательности (SPS) кадра CSF 800 имел pic_order_cnt_type, равный 0. Вдобавок, генератор 902 набора SPS допускает, чтобы блок NAL результирующего набора параметров последовательности (SPS) кадра CSF 800 имел флаг gaps_in_frm_num_value_allowed_flag, равный 0.
Генератор набора PPS создает блок NAL результирующего PPS. Генератор 908 I-кадра создает блок NAL I-кадра. Генератор 906 обновления IDR создает блок NAL результирующего IDR, так что синтаксический элемент pic_order_cnt_lsb для изображения IDR может быть ненулевым. Изображение IDR, PicOrderCnt(), равно изображению соответствующего Р-слайса PicOrderCnt(). Вдобавок, синтаксический элемент frame_num изображения IDR может быть ненулевым. frame_num изображения IDR равен frame_num соответствующего Р-слайса. frame_num следующего изображения может быть равен (frame_num+1)%MaxFrameNum.
Таким образом, генератор IDR включает в себя вычислитель 910 значения счетчика последовательности изображения (POC) для IDR, который устанавливает значение POC блока NAL IDR равным значению POC Р-слайса. Генератор IDR также включает в себя вычислитель 912 номера кадра изображения IDR, который устанавливает номер кадра изображения равным номеру кадра изображения Р-слайса. Генератор IDR в некоторых случаях обеспечивает также ненулевые значения номера кадра изображения и счетчика POC. Кодирующее устройство 110 отслеживает номер кадра в блоке 916, где frame_num изображения может быть равен (frame_num+1)%MaxFrameNum.
Кодирующее устройство 110 может отслеживать значение переменной PrevRefFrameNum, так что оно может быть установлено равным значению CSF frame_num минус 1.
Декодирование кадра переключения каналов
На фиг.10 показан процесс 1000 для декодирования битового потока с кадрами CSF. Процесс 1000 декодирования для I-слайсов в виде, заданном в параграфе 8 стандарта H.264/AVC, может быть использован для декодирования кадра переключения каналов (CSF), если блок NAL c IDR заменен блоком NAL с I-слайсом (кодированный слайс NAL типа 1), созданным генератором 908 I-кадра. Изображения в запрошенном канале с порядком вывода (отображения) перед кадром переключения каналов (CSF) могут быть отброшены. С точки зрения порядка вывода изменения в декодировании будущих изображений отсутствуют. Будущие изображения, следующие за кадром CSF, не могут использовать в качестве опорных кадров какие-либо изображения, выводимые перед кадром CSF.
В различных конфигурациях, приведенных ниже, блоки в блок-схемах выполняются в изображенном порядке, либо эти блоки или их части могут выполняться одновременно, параллельно или в другом порядке.
Таким образом, процесс 1000 декодирования начитается с блока 1002, где декодируется битовый поток с изображениями. За блоком 1002 следует блок 1004, где определяется, обнаружен ли кадр CSF. Если не обнаружен («НЕТ»), то тогда происходит циклический возврат из блока 1004 в блок 1002, где имеет место дополнительное декодирование битового потока.
Однако если в блоке 1004 результатом определения является «ДА», то тогда кадр CSF декодируется согласно I-слайсам и/или протоколу типов блока NAL. За блоком 1006 следует блок 1008, где определяется, имеются ли в порядке вывода какие-либо изображения запрошенного канала перед кадром CSF. Если определено «ДА», то эти изображения в блоке 1010 отбрасываются. За блоком 1010 следует блок 1012. Однако в том случае, если в блоке 1008 определено «НЕТ», то тогда за блоком 1008 следует блок 1012. В блоке 1012 определяется, имеется ли в порядке вывода какое-либо изображение в запрошенном канале после кадра CSF. Если определено «ДА», то в блоке 1014 в качестве не опорных кадров устанавливаются изображения перед кадром CSF в порядке вывода. За блоком 1010 следует блок 1012. Однако если определено «НЕТ», то тогда выполняется циклический возврат из блока 1012 в блок 1002. Также выполняется циклический возврат из блока 1014 в блок 1002, где имеет место стандартное декодирование. Не опорный кадр может быть установлен путем сброса кадра или путем принудительной установки кадра в качестве не опорного кадра.
Уровень синхронизации
Система MediaFLOTM может поставлять контент по меньшей мере трех типов: в реальном времени, не в реальном времени и по технологии IP Datacast (например, многоадресная передача, одноадресная передача и т.д.). Сетевой интерфейс устройства многоадресной передачи (MDNI) для доставки услуги реального времени показан на фиг.4.
На фиг.3 показана примерная взаимосвязь между сообщениями уровня синхронизации и медиапотоком реального времени, выводимым на устройство 304 или выводимым устройством 304 в сети 302 FLO. Примерная сеть 302 FLO может поддерживать непрерывную доставку потокового контента в реальном времени на устройство 304. Каждый поток может доставляться по отдельности, причем соответствующий поток может быть идентифицирован как принадлежащий общей услуге или набору услуг посредством использования системной информации. Сеть 302 может дополнительно обеспечить данные, позволяющие устройствам синхронизировать медиапотоки реального времени друг с другом и согласовать их с требованиями к временному представлению контента. Уровень для объединения медиапотоков и данных синхронизации известен как уровень 406 синхронизации.
В устройстве 304, необходимом для доступа к услуге реального времени, для определения местоположения этой услуги используется системная информация. После обработки метаданных, относящихся к услуге, таких как, например, титул и номинальный режим представления, доступный в данный момент по этой услуге, устройство 304 может выбрать подходящий поток и воспроизвести принятый поток. Временные соотношения и синхронизация представления этих потоков могут регулироваться соответствующими протоколами.
Архитектура протоколов
На фиг.4 показаны примерные протокольные уровни 400 для услуги реального времени в сети 302 FLO. Услуга реального времени может использовать описанные здесь услуги уровня 408 кадрирования, а также описанный здесь уровень 410 шифрования/дешифрования потока. Он может состоять по меньшей мере из двух субуровней: уровень 404 медиакодека и уровень 406 синхронизации. Уровень 402 приложений реального времени показан на более высоком участке протокольных уровней 400.
Уровень 404 медиакодека поддерживает специализированные медиакодеки, которые не входят в объем данной конфигурации. Медиакодек подает последовательность медиакадров на уровень 406 синхронизации в сети. Каждый медиакадр может быть идентифицирован временной отметкой представления (PTS), которая обычно задает момент времени представления кадра, и соответствующим идентификатором (ID) кадра, который идентифицирует относительное положение кадра в последовательности кадров в суперкадре. Кодек источника видео может создавать множество медиакадров с одинаковыми PTS и ID кадра в суперкадре.
Для некоторых типов медиа, особенно для видео, уровень 404 медиакодека в сети 302 также подает метаданные на уровень 406 синхронизации, которые этот уровень в устройстве 304 может использовать для поддержки захвата и восстановления последовательности медиакадров, подлежащих доставке на уровень 404 медиакодека в устройстве 304.
Уровень 406 синхронизации отвечает за адаптацию медиакадров, как того требует тип медиа, и за обеспечение синхронизации медиа и временных соотношений представления. Уровень 406 синхронизации транспортирует последовательность пакетов уровня синхронизации. Пакет уровня синхронизации несет в себе либо медиакадр, либо кадр адаптации, как будет описано ниже. Пакет уровня синхронизации, несущий медиакадр, формируется путем добавления заголовка синхронизации (SH) к медиакадру. Заголовок синхронизации (SH) состоит из типа медиа, общего медиазаголовка и заголовка, отражающего специфику медиа, как более подробно описано ниже.
Дополнительно, уровень 406 синхронизации может нести некоторые метаданные, отражающие специфику каждого типа медиа. Эти метаданные переносятся двумя путями. Во-первых, как было замечено, в заголовок синхронизации пакетов уровня синхронизации могут быть включены специальные расширения, отражающие специфику медиа. Во-вторых, пакеты уровня синхронизации могут использоваться для переноса кадров адаптации, которые создаются на уровне 406 синхронизации и перемежаются пакетами уровня синхронизации, несущими медиакадры в том же потоке. Различные типы кадра адаптации идентифицируются идентификатором приложения в заголовке синхронизации для кадра приложения.
На фиг.5А и 5В показаны примерные альтернативные взаимосвязи между пакетами уровня синхронизации и медиакадрами согласно некоторым конфигурациям. На фиг.5А показан примерный пакет 500 уровня синхронизации, закодированный кодирующим устройством 110. В пакете 500 уровня синхронизации содержится, например, множество медиакадров 504, 506 и 510 переменной длины. Каждому медиакадру 504, 506 и 510 предшествует соответствующий заголовок 502 синхронизации (SH). Заголовок 502 синхронизации (SH) включает в себя три компоненты. Эти три компоненты содержат тип 520 медиа (MT), общий медиазаголовок (CMH) 522 и заголовок 524, отражающий специфику медиа (MSH), которые подробно описаны ниже.
В примере по фиг.5А кадр 508 адаптации вставлен между медиакадрами 506 и 510. Кадру 508 адаптации предшествует заголовок 512 синхронизации (SH), имеющий две компоненты. Эти две компоненты заголовка 512 синхронизации (SH) включают в себя тип 530 медиа (MT) и тип 532 адаптации (AT).
На фиг.5 показан второй примерный пакет 550 уровня синхронизации, закодированный кодирующим устройством 110. В пакете 550 уровня синхронизации содержится, например, множество медиакадров 564, 570 и 580 переменной длины. Каждому медиакадру 564, 570 и 580 предшествует соответствующий заголовок 560 синхронизации (SH) и заголовок 562 адаптации (AH). В примере на фиг.5В кадр 574 адаптации вставлен между кадрами 570 и 580. Кадру 574 адаптации предшествует заголовок 572 синхронизации (SH).
Опции конфигурации потока реального времени
Для потоков, обеспечивающих данные реального времени, опции конфигурации потока могут быть сконфигурированы следующим образом: 1) FASB_ALLOWED обозначает «не выбран»; 2) CHECKSUM_ACTIVE обозначает «конфигурируемый»; и 3) STREAM_ENCRYPTION_ACTIVE обозначает «конфигурируемый».
Интерфейсы уровня медиакодека и кадрирования
Услуга реального времени может состоять из потоковой компоненты более чем одного типа, например видео, аудио и текст, используемый для комментариев или ввода кодированных титров, причем это возможно в потоках на множестве языков и даже множестве их комбинаций. Каждая потоковая компонента может переноситься в отдельном потоке, либо множество потоковых компонент могут переноситься в едином потоке.
Что касается фиг.3, то здесь каждый тип контента кодируется и форматируется соответствующим образом. Здесь поддерживаются три типа потокового контента, однако специалистам в данной области техники очевидна возможность расширения представленных здесь концепций: видео (например, H.264); аудио (например, HE-AAC, версия 2); и/или синхронные данные (например, синхронный текст 3GPP PSS).
Кадры 508 или 574 адаптации, переносящие метаданные, связанные с потоком, рассматриваются как контент четвертого типа.
Интерфейс медиакодека в сети 302 подает последовательность медиакадров 504, 506, 510, 564, 570 и 580 на уровень 406 синхронизации. В устройстве 304 уровень 406 синхронизации подает последовательность медиакадров (например, 504, 506 и 510) в медиакодек. Медиакадры (например, 504, 506 и 510) могут быть выровнены по байтовым границам при прохождении через интерфейс между уровнем 406 синхронизации и уровнем 404 медиакодека как в устройстве 304, так и в сети 302.
Уровень 406 синхронизации в сети 302 добавляет заголовки уровня синхронизации (например, 502) в медиакадры (например, 504, 506 и 510) для создания пакетов синхронизации, перемежает их с пакетами синхронизации, доставляющими кадры 508 адаптации, и доставляет результирующие пакеты синхронизации на уровень 408 кадрирования для передачи. Пакеты синхронизации, несущие медиакадры видео, могут передаваться либо в компоненте модуляции базового уровня, либо в компоненте модуляции уровня улучшения, как это задается уровнем 404 медиакодека для видео. Другие пакеты синхронизации могут передаваться в компоненте базового уровня.
Уровень 406 синхронизации в устройстве 304 доставляет медиакадры (например, 504, 506 и 510) на уровень 404 медиакодека в порядке возрастания ID кадра в каждом суперкадре. На порядок доставки медиакадров видео накладываются некоторые дополнительные ограничения в том случае, когда имеется более одного медиакадра видео с одинаковым ID кадра.
Максимальный размер медиакадра (например, 504, 506 и 510) не может превышать PMAX_RT байт, где PMAX_RT - конфигурируемый параметр системы FLO, который может быть сконфигурирован для обеспечения возможности иметь множество различных размеров медиакадра.
В последующем описании определяется адаптация сервисных пакетов, предоставляемых медиакодеками для транспортировки через уровень 406 синхронизации для каждого типа медиа, и взаимодействия уровня 406 синхронизации с уровнем 408 кадрирования, отражающие специфику медиа.
Видеоконтент
Интерфейс сетевого медиакодека
Видеокадры могут создаваться с любой номинальной частотой, заданной в Таблице 8, приведенной ниже. Номинальная частота кадра может изменяться в суперкадре, например, потому, что контент из разных источников поступает в сеть с разной частотой кадров. Для каждого суперкадра уровень 404 медиакодека может указать уровню 406 синхронизации количество медиакадров, которое желательно представить пользователю. Видеокадры состоят из целого числа байтов. Следовательно, нет необходимости в байтовом выравнивании медиакадра, транспортирующего видеокадр.
Уровень 404 видеокодека может представлять видеокадры на уровень 406 синхронизации в порядке декодирования. Уровень 404 медиакодека может обеспечить с каждым видеокадром следующие метаданные для уровня 406 синхронизации: 1) PTS и ID кадра; 2) частоту кадров, связанную с данным кадром, которая идентифицирует мгновенную частоту, с которой видеокадры должны предоставляться пользователю; 3) является ли кадр точкой произвольного доступа (RAP), которую устройство 304 может использовать для захвата видеопотока; 4) является ли кадр опорным кадром; 5) содержит ли кадр существенную видеоинформацию или дополнительную видеоинформацию; и/или 6) предназначен ли кадр для передачи в компоненте базового уровня или компоненте уровня улучшения. Критерий, по которому определяется, является ли видеоинформация существенной или дополнительной, определяется уровнем 404 видеокодека.
Значение ID кадра может быть установлено равным нулю для первого видеокадра в суперкадре. Оно может либо оставаться тем же самым для каждого последующего видеокадра, представленного на уровень 406 синхронизации, либо возрастать вплоть до значения, равного количеству медиакадров, подлежащих представлению устройством 304.
Доставка кадров с одинаковым ID кадра через интерфейс связана с рядом ограничений. Первое ограничение состоит в том, что, если уровень 404 медиакодека создает один или несколько RAP-кадров и один или несколько альтернативных кадров с одинаковым ID кадра, то он может представить RAP-кадр (кадры) на уровень 406 синхронизации перед альтернативными кадрами. Второе ограничение заключается в том, что, если уровень 404 медиакодека создает два кадра с одним и тем же ID кадра, которые отличаются только уровнем качества видео, низкокачественный кадр может передаваться в компоненте базового уровня, а высококачественный кадр может передаваться в компоненте уровня улучшения.
Сетевой интерфейс уровня кадрирования
Уровень 406 синхронизации может сгруппировать пакеты синхронизации, переносящие видеокадры, в соответствии с тем, передаются ли они компоненте базового уровня или компоненте уровня улучшения. Каждая группа может обрабатываться отдельно.
Уровень 406 синхронизации может подать пакеты синхронизации для каждой группы на уровень 408 кадрирования в порядке возрастания ID кадра. Два пакета синхронизации с одинаковым ID кадра в одной и той же компоненте могут быть поданы на уровень 408 кадрирования в том порядке, в котором они были получены от уровня 404 медиакодека.
Интерфейс уровня кадрирования в устройстве
Устройство 304 может восстановить пакеты синхронизации, переданные из компонент базового уровня и уровня улучшения, а также может восстановить порядок, в котором они должны доставляться через интерфейс медиакодека в устройстве путем их совместной обработки.
Интерфейс медиакодека в устройстве
Уровень 406 синхронизации в устройстве 304 может представлять медиакадры видео (например, 504, 506 и 510) на уровень 404 медиакодека в порядке декодирования, определенном исходя из ID кадра согласно дополнительным рекомендациям (все или некоторые из которых могут быть исключены в альтернативных конфигурациях). Первая рекомендация состоит в том, что, если уровень 406 синхронизации обнаруживает медиакадр видео с установленным флагом RAP («RAP-кадр») и одним или несколькими кадрами, не являющимися RAP-кадром, и одинаковым ID кадра, то тогда дополнительно оценивается одно из двух условий. Первое условие (для первой рекомендации) состоит в том, что, если уровень 406 синхронизации не захватил видеопоток, то он может доставить RAP-кадр через интерфейс медиакодека (MCI) и может отбросить кадры, не являющиеся RAP-кадрами. В противном случае (второе условие), уровень 406 синхронизации может отбросить RAP-кадр и может доставить кадр (кадры), не являющиеся RAP-кадром, через интерфейс медиакодека (MCI), если это необходимо. RAP-кадр может являться кадром CSF.
Вторая рекомендация заключается в том, что, если уровень 406 синхронизации обнаруживает два медиакадра видео с идентичными заголовками уровня синхронизации (SH), он может доставить кадр, полученный на уровне улучшения, на уровень 404 медиакодека и отбросить кадр, полученный в базовом уровне.
Третья рекомендация состоит в том, что, если уровень 406 синхронизации обнаруживает медиакадр видео с существенной видеоинформацией и второй медиакадр видео с тем же самым ID кадра и дополнительной видеоинформацией, то рассматриваются два дополнительных условия. Согласно первому условию в третьей рекомендации, если уровень 404 медиакодека не поддерживает обработку дополнительной видеоинформации, то уровень 406 синхронизации может отбросить этот медиакадр видео и доставить медиакадр видео с существенной видеоинформацией на уровень 404 медиакодека. Согласно второму условию третьей рекомендации, если первое условие не выполняется, то уровень 406 синхронизации может доставить оба медиакадра видео на уровень 404 медиакодека.
На фиг.16 показана блок-схема процесса 1600 обработки с уровня 406 синхронизации на уровень 404 медиакодека в устройстве 304. Процесс 1600 начинается с блока 1602, где медиакадры видео предоставляются с уровня 406 синхронизации на уровень 404 медиакодека в порядке декодирования на основе идентификационного номера кадра. За блоком 1602 следует блок 1604, где определяется, имеются ли два смежных кадра с одинаковым идентификационным номером, и где один кадр является RAP-кадром (например, CSF), а другой не является RAP-кадром. Если результатом определения является «НЕТ», то выполняется циклический возврат из блока 1604 в блок 1602. Однако в случае, если определяется «ДА», то тогда за блоком 1604 следует блок 1606, где определяется, захватил ли уровень 406 синхронизации видеопоток. Если определено, что «ДА», то тогда за блоком 1606 следует блок 1608, где RAP-кадр отбрасывается, а кадры, не являющиеся RAP-кадрами, доставляются в интерфейс MCI в случае необходимости. Если определено «НЕТ», то тогда за блоком 1606 следует блок 1610, где RAP-кадр посылается в интерфейс MCI, а кадры, не являющиеся RAP-кадрами, отбрасываются.
На фиг.17 показан пример битового потока 1700, созданного сетью 302, где имеются смежные кадры с одинаковыми идентификационными номерами. Битовый поток 1700 аналогичен битовому потоку, показанному и описанному в связи с фиг.5А. В качестве примера, медиакадр 1704 включает в себя P-кадр (1) для канала, обозначенного как CH-CNN. Медиакадр 1704 включает в себя заголовок 1702 синхронизации (SH). Заголовок 1702 синхронизации (SH) аналогичен ранее описанному заголовку 502 синхронизации (SH).
В этом примере положим, что кадр CSF был вставлен для инициирования изменения канала, например, на канал CH-ESPN. Кадр CSF представлен медиакадром 1708 и включает в себя заголовок 1706 синхронизации (SH). Кадр CSF является RAP-кадром и имеет заголовок CMH 1720 с идентификационным номером кадра. В иллюстративных целях кадр адаптации с соответствующим заголовком SH показан после кадра CSF (медиакадр 1708). Медиакадр 1712 обозначен как кадр, не являющийся RAP-кадром, причем ему предшествует заголовок 1710 синхронизации (SH). В этом битовом потоке 1700 медиакадры 1708 и 1712 являются смежными. Кадр CSF предназначен для переключения каналов, например, на канал CH-ESPN. Для инициирования изменения канала медиакадр 1712 представляет собой P-кадр (2) и имеет CMH в заголовке 1710 синхронизации с идентификационным номером кадра, совпадающим с идентификационным номером кадра в заголовке 1706 синхронизации (SH) для кадра CSF (медиакадр 1708).
За медиакадром 1712 следует медиакадр 1716, имеющий заголовок 1714 синхронизации. Медиакадр 1716 может являться В-кадром. С точки зрения порядка вывода В-кадр предшествует Р-кадру. Таким образом, В-кадр отбрасывается или опускается (смотри фиг.10).
Что касается описания к фиг.10, медиакадр 1704 необходимо обозначить как не опорный кадр. Поскольку имеет место изменение канала, кадр 1704 не может служить в качестве опорного кадра для видеокадра в другом канале. Медиакадр 1704 может быть установлен в качестве не опорного кадра или удален из буфера. Тем не менее, могут быть использованы другие средства, исключающие использование медиакадра в качестве опорного кадра.
Аудиоконтент
Сетевой интерфейс медиакодека
Аудиокадры создаются с фиксированной частотой в соответствии с типом используемого аудиокодека. Однако частота аудиокадров может не быть кратной частоте суперкадров. Для каждого суперкадра уровень 404 медиакодека может указать уровню 406 синхронизации количество медийных кадров, которое желательно представить.
ID кадра может быть связан с каждым аудиокадром, представленным уровню 406 синхронизации. ID кадра может быть присвоен либо уровнем 404 медиакодека, либо уровнем 406 синхронизации. Значение ID кадра может быть установлено равным нулю для первого аудиокадра в суперкадре. Это значение может возрастать для каждого последующего аудиокадра, представляемого на уровень 406 синхронизации вплоть до значения, равного количеству медиакадров, представляемых устройством 304.
Уровень 404 медиакодека в сети 302 может представлять аудиокадры уровню 406 синхронизации в порядке их создания. Аудиокадр может состоять из нецелого числа байт. Уровень 404 медиакодека может обеспечить байтовое выравнивание в соответствии со средством, заданным для типа используемого аудиокодека.
Уровень 404 медиакодека может предоставить метаданные уровню 406 синхронизации вместе с каждым аудиокадром. Эти метаданные включают в себя ID кадра, если он присвоен уровнем 404 медиакодека.
Определение, является ли кадр RAP-кадром
Определяется, содержит ли кадр существенную аудиоинформацию или дополнительную аудиоинформацию. Критерий, по которому определяется, является ли аудиоинформация существенной или дополнительной, определяется уровнем 404 медиакодека.
Сетевой интерфейс уровня кадрирования
Пакеты синхронизации, содержащие аудиокадры, могут передаваться в компоненте модуляции, направляемой уровнем 404 медиакодека. Аудиокадры, полученные в каждой компоненте модуляции, могут быть представлены уровню 408 кадрирования в порядке их создания.
Интерфейс уровня кадрирования в устройстве
Уровень 406 синхронизации в устройстве 304 может обрабатывать пакеты синхронизации в порядке их приема через интерфейс уровня кадрирования.
Интерфейс медиакодека в устройстве
Уровень 406 синхронизации в устройстве 304 может представлять аудиокадры уровню 404 медиакодека в порядке их извлечения из пакетов синхронизации.
Контент синхронных данных
Сетевой интерфейс медиакодека
Кадры синхронных данных создаются с переменной частотой. Как правило, но не обязательно, имеется по меньшей мере один кадр синхронных данных на один суперкадр в потоке синхронных данных, как хорошо видно на фиг.3.
ID кадра может быть связан с каждым кадром синхронных данных, представленным уроню 406 синхронизации. ID кадра может присваиваться либо уровнем 404 медиакодека, либо уровнем 406 синхронизации. Значение ID кадра может быть установлено равным нулю для первого кадра синхронных данных в суперкадре. Это значение может возрастать для каждого последующего кадра синхронных данных, представленного уровню синхронизации, вплоть до значения, равного количеству медиакадров, представляемых устройством.
Уровень 404 медиакодека в сети может представлять кадры синхронных данных уровню 406 синхронизации в порядке их создания. Кадры синхронных данных могут состоять из нецелого количества байт. Байтовое выравнивание может быть обеспечено в соответствии со средством, заданным используемым типом синхронных данных. Метаданные, предоставляемые уровнем 404 медиакодека уровню 406 синхронизации вместе с каждым кадром синхронных данных, если таковые имеются, зависят от типа данных.
Сетевой интерфейс уровня кадрирования
Пакеты синхронизации, содержащие кадры синхронных данных, могут передаваться в компоненте модуляции, направленной уровнем 404 медиакодека. Кадры синхронных данных, принимаемые в каждой компоненте модуляции, могут быть представлены на уровень кадрирования в порядке их создания.
Интерфейс уровня кадрирования в устройстве
Уровень 406 синхронизации в устройстве может обрабатывать пакеты синхронизации в порядке из приема через интерфейс уровня кадрирования.
Интерфейс медиакодека в устройстве
Уровень 406 синхронизации в устройстве может представлять кадры синхронных данных на уровень 404 медиакодека в порядке их извлечения из пакетов синхронизации.
Захват на уровне синхронизации
На фиг.6 показан примерный конечный автомат 600 для обработки уровня 406 синхронизации для отдельного потока в устройстве согласно некоторым конфигурациям. Конечный автомат 600 иллюстрирует переходы из состояния в состояние, а также обработку, выполняемую в каждом состоянии.
Состояние выполнения захвата
Устройство 304 может войти в состояние 606 выполнения захвата в любом из следующих случаев: 1) захват сигнала FLO, обозначенный ссылкой 602; 2) прием от уровня 408 кадрирования индикации об изменении ID потока, обозначенный ссылкой 612; 3) потеря сигнала FLO, обозначенная ссылкой 610, при нахождении в состоянии 614 после захвата; 4) обнаружение медиакадра с ошибками, также обозначенное ссылкой 610, при нахождении в состоянии 614 после захвата; сигнализация об ошибках может осуществляться уровнем 408 кадрирования или ошибки могут быть обнаружены в результате контроля с помощью избыточного циклического кода (CRC), если обработка CRC сконфигурирована. Вдобавок, переход в состояние 606 выполнения захвата возможен при получении кадра, не являющегося RAP-кадром (обозначено ссылкой 604).
В случае передачи видеопотока устройство 304 может использовать информацию, предоставленную каталогом уровня синхронизации видео, если он доступен, чтобы определить природу медикадров, затронутых ошибкой. Устройство 304 способно определить, что процедуры устранения ошибок возможны без повторного перехода в состояние 614 выполнения захвата.
Состояние после захвата
После приема RAP-кадра (обозначено ссылкой 608), то есть при отсутствии ошибок, устройство 304 может перейти в состояние 614 после захвата. Переход в это же состояние происходит, когда не обнаружено ни одной ошибки в кадрах (обозначено ссылкой 616), при нахождении в состоянии 614 после захвата.
При нахождении в состоянии 614 захвата устройство 304 может обрабатывать медиакадры, предоставляемые уровнем 408 кадрирования. Достоверные медиакадры могут быть доставлены на уровень 404 медиакодека.
Заголовок синхронизации (SH)
На фиг.11 показан генератор 1110 заголовка синхронизации, создающий заголовок 1100 синхронизации. Генератор 1110 заголовка синхронизации включает в себя генератор 1130 типа медиаполя, который создает коды типа медиа. Коды типа медиа извлекаются для вставки в формат заголовка 1100 синхронизации, причем они включают в себя 00 для видео в блоке 1132, 01 для аудио в блоке 1134, 10 для синхронных данных в блоке 1136 и 11 для адаптации в блоке 1140. Генератор 1110 заголовка синхронизации также включает в себя генератор 1150 дополнительных полей. Генератор 1110 заголовка синхронизации также создает тип адаптации (AT), как показано на фиг.5А, с помощью генератора 1160 типа адаптации, показанного на фиг.12В.
Заголовок 1100 синхронизации состоит из поля 1102 типа медиа, за которым следуют дополнительные поля 1104, чей формат зависит от значения поля типа медиа, созданного генератором 1130 типа медиаполя. Генератор 1150 дополнительных полей показан на фиг.12А.
Общий формат заголовка 1100 синхронизации показан в таблице 2. Таблицы включают в себя имя поля, тип поля и присутствие поля. Присутствие поля указывает, является ли поле обязательным, условным и т.д. Тип поля указывает, является ли поле целочисленным без знака (UINT), переменной, битами и т.д.
Таблица 2
Общий формат заголовка уровня синхронизации
Имя поля Тип поля Присутствие поля
MEDIA_TYPE (1102) UINT(2) Обязательное
Дополнительные поля (1104) Переменная Обязательное
MEDIA_TYPE
Поле 1102 MEDIA_TYPE идентифицирует тип медиакадра, переносимого пакетом уровня синхронизации, или определяет, что пакет уровня синхронизации несет кадр адаптации. Значения, определенные для поля MEDIA_TYPE, перечислены в Таблице 3.
Таблица 3
Значения, определенные для MEDIA_TYPE
Имя Значение
Видео 00
Аудио 01
TIMED_DATA 10
Адаптация 11
Дополнительные поля
На фиг.12А показан генератор 1150 дополнительных полей, входящий в генератор 1110 заголовка синхронизации. Генератор 1150 дополнительных полей включает в себя ассемблер 1200 общего медиазаголовка и ассемблер 1202 заголовка, учитывающего специфику медиа.
Формат дополнительных полей 1104 зависит от значения поля 1102 типа медиа. Ассемблер 1200 общего заголовка медиа формирует заголовок CMH (фиг.5А) в соответствии с элементами Таблицы 4. Ассемблер 1202 заголовка, отражающего специфику медиа, формирует заголовок MSH (фиг.5А) согласно элементам в Таблице 4. Общий формат полей заголовка для пакетов синхронизации, передающих медиакадры с видео, аудио или с синхронными данными, показан в Таблице 4.
Таблица 4
Общий формат дополнительных полей заголовка уровня синхронизации для медиакадров
Имя поля Тип поля Присутствие поля
Общий медиазаголовок Бит(22) Обязательное
Имя поля Тип поля Присутствие поля
Заголовок, отражающий специфику медиа Переменная Условное
Общий формат полей заголовка для пакетов синхронизации, передающих кадры адаптации, показан в Таблице 5. На фиг.12В показан генератор 1160 типа адаптации, входящий в генератор 1110 заголовка синхронизации.
Таблица 5
Общий формат дополнительных полей заголовка уровня синхронизации для кадров адаптации
Имя поля Тип поля Присутствие поля
ADAPTATION_TYPE UINT(6) Обязательное
Общий медиазаголовок
На фиг.13А показан ассемблер 1200 общего медиазаголовка. Ассемблер 1200 заголовка CMH включает в себя генератор 1302 отметки PTS, генератор 1304 идентификатора frame_id, генератор 1306 флага information_level_flag и генератор 1308 флага RAP_flag. Формат общего медиазаголовка (CMH) для пакетов уровня синхронизации, несущих медикадры, показан в Таблице 6. Общий медиазаголовок (CMH) предоставляет различную информацию. Информация CMH включает в себя: 1) информацию об отметках времени и ID медиакадра; 2) точки произвольного доступа в непрерывном потоке данных. Это поддерживает быстрый захват аудио- и видеопотоков и потока с синхронным текстом. Информация CMH также включает в себя: 3) индикацию не опорных кадров. Это позволяет в некоторых обстоятельствах отбрасывать медиакадры без их обработки (например, быстрая прокрутка вперед). Информация CMH также включает в себя: 4) индикатор уровня качества.
Формат общего медиазаголовка, создаваемого ассемблером 1200 общего медиазаголовка, показан в Таблице 6
Таблица 6
Формат общего медиазаголовка
Имя поля Тип поля Присутствие поля
PTS UINT(14) Обязательное
FRAME_ID UINT(6) Обязательное
INAORMATION_LEVEL_FLAG Бит(1) Обязательное
RAP_FLAG Бит(1) Обязательное
Отдельные поля заголовка CMH определены ниже.
Поле PTS
Поле PTS является отметкой времени представления медиакадра, которая создается генератором 1302 PTS. Это поле задается в миллисекундах. Поле PTS добавляется к времени суперкадра для получения действительного момента времени представления медиакадра.
FRAME_ID
FRAME_ID представляет собой номер медиакадра в суперкадре, который создается генератором 1304 frame_id. Этот номер устанавливают равным 0 для первого медиакадра в суперкадре и увеличивают на единицу для каждого последующего медиакадра, который имеет другое значение для PTS.
INFORMATION_LEVEL_FLAG
INFORMATION_LEVEL_FLAG представляет собой бит, который указывает, несет ли медиакадр существенную информацию для этого медиакадра или дополнительную информацию, которую можно получить с помощью существенной информации. INFORMATION_LEVEL_FLAG создается генератором 1306 флага information_level_flag. Генератор 1306 создает INFORMATION_LEVEL_FLAG согласно следующим условиям. Если медиакадр несет существенную информацию (условие 1), то INFORMATION_LEVEL_FLAG может быть установлен равным 0. Если медиакадр несет дополнительный признак (условие 2), INFORMATION_LEVEL_FLAG может быть установлен равным 1. Если медиакодек не поддерживает уровень дополнительной информации (условие 3), то INFORMATION_LEVEL_FLAG может быть установлен равным 0, и это поле может быть проигнорировано устройством.
RAP_FLAG
Флаг RAP_FLAG сигнализирует о том, является ли медиакадр точкой произвольного доступа; при этом он создается генератором 1308 RAP_flag. Устройство 304 может использовать RAP_FLAG во время повторного захвата или переключения каналов, чтобы определить, можно ли начинать доступ к медиапотоку с указанным медикадром. Генератор 1308 RAP_flag создает RAP_FLAG согласно следующим условиям. Если (условие 1) MEDIA_TYPE установлен равным VIDEO или AUDIO и если данный медиакадр является точкой произвольного доступа, то RAP_FLAG может быть установлен равным 1. Если (условие 2) MEDIA_TYPE установлен равным VIDEO или AUDIO и если данный медиакадр не является точкой произвольного доступа, то RAP_FLAG может быть установлен равным 0. Если (условие 3) MEDIA_TYPE установлен равным TIMED_DATA, то RAP_FLAG может быть установлен равным 1 во всех медиакадрах.
Заголовки, отражающие специфику медиа
На фиг.13В показан ассемблер 1202 заголовка, отражающего специфику медиа. Ассемблер 1202 заголовка, отражающего специфику медиа (MSH), формирует форматы заголовка, отражающего специфику медиа (фиг.5А), для пакетов уровня синхронизации, несущих медиакадр, в соответствии с типом медиа. Типами медиа являются аудио, видео, синхронные данные и адаптация. Ассемблер 1202 заголовка MSH включает в себя генератор 1322 частоты кадров, генератор 1324 флага unreferenced_frame_flag и генератор 1326 резервного поля для типа медиа, предназначенного для видео.
Видео
Заголовок, отражающий специфику медиа (MSH), для пакетов уровня синхронизации, несущих медиакадры с видео, является медиазаголовком для видео. Формат медиазаголовка для видео задан в Таблице 7.
Таблица 7
Медиазаголовок для видео
Имя поля Тип поля Присутствие поля
FRAME_RATE UINT (3) Обязательное
UNREFERENCED_FRAME_FLAG Бит(1) Обязательное
Зарезервировано UINT(4) Обязательное
Отдельные поля медиазаголовка для видео определены ниже.
FRAME_RATE
Поле FRAME_RATE представляет частоту, с которой кадры создаются сетью, причем это поле создается генератором 1322 частоты кадров в соответствии со значениями в Таблице 8. Значения, определенные для FRAME_RATE, показаны в Таблице 8.
Таблица 8
Значения, определенные для FRAME_RATE
Частота кадров (кадров в секунду) Значение
2400/1001 (23,976) 000
24 001
25 010
30000/1001 (29,97) 011
30 100
50 101
60000/1001 (59,94) 110
60 111
Частота FRAME_RATE представляет собой номинальную частоту отображения (кадров в секунду) при приеме полного видеопотока. Например, если видеопоток посылается с использованием как базового уровня, так и уровня улучшения, то FRAME_RATE является частотой после того, как оба потока данных полностью декодированы. Действительные частоты отображения могут отличаться друг от друга. Например, устройство, принимающее только базовый уровень передачи, может отображать кадры с пониженной частотой.
UNREFERENCED_FRAME_FLAG
Флаг UNREFERENCED_FRAME_FLAG представляет собой бит, который указывает, используется ли медиакадр в качестве опорного для восстановления других медиакадров, причем этот флаг создается генератором 1324 флага unreferenced_frame_flag. Генератор 1324 создает UNREFERENCED_FRAME_FLAG на основе следующих условий. Если медиакадр является опорным кадром (условие 1), то UNREFERENCED_FRAME_FLAG может быть установлен равным 0. Если медиакадр не является опорным кадром (условие 2), то UNREFERENCED_FRAME_FLAG может быть установлен равным 1.
RESERVED (зарезервировано)
Значение битов RESERVED может быть установлено равным 0, причем это значение создается генератором 1326 резервного поля, когда это необходимо.
Аудио
Ассемблер 1202 заголовка, отражающего специфику медиа, не создает заголовок, отражающий специфику медиа, для пакетов уровня синхронизации, несущих медиакадры с аудиоданными. Тем не менее, ассемблер 1202 заголовка, отражающего специфику медиа, может быть модифицирован, чтобы обеспечить указанный заголовок MSH для аудио.
Синхронные данные
Ассемблер 1202 заголовка, отражающего специфику медиа, включает в себя генератор 1332 timed_data_type. Заголовок, отражающий специфику медиа, для пакетов уровня синхронизации, несущих медиакадры с синхронными данными, представляет собой медиазаголовок синхронных данных. Формат медиазаголовка синхронных данных, создаваемый генератором 1332 timed_data_type, показан в таблице 9.
Таблица 9
Формат медиазаголовка синхронных данных
Имя поля Тип поля Присутствие поля
TIMED_DATA_TYPE UINT(8) Обязательное
TIMED_DATA_TYPE
Поле TIMED_DATA_TYPE идентифицирует конкретный тип данных в медиакадре TIMED_DATA, причем оно создается генератором 1332 timed_data_type. Значения, определенные для TIMED_DATA_TYPE, заданы в Таблице 10.
Таблица 10
Значения, определенные для TIMED_DATA_TYPE
Имя Значение
CHARACTER_TEXT 0
Значения с 1 по 256 зарезервированы
ADAPTATION_TIPE
На фиг.12В показан генератор 1160 типа адаптации, входящий в генератор 1110 заголовка синхронизации. Генератор 1160 типа адаптации включает в себя ассемблер 1220 каталога video_sync_layer. Поле ADAPTATION_TIPE задает тип данных адаптации в кадре адаптации. Значения, определенные для поля ADAPTATION_TIPE, заданы в Таблице 11.
Таблица 11
Значения, определенные для ADAPTATION_TIPE
Имя Значение
video_sync_layer_directory 1
Все другие значения зарезервированы
Кадры адаптации
Структура тела кадра адаптации (например, 508) зависит от типа адаптации. Тело кадра адаптации для каждого типа адаптации задано в Таблице 11 и описано ниже.
Каталог уровня синхронизации видео (VSL)
Ассемблер 1220 каталога video_sync_layer создает каталог уровня синхронизации видео, который является необязательным кадром адаптации и может быть использован уровнем 406 синхронизации в устройстве, чтобы содействовать устранению ошибок, выполняемому видеокодеком. Например, он позволяет уровню 406 синхронизации определить, предназначался ли потерянный или поврежденный кадр в качестве опорного кадра. Информация об этом позволяет видеокодеку решить, следует ли обрабатывать последующие кадры вплоть до очередного опорного кадра или их надо отбросить.
Ассемблер 1160 каталога video_sync_layer, показанный на фиг.14, включает в себя модуль 1402 записей VSL_records, модуль 1412 бит RAP_flag_bits, модуль 1422 бит U_frame_flag_bits и резервный модуль 1432 для создания и формирования каталога video_sync_layer. Каталог video_sync_layer, если он имеется, может транспортироваться в виде кадра адаптации уровня синхронизации в компоненте базового уровня потока, транспортирующего видео, для которого он применяется. Этот каталог следует передавать по меньшей мере один раз в течение суперкадра. Формат каталога video_sync_layer задан в Таблице 12.
Таблица 12
Каталог уровня синхронизации видео (VSL)
Имя поля Тип поля Присутствие поля
VSL_RECORDS VSL_RECORD_TYPE Обязательное
RAP-FLAG_BITS BIT(60) Обязательное
U_FRAME_FLAG_BITS BIT(60) Обязательное
Зарезервировано BIT(переменная) Условное
VSL_RECORD
На фиг.15 показан модуль 1402 записи VSL. Модуль 1402 записи VSL включает в себя модуль 1502 more_VSL_records, модуль 1504 frame_rate, модуль 1506 num_frames, модуль 1508 first_frame_PTS и модуль 1510 last_frame_PTS.
Модуль 1502 more_VSL_records может создавать и формировать одну или несколько записей VSL_RECORD для каталога. Формат VSL_RECORD задан в Таблице 13.
Таблица 13
Формат VSL_RECORD
Имя поля Тип поля Присутствие поля
MORE_VSL_RECORDS Бит(1) Обязательное
FRAME_RATE UINT(3) Обязательное
NUM_FRAMES UINT(6) Обязательное
FIRST_FRAME_PTS UINT(14) Обязательное
LAST_FRAME_PTS UINT(14) Обязательное
MORE_VSL_RECORDS
Модуль 1502 more_VSL_records создает флаг MORE_VSL_RECORDS, который может быть установлен равным 0, если текущая запись VSL_RECORD является последней в каталоге уровня синхронизации видео.
Модуль 1502 more_VSL_records создает флаг MORE_VSL_RECORDS, который может быть установлен равным 1, если текущая запись VSL_RECORD не является последней в каталоге уровня синхронизации видео.
Количество записей VSL_RECORD в каталоге уровня синхронизации видео может быть на 1 больше, чем количество изменений номинальной частоты видеокадров в суперкадре.
FRAME_RATE
Модуль 1504 frame_rate создает и формирует поле FRAME_RATE, которое обеспечивает информацию о частоте кадров, используемую в записи VSL_RECORD. Таблица 8 задает значения, определенные для поля FRAME_RATE.
NUM_FRAMES
Модуль 1506 num_frames создает поле NUM_FRAMES, которое указывает количество медиакадров видео с разными значениями ID кадра с частотой кадров, заданной полем FRAME_RATE, в блоке последовательных медиакадров видео, начиная с FIRST_FRAME_PTS в суперкадре.
FIRST_FRAME_PTS
Модуль 1508 first_frame_PTS создает отметку времени FIRST_FRAME_PTS, которая является PTS первого медиакадра видео в блоке последовательных медиакадров видео с частотой кадров, задаваемой параметром FRAME_RATE.
LAST_FRAME_PTS
Модуль 1510 last_frame_PTS создает и формирует LAST_FRAME_PTS, которая является отметкой PTS последнего медиакадра видео в блоке последовательных медиакадров видео с частотой, задаваемой параметром FRAME_RATE, начиная с FIRST_FRAME_PTS.
RAP_FLAG_BITS
Модуль 1412 RAP_flag_bits создает биты RAP_FLAG_BITS. Каталог уровня синхронизации видео содержит 60 RAP_FLAG_BITS в соответствии с максимальным количеством медиакадров видео, равным 60, в суперкадре. Каждый бит поля RAP_FLAG_BITS соответствует конкретному медиакадру видео, определяемому ID кадра вплоть до значения, равного количеству отдельных видеокадров видео в суперкадре. Младший значащий бит соответствует первому медиакадру видео, покрываемому первой записью VSL_RECORD. За битами RAP_FLAG_BITS, покрываемыми первой записью VSL_RECORD, следуют биты RAP_FLAG_BITS, покрываемые второй и последующими записями VSL_RECORD, если они имеются, в порядке их передачи.
Каждый бит в поле RAP_FLAG_BITS каталога уровня синхронизации видео может быть установлен равным 1, если соответствующий медиакадр видео является точкой произвольного доступа и не сопровождается кадром, не являющимся RAP-кадром с тем же ID кадра. В противном случае, этот бит устанавливают равным 0. Биты, следующие за битом в RAP_FLAG_BITS, который соответствует последнему переданному медиакадру видео в суперкадре, могут быть установлены равными 0.
U_FRAME_FLAG_BITS
Модуль 1422 U_frame_flag_bits создает сообщение, содержащее 60 бит U_FRAME_FLAG_BITS в соответствии с максимальным количеством медиакадров видео, равным 60 в суперкадре. Каждый бит поля U_FRAME_FLAG_BITS соответствует конкретному медиакадру видео, идентифицируемому идентификатором кадра вплоть до значения, равного количеству отдельных медиакадров видео в суперкадре. Младший значащий бит соответствует первому медиакадру видео, покрываемому первой записью VSL_RECORD. За битами U_FRAME_FLAG_BITS, покрываемыми первой записью VSL_RECORD, следуют биты U_FRAME_FLAG_BITS, покрываемые второй и последующими записями VSL_RECORD, если они имеются, в порядке их передачи.
Каждый бит в поле U_FRAME_FLAG_BITS каталога уровня синхронизации видео может быть установлен равным 1, если соответствующий видеокадр не является опорным кадром. В противном случае, этот бит устанавливают равным 0. Биты, следующие за битом в U_FRAME_FLAG_BITS, который соответствует последнему переданному кадру в суперкадре, могут быть установлены равными 0.
RESERVED
За полем U_FRAME_FLAG_BIT следует минимальное количество зарезервированных бит (RESERVED), созданных модулем 1432 резервирования, которые необходимы для выравнивания последнего байта каталога синхронизации видео по границе байта. Сеть может установить резервные биты в каталоге синхронизации видео равными 0.
Специалистам в данной области техники очевидно, что информация и сигналы могут быть представлены с использованием любой из множества различных технологий и способов. Например, данные, инструкции, команды, информация, сигналы, биты, символы и элементарные посылки, на которые возможны ссылки по всему вышеприведенному описанию, могут быть представлены напряжениями, токами, электромагнитными волнами, магнитными полями или частицами, оптическими полями или частицами или любой их комбинацией.
Кроме того, специалистам в данной области техники ясно, что различные иллюстративные логические блоки, модули и алгоритмические шаги, описанные в связи с раскрытыми здесь примерами, могут быть реализованы в виде электронных аппаратных средств, программно-аппаратных средств, компьютерного программного обеспечения, межплатформенного программного обеспечения, микрокода или их комбинации. Чтобы наглядно проиллюстрировать эту взаимозаменяемость аппаратных и программных средств, различные иллюстративные компоненты, блоки, модули, схемы и шаги были описаны выше с точки зрения их функциональных возможностей. То, какими средствами: аппаратными или программными, реализуются эти функциональные возможности, зависит от конкретного приложения и проектных ограничений, накладываемых на систему в целом. Специалисты в данной области техники могут реализовать описанные функциональные возможности различными путями для каждого конкретного приложения, но такие решения по их реализации не должны интерпретироваться как выход за рамки объема раскрытых здесь способов.
Различные иллюстративные логические блоки, компоненты, модули и схемы, описанные в связи с раскрытыми здесь примерами, могут быть реализованы или выполнены с помощью процессора общего назначения, цифрового процессора сигналов (DSP), специализированной прикладной интегральной схемы (ASIC), вентильной матрицы, программируемой пользователем (FPGA), или другим программируемым логическим устройством, дискретной вентильной или транзисторной логики, дискретных аппаратных компонент или любой их комбинации, предназначенной для выполнения описанных здесь функций. Процессором общего назначения может быть микропроцессор, но в альтернативном варианте процессор может представлять собой любой известный процессор, контроллер, микроконтроллер или конечный автомат. Процессор также может быть реализован в виде комбинации вычислительных устройств, например комбинации процессора DSP и микропроцессора, множества микропроцессоров, одного или нескольких микропроцессоров в сочетании с ядром DSP или любой другой указанной конфигурации.
Блоки способа или алгоритма, описанного в связи с раскрытыми здесь примерами, могут быть непосредственно воплощены в аппаратных средствах, в одном или нескольких программных модулях, выполняемых одним или несколькими обрабатывающими элементами, или в комбинации того и другого. Программный модуль может находиться в ОЗУ (RAM), флэш-памяти, ПЗУ (ROM), стираемом программируемом ПЗУ (EPROM), электрически стираемом программируемом ПЗУ (EEPROM), регистрах, жестком диске, съемном диске, ПЗУ на компакт-диске (CD-ROM) или любой другой форме или комбинации носителей хранения, известных в данной области техники. Иллюстративный носитель хранения связан с процессором таким образом, чтобы процессор мог считывать с него информацию и записывать информацию на него. В альтернативном варианте носитель хранения может составлять с процессором единое целое. Процессор и носитель хранения могут находиться в прикладной специализированной интегральной схеме (ASIC). Схема ASIC может находиться в беспроводном модеме. В альтернативном варианте процессор и носитель хранения могут находиться в беспроводном модеме в виде дискретных компонент.
В одной или нескольких примерных конфигурациях описанные здесь функции могут быть реализованы аппаратными средствами, программными средствами, аппаратно-программными средствами или любой их комбинацией. При реализации программными средствами эти функции могут запоминаться или передаваться в виде одной или нескольких команд или кода на считываемой компьютером среде. Считываемый компьютером носитель включает в себя как машиночитаемый носитель, так и среду связи, в том числе любой носитель, который обеспечивает возможность пересылки компьютерной программы из одного места в другое. Носители хранения могут представлять собой любые доступные носители, к которым может получать доступ компьютер. Например, но не как ограничение, указанные машиночитаемые носители могут содержать ОЗУ, ПЗУ, электрически стираемое ППЗУ, ПЗУ на компакт диске или другое запоминающее устройство на оптическом диске, запоминающее устройство на магнитном диске или иные магнитные запоминающие устройства, либо любой другой носитель, который можно использовать для транспортировки или запоминания необходимого программного кода в виде команд или структур данных и который может быть доступен компьютеру. Также машиночитаемым носителем может быть названо любое соединение. Например, если программное обеспечение передается из Web-сайта, сервера или другого удаленного источника с использованием коаксиального кабеля, оптоволоконного кабеля, скрученной пары, цифровой абонентской линии (DSL) или беспроводных технологий, таких как инфракрасная, радио и микроволновая связь, то тогда коаксиальный кабель, волоконно-оптический кабель, скрученная пара, линия DSL или беспроводные технологии, такие как инфракрасная, радио и микроволновая связь, входят в определение носителя. Используемый здесь термин «диск» включает в себя компакт-диск (CD), лазерный диск, оптический диск, цифровой универсальный диск (DVD), гибкий диск и лазерный диск в синем диапазоне спектра, причем диски (disks) обычно воспроизводят данные на основе магнитных явлений, в то время как диски (discs) воспроизводят данные с помощью оптических лазеров. В объем понятия «машиночитаемый носитель» следует также включать комбинации из вышеописанного.
Приведенное выше описание раскрытых здесь примеров предложено для того, чтобы дать возможность специалистам в данной области техники выполнить или использовать раскрытые способы и устройство. Специалисты в данной области техники без труда предложат различные модификации этих примеров, при этом определенные здесь принципы можно применить к другим примерам, а также в них могут быть внесены дополнительные элементы.

Claims (46)

1. Устройство кодирования видеоданных, содержащее процессор, действующий для генерации кадра переключения каналов (CSF) из одного или нескольких блоков уровня сетевой абстракции (NAL) для разрешения точек произвольного доступа в кодированном битовом потоке, причем один из блоков NAL содержит блок NAL низкокачественного мгновенного обновления декодирования (IDR), имеющий ненулевой идентификационный номер кадра.
2. Устройство по п.1, в котором блок NAL IDR содержит ненулевое значение счетчика последовательности изображения (РОС).
3. Устройство по п.1, в котором ненулевой идентификационный номер кадра блока NAL IDR равен номеру кадра соответствующего Р-слайса.
4. Устройство по п.1, в котором процессор действует для генерации CSF по меньшей мере с двумя дополнительными блоками NAL, причем эти по меньшей мере два дополнительных блока NAL содержат блок NAL набора параметров последовательности (SPS) и блок NAL набора параметров изображения (PPS).
5. Устройство по п.1, в котором процессор действует для генерации CSF с одним блоком NAL, причем этот один блок NAL содержит блок NAL низкокачественного мгновенного обновления декодирования (IDR).
6. Устройство по п.1, в котором CSF включает в себя блок NAL I-кадра.
7. Устройство по п.1, дополнительно содержащее передатчик для широковещательной передачи CSF в качестве кадра точки произвольного доступа (RAP).
8. Устройство по п.1, в котором CSF является действующим для того, чтобы вызвать переключение с одного канала на другой канал или содействовать устранению ошибок.
9. Интегральная схема для кодирования видеоданных, содержащая процессор, действующий для генерации кадра переключения каналов (CSF) из одного или нескольких блоков уровня сетевой абстракции (NAL) для разрешения точек произвольного доступа в кодированном битовом потоке, причем один из блоков NAL содержит блок NAL низкокачественного мгновенного обновления декодирования (IDR), имеющий ненулевой идентификационный номер кадра.
10. Интегральная схема по п.9, в которой блок NAL IDR содержит ненулевое значение счетчика последовательности изображения (РОС).
11. Интегральная схема по п.9, в которой ненулевой идентификационный номер кадра блока NAL IDR равен номеру кадра соответствующего Р-слайса.
12. Интегральная схема по п.9, в которой процессор действует для генерации CSF по меньшей мере с двумя дополнительными блоками NAL, причем эти по меньшей мере два дополнительных блока NAL содержат блок NAL набора параметров последовательности (SPS) и блок NAL набора параметров изображения (PPS).
13. Интегральная схема по п.9, в которой процессор действует для генерации CSF с одним блоком NAL, причем этот один блок NAL содержит блок NAL низкокачественного мгновенного обновления декодирования (IDR).
14. Интегральная схема по п.9, в которой CSF включает в себя блок NAL I-кадра.
15. Интегральная схема по п.9, дополнительно содержащая передатчик для широковещательной передачи CSF в качестве кадра точки произвольного доступа (RAP).
16. Интегральная схема по п.9, в которой CSF является действующим для того, чтобы вызвать переключение с одного канала на другой канал или содействовать устранению ошибок.
17. Считываемый компьютером носитель, содержащий машинно-исполняемые команды, которые, при их исполнении, побуждают компьютер: генерировать кадр переключения каналов (CSF) из одного или нескольких блоков уровня сетевой абстракции (NAL) для разрешения точек произвольного доступа в кодированном битовом потоке, чтобы вызвать переключение с одного канала на другой канал или содействовать устранению ошибок, причем один из блоков NAL содержит блок NAL низкокачественного мгновенного обновления декодирования (IDR), имеющий ненулевой идентификационный номер кадра.
18. Считываемый компьютером носитель по п.17, в котором блок NAL IDR содержит ненулевое значение счетчика последовательности изображения (РОС).
19. Считываемый компьютером носитель по п.17, в котором ненулевой идентификационный номер кадра блока NAL IDR равен номеру кадра соответствующего Р-слайса.
20. Считываемый компьютером носитель по п.17, в котором команды для генерации CSF включают в себя команды для генерации CSF по меньшей мере с двумя дополнительными блоками NAL, причем эти по меньшей мере два дополнительных блока NAL содержат блок NAL набора параметров последовательности (SPS) и блок NAL набора параметров изображения (PPS).
21. Считываемый компьютером носитель по п.17, в котором команды для генерации CSF включают в себя команды для генерации CSF с одним блоком NAL, причем этот один блок NAL содержит блок NAL низкокачественного мгновенного обновления декодирования (IDR).
22. Считываемый компьютером носитель по п.17, в котором команды для генерации CSF включают в себя команды для генерации блока NAL I-кадра.
23. Устройство декодирования видеоданных, содержащее процессор, действующий для декодирования одного или нескольких смежных кадров видео медиа из последовательности следующих друг за другом кадров видео медиа, причем каждый из смежных кадров видео медиа имеет одинаковый идентификационный (ID) номер кадра, который идентифицирует относительное местоположение одного или нескольких смежных кадров видео медиа в последовательности следующих друг за другом кадров видео медиа, причем первый кадр из смежных кадров видео медиа представляет собой кадр точки произвольного доступа (RAP), а второй кадр из смежных кадров видео медиа представляет собой не-RAP кадр.
24. Устройство по п.23, в котором процессор действует для декодирования только одного из смежных кадров видео медиа, имеющих одинаковый ID номер кадра.
25. Устройство по п.23, в котором процессор действует для декодирования кадра RAP и отбрасывания кадров, которые располагаются в порядке вывода перед кадром RAP.
26. Устройство по п.25, в котором для декодирования кадра RAP процессор действует для декодирования кадра переключения каналов, содержащего один или несколько блоков уровня сетевой абстракции (NAL).
27. Считываемый компьютером носитель, содержащий машинно-исполняемые команды, которые, при их исполнении, побуждают компьютер: декодировать один или несколько смежных кадров видео медиа из последовательности следующих друг за другом кадров видео медиа, причем каждый из смежных кадров видео медиа имеет одинаковый идентификационный (ID) номер кадра, который идентифицирует относительное местоположение одного или нескольких смежных кадров видео медиа в последовательности следующих друг за другом кадров видео медиа, причем первый кадр из смежных кадров видео медиа представляет собой кадр точки произвольного доступа (RAP), а второй кадр из смежных кадров видео медиа представляет собой не-RAP кадр.
28. Считываемый компьютером носитель по п.27, в котором команды для декодирования включают в себя команды для декодирования только одного из смежных кадров видео медиа, имеющих одинаковый ID номер кадра.
29. Считываемый компьютером носитель по п.27, в котором команды для декодирования включают в себя команды для декодирования кадра RAP и отбрасывания кадров, которые располагаются в порядке вывода перед кадром RAP.
30. Считываемый компьютером носитель по п.29, в котором команды для декодирования кадра RAP включают в себя команду для декодирования кадра переключения каналов, содержащего один или несколько блоков уровня сетевой абстракции (NAL).
31. Способ декодирования видеоданных, содержащий этап декодирования одного или нескольких смежных кадров видео медиа из последовательности следующих друг за другом кадров видео медиа, причем каждый из смежных кадров видео медиа имеет одинаковый идентификационный (ID) номер кадра, который идентифицирует относительное местоположение одного или нескольких смежных кадров видео медиа в последовательности следующих друг за другом кадров видео медиа, причем первый кадр из смежных кадров видео медиа представляет собой кадр точки произвольного доступа (RAP), а второй кадр из смежных кадров видео медиа представляет собой не-RAP кадр.
32. Способ по п.31, в котором этап декодирования включает в себя декодирование только одного из смежных кадров видео медиа, имеющих одинаковый ID номер кадра.
33. Способ по п.32, дополнительно содержащий этап предоставления декодеру как первого кадра, так и второго кадра из смежных кадров видео медиа.
34. Способ по п.31, в котором этап декодирования включает в себя декодирование кадра RAP и отбрасывание кадров, которые располагаются в порядке вывода перед кадром RAP.
35. Способ по п.34, в котором декодирование кадра RAP включает в себя декодирование кадра переключения каналов, содержащего один или несколько блоков уровня сетевой абстракции (NAL).
36. Способ кодирования видеоданных, содержащий этап кодирования одного или нескольких смежных кадров, каждый из которых имеет одинаковый идентификационный (ID) номер кадра, причем первый кадр из смежных кадров является кадром точки произвольного доступа (RAP), а второй кадр не является кадром RAP.
37. Система для кодирования и декодирования видеоданных, содержащая: кодер, действующий для кодирования одного или нескольких смежных кадров видео медиа из последовательности следующих друг за другом кадров видео медиа, причем каждый из смежных кадров видео медиа имеет одинаковый идентификационный (ID) номер кадра, который идентифицирует относительное местоположение одного или нескольких смежных кадров видео медиа в последовательности следующих друг за другом кадров видео медиа, причем первый кадр из смежных кадров видео медиа представляет собой кадр точки произвольного доступа (RAP), а второй кадр видео медиа представляет собой не-RAP кадр; и декодер, действующий для декодирования одного или нескольких смежных кадров видео медиа для переключения каналов или облегчения устранения ошибок.
38. Система для кодирования и декодирования видеоданных, содержащая кодер, действующий для генерации и широковещательной передачи кадра переключения каналов (CSF) из одного или нескольких блоков уровня сетевой абстракции (NAL) для разрешения точек произвольного доступа в кодированном битовом потоке, причем один из блоков NAL представляет собой блок NAL низкокачественного мгновенного обновления декодирования (IDR), имеющий ненулевой идентификационный номер кадра; и декодер, действующий для декодирования CSF, чтобы вызвать переключение с одного канала на другой канал или облегчить устранение ошибок.
39. Способ кодирования видеоданных, содержащий этап генерации кадра переключения канала (CSF) из одного или нескольких блоков уровня сетевой абстракции (NAL) для разрешения точек произвольного доступа в кодированном битовом потоке, причем один из блоков NAL представляет собой блок NAL низкокачественного мгновенного обновления декодирования (IDR), имеющий ненулевой идентификационный номер кадра.
40. Способ по п.39, в котором в котором блок NAL IDR содержит ненулевое значение счетчика последовательности изображения (РОС).
41. Способ по п.40, в котором этап генерации дополнительно включает в себя генерацию CSF по меньшей мере с двумя дополнительными блоками NAL, причем эти по меньшей мере два дополнительных блока NAL содержат блок NAL набора параметров последовательности (SPS) и блок NAL набора параметров изображения (РРС).
42. Способ по п.39, в котором этап генерации содержит генерацию CSF с одним блоком NAL, причем этот один блок NAL содержит блок NAL низкокачественного мгновенного обновления декодирования (IDR).
43. Способ по п.39, в котором этап генерации включает в себя генерацию CSF с блоком NAL I-кадра.
44. Способ по п.39, дополнительно содержащий этап широковещательной передачи CSF в качестве кадра точки произвольного доступа (RAP) для выполнения переключения каналов.
45. Способ по п.44, дополнительно содержащий прием CSF и переключение с одного канала на другой канал в ответ на принятый CSF.
46. Способ по п.44, дополнительно содержащий прием CSF и устранение ошибки в кодированном битовом потоке в ответ на принятый CSF.
RU2009122491/09A 2006-11-14 2007-11-14 Системы и способы для переключения каналов RU2419245C2 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US86582206P 2006-11-14 2006-11-14
US60/865,822 2006-11-14

Publications (2)

Publication Number Publication Date
RU2009122491A RU2009122491A (ru) 2010-12-20
RU2419245C2 true RU2419245C2 (ru) 2011-05-20

Family

ID=39302227

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2009122491/09A RU2419245C2 (ru) 2006-11-14 2007-11-14 Системы и способы для переключения каналов

Country Status (14)

Country Link
US (1) US8345743B2 (ru)
EP (2) EP2095641A2 (ru)
JP (2) JP5378227B2 (ru)
KR (2) KR101141086B1 (ru)
CN (2) CN103024444B (ru)
AU (2) AU2007319261B2 (ru)
BR (1) BRPI0718629A2 (ru)
CA (2) CA2783599C (ru)
IL (1) IL198419A0 (ru)
IN (1) IN2014MN01853A (ru)
MX (1) MX2009005086A (ru)
RU (1) RU2419245C2 (ru)
UA (1) UA93118C2 (ru)
WO (1) WO2008061164A2 (ru)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2602332C1 (ru) * 2013-01-21 2016-11-20 Долби Лабораторис Лайсэнзин Корпорейшн Перекодировка метаданных
RU2625534C2 (ru) * 2012-07-02 2017-07-14 Сан Пэтент Траст Способ декодирования изображений, способ кодирования изображений, устройство декодирования изображений, устройство кодирования изображений и устройство кодирования и декодирования изображений
US9788003B2 (en) 2011-07-02 2017-10-10 Samsung Electronics Co., Ltd. Method and apparatus for multiplexing and demultiplexing video data to identify reproducing state of video data
RU2633139C1 (ru) * 2012-07-06 2017-10-11 Нтт Докомо, Инк. Устройство кодирования видео с предсказанием, способ кодирования видео с предсказанием, программа кодирования видео с предсказанием, устройство декодирования видео с предсказанием, способ декодирования видео с предсказанием и программа декодирования видео с предсказанием
RU2646325C2 (ru) * 2012-06-28 2018-03-02 Квэлкомм Инкорпорейтед Произвольный доступ и сигнализация долгосрочных опорных картинок при кодировании видео
RU2785918C1 (ru) * 2019-12-27 2022-12-14 Тенсент Америка Ллс Способ ссылки на набор параметров в битовом потоке кодированного видео

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6307487B1 (en) * 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US7068729B2 (en) 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US9240810B2 (en) 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
EP1552617A2 (en) 2002-10-05 2005-07-13 Digital Fountain, Inc. Systematic encoding and decoding of chain reaction codes
CN1954501B (zh) * 2003-10-06 2010-06-16 数字方敦股份有限公司 通过通信信道接收从源发射的数据的方法
JP4971144B2 (ja) 2004-05-07 2012-07-11 デジタル ファウンテン, インコーポレイテッド ファイルダウンロードおよびストリーミングのシステム
US7721184B2 (en) * 2004-08-11 2010-05-18 Digital Fountain, Inc. Method and apparatus for fast encoding of data symbols according to half-weight codes
FR2888424A1 (fr) * 2005-07-07 2007-01-12 Thomson Licensing Sas Dispositif et procede de codage et de decodage de donnees video et train de donnees
US8229983B2 (en) 2005-09-27 2012-07-24 Qualcomm Incorporated Channel switch frame
US8670437B2 (en) * 2005-09-27 2014-03-11 Qualcomm Incorporated Methods and apparatus for service acquisition
KR101292851B1 (ko) * 2006-02-13 2013-08-02 디지털 파운튼, 인크. 가변적 fec 오버헤드 및 보호 구간을 이용하는 스트리밍및 버퍼링
US9270414B2 (en) 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
US7971129B2 (en) 2006-05-10 2011-06-28 Digital Fountain, Inc. Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient users of the communications systems
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
US9419749B2 (en) 2009-08-19 2016-08-16 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
WO2008061211A2 (en) * 2006-11-15 2008-05-22 Qualcomm Incorporated Systems and methods for applications using channel switch frames
JP5027305B2 (ja) 2007-09-12 2012-09-19 デジタル ファウンテン, インコーポレイテッド 信頼できる通信を可能にするためのソース識別情報の生成および伝達
US8848793B2 (en) * 2007-10-31 2014-09-30 Broadcom Corporation Method and system for video compression with integrated picture rate up-conversion
JP5056560B2 (ja) * 2008-03-17 2012-10-24 富士通株式会社 符号化装置、復号化装置、符号化方法および復号化方法
JP4935746B2 (ja) * 2008-04-07 2012-05-23 富士通株式会社 動画像符号化装置、動画像復号化装置及びその符号化、復号化方法
JP5369599B2 (ja) * 2008-10-20 2013-12-18 富士通株式会社 映像符号化装置、映像符号化方法
EP2392138A4 (en) * 2009-01-28 2012-08-29 Nokia Corp METHOD AND APPARATUS FOR VIDEO ENCODING AND DECODING
US9281847B2 (en) 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
US8526458B1 (en) * 2009-05-27 2013-09-03 Lockheed Martin Corporation Framer and deframer for self-describing superframe
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
US20120250690A1 (en) * 2009-12-01 2012-10-04 Samsung Electronics Co. Ltd. Method and apparatus for transmitting a multimedia data packet using cross layer optimization
US8374114B2 (en) * 2010-01-29 2013-02-12 Qualcomm Incorporated Method and system for organizing broadcast content
US9049497B2 (en) 2010-06-29 2015-06-02 Qualcomm Incorporated Signaling random access points for streaming video data
US8918533B2 (en) 2010-07-13 2014-12-23 Qualcomm Incorporated Video switching for streaming video data
US9185439B2 (en) 2010-07-15 2015-11-10 Qualcomm Incorporated Signaling data for multiplexing video components
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US9319448B2 (en) 2010-08-10 2016-04-19 Qualcomm Incorporated Trick modes for network streaming of coded multimedia data
US9270299B2 (en) 2011-02-11 2016-02-23 Qualcomm Incorporated Encoding and decoding using elastic codes with flexible source block mapping
US8958375B2 (en) 2011-02-11 2015-02-17 Qualcomm Incorporated Framing for an improved radio link protocol including FEC
US9253233B2 (en) 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
US9420307B2 (en) 2011-09-23 2016-08-16 Qualcomm Incorporated Coding reference pictures for a reference picture set
US9843844B2 (en) 2011-10-05 2017-12-12 Qualcomm Incorporated Network streaming of media data
US20130195119A1 (en) * 2011-10-14 2013-08-01 Qualcomm Incorporated Feedback channel for wireless display devices
US9264717B2 (en) * 2011-10-31 2016-02-16 Qualcomm Incorporated Random access with advanced decoded picture buffer (DPB) management in video coding
US8917745B2 (en) * 2012-03-11 2014-12-23 Broadcom Corporation Channel bonding with orbital angular momentum
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery
US9351016B2 (en) * 2012-04-13 2016-05-24 Sharp Kabushiki Kaisha Devices for identifying a leading picture
US9332309B2 (en) 2012-06-08 2016-05-03 Apple Inc. Sync frame recovery in real time video transmission system
US9674532B2 (en) * 2012-06-24 2017-06-06 Lg Electronics Inc. Image decoding method using information on a random access picture and apparatus using same
JP6045222B2 (ja) * 2012-06-28 2016-12-14 株式会社Nttドコモ 動画像予測復号装置、方法及びプログラム
US9491487B2 (en) 2012-09-25 2016-11-08 Apple Inc. Error resilient management of picture order count in predictive coding systems
US20140092976A1 (en) * 2012-09-30 2014-04-03 Sharp Laboratories Of America, Inc. System for signaling idr and bla pictures
US9264737B2 (en) * 2012-10-01 2016-02-16 Apple Inc. Error resilient transmission of random access frames and global coding parameters
KR102270788B1 (ko) 2013-01-10 2021-06-29 삼성전자주식회사 멀티 레이어 비디오 부호화 방법 및 장치, 멀티 레이어 비디오 복호화 방법 및 장치
JP5672320B2 (ja) * 2013-02-26 2015-02-18 Nttエレクトロニクス株式会社 デコーダ装置
US9819944B2 (en) * 2013-04-12 2017-11-14 Samsung Electronics Co., Ltd. Multi-layer video coding method for random access and device therefor, and multi-layer video decoding method for random access and device therefor
US9602822B2 (en) * 2013-04-17 2017-03-21 Qualcomm Incorporated Indication of cross-layer picture type alignment in multi-layer video coding
US9686609B1 (en) 2013-06-28 2017-06-20 Avnera Corporation Low power synchronous data interface
US20150030070A1 (en) * 2013-07-29 2015-01-29 Nvidia Corporation Adaptive decoding of a video frame in accordance with initiation of non-sequential playback of video data associated therewith
US9979971B2 (en) * 2013-10-14 2018-05-22 Qualcomm Incorporated Device and method for scalable coding of video information
US10116943B2 (en) * 2013-10-16 2018-10-30 Nvidia Corporation Adaptive video compression for latency control
US20150195549A1 (en) 2014-01-08 2015-07-09 Qualcomm Incorporated Support of non-hevc base layer in hevc multi-layer extensions
US10547903B2 (en) 2015-10-26 2020-01-28 Arris Enterprises, Inc. Advertisement display based on channel switch
WO2018171904A1 (en) * 2017-03-24 2018-09-27 Huawei Technologies Co., Ltd. Devices and methods for slice-compliant handover control
US11792432B2 (en) 2020-02-24 2023-10-17 Tencent America LLC Techniques for signaling and identifying access unit boundaries
US20230094234A1 (en) * 2021-09-24 2023-03-30 Apple Inc. Channel-aware semantic coding

Family Cites Families (76)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5122875A (en) 1991-02-27 1992-06-16 General Electric Company An HDTV compression system
US5241563A (en) * 1992-08-10 1993-08-31 General Instrument Corporation Method and apparatus for communicating interleaved data
JP3637584B2 (ja) 1995-05-02 2005-04-13 ソニー株式会社 表示制御装置および表示制御方法
US5825929A (en) * 1995-10-05 1998-10-20 Microsoft Corporation Transformation block optimization method
US6957350B1 (en) * 1996-01-30 2005-10-18 Dolby Laboratories Licensing Corporation Encrypted and watermarked temporal and resolution layering in advanced television
US5875199A (en) * 1996-08-22 1999-02-23 Lsi Logic Corporation Video device with reed-solomon erasure decoder and method thereof
US6480541B1 (en) 1996-11-27 2002-11-12 Realnetworks, Inc. Method and apparatus for providing scalable pre-compressed digital video with reduced quantization based artifacts
US6057884A (en) * 1997-06-05 2000-05-02 General Instrument Corporation Temporal and spatial scaleable coding for video object planes
RU2201654C2 (ru) 1997-12-23 2003-03-27 Томсон Лайсенсинг С.А. Способ низкошумового кодирования и декодирования
KR20000076064A (ko) 1998-01-08 2000-12-26 마츠시타 덴끼 산교 가부시키가이샤 영상신호 재생장치와 계층형 영상신호 복호화장치
US7031348B1 (en) * 1998-04-04 2006-04-18 Optibase, Ltd. Apparatus and method of splicing digital video streams
KR100354745B1 (ko) * 1998-11-02 2002-12-18 삼성전자 주식회사 비디오코딩및디코딩방법
US6370666B1 (en) 1998-12-02 2002-04-09 Agere Systems Guardian Corp. Tuning scheme for error-corrected broadcast programs
GB2347038A (en) * 1999-02-18 2000-08-23 Nokia Mobile Phones Ltd A video codec using re-transmission
FR2795279B1 (fr) 1999-06-18 2001-07-20 Thomson Multimedia Sa Procede et dispositif de commutation de programmes de television numerique
US6788740B1 (en) * 1999-10-01 2004-09-07 Koninklijke Philips Electronics N.V. System and method for encoding and decoding enhancement layer data using base layer quantization data
KR100348249B1 (ko) * 1999-10-08 2002-08-09 엘지전자 주식회사 가상 채널 테이블 데이터 구조 및 부가 정보 송수신 방법
DK1181829T3 (da) 2000-03-07 2012-01-16 Koninkl Philips Electronics Nv Resynkroniseringsfremgangsmåde til dekodning af video
US20070288959A1 (en) * 2000-03-29 2007-12-13 Digeo, Inc. Single-button remote access to a synthetic channel page of specialized content
GB2366464A (en) 2000-08-14 2002-03-06 Nokia Mobile Phones Ltd Video coding using intra and inter coding on the same data
FI120125B (fi) 2000-08-21 2009-06-30 Nokia Corp Kuvankoodaus
KR100674423B1 (ko) * 2001-01-19 2007-01-29 엘지전자 주식회사 송/수신 시스템 및 데이터 처리 방법
KR100736500B1 (ko) * 2001-04-25 2007-07-06 엘지전자 주식회사 디지털티브이의 브이에스비 통신시스템
US7873972B2 (en) * 2001-06-01 2011-01-18 Jlb Ventures Llc Method and apparatus for generating a mosaic style electronic program guide
US6535240B2 (en) * 2001-07-16 2003-03-18 Chih-Lung Yang Method and apparatus for continuously receiving frames from a plurality of video channels and for alternately continuously transmitting to each of a plurality of participants in a video conference individual frames containing information concerning each of said video channels
JP4443833B2 (ja) 2002-02-27 2010-03-31 パナソニック株式会社 情報再生方法、送信装置および受信装置
GB2386275B (en) * 2002-03-05 2004-03-17 Motorola Inc Scalable video transmissions
US7020823B2 (en) * 2002-03-19 2006-03-28 Matsushita Electric Industrial Co., Ltd. Error resilient coding, storage, and transmission of digital multimedia data
EP1500002A1 (en) 2002-04-29 2005-01-26 Sony Electronics Inc. Supporting advanced coding formats in media files
BR0312657A (pt) * 2002-07-16 2007-06-26 Nokia Corp método para executar uma restauração gradual do conteúdo de imagem com acesso randÈmico em uma seqüência de vìdeo codificada
US7606314B2 (en) * 2002-08-29 2009-10-20 Raritan America, Inc. Method and apparatus for caching, compressing and transmitting video signals
BR0316114A (pt) * 2002-11-15 2005-09-27 Thomson Licensing Sa Método e sistema para multiplexação estatìstica escalonada
KR100510938B1 (ko) 2003-02-18 2005-08-26 백철 동파 방지 배관 시스템
US8194751B2 (en) * 2003-02-19 2012-06-05 Panasonic Corporation Moving picture coding method and moving picture decoding method
US20040181811A1 (en) * 2003-03-13 2004-09-16 Rakib Selim Shlomo Thin DOCSIS in-band management for interactive HFC service delivery
JP2004350263A (ja) 2003-04-28 2004-12-09 Canon Inc 画像処理装置及び画像処理方法
US7464319B2 (en) * 2003-04-29 2008-12-09 Utah State University Forward error correction with codeword cross-interleaving and key-based packet compression
US7403660B2 (en) * 2003-04-30 2008-07-22 Nokia Corporation Encoding picture arrangement parameter in picture bitstream
KR20060010777A (ko) * 2003-05-02 2006-02-02 코닌클리케 필립스 일렉트로닉스 엔.브이. 프로그램들의 리던던트 전송
US7489342B2 (en) * 2004-12-17 2009-02-10 Mitsubishi Electric Research Laboratories, Inc. Method and system for managing reference pictures in multiview videos
JP2004343451A (ja) * 2003-05-15 2004-12-02 Matsushita Electric Ind Co Ltd 動画像復号化方法および動画像復号化装置
US8811492B2 (en) 2003-06-16 2014-08-19 Thomson Licensing Encoding method and apparatus enabling fast channel change of compressed video
US20040260827A1 (en) 2003-06-19 2004-12-23 Nokia Corporation Stream switching based on gradual decoder refresh
US8250622B2 (en) 2003-10-30 2012-08-21 Panasonic Corporation Method and apparatus for broadcasting to a portable terminal
EP1657835A4 (en) 2003-10-30 2008-12-10 Panasonic Corp MOBILEND DEVICE ORIENTED TRANSMISSION PROCESS AND DEVICE
US20070110105A1 (en) * 2003-10-30 2007-05-17 Matsushita Electric Industrial Co., Ltd. Apparatus and a method for receiving a multiplexed broadcast signal carrying a plurality of services
US7369610B2 (en) * 2003-12-01 2008-05-06 Microsoft Corporation Enhancement layer switching for scalable video coding
EP1703657A1 (en) 2004-01-08 2006-09-20 Matsushita Electric Industries Co., Ltd. Extra error correcting method for zapping stream ts packet
KR20050076019A (ko) * 2004-01-19 2005-07-26 삼성전자주식회사 스케일러블 부호화에 기반한 비트스트림의 적응적 부호화및/또는 복호화 방법, 및 이를 구현하기 위한프로그램이 기록된 기록 매체
WO2005072337A2 (en) * 2004-01-23 2005-08-11 Sarnoff Corporation Method and apparatus for digital video reconstruction
GB0402637D0 (en) 2004-02-06 2004-03-10 Nokia Corp Mobile telecommunications apparatus
US7869503B2 (en) * 2004-02-06 2011-01-11 Apple Inc. Rate and quality controller for H.264/AVC video coder and scene analyzer therefor
US20050185541A1 (en) * 2004-02-23 2005-08-25 Darren Neuman Method and system for memory usage in real-time audio systems
JP2005277701A (ja) 2004-03-24 2005-10-06 Hitachi Ltd 動画データの伝送方法、伝送システム、配信装置及び受信装置
US20050240353A1 (en) 2004-04-21 2005-10-27 Hoffmann Technologies Corporation Reagents, devices and methods for proteomic analysis with applications including diagnostics, vaccines, quality control and research
PL2207182T3 (pl) * 2004-04-28 2012-09-28 Panasonic Corp Urządzenie do generowania strumienia ruchomego obrazu, urządzenie do kodowania ruchomego obrazu, urządzenie do multipleksowania ruchomego obrazu oraz urządzenie do dekodowania ruchomego obrazu
BRPI0510329A8 (pt) 2004-05-03 2018-05-22 Thomson Res Funding Corporation Aparelho e método para habilitar uma mudança de canal
EP1993284B1 (en) * 2004-06-02 2013-07-03 Panasonic Corporation Picture coding apparatus and picture decoding apparatus
KR20060002416A (ko) * 2004-07-02 2006-01-09 현대자동차주식회사 동력조향장치 기어박스의 에어홀구조
CN101061718B (zh) * 2004-11-22 2010-10-13 汤姆森研究基金有限公司 用于数字订户线路系统中的频道改变的方法和设备
KR100703734B1 (ko) * 2004-12-03 2007-04-05 삼성전자주식회사 Dct 업샘플링을 이용한 다 계층 비디오 인코딩/디코딩방법 및 장치
KR100673253B1 (ko) * 2005-01-31 2007-01-22 엘지전자 주식회사 비디오 디코딩 장치
JP2008535374A (ja) 2005-03-29 2008-08-28 トムソン ライセンシング 無線通信システムでロバスト受信を提供する方法及び装置
FR2884674B1 (fr) 2005-04-19 2007-09-07 Bouygues Telecom Sa Affichage d'une page numerique "mosaique" pour la television sur terminal mobile
US9055298B2 (en) 2005-07-15 2015-06-09 Qualcomm Incorporated Video encoding method enabling highly efficient partial decoding of H.264 and other transform coded information
US20070076796A1 (en) 2005-09-27 2007-04-05 Fang Shi Frame interpolation using more accurate motion information
US8229983B2 (en) * 2005-09-27 2012-07-24 Qualcomm Incorporated Channel switch frame
US8670437B2 (en) 2005-09-27 2014-03-11 Qualcomm Incorporated Methods and apparatus for service acquisition
US8446954B2 (en) 2005-09-27 2013-05-21 Qualcomm Incorporated Mode selection techniques for multimedia coding
US9258519B2 (en) 2005-09-27 2016-02-09 Qualcomm Incorporated Encoder assisted frame rate up conversion using various motion models
JP4950206B2 (ja) 2005-10-11 2012-06-13 ノキア コーポレイション 効率的なスケーラブルストリーム適応のためのシステム及び方法
US8782706B2 (en) * 2005-12-29 2014-07-15 United Video Properties Systems and methods for providing channel groups in an interactive media guidance application
US7826536B2 (en) * 2005-12-29 2010-11-02 Nokia Corporation Tune in time reduction
US8316394B2 (en) * 2006-03-24 2012-11-20 United Video Properties, Inc. Interactive media guidance application with intelligent navigation and display features
CN101518082B (zh) * 2006-07-28 2012-11-28 汤姆森研究基金有限公司 用于数字视频的快速频道转换的方法和装置
WO2008061211A2 (en) * 2006-11-15 2008-05-22 Qualcomm Incorporated Systems and methods for applications using channel switch frames

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ЯН РИЧАРДСОН, Видеокодирование H.264 и MPEG-4 - стандарты нового поколения. - М.: Техносфера, 2005, с.186-197, 220-224. BORMANS J. et al, Video coding with H.264/AVC: tools, performance, and complexity, IEEE CIRCUITS AND SYSTEMS MAGAZINE, IEEE SERVICE CENTER, NEW YORK, vol.4, no.1, January 2004, c.7-28. JENNEHAG U. et al, Increasing bandwidth utilization in next generation iptv networks, IMAGE PROCESSING, 2004. ICIP ′04. 2004 INTERNATIONAL CONFERENCE ON SINGAPORE 24-27 OCT. 2004, PISCATAWAY, IEEE, vol.3, 24 October 2004, c.2075-2078. *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9788003B2 (en) 2011-07-02 2017-10-10 Samsung Electronics Co., Ltd. Method and apparatus for multiplexing and demultiplexing video data to identify reproducing state of video data
RU2636131C1 (ru) * 2011-07-02 2017-11-20 Самсунг Электроникс Ко., Лтд. Способ и устройство для мультиплексирования и демультиплексирования видеоданных, чтобы идентифицировать состояние воспроизведения видеоданных
RU2646325C2 (ru) * 2012-06-28 2018-03-02 Квэлкомм Инкорпорейтед Произвольный доступ и сигнализация долгосрочных опорных картинок при кодировании видео
RU2625534C2 (ru) * 2012-07-02 2017-07-14 Сан Пэтент Траст Способ декодирования изображений, способ кодирования изображений, устройство декодирования изображений, устройство кодирования изображений и устройство кодирования и декодирования изображений
RU2633139C1 (ru) * 2012-07-06 2017-10-11 Нтт Докомо, Инк. Устройство кодирования видео с предсказанием, способ кодирования видео с предсказанием, программа кодирования видео с предсказанием, устройство декодирования видео с предсказанием, способ декодирования видео с предсказанием и программа декодирования видео с предсказанием
RU2602332C1 (ru) * 2013-01-21 2016-11-20 Долби Лабораторис Лайсэнзин Корпорейшн Перекодировка метаданных
US9755835B2 (en) 2013-01-21 2017-09-05 Dolby Laboratories Licensing Corporation Metadata transcoding
US10554415B2 (en) 2013-01-21 2020-02-04 Dolby Laboratories Licensing Corporation Metadata transcoding
US11075762B2 (en) 2013-01-21 2021-07-27 Dolby Laboratories Licensing Corporation Metadata transcoding
RU2785918C1 (ru) * 2019-12-27 2022-12-14 Тенсент Америка Ллс Способ ссылки на набор параметров в битовом потоке кодированного видео

Also Published As

Publication number Publication date
JP5701790B2 (ja) 2015-04-15
EP2095641A2 (en) 2009-09-02
JP2012135027A (ja) 2012-07-12
US20080170564A1 (en) 2008-07-17
CN103024444A (zh) 2013-04-03
AU2011200446B2 (en) 2012-04-12
JP5378227B2 (ja) 2013-12-25
CA2668670A1 (en) 2008-05-22
BRPI0718629A2 (pt) 2013-11-26
MX2009005086A (es) 2009-05-27
KR101141086B1 (ko) 2012-05-03
AU2011200446A1 (en) 2011-02-24
CA2783599C (en) 2013-06-25
JP2010509896A (ja) 2010-03-25
KR101089072B1 (ko) 2011-12-09
CN101536523B (zh) 2013-01-23
IL198419A0 (en) 2010-02-17
RU2009122491A (ru) 2010-12-20
EP2129129B1 (en) 2013-09-18
WO2008061164A2 (en) 2008-05-22
KR20110091824A (ko) 2011-08-12
US8345743B2 (en) 2013-01-01
CN101536523A (zh) 2009-09-16
KR20090089409A (ko) 2009-08-21
CN103024444B (zh) 2015-11-18
UA93118C2 (ru) 2011-01-10
IN2014MN01853A (ru) 2015-07-03
AU2007319261A1 (en) 2008-05-22
CA2783599A1 (en) 2008-05-22
EP2129129A1 (en) 2009-12-02
AU2007319261B2 (en) 2010-12-16
CA2668670C (en) 2013-04-30
WO2008061164A3 (en) 2008-10-02

Similar Documents

Publication Publication Date Title
RU2419245C2 (ru) Системы и способы для переключения каналов
EP2171903B1 (en) Simultaneous processing of media and redundancy streams for mitigating impairments
US8612498B2 (en) Channel switch frame
JP5007012B2 (ja) ビデオ符号化方法
EP3158752B1 (en) Dependent random access point pictures
US7839930B2 (en) Signaling valid entry points in a video stream
US9392279B2 (en) Method and system for generating an instantaneous decoding refresh (IDR) picture slice in an H.264/AVC compliant video data stream
US20080212599A1 (en) Methods and systems for encoding data in a communication network
EP1929785B1 (en) Channel switch frame