RU2388171C2 - Methods and device for service acquisition - Google Patents
Methods and device for service acquisition Download PDFInfo
- Publication number
- RU2388171C2 RU2388171C2 RU2008116716/09A RU2008116716A RU2388171C2 RU 2388171 C2 RU2388171 C2 RU 2388171C2 RU 2008116716/09 A RU2008116716/09 A RU 2008116716/09A RU 2008116716 A RU2008116716 A RU 2008116716A RU 2388171 C2 RU2388171 C2 RU 2388171C2
- Authority
- RU
- Russia
- Prior art keywords
- error
- data
- blocks
- coded
- csv
- Prior art date
Links
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
Description
Настоящая заявка на патент испрашивает приоритет предварительной заявки № 60/721 565, озаглавленной «Method and Apparatus for Fast Channel Switching for Multimedia Broadcast Applications» (Способ и устройство для быстрого переключения каналов для мультимедийных приложений широковещательной передачи), поданной 27 сентября 2005г. и переуступленной правопреемнику настоящей заявки и настоящим явно включенной в настоящее описание посредством ссылки.This patent application claims the priority of provisional application No. 60/721 565, entitled “Method and Apparatus for Fast Channel Switching for Multimedia Broadcast Applications”, filed September 27, 2005. and assigned to the assignee of this application and hereby expressly incorporated herein by reference.
Настоящая заявка на патент испрашивает приоритет предварительной заявки № 60/734 962, озаглавленной «Methods and Apparatus for Service Acquisition» (Способы и устройство для получения услуги), поданной 8 ноября 2005г. и переуступленной правопреемнику настоящей заявки и настоящим явно включенной в настоящее описание посредством ссылки.This patent application claims the priority of provisional application No. 60/734 962, entitled “Methods and Apparatus for Service Acquisition”, filed November 8, 2005. and assigned to the assignee of this application and hereby expressly incorporated herein by reference.
Настоящая заявка на патент испрашивает приоритет предварительной заявки № 60/742 189, озаглавленной «Integrated Codec and Physical Layer for Efficient Multimedia Streaming» (Интегрированный кодек и физический уровень для эффективной мультимедийной потоковой передачи), поданной 2 декабря 2005 и переуступленной правопреемнику настоящей заявки и настоящим явно включенной в настоящее описание посредством ссылки.This patent application claims the priority of provisional application No. 60/742 189, entitled “Integrated Codec and Physical Layer for Efficient Multimedia Streaming”, filed December 2, 2005 and assigned to the assignee of this application and this expressly incorporated herein by reference.
ПредпосылкиBackground
Область техникиTechnical field
Настоящая заявка относится в целом к работе систем мультимедийных передач и, более конкретно, к способам и устройству для обеспечения быстрого получения услуги.The present application relates generally to the operation of multimedia transmission systems and, more specifically, to methods and apparatus for providing quick service.
Уровень техникиState of the art
В современных системах доставки контента/распределения медиа, если приложение связано с мультиплексной передачей сжатых медиа (видео и аудио), где приемник настроен на один из каналов в мультиплексной передаче, задержка в коммутации между каналами является ключевым фактором в пользовательском восприятии. Например, в обычной системе мультимедийной широковещательной передачи мультимедийный сервер состоит из набора кодеров, которые сжимают отдельные части медиа, которые подаются в мультиплексор, который консолидирует сжатые медиа в единый мультиплексированный поток. Сервер широковещательной передачи передает сжатый контент на приемник широковещательной передачи по сети широковещательной передачи, которая может быть неоднородной по характеру и подверженной ошибкам. Приемник широковещательной передачи принимает часть мультиплексной передачи, и демультиплексор извлекает медиа, представляющие интерес. В типовом случае имеется клиентское приложение, которое обеспечивает возможность «настройки» на медийный канал/программу, представляющие интерес. Это может осуществляться при вмешательстве или без вмешательства пользователя.In modern media delivery / media distribution systems, if the application is connected to multiplexed transmission of compressed media (video and audio), where the receiver is tuned to one of the channels in multiplexed transmission, the delay in switching between channels is a key factor in user perception. For example, in a conventional multimedia broadcast system, a multimedia server consists of a set of encoders that compress individual pieces of media that are fed to a multiplexer that consolidates the compressed media into a single multiplexed stream. The broadcast server transmits the compressed content to the broadcast receiver over the broadcast network, which may be heterogeneous in nature and error prone. The broadcast receiver receives part of the multiplex, and the demultiplexer retrieves the media of interest. Typically, there is a client application that provides the ability to "tune" to the media channel / program of interest. This can be done with or without user intervention.
Если источником является видео, то переключение каналов возможно только в точках случайного доступа (RAP) в битовом потоке сжатого/кодированного видео. RAP содержат интра-кадры (с внутрикадровым кодированием) (I-кадры, которые могут независимо декодироваться), или они содержатся через последовательные I-кадры (которые представляют собой I-блоки, которые распределены по более чем одному видео кадру). Время переключения каналов зависит от частоты таких случайных точек доступа, что в типовом случае составляет от 2 до 10 секунд (поскольку RAP увеличивают среднюю битовую скорость и, следовательно, ширину полосы передачи битового потока кодированного видео).If the source is video, then channel switching is only possible at random access points (RAPs) in the compressed / encoded video bitstream. RAPs contain intra-frames (with intra-frame encoding) (I-frames that can be independently decoded), or they are contained through consecutive I-frames (which are I-blocks that are distributed over more than one video frame). The channel switching time depends on the frequency of such random access points, which in the typical case is from 2 to 10 seconds (since RAPs increase the average bit rate and, therefore, the transmission bandwidth of the encoded video bitstream).
Случайный доступ через I-кадры и распределенные I-кадры для последовательных внутрикадровых обновлений, как предложено промышленным стандартом Н.264, являются наиболее популярными подходами до настоящего времени для получения услуги ценой качества и ширины полосы. Задержки коммутации в этих случаях составляют порядка нескольких секунд.Random access via I-frames and distributed I-frames for consecutive intra-frame updates, as proposed by the industry standard H.264, are the most popular approaches to date for receiving services at the cost of quality and bandwidth. The switching delays in these cases are of the order of several seconds.
В некоторых системах коммутация каналов и воспроизведение спецэффектов (сквозной проход, ускоренный переход, перемотка назад) могут быть реализованы посредством интра-кадров, помещенных/кодированных периодически и так часто, как необходимо в видео потоках. Однако I-кадры, значительно увеличивают битовую скорость и ширину полосы видео потоков. Следовательно, частота I-кадров в типовом случае равна от одной секунды до десяти секунд в типовых приложениях. Это означает, что переключение канала может, в наилучшем случае, происходить через одну секунду (если все требуемые условия удовлетворены, например, коммутация каналов разрешалась непосредственно перед I-кадром, и буфер непосредственно перед этим был обновлен).In some systems, channel switching and special effects playback (pass-through, fast-forward, rewind) can be implemented using intra-frames placed / encoded periodically and as often as necessary in video streams. However, I-frames significantly increase the bit rate and bandwidth of video streams. Therefore, the frequency of I-frames in a typical case is from one second to ten seconds in typical applications. This means that channel switching can, in the best case, occur after one second (if all the required conditions are satisfied, for example, channel switching was allowed immediately before the I-frame, and the buffer was updated just before that).
Прогрессивное внутрикадровое обновление разрешает коммутацию каналов инкрементным способом. Предсказанием необходимо управлять так, что полный кадр обновляется на предварительно определенной длительности. В этом случае переключение каналов включает в себя задержку, равную этой длительности, в дополнение к задержкам, вводимым вследствие глубин буферов и переключения на нижних уровнях.Progressive intra-frame updating enables circuit switching incrementally. Prediction must be controlled so that the full frame is updated at a predetermined duration. In this case, the channel switching includes a delay equal to this duration, in addition to the delays introduced due to the depths of the buffers and switching at lower levels.
Таким образом, например, если устройство принимает мультиплексную передачу, которая содержит сотню сжатых медийных каналов, и пользователь устройства желает переключиться между каналами, то обычная система может требовать 1-10 секунд для выполнения переключения каждого канала. Время для переключения каждого канала в общем случае зависит от того, где в кадре передачи возникает запрос переключения. Таким образом, пользователи устройств испытывают длинные и переменные времена задержки при переключении между каналами, что может вызвать разочарование и привести к неудовлетворительному пользовательскому опыту.Thus, for example, if a device receives a multiplex transmission that contains hundreds of compressed media channels and the device user wishes to switch between channels, then a conventional system may require 1-10 seconds to complete switching of each channel. The time for switching each channel generally depends on where in the transmission frame a switching request occurs. Thus, device users experience long and variable delay times when switching between channels, which can be frustrating and lead to an unsatisfactory user experience.
Поэтому существует необходимость в системе, которая действует для обеспечения быстрого получения услуги и/или переключения между услугами в мультиплексной передаче.Therefore, there is a need for a system that operates to provide quick service and / or switching between services in multiplex transmission.
Сущность изобретенияSUMMARY OF THE INVENTION
В одном или более аспектах предложена система получения услуги, содержащая способы и устройство, которые действуют для обеспечения быстрого получения услуги и переключения между услугами в мультиплексной передаче. Например, переключение каналов может происходить в ответ на пользовательский ввод или в ответ на интерактивную услугу. Например, интерактивное перенаправление канала может вызвать получение новой услуги или канала. Альтернативно, пользовательский ввод запускает новую услугу или канал, который должен быть получен. В одном аспекте мультимедийные услуги и немультимедийные услуги могут быть получены интерактивным образом.In one or more aspects, a service acquisition system is provided comprising methods and apparatus that operate to provide quick service and switch between services in a multiplex transmission. For example, channel switching may occur in response to user input or in response to an interactive service. For example, an interactive channel redirection can cause a new service or channel to be received. Alternatively, user input launches a new service or channel to be received. In one aspect, multimedia services and non-multimedia services can be obtained interactively.
В одном аспекте предложен способ для получения услуги. Способ содержит генерацию одного или более сигналов видео переключения каналов (CSV), ассоциированных с одним или более мультимедийными сигналами, кодирование CSV сигналов и мультимедийных сигналов для формирования блоков кодированных ошибок и инкапсулирование блоков кодированных ошибок в сигнал мультиплексной передачи.In one aspect, a method for providing a service is provided. The method comprises generating one or more channel switching video signals (CSV) associated with one or more multimedia signals, encoding CSV signals and multimedia signals to generate coded error blocks, and encapsulating coded error blocks into a multiplex signal.
В одном аспекте предложено устройство для получения услуги. Устройство содержит кодер источника, конфигурированный для генерации одного или более сигналов видео переключения каналов (CSV), ассоциированных с одним или более мультимедийными сигналами, кодер ошибок, конфигурированный для кодирования CSV сигналов и мультимедийных сигналов для формирования блоков кодированных ошибок, и компоновщик, конфигурированный для инкапсулирования блоков кодированных ошибок в сигнал мультиплексной передачи.In one aspect, an apparatus for providing a service is provided. The device comprises a source encoder configured to generate one or more channel switching video signals (CSV) associated with one or more multimedia signals, an error encoder configured to encode CSV signals and multimedia signals to form coded error blocks, and a linker configured to encapsulate blocks of coded errors into a multiplex signal.
В одном аспекте предложено устройство для получения услуги. Устройство содержит средство для генерации одного или более сигналов видео переключения каналов (CSV), ассоциированных с одним или более мультимедийными сигналами, средство для кодирования CSV сигналов и мультимедийных сигналов для формирования блоков кодированных ошибок и средство для инкапсулирования блоков кодированных ошибок в сигнал мультиплексной передачи.In one aspect, an apparatus for providing a service is provided. The device comprises means for generating one or more channel switching video signals (CSV) associated with one or more multimedia signals, means for encoding CSV signals and multimedia signals for generating coded error blocks, and means for encapsulating coded error blocks in a multiplex transmission signal.
В одном аспекте предложен машиночитаемый носитель, который содержит инструкции для получения услуги. Инструкции, при исполнении вынуждают машину генерировать один или более сигналов видео переключения каналов (CSV), ассоциированных с одним или более мультимедийными сигналами, кодировать CSV сигналы и мультимедийные сигналы для формирования блоков кодированных ошибок и инкапсулировать блоки кодированных ошибок в сигнал мультиплексной передачи.In one aspect, a computer-readable medium is provided that includes instructions for receiving a service. The instructions, when executed, force the machine to generate one or more video channel switching (CSV) signals associated with one or more multimedia signals, encode CSV signals and multimedia signals to form coded error blocks, and encapsulate coded error blocks in a multiplex signal.
В одном аспекте предложен, по меньшей мере, один процессор для получения услуги. По меньшей мере, один процессор конфигурирован для генерации одного или более сигналов видео переключения каналов (CSV), ассоциированных с одним или более мультимедийными сигналами, кодирования CSV сигналов и мультимедийных сигналов для формирования блоков кодированных ошибок и инкапсулирования блоков кодированных ошибок в сигнал мультиплексной передачи.In one aspect, at least one processor for receiving a service is provided. At least one processor is configured to generate one or more video channel switching (CSV) signals associated with one or more multimedia signals, encode CSV signals and multimedia signals to generate coded error blocks and encapsulate coded error blocks in a multiplex transmission signal.
В одном аспекте предложен способ для получения услуги. Способ содержит прием сигнала мультиплексной передачи, ассоциированного с множеством каналов, обнаружение выбора одного из каналов, декодирование сигнала видео переключения каналов (CSV), ассоциированного с выбранным каналом, и воспроизведение CSV сигнала.In one aspect, a method for providing a service is provided. The method comprises receiving a multiplex signal associated with a plurality of channels, detecting a selection of one of the channels, decoding a channel switching video signal (CSV) associated with the selected channel, and reproducing the CSV signal.
В одном аспекте предложено устройство для получения услуги. Устройство содержит приемник, конфигурированный для приема сигнала мультиплексной передачи, ассоциированного с множеством каналов, логику выбора, конфигурированную для обнаружения выбора одного из каналов, распаковщик, конфигурированный для декодирования сигнала видео переключения каналов (CSV), ассоциированного с выбранным каналом, и декодер источника, конфигурированный для воспроизведения CSV сигнала.In one aspect, an apparatus for providing a service is provided. The apparatus comprises a receiver configured to receive a multiplex transmission signal associated with a plurality of channels, a selection logic configured to detect a selection of one of the channels, an unpacker configured to decode a channel switching video signal (CSV) associated with the selected channel, and a source decoder configured to play CSV signal.
В одном аспекте предложено устройство для получения услуги. Устройство содержит средство для приема сигнала мультиплексной передачи, ассоциированного с множеством каналов, средство для обнаружения выбора одного из каналов, средство для декодирования сигнала видео переключения каналов (CSV), ассоциированного с выбранным каналом, и средство для воспроизведения CSV сигнала.In one aspect, an apparatus for providing a service is provided. The device comprises means for receiving a multiplex signal associated with a plurality of channels, means for detecting a selection of one of the channels, means for decoding a channel switching video signal (CSV) associated with the selected channel, and means for reproducing a CSV signal.
В одном аспекте предложен машиночитаемый носитель, который содержит инструкции для получения услуги. Инструкции, при исполнении, вынуждают машину выполнять прием сигнала мультиплексной передачи, ассоциированного с множеством каналов, обнаружение выбора одного из каналов, декодирование сигнала видео переключения каналов (CSV), ассоциированного с выбранным каналом, и воспроизведение CSV сигнала.In one aspect, a computer-readable medium is provided that includes instructions for receiving a service. The instructions, when executed, force the machine to receive a multiplex signal associated with a plurality of channels, detect a selection of one of the channels, decode a channel switching video signal (CSV) associated with the selected channel, and play a CSV signal.
В одном аспекте предложен процессор для получения услуги. По меньшей мере, один процессор конфигурирован для приема сигнала мультиплексной передачи, ассоциированного с множеством каналов, обнаружения выбора одного из каналов, декодирования сигнала видео переключения каналов (CSV), ассоциированного с выбранным каналом, и воспроизведения CSV сигнала.In one aspect, a processor is provided for receiving a service. At least one processor is configured to receive a multiplex signal associated with a plurality of channels, detect a selection of one of the channels, decode a channel switching video signal (CSV) associated with the selected channel, and reproduce a CSV signal.
В одном аспекте предложен способ для получения услуги. Способ содержит формирование множества кадров передачи, где каждый кадр передачи представляет выбранный интервал времени, и кодирование одного или более каналов данных во множество кадров передачи, причем выбранные данные кодированы в предварительно определенные кадры передачи, так что флуктуации канала могут поглощаться с использованием одного буфера, имеющего выбранную длительность времени.In one aspect, a method for providing a service is provided. The method comprises generating a plurality of transmission frames, where each transmission frame represents a selected time interval, and encoding one or more data channels into a plurality of transmission frames, the selected data being encoded into predetermined transmission frames, so that channel fluctuations can be absorbed using a single buffer having selected length of time.
В одном аспекте предложено устройство для получения услуги. Устройство содержит средство для формирования множества кадров передачи, где каждый кадр передачи представляет выбранный интервал времени, и средство для кодирования одного или более каналов данных во множество кадров передачи, причем выбранные данные кодированы в предварительно определенные кадры передачи, так что флуктуации канала могут поглощаться с использованием одного буфера, имеющего выбранную длительность времени.In one aspect, an apparatus for providing a service is provided. The device comprises means for generating a plurality of transmission frames, where each transmission frame represents a selected time interval, and means for encoding one or more data channels into a plurality of transmission frames, the selected data being encoded into predetermined transmission frames, so that channel fluctuations can be absorbed using one buffer having a selected time duration.
В одном аспекте предложен способ для получения услуги. Способ содержит прием множества кадров передачи, где каждый кадр передачи представляет выбранный интервал времени и содержит один или более каналов данных, причем выбранные данные кодированы в предварительно определенные кадры передачи. Способ также содержит буферизацию множества кадров передачи с использованием одного буфера, имеющего выбранную длительность времени, причем флуктуации канала поглощаются.In one aspect, a method for providing a service is provided. The method comprises receiving a plurality of transmission frames, where each transmission frame represents a selected time interval and comprises one or more data channels, the selected data being encoded into predetermined transmission frames. The method also comprises buffering a plurality of transmission frames using a single buffer having a selected length of time, wherein channel fluctuations are absorbed.
В одном аспекте предложено устройство для получения услуги. Устройство содержит средство для приема множества кадров передачи, где каждый кадр передачи представляет выбранный интервал времени и содержит один или более каналов данных, причем выбранные данные кодированы в предварительно определенные кадры передачи. Устройство также содержит средство для буферизации множества кадров передачи с использованием одного буфера, имеющего выбранную длительность времени, причем флуктуации канала поглощаются.In one aspect, an apparatus for providing a service is provided. The device comprises means for receiving a plurality of transmission frames, where each transmission frame represents a selected time interval and contains one or more data channels, the selected data being encoded into predetermined transmission frames. The device also comprises means for buffering a plurality of transmission frames using a single buffer having a selected time duration, wherein channel fluctuations are absorbed.
Другие аспекты будут очевидны из изучения изложенных ниже краткого описания чертежей, описания и формулы изобретения.Other aspects will be apparent from a study of the following brief description of the drawings, description and claims.
Краткое описание чертежейBrief Description of the Drawings
Вышеупомянутые аспекты, описанные здесь, будут понятны из следующего описания, иллюстрируемого чертежами, на которых представлено следующее:The above aspects described herein will be apparent from the following description, illustrated by the drawings, in which the following is presented:
Фиг.1 - аспект потока передачи, который содержит последовательность суперкадров, которые используются для транспортировки мультимедийной мультиплексной передачи;Figure 1 is an aspect of a transmission stream that comprises a sequence of superframes that are used for transporting a multimedia multiplex transmission;
Фиг.2 - иллюстрация RS последовательности;Figure 2 - illustration of the RS sequence;
Фиг.3 - сеть, которая содержит аспект системы получения услуги;Figure 3 is a network that contains an aspect of a service acquisition system;
Фиг.4 - сервер для использования в аспектах системы получения услуги;4 is a server for use in aspects of a service acquisition system;
Фиг.5 - структура оболочки уровня МАС канала данных перед работой системы получения услуги;5 is a shell structure of the MAC layer of the data channel before the operation of the service acquisition system;
Фиг.6 - структура оболочки уровня МАС канала данных после работы системы получения услуги;6 is a shell structure of the MAC layer of the data channel after the operation of the service acquisition system;
Фиг.7 - способ обеспечения аспектов системы получения услуги;7 is a method for providing aspects of a service acquisition system;
Фиг.8 - устройство для использования в аспектах системы получения услуги;FIG. 8 illustrates an apparatus for use in aspects of a service acquisition system; FIG.
Фиг.9 - способ для использования в аспектах системы получения услуги;9 is a method for use in aspects of a service acquisition system;
Фиг.10 - аспект системы связи;10 is an aspect of a communication system;
Фиг.11 - диаграмма уровней OSI или стека протоколов для использования в аспектах системы получения услуги;11 is a diagram of the OSI layers or protocol stack for use in aspects of a service acquisition system;
Фиг.12 - диаграмма, иллюстрирующая обработку данных суперкадра из приложения через физический уровень как на сетевой, так и на клиентской сторонах системы связи;12 is a diagram illustrating the processing of superframe data from an application through a physical layer on both the network and client sides of a communication system;
Фиг.13 - диаграмма, иллюстрирующая быстрое переключение каналов, обеспечиваемое аспектами системы получения услуги;13 is a diagram illustrating fast channel switching provided by aspects of a service acquisition system;
Фиг.14 - диаграмма, иллюстрирующая поток Т-пакетов в аспектах системы получения услуги;14 is a diagram illustrating a flow of T packets in aspects of a service acquisition system;
Фиг.15 - диаграмма, иллюстрирующая конфигурацию видео кадра в аспекте Т-пакета;15 is a diagram illustrating a configuration of a video frame in an aspect of a T packet;
Фиг.16 - диаграмма, иллюстрирующая конфигурацию видео кадра в аспекте Т-пакета;16 is a diagram illustrating a configuration of a video frame in an aspect of a T packet;
Фиг.17 - диаграмма, иллюстрирующая конфигурацию транспортных заголовков (ТН) и заголовков синхронизации, используемых в базовом уровне и уровне расширения суперкадра;17 is a diagram illustrating a configuration of transport headers (VTs) and synchronization headers used in a base layer and an extension layer of a superframe;
Фиг.18 - структура блока кода прямой коррекции ошибок (FEC) для использования в аспектах системы получения услуги;Fig. 18 is a block structure of a forward error correction (FEC) code for use in aspects of a service acquisition system;
Фиг.19 - организация кадра для обеспечения битовых потоков видео и аудио для использования в аспектах системы получения услуги;Fig. 19 is a frame organization for providing video and audio bitstreams for use in aspects of a service acquisition system;
Фиг.20 - сервер для использования в аспектах системы получения услуги;20 is a server for use in aspects of a service acquisition system;
Фиг.21 - устройство для использования в аспектах системы получения услуги;FIG. 21 is an apparatus for use in aspects of a service acquisition system; FIG.
Фиг.22 - сервер для использования в аспектах системы получения услуги;Fig. 22 shows a server for use in aspects of a service acquisition system;
Фиг.23 - устройство для использования в аспектах системы получения услуги.23 is an apparatus for use in aspects of a service acquisition system.
ОписаниеDescription
Последующее описание описывает аспекты системы получения услуги для получения и коммутации между каналами мультимедийной мультиплексной передачи (т.е. ранний вход/быстрая настройка). Система особенно хорошо подходит для использования, по существу, с любым типом устройства, которое работает для приема мультимедийной мультиплексной передачи. Например, такие устройства включают в себя, без ограничения указанным, переносные телефоны, PDA, устройства электронной почты, портативные компьютеры, планшетные компьютеры, или любой другой тип принимающего устройства. Кроме того, аспекты системы могут быть использованы в любой сетевой среде, включая, без ограничения указанным, коммуникационные сети, сети распространения контента, общедоступные сети, такие как Интернет, сети широкого охвата, сети дальней связи или любой другой тип сети передачи данных или связи.The following description describes aspects of a service acquisition system for receiving and switching between multimedia multiplex transmission channels (i.e., early entry / quick setup). The system is particularly well suited for use with essentially any type of device that operates to receive multimedia multiplex transmission. For example, such devices include, but are not limited to, portable telephones, PDAs, email devices, laptop computers, tablet computers, or any other type of receiving device. In addition, aspects of the system can be used in any network environment, including, but not limited to, communication networks, content distribution networks, public networks such as the Internet, wide area networks, long distance networks, or any other type of data or communication network.
Для целей настоящего описания аспекты системы получения услуги описаны со ссылкой на переключение между каналами мультимедийной мультиплексной передачи, которая содержит последовательность суперкадров, где каждый суперкадр содержит четыре кадра данных. Однако аспекты системы получения услуги не ограничены этой структурой суперкадра и равным образом применимы для обеспечения получения услуг для других типов структур мультиплексной передачи.For the purposes of the present description, aspects of a service acquisition system are described with reference to switching between channels of a multimedia multiplex transmission, which comprises a sequence of superframes, where each superframe contains four data frames. However, aspects of a service acquisition system are not limited to this superframe structure and are equally applicable to providing services for other types of multiplex transmission structures.
Для целей настоящего описания система получения услуги описана со ссылкой на реализации, использующие модель взаимодействия открытых систем (OSI). Например, различные аспекты описаны со ссылкой на реализацию на одном или более уровнях модели OSI. Однако аспекты системы получения услуги не ограничены этой реализацией, и могут быть реализованы с использованием любого другого типа структуры аппаратных средств/программного обеспечения, конфигурации или коммуникационной модели.For the purposes of the present description, a service acquisition system is described with reference to implementations using an open system interaction model (OSI). For example, various aspects are described with reference to an implementation at one or more levels of the OSI model. However, aspects of a service acquisition system are not limited to this implementation, and may be implemented using any other type of hardware / software structure, configuration, or communication model.
ОбзорOverview
Фиг.1 показывает аспект потока 100 передачи, который содержит последовательность суперкадров в мультимедийной мультиплексной передаче. Каждый суперкадр (102, 104) содержит четыре кадра 106 и символы служебной информации (OIS) 108. Следует отметить, что символ OIS 108, ассоциированный с каждым суперкадром, содержит информацию, необходимую для декодирования/настройки ассоциированного суперкадра. Таким образом, OIS 108 применим к суперкадру 104.FIG. 1 shows an aspect of a
В одном или более аспектах система получения услуги работает для обеспечения возможности приемнику принимать мультимедийную мультиплексную передачу и выполнять быстрое получение и переключение между каналами в мультиплексной передаче. Например, система обеспечивает возможность того, что быстрое переключение каналов происходит в середине суперкадра и использует любые парциальные данные, принятые в течение этого суперкадра, для нового канала. Упоминаемые парциальные данные являются данными, извлеченными из последних трех или менее из четырех кадров, присутствующих в суперкадре, в течение которого выполняется переключение. Это приводит к сниженной задержке получения на устройстве, поскольку устройство может использовать парциальные данные.In one or more aspects, a service acquisition system operates to enable a receiver to receive multimedia multiplex transmission and to quickly receive and switch between channels in a multiplex transmission. For example, the system provides the possibility that fast channel switching occurs in the middle of a superframe and uses any partial data received during that superframe for a new channel. Mentioned partial data is data extracted from the last three or less of four frames present in a superframe during which switching is performed. This leads to a reduced receive delay on the device, since the device can use partial data.
В аспектах системы получения услуги сервер широковещательной передачи работает так, чтобы переупорядочивать данные приложения, переданные в суперкадре, таким способом, который удовлетворяет следующему.In aspects of a service acquisition system, a broadcast server is operable to reorder application data transmitted in a superframe in a manner that satisfies the following.
1. Данные приложения (например, видео кадра) в индивидуальном кадре суперкадра являются декодируемыми вне какой-либо зависимости от данных в других кадрах предыдущего суперкадра (уровень приложения).1. Application data (for example, a video frame) in an individual frame of a superframe is decoded without any dependence on the data in other frames of the previous superframe (application level).
2. Результат упорядочения Рида-Соломона (RS), выполняемого на уровне МАС, не влияет на близость данных приложения реального времени. То есть, данные приложений, которые могут помещаться в кадре, не рассредоточиваются по множеству кадров в суперкадре и сохраняют свой непрерывный характер (уровень МАС).2. The result of Reed-Solomon (RS) ordering, performed at the MAC level, does not affect the proximity of the real-time application data. That is, application data that can fit in a frame is not dispersed across multiple frames in a superframe and retains its continuous character (MAC level).
3. Наиболее важная информация (например, рабочие ключи), вместе с данными приложения реального времени, проталкиваются в кадрах назад, насколько возможно дальше. То есть любые пакеты уровня МАС, содержащие заполняющие октеты, присутствуют в начале суперкадра, за которыми следуют данные приложения (поток 1 или 2) и затем данные потока 0. Это обеспечит то, что приемник всегда имеет возможность получить важную информацию, переносимую потоком 0, если некоторые данные приложения извлечены перед запуском раннего входа/быстрой настройки (потоковый уровень и МАС).3. The most important information (for example, working keys), together with the real-time application data, is pushed backward in frames as far as possible. That is, any MAC layer packets containing fill octets are present at the beginning of the superframe, followed by application data (
4. Перемежение октета потокового уровня исключается, чтобы предотвратить рассеяние данных приложения (потоковый уровень).4. The interleaving of the stream-level octet is excluded to prevent scattering of application data (stream-level).
В аспектах системы получения услуги принимающее устройство работает для обеспечения того, чтобы информация OSI была доступна для суперкадра, в котором выполняется ранний вход/быстрая настройка.In aspects of a service acquisition system, a receiving device is operable to ensure that OSI information is available to a superframe in which early entry / quick setup is performed.
Модификации традиционных системModifications to traditional systems
Фиг.2 показывает иллюстрацию RS упорядочивания 200. В типовой реализации уровень МАС стека AIS берет данные в оболочке уровня МАС (множество блоков кода RS) и рассредоточивает их по суперкадру. Эта процедура известна как RS упорядочивание и исполняется для всех блоков кода RS. Например, 16 пакетов уровня МАС в каждом из блоков (202, 204) кода RS распределены равномерно по четырем кадрам (т.е. 4 пакета уровня МАС каждый).FIG. 2 shows an illustration of sequencing RS 200. In a typical implementation, the AIS stack MAC layer takes data in a MAC layer wrapper (multiple RS code blocks) and disperses them across a superframe. This procedure is known as RS ordering and is executed for all blocks of RS code. For example, 16 packets of the MAC layer in each of the blocks (202, 204) of the RS code are distributed evenly over four frames (i.e. 4 packets of the MAC layer each).
Фрагмент блока кода RS в кадре, содержащем четыре пакета уровня МАС, упоминается как подблок 206 кода RS. В кадре каждый подблок кода RS перемежается с подблоками из других блоков кода RS. Например, если имеется два блока (102, 104) кода RS в суперкадре, то каждый кадр содержит следующее в определенном порядке:A fragment of an RS code block in a frame containing four MAC layer packets is referred to as a RS code sub-block 206. In the frame, each subblock of the RS code is interspersed with subblocks from other blocks of the RS code. For example, if there are two blocks (102, 104) of RS code in a superframe, then each frame contains the following in a specific order:
1. Первый пакет уровня МАС из подблока первого блока кода RS.1. The first packet of the MAC level from a sub-block of the first block of RS code.
2. Первый пакет уровня МАС из соответствующего подблока из второго блока кода RS.2. The first packet of the MAC level from the corresponding sub-block from the second block of RS code.
3. Второй пакет уровня МАС из того же подблока первого блока кода RS.3. The second packet of the MAC level from the same sub-block of the first block of RS code.
4. Второй пакет уровня МАС из соответствующего подблока второго блока кода RS.4. The second packet of the MAC level from the corresponding sub-block of the second block of RS code.
5. И так далее, до четвертого пакета МАС.5. And so on, until the fourth MAC package.
Данные, доставленные приложением реального времени, обрабатываются непрерывным образом потоковым уровнем стека AIS и в течение формирования оболочки уровня МАС. Этот непрерывный характер изменяется, когда блоки кода RS, содержащие данные приложения, рассредоточиваются по суперкадру для достижения выигрыша от разнесения по времени, что обеспечивает лучшие характеристики кодирования RS.The data delivered by the real-time application is processed continuously by the streaming level of the AIS stack and during the formation of the MAC layer wrapper. This continuous nature changes when RS code blocks containing application data are dispersed across a superframe to achieve time diversity gain, which provides better RS coding characteristics.
Любые непрерывные данные приложения (например, данные видеокадра, которые занимают величину данных одного кадра) рассредоточены по более чем одному кадру посредством упорядочения блоков кода RS уровня МАС. Приемник должен ожидать более чем один кадр, чтобы собрать данные приложения, которые, при сборке в непрерывную конфигурацию, составят величину данных менее кадра.Any continuous application data (for example, video frame data that occupy the data value of one frame) is dispersed over more than one frame by arranging blocks of RS-level MAC code. The receiver must expect more than one frame to collect application data, which, when assembled into a continuous configuration, will amount to less than a frame.
В одном или более аспектах, система получения услуги работает так, чтобы позволить устройству извлекать максимально много данных реального времени по возможности быстро в пределах одного кадра. Для достижения этого желательно, чтобы данные приложения реального времени поддерживали свой непрерывный характер при посылке по четырем кадрам суперкадра.In one or more aspects, a service acquisition system is operable to allow a device to retrieve as much real-time data as quickly as possible within a single frame. To achieve this, it is desirable that these real-time applications maintain their continuous nature when sent over four frames of a superframe.
Получение услугиService receipt
В аспектах системы получения услуги данные приложения предварительно перемежаются протоколом МАС канала данных для обнуления эффектов упорядочения блоков кода RS уровня МАС как описано ниже. В одном аспекте выполняются следующие функции пред-перемежения.In aspects of a service acquisition system, application data is pre-interleaved by the MAC data channel protocol to nullify the effects of ordering the MAC level RS code blocks as described below. In one aspect, the following pre-interleaving functions are performed.
1. Протокол МАС канала данных распределяет буфер пред-перемежения на каждый размер (NumR-SCodeBlocks*K*122) октет, где1. The MAC protocol of the data channel allocates a pre-interleaving buffer to each size (NumR-SCodeBlocks * K * 122) octet, where
а) NumR-SCodeBlocks*K*122 - число блоков контроля ошибок RS, присутствующих в оболочке уровне МАС канала данных для данного суперкадра;a) NumR-SCodeBlocks * K * 122 - the number of RS error control blocks present in the shell of the MAC level of the data channel for a given superframe;
b) К определяет число октет данных в RS-кодовом слове. Например, скорость внешнего кода 12/16 имеет К, равное 12.b) K determines the number of octets of data in the RS codeword. For example, the speed of the external code 12/16 has a K of 12.
2. Этот буфер форматирован в таблицу, имеющую NumR-SCodeBlocks столбцов и К строк. Таким образом, каждая ячейка в этой таблице имеет длину 122 октет.2. This buffer is formatted into a table that has NumR-SCodeBlocks columns and K rows. Thus, each cell in this table has a length of 122 octets.
3. Протокол запускается для заполнения буфера пред-перемежения пакетами уровня МАС построчно, начиная сначала с заполняющих пакетов уровня МАС, за которыми следуют пакеты уровня МАС, несущие данные потока 2, данные потока 1, и последними являются данные потока 0.3. The protocol is started to fill the pre-interleaving buffer with MAC layer packets line by line, starting first with MAC layer filling packets, followed by MAC layer packets carrying data of
4. Каждый столбец, таким образом, формирует верхние 'K' строк блока контроля ошибок.4. Each column thus forms the top 'K' rows of the error control block.
5. RS октеты четности добавляются для каждого столбца, сформированного выше, с последующим RS упорядочиванием перед доставкой на физический уровень.5. RS parity octets are added for each column formed above, followed by RS ordering before delivery to the physical layer.
Таким образом, посредством пред-перемежения возможно поддерживать непрерывный характер данных приложения внутри каждого кадра суперкадра.Thus, by pre-interleaving, it is possible to maintain the continuous nature of the application data within each frame of the super-frame.
Версия переключения канала (CVS)Channel Switch Version (CVS)
В одном или более аспектах, система получения услуги работает для кодирования версии переключения канала (CVS) медиа, в дополнение к нормальному кодированию, и передает эти данные CVS либо в полосе, либо вне полосы. В одном аспекте, CVS представляет собой версию низкой скорости кадров, дискретизированную с пониженной частотой, для соответствующего видео. Следует отметить, что подобные версии могут кодироваться для других типов медиа, таких как аудио, данные и т.д., в зависимости от приложения. Аспекты генерации CVS могут быть также использованы другими приложениями, которые могут включать в себя использование версии CVS (или ее частей) для восстановления после ошибок, компенсации ошибок и контроля ошибок (т.е. прекращения накопления ошибок предсказания и канала).In one or more aspects, the service acquisition system operates to encode the Media Channel Switch (CVS) version, in addition to normal encoding, and transmits this CVS data either in band or out of band. In one aspect, a CVS is a low-speed, sampled, low-frame rate version for a corresponding video. It should be noted that such versions can be encoded for other types of media, such as audio, data, etc., depending on the application. Aspects of CVS generation can also be used by other applications, which may include the use of a version of CVS (or parts thereof) for error recovery, error compensation, and error control (i.e., stopping the accumulation of prediction and channel errors).
Последующее описание касается данных приложения широковещательной передачи видео и ассоциированных алгоритмов компрессии видео. Версия переключения канала данных приложения видео является независимо декодируемой частью данных, которая передается периодически, чтобы обеспечить случайный доступ к битовому потоку кодированного видео (в дополнение к I-кадрам или распределенным I-кадрам). Если в принимающем устройстве запрашивается смена в медиа, представляющем интерес, в мультиплексной передаче, этот запрос передается на уровень приложения, которое затем начинает декодировать CVS. Эта операция является мгновенной, так как CVS может быть вставлена в точках переключения, предписываемых протоколами транспортного и физического уровней. Затем медиа возобновляется до полного качества в следующей случайной точке доступа. В результате пользователь устройства воспринимает быстрое переключение канала.The following description relates to video broadcast application data and associated video compression algorithms. The video application data channel switching version is an independently decoded data part that is transmitted periodically to provide random access to the bitstream of the encoded video (in addition to I-frames or distributed I-frames). If a change is requested in the receiving device in the media of interest in multiplex transmission, this request is transmitted to the application layer, which then starts to decode the CVS. This operation is instantaneous since CVS can be inserted at the switching points prescribed by the transport and physical layer protocols. Then the media resumes to full quality at the next random access point. As a result, the device user perceives fast channel switching.
На Фиг.3 показана сеть 300, которая содержит аспект системы получения услуги. Сеть 300 содержит сервер 302 широковещательной передачи, который работает для широковещательной передачи мультимедийной мультиплексной передачи на устройство 304 с использованием сети 306. Сервер 302 осуществляет связь с сетью 306 через канал 308 связи, который содержит любой подходящий тип проводной и/или беспроводной линии связи. Сеть 306 осуществляет связь с устройством 304 через линию 310 связи, которая в данном аспекте содержит любой подходящий тип беспроводной линии связи. Например, линия 310 связи может содержать линию связи с мультиплексированием на основе ортогонального частотного разнесения, известную в телекоммуникационной индустрии.3, a
Устройство 304 является мобильным телефоном, но может представлять собой любое подходящее устройство, такое как персональный цифровой помощник (PDA), устройство электронной почты, переносной компьютер, планшетный компьютер, настольный компьютер или любое другое подходящее устройство, которое работает для приема сигнала мультимедийной мультиплексной передачи.The
В одном аспекте системы получения услуги сервер 302 содержит кодеры 316 источника, которые работают для приема входных сигналов 314 видео. В одном аспекте 256 входных сигналов видео вводятся в 256 кодеров 316 источника. Однако аспекты системы подходят для использования любого количества входных сигналов видео и соответствующих кодеров источника.In one aspect of a service acquisition system,
Каждый из кодеров 316 источника формирует кодированный сигнал, который вводится в кодер 320 прямой коррекции ошибок (FEC). Каждый из кодеров 316 источника также формирует сигнал видео переключения канала, который вводится в компоновщик 318 CSV. Сигнал CSV является независимо декодируемой версией низкого разрешения соответствующего входного сигнала. Более детальное описание сигнала CSV предоставлено в другом разделе этого документа. Компоновщики 318 CSV работают для компоновки (или инкапсулирования) сигналов CSV и вывода инкапсулированных сигналов CSV на кодер 320 FEC.Each of the source encoders 316 generates an encoded signal that is input to the forward error correction (FEC)
Кодер 320 FEC работает для кодирования ошибок сигналов, принимаемых от кодеров 316 источника и компоновщиков 318 CSV для формирования блоков кодированных ошибок, которые вводятся в блок 322 пред-перемежения. В одном аспекте, кодер 320 FEC обеспечивает RS кодирование. Блок 322 пред-перемежения упорядочивает блоки кодированных ошибок, так что выбранные блоки появляются в предварительно определенных местоположениях в кадре передачи после действия компоновщика 324. Например, блок 322 пред-перемежения действует для выполнения функций, описанных выше, для поддержания непрерывного характера данных приложения в генерируемых кадрах передачи. В результате, блок 322 пред-перемежения действует для упорядочения блоков кодированных ошибок, так что они оптимизированы для обеспечения быстрого получения услуг.The
Компоновщик 324 действует для инкапсулирования выхода блока 322 пред-перемежения в кадр передачи. Действие блока 322 пред-перемежения обеспечивает возможность быстрого получения услуги, поскольку он позиционирует CSV и другую важную информацию кадра в стратегические местоположения в кадре передачи, так что может происходить быстрое получение услуги. Более детальное описание процесса пред-перемежения предоставлено в другом разделе настоящего документа.The
Выход компоновщика 324 является кадром передачи, который вводится в модулятор/передатчик 326, который действует для передачи модулированного кадра 328 передачи по сети 306. Например, модулированный кадр 328 передачи передается от сервера 302 на устройство 304 с использованием сети 306. Модулированный кадр 328 передачи содержит последовательность суперкадров, где каждый суперкадр содержит четыре кадра.The output of the
В принимающем устройстве 304 модулированный кадр 328 передачи принимается демодулятором/приемником 330, который выводит принятый кадр передачи на блок 332 распаковки. В одном аспекте демодулятор/приемник 330 содержит один буфер 344, имеющий конечную длительность времени, который действует для поглощения флуктуаций канала и поддерживает внешнее декодирование FEC. Блок 332 распаковки действует для отмены процесса инкапсулирования, выполняемого компоновщиком 324. Выход блока 332 распаковки вводится в блок 334 пост-перемежения, который действует для обращенного перемежения принятой информации для формирования блоков FEC кодированных ошибок.At the
Блоки FEC кодированных ошибок вводятся в декодер 336 FEC, который декодирует блоки и выводит декодированную информацию на блок 338 распаковки CSV для конкретного канала. Декодер 340 источника действует для декодирования конкретного канала. Логика 344 настройки/переключения канала выводит сигналы управления на декодер 340 источника и на блок 338 распаковки CSV для управления тем, какой канал из принятой мультиплексной передачи декодируется декодером 340 источника и выводится как декодированный канал 342.The FEC blocks of encoded errors are input to an
В одном или более аспектах логика 344 настройки/переключения канала запускается пользовательским вводом или любым другим действием, возникающим на устройстве 304. Когда переключение канала запрашивается пользователем, логика 344 настройки/ переключения канала действует для настройки декодера 340 источника на выбранный канал и соответствующую информацию CSV. Декодер 340 источника действует для декодирования информации CSV для формирования версии низкого разрешения выбранного нового канала для отображения пользователю устройства. Тем временем, декодер 340 источника начинает декодирование информации из кадра передачи для выбранного нового канала. Этот процесс облегчается стратегическим упорядочением блоков кодированных ошибок, предоставленных блоком 322 пред-перемежения. Таким образом, аспекты системы получения услуги действуют для обеспечения сигналов CVS и пред-перемежения для облегчения быстрого переключения каналов в принимающем устройстве.In one or more aspects, channel setting /
На Фиг.4 показан сервер 400 для использования в аспектах системы получения услуги. Например, сервер 400 пригоден для использования в качестве сервера 302, показанного на Фиг.3. Сервер 400 содержит логику 402 обработки и логику 404 модулятора/передатчика, которая связана с шиной 406 данных. Сервер 400 также содержит кодеры 408 источника, компоновщик 410 CSV, логику 412 пред-перемежения, кодер 414 FEC и компоновщик 416, которые также связаны с шиной 406 данных.4 shows a
В одном или более аспектах логика 402 обработки содержит центральный процессорный блок (CPU), процессор, матрицу логических элементов, логику аппаратных средств, элементы памяти, виртуальную машину, программное обеспечение и/или любую комбинацию аппаратных средств и программного обеспечения. Таким образом, логика 402 обработки, в общем, содержит логику для исполнения машиночитаемых инструкций и для управления одним или более других функциональных элементов сервера 400 через внутреннюю шину 406 данных.In one or more aspects, the
Логика 404 модулятора/передатчика содержит логику аппаратных средств и/или программное обеспечение, которое действует для обеспечения возможности серверу 400 передавать мультимедийную мультиплексную передачу по сети данных для приема одним или более принимающих устройств. В одном аспекте логика 404 модулятора/передатчика содержит канал 418 связи. Например, в одном аспекте канал 418 связи содержит канал широковещательной передачи, конфигурированный для обеспечения возможности серверу осуществлять вещание мультимедийной мультиплексной передачи.Modulator /
Кодеры 408 источника содержат любое число или любой тип кодеров источника, которые действуют для приема соответствующих входных мультимедийных потоков 420 для формирования кодированных потоков 422 источника и информации 424 CSV. Например, в одном аспекте информация 424 CSV содержит независимо декодируемые версии низкого разрешения входных мультимедийных потоков 420. Более детальное описание информации 424 CSV приведено в другом разделе этого документа.
Компоновщики 410 CSV содержат любую комбинацию аппаратных средств и программного обеспечения, которая действует для упаковки или инкапсулирования информации 424 CSV. В результате обеспечивается инкапсулированная информация 426 CSV. В одном аспекте информация 424 CSV упаковывается для доставки как сигнал в полосе. В другом аспекте информация 424 CSV доставляется как сигнал вне полосы.
Кодер 414 FTC содержит любую комбинацию аппаратных средств и программного обеспечения для выполнения кодирования ошибок, такого как RS кодирование, над кодированными сигналами 422 источника и инкапсулированной информацией 426 CSV. Например, кодер 414 FTC действует для формирования блоков кодированных ошибок.The
Блок 412 пред-перемежения содержит центральный процессорный блок (CPU), процессор, матрицу логических элементов, логику аппаратных средств, элементы памяти, виртуальную машину, программное обеспечение и/или любую комбинацию аппаратных средств и программного обеспечения. Блок 412 пред-перемежения действует для пред-перемежения блоков кодированных ошибок с кодера 414 FTC, так что входной источник поддерживает свой непрерывный характер при компоновке в кадры суперкадра. Например, в одном аспекте, блок 412 пред-перемежения действует для формирования таблицы пред-перемежения, которая упаковывается с блоками кодированных ошибок, как описано выше.The
Компоновщик (блок инкапсулирования) 416 содержит некоторую комбинацию аппаратных средств и программного обеспечения. В одном аспекте компоновщик 416 действует для инкапсулирования блоков кодированных ошибок из таблицы пред-перемежения для генерирования мультиплексной передачи, содержащей последовательность суперкадров, где каждый суперкадр содержит четыре кадра. В одном аспекте мультиплексная передача посылается на модулятор/передатчик для передачи по сети к одному или более принимающим устройствам.The linker (encapsulation unit) 416 contains some combination of hardware and software. In one aspect,
В процессе работы согласно одному или более аспектам, сервер 400 действует для подготовки мультиплексной передачи для передачи к принимающим устройствам, где мультиплексная передача содержит информацию CSV и блоки кодированных ошибок с пред-перемежением, которые организованы для обеспечения быстрого получения услуги. Например, если происходит событие смены канала, то информация CSV быстро декодируется принимающим устройством для воспроизведения версии низкого разрешения нового канала. Более того, аспекты системы организуют блоки кодированных ошибок каждого кадра суперкадра, чтобы обеспечить возможность быстрого декодирования нового канала.In operation, in accordance with one or more aspects, the
В одном аспекте сервер 400 действует для создания множества кадров передачи, где каждый кадр передачи представляет выбранный временной интервал (т.е. одну секунду). Сервер 400 также действует для кодирования одного или более каналов данных во множество кадров передачи, причем выбранные данные кодируются в предварительно определенные кадры передачи, так что флуктуации каналов могут быть поглощены в принимающем устройстве с использованием соответствующего буфера, имеющего выбранную продолжительность времени. Таким образом, система действует для обеспечения быстрого получения услуги и переключает каналы между каналами мультимедийной мультиплексной передачи, позволяя принимающим устройствам поглощать флуктуации каналов с использованием одного буфера.In one aspect, the
В одном или более аспектах сервер 400 действует для выполнения одной или более функций в аспектах системы получения услуги.In one or more aspects, the
1. Генерирование информации CSV для каждого канала, подлежащего кодированию в мультиплексную передачу.1. Generation of CSV information for each channel to be encoded into multiplex transmission.
2. Включение информации CSV в информацию видео, подлежащую кодированию ошибок.2. Inclusion of CSV information in video information subject to error coding.
3. Выполнение пред-перемежения для переупорядочивания блоков ошибок в суперкадре перед инкапсулированием, что поддерживает непрерывный характер входного сигнала источника.3. Performing pre-interleaving to reorder the error blocks in the super-frame before encapsulation, which maintains the continuous nature of the input source signal.
4. Выполнение инкапсулирования для формирования мультиплексной передачи, подлежащей передаче.4. Performing encapsulation to form the multiplex transmission to be transmitted.
В одном аспекте система получения услуги встроена в компьютерную программу, содержащую программные инструкции, сохраненные на машиночитаемом носителе, которая, при исполнении, по меньшей мере, одним процессором, например, логикой 402 обработки, обеспечивает функции, описанные здесь. Например, программные инструкции могут быть загружены в сервер 400 с машиночитаемого носителя, такого как гибкий диск, CDROM (ПЗУ на компакт-диске), карта памяти, устройство флэш-памяти, ОЗУ, ПЗУ или любой другой тип запоминающего устройства или машиночитаемого носителя, который взаимодействует с сервером 400. В другом аспекте инструкции могут загружаться на сервер с внешнего устройства или сетевого ресурса, который взаимодействует с сервером 400. Программные инструкции, при исполнении логикой 402 обработки, обеспечивают один или более аспектов системы получения услуги, как описано здесь.In one aspect, a service acquisition system is embedded in a computer program comprising program instructions stored on a computer-readable medium that, when executed by at least one processor, such as
Поэтому сервер 400 действует, согласно одному или более аспектов системы получения услуги для обеспечения возможности быстрого получения услуг, включенных в мультимедийную мультиплексную передачу. Следует отметить, что сервер 400 иллюстрирует только одну реализацию, и другие реализации возможны в пределах объема аспектов, описанных здесь.Therefore, the
Структура оболочки уровня МАС канала данныхMAC layer layer structure of the data channel
Фиг.5 показывает аспект структуры 500 оболочки уровня МАС канала данных перед выполнением аспектов системы получения услуги. Структура (капсула) 500 оболочки уровня МАС канала данных содержит следующее в порядке, определенном ниже.5 shows an aspect of a MAC
1. Пакет потока 0 - он содержит всегда присутствующий пакет потока 0, который включает в себя заголовок 502 оболочки уровня МАС канала данных.1.
2. Пакет потока 1 - целое число пакетов уровня МАС, несущих данные потока 1.2.
3. Пакет потока 2 - целое число пакетов уровня МАС, несущих данные потока 2.3.
4. Пакеты МАС, содержащие заполняющие (стаффинг) пакеты для обеспечения того, чтобы оболочка уровня МАС имела целочисленное множество «К», где «К» - целое число информационных блоков в RS блоке контроля ошибок. Например, для скорости внешнего кода 12/16 «К» равно 12.4. MAC packets containing stuffing (stuffing) packets to ensure that the MAC layer shell has an integer set “K”, where “K” is an integer number of information blocks in the RS error control block. For example, for the speed of the external code 12/16 "K" is 12.
5. (NumR-SCodeBlocks) x (N-K) R-S пакетов четности.5. (NumR-SCodeBlocks) x (N-K) R-S parity packets.
При условии структуры 500 оболочки уровня МАС канала данных и относительно малого размера пакета потока 0, пакеты уровня МАС, содержащие пакет потока 0, вероятно, будут занимать только первый из четырех кадров в суперкадре. Эта информация всегда будет потеряна в случае запроса раннего входа/быстрой настройки, где приемник только принимает последние три или менее кадров суперкадра. Поскольку поток 0 несет информацию (например, рабочие ключи), необходимые для декодирования данных, которые переносятся в потоке 1 или потоке 2, желательно гарантировать, что принимающее устройство может принимать пакет потока 0, если оно приняло любую часть данных, переносимых в потоке 1 или потоке 2.Given the
Переупорядоченная структура оболочки уровня МАС канала данныхReordered shell structure of the MAC layer of the data channel
Фиг.6 показывает аспект переупорядоченной структуры 600 оболочки уровня МАС канала данных, генерируемой аспектами системы получения услуги. В структуре 600 оболочки уровня МАС канала данных поток 0 перемещается в конец оболочки уровня МАС канала данных, после того как пакеты потока 1 или потока 2 помещаются в оболочку. Такая организация обеспечивает то, что принимающее устройство способно принимать пакет потока 0, если оно приняло любую часть данных, переносимых в потоке 1 или потоке 2.6 shows an aspect of a reordered
В одном аспекте структура 600 оболочки уровня МАС канала данных содержит следующее в порядке, описанном ниже.In one aspect, the MAC layer structure of the data channel
1. Пакеты МАС, содержащие заполняющие (стаффинг) пакеты для обеспечения того, чтобы оболочка уровня МАС имела целочисленное множество «К», где «К» - целое число информационных блоков в RS блоке контроля ошибок. Например, для скорости внешнего кода 12/16 «К» равно 12. Примечание: RS PAD пакетов меньше (максимум К-1) по сравнению с пакетами МАС, содержащими видео данные. Поэтому в большинстве случаев кадр 1 будет иметь некоторые пакеты МАС, содержащие видео данные. (От 150 кбит/с до 500 кбит/с)1. MAC packets containing stuffing (stuffing) packets to ensure that the MAC layer shell has an integer set “K”, where “K” is an integer number of information blocks in the RS error control block. For example, for an external code speed of 12/16 “K” is 12. Note: RS PAD packets are fewer (maximum K-1) compared to MAC packets containing video data. Therefore, in most cases,
2. Пакет потока 2 - целое число пакетов уровня МАС, несущих данные потока 2.2.
3. Пакет потока 1 - целое число пакетов уровня МАС, несущих данные потока 1.3.
4. Пакет потока 0 - он содержит всегда присутствующий пакет потока 0, который включает в себя заголовок 602 оболочки уровня МАС канала данных.4.
5. (NumR-SCodeBlocks) x (N-K) R-S пакетов четности.5. (NumR-SCodeBlocks) x (N-K) R-S parity packets.
Доступность информации OISOIS Information Availability
В одном аспекте, для того чтобы возник ранний вход/быстрая настройка, базовой информацией, необходимой в устройстве, является местоположение канала, на который должно выполняться переключение. Эта информация местоположения существует в OIS. Однако устройство считывает OIS только в определенных случаях (например, при приеме новых логических каналов или в случае ошибок в существующем логическом канале и т.д.), когда оно запускается для того, чтобы сделать это. Таким образом, переключение канала будет задержано, если устройство ожидает до тех пор, пока следующий суперкадр не будет запущен для приема OIS после смены канала. Заметим, что информация OIS, обеспеченная одним суперкадром, применима к последующему суперкадру. Таким образом, устройству потребовалось бы ожидать целый суперкадр, чтобы извлечь информацию OIS.In one aspect, in order for early entry / quick setup to occur, the basic information needed in the device is the location of the channel to which switching should be performed. This location information exists in OIS. However, a device reads OIS only in certain cases (for example, when receiving new logical channels or in case of errors in an existing logical channel, etc.) when it is started in order to do this. Thus, channel switching will be delayed if the device waits until the next superframe is started to receive OIS after changing the channel. Note that the OIS information provided by one superframe is applicable to the subsequent superframe. Thus, the device would have to wait for a whole superframe to extract OIS information.
Поэтому в одном аспекте запуск раннего входа/быстрой настройки обеспечивается до суперкадра, в котором выполняется действительное переключение. Это выполняется путем выполнения следующего.Therefore, in one aspect, the start of early entry / quick tuning is provided up to a superframe in which the actual switching is performed. This is accomplished by doing the following.
1. Установление устройства в режим, в котором оно принимает OIS каждый суперкадр и использует эту информацию, когда запускается ранний вход/быстрая настройка. Вход в этот режим может запускаться определенными вводимыми пользователем комбинациями, которые вводятся в пользовательский интерфейс для запуска переключения канала.1. Setting the device to a mode in which it receives OIS every superframe and uses this information when an early entry / quick setup is started. Entering this mode can be triggered by certain user-entered combinations that are entered into the user interface to start channel switching.
2. Или устройство считывает информацию OIS каждый суперкадр (тем самым исключая необходимость для встроенной информации OIS).2. Or, the device reads OIS information every superframe (thereby eliminating the need for embedded OIS information).
Фиг.7 показывает способ 700 для обеспечения аспектов системы получения услуги. Для ясности, способ 700 будет описан со ссылкой на сервер 400, показанный на Фиг.4. В одном аспекте, по меньшей мере, один процессор, такой как логика 402 обработки, исполняет машиночитаемые инструкции для управления сервером 400 для выполнения функций, описанных ниже.7 shows a
В блоке 702 кодируются данные приложения. Например, данные приложения могут содержать потоки видео 420. В одном аспекте кодеры 408 источника действуют для кодирования данных приложения для формирования кодированных сигналов 422.At
В блоке 704 генерируется информация OIS. Например, кодеры 408 источника действуют для генерации информации 424 OIS, которая в одном аспекте содержит независимо декодируемую версию низкого разрешения входного видео 420.At
В блоке 706 информация OIS инкапсулируется. Например, компоновщик 410 действует для инкапсулирования сформированной информации 424 OIS, чтобы сформировать инкапсулированную информацию 426 CSV.At
В блоке 708 кодированный источник, сформированный в блоке 702, и инкапсулированная информация CSV, сформированная в блоке 706, кодируются согласно FEC. Например, в одном аспекте кодер 414 FEC действует для кодирования этой информации в блоки кодированных ошибок.At
В блоке 710 блоки кодированных ошибок, сформированные в блоке 708, подвергаются пред-перемежению. Например, блок 412 пред-перемежения действует для пред-перемежения блоков кодированных ошибок. Например, блок 412 пред-перемежения действует, как описано выше, для генерации буфера пред-перемежения для выполнения пред-перемежения блоков кодированных ошибок, чтобы сформировать перемеженные блоки кодированных ошибок.At
В блоке 712 перемеженные блоки кодированных ошибок инкапсулируются для формирования мультиплексной передачи, которая содержит последовательность субкадров, где каждый субкадр содержит четыре кадра.At
В блоке 714 мультиплексная передача модулируется и передается по сети к принимающим устройствам. Например, модулятор/передатчик 404 действует для получения мультиплексной передачи и модулирования и передачи мультиплексной передачи по сети данных с использованием канала 418.At
Таким образом, способ 700 действует для формирования мультиплексной передачи, которая передается к принимающим устройствам и которая позволяет устройству выполнять быстрое получение услуги. Следует отметить, что способ 700 представляет только одну реализацию и что другие реализации возможны в пределах объема описываемых аспектов.Thus, the
На Фиг.8 показано устройство 800 для использования в аспектах системы получения услуг. Например, устройство 800 подходит для использования в качестве устройства 304, показанного на Фиг.3. Устройство 800 содержит логику 802 обработки и логику 804 демодулятора/приемника, которые связаны с шиной 806 данных. Устройство 800 также содержит декодер 816 источника, блок 814 распаковки CVS, логику 818 раннего входа/быстрой настройки, логику 810 пост-перемежителя, декодер 912 FEC, и блок 808 распаковки, которые связаны с шиной 806 данных.FIG. 8 illustrates an
В одном или более аспектов логика 802 обработки содержит центральный процессорный блок (CPU), процессор, матрицу логических элементов, логику аппаратных средств, элементы памяти, виртуальную машину, программное обеспечение и/или любую комбинацию аппаратных средств и программного обеспечения. Таким образом, логика 802 обработки, в общем, содержит логику для исполнения машиночитаемых инструкций и для управления одним или более других функциональных элементов устройства 800 через внутреннюю шину 806 данных.In one or more aspects, the
Логика 804 демодулятора/приемника содержит логику аппаратных средств и/или программного обеспечения, которые работают для обеспечения возможности устройству 800 для приема мультимедийной мультиплексной передачи по сети данных от сервера широковещательной передачи. В одном аспекте логика 804 демодулятора/приемника содержит канал 828 связи. Например, в одном аспекте канал 828 связи содержит подходящую линию связи (т.е. линию OFDM), чтобы обеспечить возможность устройству 800 осуществлять связь с одной или более сетями данных для приема мультимедийной мультиплексной передачи.The demodulator /
В одном аспекте логика 804 демодулятора/приемника содержит буфер 832, содержащий некоторую подходящую память или запоминающее устройство. В одном аспекте логика 804 демодулятора/приемника действует для приема множества кадров передачи, где каждый кадр передачи представляет выбранный интервал времени и содержит один или более каналов данных. Выбранные данные кодированы в предварительно определенные кадры передачи. Буфер 832 имеет выбранную длительность времени (т.е. длительность кадра передачи) и действует для буферизации принятых кадров передачи, так что флуктуации канала поглощаются.In one aspect, demodulator /
Блок 818 распаковки (блок де-инкапсуляции) содержит любую комбинацию аппаратных средств и программного обеспечения. В одном аспекте блок 818 распаковки действует для распаковки перемеженных блоков кодированных ошибок из принятой мультиплексной передачи. Например, в одном аспекте, блок 818 распаковки действует для отмены операции и компоновщика 416, показанного на Фиг.4. В результате работы блока 818 распаковки формируются перемеженные блоки кодированных ошибок.The decompression unit 818 (de-encapsulation unit) contains any combination of hardware and software. In one aspect, the
Блок 810 пост-перемежителя содержит CPU, процессор, матрицу логических элементов, логику аппаратных средств, элементы памяти, виртуальную машину, программное обеспечение и/или любую комбинацию аппаратных средств и программного обеспечения. Блок 810 пост-перемежителя действует для обращенного перемежения перемеженных блоков кодированных ошибок, формируемых блоком 818 распаковки. Например, блок 810 пост-перемежителя действует для отмены операции блока 412 пред-перемежителя, показанного на Фиг.4. Например, в одном аспекте, блок 810 пост-перемежителя действует для формирования блоков кодированных ошибок, как описано вышек.The
Декодер 812 FEC содержит некоторую комбинацию аппаратных средств и программного обеспечения для выполнения декодирования ошибок в принятых блоках кодированных ошибок, сформированных блоком 810 пост-перемежителя. Например, декодер 812 FEC действует для формирования кодированного источника 824 и инкапсулированной информации CSV 820, которая включена в принятую мультиплексную передачу.The
Блок 814 распаковки CSV содержит некоторую комбинацию аппаратных средств и программного обеспечения, которая действует для распаковки или де-инкапсулирования информации CSV 820, принятой в мультиплексной передаче. Блок 814 распаковки CSV действует для формирования информации CSV, которая представляет независимо декодируемую версию низкого разрешения видео для выбранного канала в принятой мультиплексной передаче. Например, блок 814 распаковки CSV действует для отмены операции компоновщика 410 CSV, показанного на Фиг.4.The
Декодер 816 источника содержит любой тип декодера источника, который действует для приема информации 824 кодированного источника и формирования соответствующих потоков 826 декодированного источника. Декодер 816 источника также действует для приема информации CSV и формирования сигнала 830 CSV, который представляет собой независимо декодируемым сигналом низкого разрешения, который соответствует выбранному каналу принятой мультиплексной передачи. Таким образом, декодер 816 источника действует для воспроизведения потоков декодированного источника.The
Логика 818 раннего входа/быстрой настройки содержит CPU, процессор, матрицу логических элементов, логику аппаратных средств, элементы памяти, виртуальную машину, программное обеспечение и/или любую комбинацию аппаратных средств и программного обеспечения. Логика 818 раннего входа/быстрой настройки содержит логику обнаружения, которая конфигурирована для обнаружения запроса переключения канала и управления устройством 800 для быстрого переключения на запрошенный канал. В одном аспекте запрос переключения канала генерируется логикой 802 обработки в ответ на пользовательский ввод. В другом аспекте запрос переключения канала генерируется логикой 802 обработки, основываясь на любых других критериях. Например, логика 802 обработки может генерировать запрос переключения канала, основываясь на принятой информации управления от сети распределения.The early entry /
В процессе работы согласно одному или более аспектам, когда запускается запрос переключения канала, логика 818 раннего входа/быстрой настройки действует для управления декодированием принятой мультиплексной передачи, так что выбранные услуги могут быть декодированы. В одном аспекте CSV для выбранного канала быстро декодируется и воспроизводится, так что пользовательское устройство принимает очень быстрый, хотя и с низким разрешением, отображаемый ответ на запрос смены канала.In operation, according to one or more aspects, when a channel switching request is triggered, the early entry /
Ввиду конфигурации блоков кодированных ошибок, предусмотренных в аспектах системы получения услуг, информация, необходимая для декодирования выбранного нового канала, является легко доступной. Например, в одном аспекте, OIS упорядочиваются для появления в конце суперкадра, так что эти символы могут извлекаться, даже если запуск раннего входа/быстрой настройки возникает в течение середины суперкадра.Due to the configuration of the coded error blocks provided in the aspects of the service acquisition system, the information necessary to decode the selected new channel is easily accessible. For example, in one aspect, OISs are ordered to appear at the end of a superframe, so that these characters can be retrieved even if an early entry / quick start trigger occurs during the middle of the superframe.
В одном или более аспектах устройство 800 действует для выполнения одной или более следующих функций для обеспечения быстрого получения и переключения канала в аспектах системы получения услуг.In one or more aspects,
1. Прием запуска раннего входа/быстрой настройки для настройки на новый канал.1. Reception start early entry / quick tuning to tune to a new channel.
2. Выполнение пост-перемежения для отмены переупорядочения блоков кодированных ошибок передатчиком.2. Performing post-interleaving to cancel the reordering of coded error blocks by the transmitter.
3. Распаковка информации CSV из блоков кодированных ошибок.3. Unpacking CSV information from coded error blocks.
4. Декодирование информации CSV для формирования сигнала CSV, который может воспроизводиться на устройстве.4. Decoding CSV information to generate a CSV signal that can be played on the device.
5. Определение данных для запрошенного нового канала.5. Data definition for the requested new channel.
6. Декодирование данных для формирования сигнала видео для запрошенного канала.6. Data decoding for generating a video signal for the requested channel.
7. Воспроизведение сигнала видео, ассоциированного с запрошенным каналом.7. Play a video signal associated with the requested channel.
В одном аспекте система получения услуг воплощена в компьютерной программе, содержащей программные инструкции, сохраненные на машиночитаемом носителе, которые, при исполнении, по меньшей мере, одним процессором, например, логикой 802 обработки, обеспечивают функции, описанные здесь. Например, программные инструкции могут быть загружены в устройство 800 с машиночитаемого носителя, такого как гибкий диск, CDROM (ПЗУ на компакт-диске), карта памяти, устройство флэш-памяти, ОЗУ, ПЗУ или любой другой тип запоминающего устройства или машиночитаемого носителя, который взаимодействует с устройством 800. В другом аспекте инструкции могут загружаться в устройство 800 с внешнего устройства или сетевого ресурса, который взаимодействует с устройством 800. Программные инструкции, при исполнении логикой 802 обработки, обеспечивают один или более аспектов системы получения услуг, как описано здесь.In one aspect, a service acquisition system is embodied in a computer program comprising program instructions stored on a computer-readable medium that, when executed by at least one processor, such as
Поэтому устройство 800 действует, согласно одному или более аспектов системы получения услуги для обеспечения возможности быстрого получения и переключения каналов между услугами, предусмотренными в мультимедийной мультиплексной передаче. Следует отметить, что устройство 800 иллюстрирует только одну реализацию, и другие реализации возможны в пределах объема аспектов, описанных здесь.Therefore, the
Фиг.9 показывает способ 900 для использования в аспектах системы получения услуги. Для ясности способ 900 будет описан со ссылками на устройство 800, показанное на Фиг.8. В одном аспекте, по меньшей мере, один процессор, такой как логика 802 обработки исполняет машиночитаемые инструкции для управления устройством 800 для выполнения функций, описанных здесь.FIG. 9 shows a
В блоке 902 мультимедийная мультиплексная передача принимается и буферизуется. Например, мультиплексная передача принимается демодулятором/приемником 804. Принятая мультиплексная передача генерируется в соответствии с аспектами системы получения услуг, так что мультиплексная передача содержит суперкадр, генерируемый, как описано выше, для обеспечения быстрого получения услуги и переключения канала. Например, информация CSV и пред-перемежение, как описано выше, используются для формирования суперкадра. В одном аспекте принятая мультиплексная передача буферизуется буфером 832 для поглощения флуктуаций канала.At
В блоке 904 декодируется канал в принятой мультиплексной передаче. Например, логика 802 обработки действует для управления функциональными элементами устройства 800 для декодирования канала в принятой мультиплексной передаче.At
В блоке 906 выполняется тест для определения, принят ли запуск раннего входа/быстрой настройки. Например, запуск может быть обеспечен пользователем устройства или может генерироваться автоматически. В одном аспекте логика 802 обработки действует для определения, принят ли запуск раннего входа/быстрой настройки. Если запуск не принят, то способ возвращается к блоку 904, где декодируется тот же самый канал. Если запуск принят, то способ возвращается к блоку 908.At
В блоке 908 декодер переключается для декодирования нового запрошенного канала. Например, логика 802 обработки действует для управления устройством 800 для начала декодирования нового запрошенного канала.At
В блоке 910 информация CSV, ассоциированная с новым запрошенным каналом, воспроизводится. Например, информация CSV является низким разрешением нового запрошенного канала, который кодирован в принятую мультиплексную передачу. В одном аспекте, блок 814 распаковки CSV действует для распаковки информации CSV, так что она может воспроизводиться при попытках декодирования для переключения на новый запрошенный канал.At
В блоке 912 новый запрошенный канал декодируется и воспроизводится. Например, логика 802 обработки действует для управления устройством 800 для воспроизведения запрошенного канала. Поэтому после запуска раннего входа/быстрой настройки пользовательское устройство воспринимает версию низкого разрешения запрошенного канала, за которой следует версия полного разрешения, когда процесс декодирования устройства способен декодировать канал. В одном аспекте устройство действует для воспроизведения нового канала из следующего доступного I-кадра.At
Таким образом, способ 900 действует для обеспечения возможности устройству выполнять быстрое получение услуги и переключение канала в соответствии с аспектами системы получения услуг. Следует отметить, что способ 900 представляет только одну реализацию и что другие реализации возможны в объеме описанных аспектов.Thus, the
Создание информации CSVCreating CSV Information
В одном или более аспектах кодеры 408 источника действуют для генерации информации CSV в соответствии со следующим. Модель человеческого зрения часто включается в видео кодек для имитации того, как человек воспринимает различия между источником и его сжатой версией. Модель Girod отражает визуальный отклик на различия непосредственно на входной видео сигнал. Это обеспечивает возможность количественного определения минимально допустимых различий в терминах визуального отклика для проектирования оптимальных кодеров и декодеров. Эффекты пространственного и временного маскирования возникают вследствие насыщения в провалах. Временное маскирование подобно пространственному маскированию, за исключением того, что наблюдаемость шума в местоположениях пикселей обусловлена видео сигналом в том же самом пространственном местоположении, но в соседнем по времени кадре.In one or more aspects, source encoders 408 act to generate CSV information in accordance with the following. A human vision model is often included in a video codec to simulate how a person perceives the differences between a source and its compressed version. The Girod model reflects a visual response to differences directly on the input video signal. This provides the ability to quantify the minimum allowable differences in terms of visual response for designing optimal encoders and decoders. The effects of spatial and temporal masking occur due to saturation in the dips. Temporary masking is similar to spatial masking, except that the observability of noise at pixel locations is due to the video signal at the same spatial location, but in a neighboring frame.
Иными словами, временное маскирование относится к временному отклику глаза в направлении появления и пропадания объектов. Изменения сцен, введение новых объектов в видео и переключение на новый канал являются примерами появления объектов, и время реакции человеческого глаза составляет примерно 44 мс. В то же время реакции на исчезающие объекты в монтажных переходах составляет около 100 мс. Человеческий глаз интегрирует приходящий сигнал по оси времени, прежде чем он интерпретируется мозгом. (30 кадров в секунду обеспечивают достаточно плавное воспроизведение движения для большинства приложений.) Следовательно, человеческий глаз обладает большим допуском к интерполированным изображениям (движения), чем к внезапным мгновенным прерываниям (таким как кратковременные показы кадров камеры).In other words, temporary masking refers to the temporary response of the eye in the direction of the appearance and disappearance of objects. Scene changes, introducing new objects into the video, and switching to a new channel are examples of objects appearing, and the reaction time of the human eye is approximately 44 ms. At the same time, reactions to disappearing objects in assembly transitions are about 100 ms. The human eye integrates the incoming signal along the time axis before it is interpreted by the brain. (30 frames per second provides fairly smooth motion reproduction for most applications.) Consequently, the human eye has greater tolerance for interpolated images (movements) than for sudden instant interruptions (such as short-term camera frame displays).
Эти наблюдения приняты при создании информации CSV. Предиктивное кодирование в большой степени используется в видео сжатии ввиду высокой пространственной и временной корреляции внутри и между кадрами. При генерации информации CSV высокое сжатие может быть применено вследствие меньшей чувствительности человеческого глаза к новому содержанию.These observations are accepted when creating CSV information. Predictive coding is used to a large extent in video compression due to the high spatial and temporal correlation within and between frames. When generating CSV information, high compression can be applied due to the lower sensitivity of the human eye to new content.
Независимый боковой каналIndependent side channel
Субдискретизация в пространственной области (например, от QVGA - 320x240 пикселей до Q2VGA - 160х120 пикселей) и во временной области (от 30 кадров в секунду до 5 кадров в секунду) является простым механизмом сжатия, который может быть инвертирован (повышение дискретизации до исходного разрешения и повышающее преобразование частоты кадров с использованием методов в декодере как операция пост-обработки). Такие механизмы пост-обработки являются частью стандартных библиотек обработки изображений в большинстве терминалов, включая портативные. Передискретизация в пространственной области связана с низкочастотной фильтрацией (для исключения наложения спектров) с последующим прореживанием. Повышающее преобразование частоты кадров также связано с пространственной пиксельной интерполяцией как частью процесса компенсации движения после интерполяции вектора движения.Sub-sampling in the spatial domain (for example, from QVGA - 320x240 pixels to Q 2 VGA - 160x120 pixels) and in the time domain (from 30 frames per second to 5 frames per second) is a simple compression mechanism that can be inverted (upsampling to the original resolution and up-conversion of the frame rate using methods in the decoder as a post-processing operation). Such post-processing mechanisms are part of the standard image processing libraries in most terminals, including portable ones. Oversampling in the spatial domain is associated with low-pass filtering (to avoid overlapping spectra) with subsequent thinning. Up-conversion of the frame rate is also associated with spatial pixel interpolation as part of the motion compensation process after motion vector interpolation.
Поскольку требуется, чтобы информации CSV была независимо декодируемой, это помещает I-кадр в начале информации CSV, поскольку первичные данные не доступны для использования в качестве эталона. Типовая средняя битовая скорость для передачи QVGA видео при 30 кадрах в секунду примерно равна 256 кбит/с при использовании кодека Н.264. В то же время, средняя битовая скорость для передачи того же самого видео при разрешении Q2VGA и частоте кадров 5 кадров в секунду примерно равна 10 кбит/с. Следовательно, служебная нагрузка для CSV равна около 5%.Since it is required that the CSV information be independently decoded, this places an I-frame at the beginning of the CSV information since the primary data is not available for use as a reference. The typical average bit rate for QVGA video transmission at 30 frames per second is approximately 256 kbps using the H.264 codec. At the same time, the average bit rate for transmitting the same video at a resolution of Q 2 VGA and a frame rate of 5 frames per second is approximately 10 kbit / s. Therefore, the overhead for CSV is about 5%.
Базовая информацияBasic information
Гибридное видео кодирование влечет за собой пространственное и временное предсказании, сопровождаемое преобразованием, квантованием и энтропийным кодированием. Сущность сжатых данных заключается во внутренне кодированных данных, используемых в качестве опоры, режиме предсказания и информации движения. Первичный битовый поток несет всю эту информацию для генерации высококачественного видео. Информация CSV может быть создана как масштабированная компактная форма этой базовой информации с использованием одного или более следующих методов.Hybrid video coding entails spatial and temporal prediction, accompanied by transformation, quantization, and entropy coding. The essence of compressed data lies in internally encoded data used as a support, prediction mode and motion information. The primary bitstream carries all this information to generate high quality video. CSV information can be created as a scaled compact form of this basic information using one or more of the following methods.
1. Данные с внутрикадровым кодированием: Комбинирование окна 2х2 макроблоков в первичном битовом потоке в один МВ в CSV - путем простого объединения информации режима. Если 3 из 4 или все 4 режима являются одинаковыми, то режим соответствующего макроблока в CSV устанавливается на этот режим. Аномально выделяющиеся макроблоки маркируются. В Н.264 МВ с внутренним кодированием имеют 2 режима - Intra_16x16 или Intra_4x4. Последнее указывает на присутствие направленной информации (в не равномерно гладкой области), которая является критической для основанного на режиме маскирования пространственных ошибок.1. Data with intraframe coding: Combining a 2x2 macroblock window in a primary bitstream into one MV in CSV - by simply combining mode information. If 3 of 4 or all 4 modes are the same, then the corresponding macroblock mode in CSV is set to this mode. Abnormally allocated macroblocks are marked. In H.264, internally encoded MVs have 2 modes - Intra_16x16 or Intra_4x4. The latter indicates the presence of directional information (in a non-uniformly smooth region), which is critical for spatial error-based masking.
2. Данные с межкадровым кодированием: обработка вектора движения. В одном аспекте слияние и масштабирование могут применяться для объединения МВ в первичном битовом потоке для формирования МВ в CSV. Например, дискретизация с повышенной частотой всех режимов межкадрового кодирования до 4х4 и объединение их при необходимом учете аномальных выбросов является одним методом, который может быть использован.2. Data with inter-frame coding: motion vector processing. In one aspect, merging and scaling can be used to combine the MVs in the primary bitstream to form the MVs in the CSV. For example, sampling with an increased frequency of all inter-frame coding modes up to 4x4 and combining them with the necessary allowance for anomalous emissions is one method that can be used.
Подразделение данных битового потока кодированного видео, основываясь на приоритете, является популярным способом улучшения способности противостоять ошибкам и обеспечения возможности масштабирования в видео кодировании. Например, в Н.264 разделение данных на части является свойством, которое позволяет кодировать каждую часть как 3 отдельных блока данных, называемых блоками уровня сетевой абстракции (NALU). Часть А несет критическую информацию, такую как заголовки макроблоков и информация вектора движения. Часть В содержит данные коэффициентов внутрикадрового кодирования, что является следующим по приоритету, и часть С содержит данные коэффициентов для блоков с межкадровым кодированием и блоков временного предсказания. В одном аспекте информация CSV может генерироваться путем слияния и масштабирования данных части А для обеспечения возможности использования CSV для восстановления и маскирования ошибок и для того, чтобы избежать вычислительно интенсивных операций кодирования подобно оцениванию движения.Subdivision of the encoded video bitstream data based on priority is a popular way to improve the ability to withstand errors and enable scalability in video encoding. For example, in H.264, dividing data into parts is a property that allows each part to be encoded as 3 separate data units called network abstraction layer (NALU) units. Part A carries critical information such as macroblock headers and motion vector information. Part B contains the data of the intraframe coding coefficients, which is the next highest priority, and part C contains the coefficient data for inter-coding blocks and temporal prediction blocks. In one aspect, CSV information can be generated by merging and scaling the data of Part A to enable CSV to be used to recover and mask errors and to avoid computationally intensive coding operations like motion estimation.
Передача информации CSVCSV Information Transfer
В схемах одноуровневого кодирования CSV может передаваться в синтаксисе пользовательских данных соответствующих стандартам битовых потоков. Например, CSV может кодироваться как один из синтаксических элементов информации дополнительного расширения в Н.264 или даже как избыточное изображение или вырезка. Дополнительно, информация CSV может переноситься как вспомогательный пакет в побочном канале (например, дополнительных каналах в 1х сетях) или в низкоприоритетном канале, если поддерживается уровневое кодирование и модуляция.In single-level coding schemes, CSVs can be transmitted in user data syntax corresponding to bitstream standards. For example, a CSV can be encoded as one of the syntax elements of additional extension information in H.264, or even as a redundant image or clipping. Additionally, CSV information can be carried as an auxiliary packet in a side channel (for example, additional channels in 1x networks) or in a low-priority channel if layer coding and modulation are supported.
ПриложенияApplications
В одном аспекте функциональность транспортного уровня поддерживается потоковым уровнем и уровнем МАС. Каждая услуга (конгломерат ассоциированных аудио, видео и/или данных) передается в одном или более каналах. Клиент на устройстве «настраивает» канал(ы), представляющий(е) интерес и считывает данные, касающиеся услуги (или в общих терминах ТВ - канал), представляющие интерес, из мультиплексной передачи.In one aspect, the functionality of the transport layer is supported by the streaming layer and the MAC layer. Each service (a conglomerate of associated audio, video and / or data) is transmitted in one or more channels. The client on the device “tunes” the channel (s) of interest and reads the data regarding the service (or in general terms the TV channel) of interest from the multiplex transmission.
Если изменение канала инициировано пользователем (например, нажатием клавиши), то приложение уведомляет физический уровень, который настраивается на соответствующий(е) канал(ы). Это может произойти на границах суперкадра (1 сек.) или на границах кадра (0.25 сек.). В одном аспекте видео кодек переносит точку случайного доступа (I или распределенные I-кадры) в начало каждого суперкадра. Для того чтобы обеспечить возможность быстрого переключения каналов (на границах кадров), информация CSV переносится в 3-ем (или, возможно, 4-ом) кадре. Сжатые данные, записаны в пакеты физического уровня таким образом, чтобы обеспечить эту возможность. Таким образом, смена кадра, инициированная в первой половине секунды (синхронизированно с временем кадра) может возникнуть (инициированная воспроизведением видео нового канала) в метке 3/4 секунды суперкадра (игнорируя буферы декодера). При условии, что В-кадры поддерживаются, возможна потенциальная задержка в 2 кадра. Это имеет место в дополнение к времени ожидания буфера в очереди задержки/воспроизведения. Следовательно, достижимо время ожидания переключения канала 0.25+0.066+0.264=0.58 сек.If a channel change is initiated by the user (for example, by pressing a key), the application notifies the physical layer, which is tuned to the corresponding channel (s). This can happen at the borders of a superframe (1 sec.) Or at the borders of a frame (0.25 sec.). In one aspect, a video codec transfers a random access point (I or distributed I-frames) to the beginning of each superframe. In order to provide the ability to quickly switch channels (at the borders of frames), CSV information is transferred in the 3rd (or, possibly, 4th) frame. Compressed data is written to physical layer packets in such a way as to provide this capability. Thus, a frame change initiated in the first half of a second (synchronized with the frame time) can occur (initiated by playing the video of the new channel) in the 3/4 second mark of the superframe (ignoring the decoder buffers). Provided that B frames are supported, a potential delay of 2 frames is possible. This is in addition to the buffer latency in the delay / playback queue. Therefore, a channel switching wait time of 0.25 + 0.066 + 0.264 = 0.58 sec is achievable.
Применение CSV к устранению и маскированию ошибокApplying CSV to troubleshooting and masking errors
Поскольку CSV является сжатой версией первичных данных, которая сосуществует во времени в декодере (независимо от того, принимается ли она в побочном канале, канале расширения или в первичном битовом потоке в качестве пользовательских данных), она может обеспечить важное понимание основных данных, на которые влияют ошибки вследствие сред, подверженных ошибкам, таких как беспроводные каналы.Because CSV is a compressed version of the primary data that coexists over time in the decoder (whether it is received in the side channel, extension channel, or primary bitstream as user data), it can provide an important understanding of the underlying data that is affected Errors due to error prone environments such as wireless channels.
CSV может быть использована для восстановления (идентификации степени потери) потерянных или искаженных частей первичных данных посредством корреляции маркеров повторной синхронизации в первичных данных с соответствующей вырезкой или МВ. Номера кадров, отсчет порядка изображения в Н.264, номера последовательностей и/или временные метки презентации могут быть использованы для идентификации соответствующих кадров в CSV. Если макроблоки с внутренним кодированием в первичных данных потеряны (как во внутренних, так и в прогнозированных кадрах), декодирование именно соответствующих частей CSV (заголовка вырезки и МВ) может обеспечить информацию режима и направления для маскирования новых (смена сцены, которая кодируется как I-кадр) или появляющихся объектов (окклюзии (маскирования), кодируемые как МВ с внутренним кодированием или вырезки в Р- или В-кадрах)CSV can be used to recover (identify the degree of loss) of the lost or distorted parts of the primary data by correlating the resynchronization markers in the primary data with the corresponding notch or MB. Frame numbers, image order count in H.264, sequence numbers and / or presentation timestamps can be used to identify the corresponding frames in CSV. If macroblocks with internal coding in the primary data are lost (both in the internal and in the predicted frames), decoding of the corresponding parts of the CSV (cut header and MV) can provide mode and direction information for masking new ones (scene change, which is encoded as I- frame) or appearing objects (occlusions (masking), encoded as MVs with internal encoding or clippings in P- or B-frames)
Когда макроблок межкадрового кодирования потерян в первичных кадрах, независимо от того, является ли он векторами движения или коэффициентами межкадрового кодирования, информация в соответствующем кадре CSV может быть расширена для восстановления после ошибок и маскирования ошибок. Если был использован метод 1 для гибридного кодирования, то соответствующая информация в CSV может быть или не быть кодирована в том же самом режиме. Например, МВ, кодированный с внутрикадровым кодированием в первичных данных, может быть кодирован межкадровым кодированием в CSV (ввиду требований более низкого качества). Это особенно полезно, поскольку алгоритмы временного маскирования не способны вывести корректный вектор движения, если некоторые МВ в окне, представляющем интерес, кодированы внутрикадровым кодированием.When the inter-frame coding macroblock is lost in the primary frames, regardless of whether it is motion vectors or inter-frame coding coefficients, the information in the corresponding CSV frame can be expanded to recover from errors and mask errors. If
В замкнутой системе кодер и декодер проектируются и реализуются с полной автономией. Следовательно, кодер полностью осведомлен о возможностях реализации декодера, а декодер осведомлен об оптимизациях и структуре битовых потоков кодера. Это позволяет использовать более эффективный, более надежный и рентабельный (по стоимости по скорости-искажению) метод для генерации CSV и других приложений раскрытия, включая восстановление после ошибок, маскирование ошибок и преобразование с повышение скорости кадров.In a closed system, the encoder and decoder are designed and implemented with complete autonomy. Therefore, the encoder is fully aware of the possibilities of implementing the decoder, and the decoder is aware of the optimizations and structure of the encoder bit streams. This allows you to use a more efficient, more reliable and cost-effective (cost-per-distortion) method for generating CSV and other disclosure applications, including error recovery, error concealment, and frame rate conversion conversion.
В одном или более аспектах, система работает для передачи CSV медиа. При указании необходимости приложения более высокого уровня, как в случае, когда пользователь инициирует переключение каналов путем нажатия клавиши, декодер начинает декодирование и отображение CSV нового канала почти мгновенно (например, после того как нижние уровни - транспортный и физический уровни - переключились на новый канал). Это может снизить время переключения до нескольких миллисекунд в диапазоне 10-100 мс. В сценариях, не относящихся к переключению каналов, информация CSV, например, I-кадры/МВ и информация MV могут быть использованы для восстановления после ошибок (с некоторой обработкой или без нее), где в соседних кадрах используется информация для маскирования потерянных МВ или MV.In one or more aspects, the system operates to transmit CSV media. When you specify the need for a higher-level application, as in the case when the user initiates the channel switching by pressing a key, the decoder starts decoding and displaying the CSV of the new channel almost instantly (for example, after the lower levels - transport and physical levels - switched to a new channel) . This can reduce the switching time to a few milliseconds in the range of 10-100 ms. In non-channel switching scenarios, CSV information such as I-frames / MV and MV information can be used for error recovery (with or without some processing), where information is used in neighboring frames to mask lost MV or MV .
Иллюстрация реализацииImplementation illustration
Далее приведена реализация, иллюстрирующая использование интегрированного кодека и физического уровня для эффективной потоковой передачи мультимедиа в соответствии с аспектами системы получения услуги, описанной здесь. Например, эта реализация описывает аспекты высокоинтегрированной архитектуры, обеспечиваемой мультимедийными кодеками на уровне приложения, чтобы обеспечить формирование канала на физическом уровне для эффективных передач мультимедиа, в частности потоковой передачи мультимедиа или широковещательной/групповой передачи мультимедиа. Следует отметить, что различные аспекты применимы к любому индивидуальному или комбинации существующих или будущих приложений, транспортному или физическому уровню, или другим технологиям. В результате различные аспекты обеспечивают эффективные передачи, взаимодействия и понимание между уровнями OSI при тесной связи, которая исключает/снижает флуктуации и буферы обработки в различных точках, тем самым времена ожидания. Таким образом, одним из главных преимуществ является быстрое переключение каналов в мобильных широковещательных передачах мультимедиа.The following is an implementation illustrating the use of an integrated codec and physical layer for efficient multimedia streaming in accordance with aspects of the service acquisition system described herein. For example, this implementation describes aspects of the highly integrated architecture provided by multimedia codecs at the application level to provide channelization at the physical layer for efficient multimedia transmissions, in particular multimedia streaming or multimedia broadcast / multicast. It should be noted that various aspects are applicable to any individual or combination of existing or future applications, transport or physical layer, or other technologies. As a result, various aspects provide efficient transfers, interactions, and understanding between OSI layers with tight communication that eliminates / reduces fluctuations and processing buffers at various points, thereby waiting times. Thus, one of the main advantages is the fast channel switching in mobile multimedia broadcasts.
На Фиг.10 показан аспект системы 1000 связи. Система 1000 является системой потоковой передачи мультимедиа, где вход в систему является непрерывным потоком данных (дискретные события по времени, но не никогда не заканчивающиеся), а выход из системы является непрерывным потоком данных. Например, клиент, показанный на Фиг.10, может быть частью мобильного устройства.10 shows an aspect of a
Фиг.11 показывает диаграмму уровней OSI или стек 1100 протоколов для использования в аспектах системы получения услуги. Например, стек 1100 протоколов подходит для использования в системе получения услуги, показанной на Фиг.3. Следует отметить, что стек 1100 протоколов является только одной реализацией и что различные аспекты описанной системы могут быть расширены на любую многоуровневую архитектуру. Далее описан поток данных через уровни стека 1100 протоколов; однако следует отметить, что описание основано на обобщенном понимании структур данных внутри и между уровнями.11 shows an OSI layer diagram or
Система получения услуги работает для поддержания непрерывной или потоковой передачи данных от входа к выходу через сеть к клиенту. В одном аспекте система действует как один буфер FIFO («первым пришел - первым обслужен»).The service acquisition system works to maintain continuous or streaming data from input to output through the network to the client. In one aspect, the system acts as a single FIFO buffer (“first come, first served”).
Предположим, что базовый блок времени (Т) равен, например, одной секунде. Пусть данные, касающиеся этого блока времени, будут называться суперкадром (SF). Тогда SF есть пакет, полезная нагрузка которого содержит данные, например, мультимедийные данные, которые могут быть потреблены за Т секунд (Т=1 в данном примере).Suppose that the base block of time (T) is, for example, one second. Let the data concerning this block of time be called superframe (SF). Then SF is a packet whose payload contains data, for example, multimedia data that can be consumed in T seconds (T = 1 in this example).
Фиг.12 показывает диаграмму 1200, которая иллюстрирует обработку данных суперкадра из приложения через физический уровень как на стороне сети, так и на стороне клиента в системе связи. В диаграмме 1200 ось х представляет время в секундах. Ось у изображает обработку данных от входа посредством кодера, обработку инкапсулирования уровня потока/МАС до компоновки в физический уровень SF. Диаграмма 1200 показывает фундаментальные операции обработки SF в системе, где текущий SF показан хешированными блоками. Ввод для этого SF входит в систему в момент (Т=SF_Start-3), и он кодируется, кодируется внешним образом и инкапсулируется в SF в момент (Т=SF_Start-2). Этот SF затем передается и принимается (задержка от передатчика к приемнику составляет порядка наносекунд, поскольку физический уровень является радиочастотным (RF)) в момент (Т=SF_Start-1). Следовательно, данные текущего SF заполняют буфер приемника (т.е. буфер 832) в момент (Т=SF_Start-1) и доступны для декодирования и немедленного представления в момент (Т=SF_Start). Временные метки вкраплены в блоки данных аудио или видео для текущего SF и смещены относительно времени (Т=SF_Start).12 shows a diagram 1200 that illustrates the processing of superframe data from an application through the physical layer, both on the network side and on the client side in a communication system. In
В синхронной системе Т=SF_Start (Т в общем случае) связано с системными часами, например, для GPS, если доступны как сеть, так и клиент, и обеспечивает хронирование SF. Это исключает необходимость в отдельном тактовом сигнале медиа (VCXO или осциллятор) в клиенте, тем самым сокращая затраты, особенно если клиент находится на портативном устройстве.In a synchronous system, T = SF_Start (T in general) is associated with the system clock, for example, for GPS, if both the network and the client are available, and provides SF timing. This eliminates the need for a separate media clock (VCXO or oscillator) in the client, thereby reducing costs, especially if the client is on a portable device.
В асинхронной системе обработка SF остается той же самой. Временные метки в блоках аудио/видео данных выводятся из внутреннего тактового сигнала, такого как PCR (эталон программного тактового сигнала в системах MPEG-2).In an asynchronous system, SF processing remains the same. Timestamps in the audio / video data blocks are output from an internal clock, such as PCR (software clock reference in MPEG-2 systems).
В любом случае буфер приемника (т.е. буфер 832) теперь тесно связан с любым буфером декодера (они могут потенциально совместно использовать один и тот же буфер), так что имеет место минимальное устранение флуктуаций в декодере (менее 100 мс). Это позволяет выполнять быстрое переключение каналов, как описано ниже.In any case, the receiver buffer (i.e., buffer 832) is now closely associated with any decoder buffer (they can potentially share the same buffer), so there is minimal elimination of fluctuations in the decoder (less than 100 ms). This allows you to quickly switch channels, as described below.
Фиг.13 показывает диаграмму 1300, которая иллюстрирует быстрое переключение каналов, обеспечиваемое аспектами системы получения услуги. Например, система может обеспечивать быстрое переключение каналов максимально менее чем за две секунды и в среднем за одну секунду, когда Т=1 секунде. Диаграмма 1300 представляет четыре канала и три суперкадра: SF+2, SF+1 и SF. Когда пользователь устройства инициирует смену канала с канала А на канал В во временном кадре, соответствующем SF, то прием и (/или) декодирование переключается на канал В приема в момент SF+1, и данные в SF+1 доступны для декодирования в начале SF+2.13 shows a diagram 1300 that illustrates the fast channel switching provided by aspects of a service acquisition system. For example, a system can provide fast channel switching in less than two seconds, and on average in one second, when T = 1 second.
Поскольку сжатие видео и аудио связано с временным предсказанием, независимое декодирование ограничено точками случайного доступа, такими как I-кадры. Однако поскольку кодер осведомлен о границах SF, он может соответственно разместить точки случайного доступа (I-кадры, прогрессивные обновления и другие средства) в начале SF, соответственно тому, когда возможно обнаружение физического уровня. Это исключает необходимость в точках случайного доступа произвольным образом, тем самым повышая эффективность сжатия. Это также гарантирует быстрое переключение каналов, поскольку точка случайного доступа имеется в начале каждого SF для немедленного декодирования и отображения нового канала. Следует также отметить, что временная длительность SF должна быть установлена на 1 секунду, 5 секунд или любую единицу времени, как желательно или как позволяет конструкция системы.Since video and audio compression is associated with temporal prediction, independent decoding is limited to random access points, such as I-frames. However, since the encoder is aware of the boundaries of the SF, it can accordingly place random access points (I-frames, progressive updates, and other means) at the beginning of the SF, respectively, when physical layer detection is possible. This eliminates the need for random access points in a random way, thereby increasing compression efficiency. It also guarantees fast channel switching, since a random access point is at the beginning of each SF to immediately decode and display a new channel. It should also be noted that the time duration of the SF should be set to 1 second, 5 seconds or any unit of time, as desired or as the system design allows.
Обработка уровня приложенияApplication Level Processing
Рассмотрим видео данные, передаваемые в системе на основе SF. Видео кодер извлекает видео данные или информацию, которая может быть потреблена за Т секунд. (Потребление может рассматриваться, например, как видео данные, которые отображаются в течение Т секунд.) Пусть это будет называться Т-пакетом или суперкадром (SF).Consider the video data transmitted in an SF-based system. The video encoder extracts video data or information that can be consumed in T seconds. (Consumption can be considered, for example, as video data that is displayed for T seconds.) Let it be called a T-packet or superframe (SF).
Обработка уровня синхронизации: информация синхронизацииProcessing sync level: sync information
Информация хронирования, например, временные метки, для блоков видео данных (например, сжатые блоки доступа или видео кадры), которые содержат текущий Т-пакет или SF, назначается блокам данных. Эти временные метки дискретизируются от входящего тактового сигнала (например, PCR), который переносится вместе с аудио и видео данными, как в асинхронной системе, например, для DVB, ATSC с использованием протоколов систем MPEG-2.Timing information, such as timestamps, for video data blocks (eg, compressed access blocks or video frames) that contain the current T packet or SF, are assigned to data blocks. These timestamps are sampled from the incoming clock signal (for example, PCR), which is transferred together with audio and video data, as in an asynchronous system, for example, for DVB, ATSC using the protocols of MPEG-2 systems.
В синхронной системе, где тактовый сигнал медиа является синхронным с системным тактовым сигналом, временные метки являются фиксированным сдвигом относительно входящего тактового сигнала медиа (PCR/PTS), который равен фиксированной разности между входящим тактовым сигналом медиа (PCR) и системным тактовым сигналом. Поэтому аспекты синхронной системы обеспечивают следующее.In a synchronous system where the media clock is synchronous with the system clock, the timestamps are a fixed offset from the incoming media clock (PCR / PTS), which is equal to the fixed difference between the incoming media clock (PCR) and the system clock. Therefore, aspects of a synchronous system provide the following.
а. Устранение необходимости в посылке тактового сигнала, тем самым исключая любое хронирование буфера исключения флуктуаций.but. Eliminating the need to send a clock signal, thereby eliminating any timing of the fluctuation exclusion buffer.
b. Клиент может сдвинуть синхронизацию локального тактового сигнала, который синхронизирован с общим временем, таким как GPS.b. The client can shift the local clock synchronization, which is synchronized with the total time, such as GPS.
Обработка транспортного уровняTransport Layer Processing
Транспортный уровень обеспечивает кадрирование для синхронно инкапсулированного аудио/видео в пакеты фиксированной длины, что соответствует размерам пакетов физического уровня. Они являются пакетами фиксированной длины.The transport layer provides framing for synchronously encapsulated audio / video in packets of a fixed length, which corresponds to the size of the packets of the physical layer. They are fixed length packages.
Фиг.14 показывает диаграмму 1400, которая иллюстрирует поток Т-пакетов в аспектах системы получения услуг. Например, диаграмма 1400 показывает, каким образом Т-пакеты кодируются и инкапсулируются в текущем (или 1-ом) суперкадре, передаются в передатчике в сеть и принимаются в приемнике на клиенте во втором суперкадре. В результате Т-пакеты становятся доступными и обрабатываются/потребляются в третьем суперкадре. Каждый Т-пакет является независимо принимаемым и декодируемым. Поэтому имеет место минимальное устранение флуктуаций в момент TSF_start. Следует отметить, что уровень приложения осведомлен о логике и структуре пакетирования/инкапсулирования/канализации уровня потока/МАС и физического уровня (т.е., см. Фиг.11).14 shows a diagram 1400 that illustrates the flow of T packets in aspects of a service acquisition system. For example, diagram 1400 shows how T packets are encoded and encapsulated in the current (or 1st) superframe, transmitted at the transmitter to the network, and received at the receiver on the client in the second superframe. As a result, T packets become available and are processed / consumed in the third superframe. Each T packet is independently received and decoded. Therefore, there is minimal elimination of fluctuations at the time T SF_start . It should be noted that the application layer is aware of the logic and structure of the packetization / encapsulation / channelization of the stream / MAC layer and physical layer (i.e., see FIG. 11).
Фиг.15 показывает диаграмму 1500, которая иллюстрирует конфигурацию видео кадра в аспекте Т-пакета. Для показанной конфигурации кадра предусмотрены базовый уровень и уровень расширения, и порядок источника равен порядку представления. Таким образом, Т-пакет принимается в порядке источника и кодируется. Порядок кадров после сжатия сохраняется, и Т-пакет выводится из кодера в порядке декодирования.FIG. 15 shows a diagram 1500 that illustrates a configuration of a video frame in an aspect of a T packet. For the shown frame configuration, a base level and an extension level are provided, and the source order is equal to the presentation order. Thus, the T packet is received in source order and encoded. The frame order after compression is stored, and the T packet is output from the encoder in decoding order.
После того как Т-пакет проходит через транспортный и физический уровни в сети и на клиенте, он достигает видео декодер в клиенте в порядке декодирования. Следовательно, декодер способен декодировать один Т-пакет за другим в непрерывной последовательности, при этом исключая/снижая необходимость в дополнительных буферах декодера.After the T-packet passes through the transport and physical layers in the network and on the client, it reaches the video decoder in the client in decoding order. Therefore, the decoder is able to decode one T-packet after another in a continuous sequence, while eliminating / reducing the need for additional decoder buffers.
Фиг.16 показывает диаграмму, которая иллюстрирует конфигурацию 1600 видео кадра в одном аспекте Т-потока. Например, конфигурация 1600 видео кадра подходит для конфигурирования видео кадров в аспектах системы получения услуги.16 shows a diagram that illustrates a
Следующие «Замечания» обеспечивают информацию о различных аспектах конфигурации 1600 видео кадра.The following “Notes” provide information on various aspects of the configuration of a 1600 video frame.
Замечание 1. OIS содержит, в числе прочей информации, индекс на местоположение Т-пакета для программы/канала, представляющего интерес. Клиент «активизируется» только на эту длительность, тем самым экономя мощность. Для быстрого обнаружения канала, это сообщение и OIS могут переноситься в конце Т-пакета.
Замечание 2. Аудио и видео, соответствующие тому же самому Т-пакету, могут быть инкапсулированы в пакетах других потоковых уровней.
Замечание 3. Альтернативным образом, аудио и видео, соответствующие тому же самому Т-пакету, могут быть инкапсулированы в одной и той же или отличающейся оболочке протокола МАС.
Замечание 4. Код Рида-Соломона (RS) является примером внешнего кода или прямой коррекции ошибок (FEC). Блоки четности RS переносятся в конце Т-пакета. Когда приемник принимает первые три кадра Т-пакета без ошибок, последний кадр Т-пакета не должен приниматься. Маломощные трубки-хосты для клиента не должны активизироваться, чтобы принимать его, тем самым экономя мощность.
Замечание 5. Т-пакет кодируется, инкапсулируется и «заполняется» в пакеты физического уровня. Кодер, МАС уровень и физический уровни осведомлены о границах Т-пакета. Remark 5. The T-packet is encoded, encapsulated, and “populated” into physical layer packets. The encoder, MAC layer, and physical layer are aware of the boundaries of the T packet.
Замечание 6. Т-пакет, кодированный/инкапсулированный в предыдущую секунду, передается и принимается в течение этого интервала. Remark 6. The T-packet encoded / encapsulated in the previous second is transmitted and received during this interval.
Замечание 7. Т-пакет, принятый в предыдущую секунду, потребляется в этом интервале.
Поэтому конфигурация 1600 видео кадра подходит для использования в аспектах системы получения услуг. Следует отметить, что конфигурация 1600 является всего лишь одной реализацией и возможны другие реализации в объеме описанных аспектов.Therefore, the configuration of the 1600 video frame is suitable for use in aspects of a service acquisition system. It should be noted that the
На Фиг.17 показана диаграмма, иллюстрирующая конфигурацию 1700 транспортных заголовков (ТН) и синхрозаголовков (SH), используемых в базовом уровне и уровне расширения суперкадра. В одном аспекте ТН 1702 содержит последний указатель 1704 и смещение 1706 пакета физического уровня (PLP).17 is a diagram illustrating a configuration of 1700 transport headers (VTs) and sync headers (SHs) used in a base layer and an extension level of a superframe. In one aspect, the
В одном аспекте SH 1708 содержит идентификатор 1710 потока, временную метку представления (PTS) 1712, идентификатор кадра 1714, флаг 1716 точки случайного доступа (RAP), идентификатор 1718 частоты кадров и зарезервированные биты 1720. Идентификатор 1714 кадров содержит флаг 1722 расширения и номер 1724 кадра.In one aspect,
В одном аспекте метка PTS 1712 равна входящей временной метке (ts) для асинхронных систем и для синхронных систем, причем метка PTS 1712 равна ts+(PCR-системный тактовый сигнал).In one aspect, the
Поэтому конфигурация 1700 видео кадра пригодна для использования в аспектах системы получения услуг. Следует отметить, что конфигурация 1700 является только одной реализацией и что возможны другие реализации в объеме описанных аспектов.Therefore, the
На Фиг.18 показана структура 1800 блока кода прямого исправления ошибок (FEC) для использования в аспектах системы получения услуг. Например, структура 1800 блока кода содержит структуру блока кода базового уровня 1802 и структуру блока кода уровня 1804 расширения. Структура 1800 блока кода содержит транспортные заголовки, заголовки синхронизации и концевые биты с CRC. Структура 1800 блока кода иллюстрирует, каким образом данные аудио и видео кадров организованы для базового уровня и уровня расширения для использования в аспектах системы получения услуг. В одном аспекте видео данные могут факультативно кодироваться как битовый поток одного уровня или во множестве уровней для масштабируемости. Кроме того, точки случайного доступа, выровненные с границами Т-пакетов, могут переноситься на любом или всех уровнях. Следует отметить, что структура 1800 блока кода представляет только одну реализацию и что другие реализации возможны в объеме описанных аспектов.FIG. 18 illustrates a
На Фиг.19 показана организация 1900 кадра для обеспечения аудио и видео битовых потоков для использования в системе получения услуги. Организация 1900 кадра иллюстрирует организацию кадра для видео базового уровня и уровня расширения и организацию кадра для аудио. Дополнительно точки 1902 случайного доступа обеспечены посредством независимого декодирования, которое выровнено с границами Т-пакета как для видео, так и для аудио. Кроме того, дополнительные точки случайного доступа могут быть предусмотрены для устойчивости к ошибкам и восстановления после ошибок или для быстрого переключения каналов.19 shows the organization of a
Следует отметить, что организация 1900 кадра представляет только одну реализацию и что другие реализации возможны в объеме описываемых аспектов.It should be noted that the organization of the
Таким образом, различные аспекты системы получения услуги действуют, как описано здесь, для обеспечения следующих функций.Thus, various aspects of a service acquisition system operate as described herein to provide the following functions.
а. Обеспечение эффективных передач, взаимодействий и понимания между уровнями OSI с тесной связью, которая исключает/снижает флуктуации, и обработкой буферов в различных точках, тем самым уменьшая времена ожидания. Одно из основных преимуществ заключается в быстром переключении каналов в мультимедийных мобильных широковещательных передачах, например, посредством пакетов данных, соответствующих одной секунде данных, которые проходят в системе.but. Ensuring efficient transfers, interactions, and understanding between OSI layers with tight coupling that eliminates / reduces fluctuations and processing buffers at various points, thereby reducing latency. One of the main advantages is the fast channel switching in multimedia mobile broadcasts, for example, through data packets corresponding to one second of data that pass through the system.
b. Синхронное и асинхронное хронирование в системе с таковым сигналом или без тактового сигнала (PCR), переносимого системой.b. Synchronous and asynchronous timing in a system with or without a clock signal (PCR) carried by the system.
с. Быстрое переключение/обнаружение канала посредством снижения буферизации.from. Fast channel switching / detection by reducing buffering.
d. Аудио является непрерывным (серия одинаковых импульсов), но может не быть синхронным.d. Audio is continuous (a series of identical pulses), but may not be synchronous.
е. Один буфер в системе. Минимальное удаление флуктуаций в приемнике (т.е. порядка миллисекунд), когда следующая секунда данных начинается для заполнения и перед тем, как текущая секунда данных полностью потреблена.e. One buffer in the system. Minimal removal of fluctuations in the receiver (i.e., of the order of milliseconds) when the next second of data begins to fill up and before the current second of data is completely consumed.
f. Аудио аспекты. Поскольку сжатые аудио кадры могут делиться равномерно или неравномерно на односекундных границах, отложенная информация для текущего аудио кадра посылается в текущей секунде (т.е. с опережением по времени на несколько миллисекунд). Ввиду непрерывного ввода потока, буфер в приемнике представляется непрерывным.f. Audio aspects. Since compressed audio frames can be divided evenly or unevenly at one-second boundaries, pending information for the current audio frame is sent in the current second (i.e., several milliseconds ahead of time). Due to the continuous input of the stream, the buffer at the receiver appears to be continuous.
На Фиг.20 показан сервер 2000 для использования в аспектах системы получения услуг. Сервер 2000 содержит модуль (2002) для генерации одного или более сигналов CSV, который в одном аспекте содержит кодер 408 источника. Сервер 2000 также содержит модуль (2004) для кодирования сигнала CSV и мультимедийных сигналов для формирования блоков кодированных ошибок, который в одном аспекте содержит кодер 414 FEC. Сервер 2000 также содержит модуль (2006) для инкапсулирования блоков кодированных ошибок, который в одном аспекте содержит компоновщик 416. Следует отметить, что сервер 2000 является только лишь одной реализацией и что возможны и другие реализации.20 shows a
Фиг.21 показывает устройство 2100 для использования в аспектах системы получения услуг. Устройство 2100 содержит модуль (2102) для приема мультиплексной передачи, который в одном аспекте содержит приемник 804. Устройство 2100 также содержит модуль (2104) для буферизации мультиплексной передачи, который в одном аспекте содержит буфер 832. Устройство 2100 также содержит модуль (2106) для обнаружения выбора канала, который в одном аспекте содержит логику 818 настройки. Устройство 2100 также содержит модуль (2108) для декодирования сигнала CSV, который в одном аспекте содержит распаковщик 814.21 shows an
Устройство 2100 также содержит модуль (2110) для воспроизведения сигнала CSV, который в одном аспекте содержит декодер 816 источника. Следует отметить, что устройство 2100 является только одной реализацией и что возможны и другие реализации.
Фиг.22 показывает сервер 2200 для использования в аспектах системы получения услуг. Сервер 2200 содержит модуль (2202) для формирования множества кадров передачи, который в одном аспекте содержит компоновщик 416. Сервер 2200 также содержит модуль (2204) для кодирования одного или более каналов данных в кадр передачи, который в одном аспекте содержит кодер 414 FEC. Следует отметить, что сервер 2200 является только лишь одной реализацией и что возможны и другие реализации.22 shows a
Фиг.23 показывает устройство 2300 для использования в аспектах системы получения услуг. Устройство 2300 содержит модуль (2302) для приема множества кадров передачи, который в одном аспекте содержит приемник 804. Устройство 2300 также содержит модуль (2304) для буферизации множества кадров передачи, который в одном аспекте содержит буфер 832. Следует отметить, что устройство 2300 является только одной реализацией и что возможны и другие реализации.23 shows an
Различные иллюстративные логические блоки, модули и схемы, описанные в связи с раскрытыми вариантами осуществления, могут быть реализованы или выполнены с использованием универсального процессора, цифрового процессора сигналов (DSP), специализированной интегральной схемы (ASIC), программируемой вентильной матрицы (FPGA) или другого программируемого логического устройства, дискретной логической схемы или транзисторной логики, дискретных компонентов аппаратных средств или каких-либо их комбинаций. Универсальный процессор может быть микропроцессором, но в альтернативном варианте процессор может представлять собой обычный процессор, контроллер, микроконтроллер или конечный автомат. Процессор может быть также реализован как комбинация вычислительных устройств, например как комбинация DSP и микропроцессора, множество микропроцессоров, один или более микропроцессоров во взаимосвязи с ядром DSP или любая подобная конфигурация.Various illustrative logical blocks, modules, and circuits described in connection with the disclosed embodiments may be implemented or implemented using a universal processor, digital signal processor (DSP), application specific integrated circuit (ASIC), programmable gate array (FPGA), or other programmable logical device, discrete logic circuit or transistor logic, discrete hardware components, or any combination thereof. A general purpose processor may be a microprocessor, but in the alternative, the processor may be a conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, for example, as a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any similar configuration.
Этапы способа или алгоритма, описанные в связи с раскрытыми вариантами осуществления, могут быть реализованы непосредственно в аппаратных средствах, в модуле программного обеспечения, исполняемого процессором, или в комбинации обоих этих средств. Модуль программного обеспечения может находиться в оперативном запоминающем устройстве (ОЗУ), флэш-памяти, постоянном запоминающем устройстве (ПЗУ), электронно-программируемом ПЗУ (ЭППЗУ), электронно-стираемом программируемом ПЗУ (ЭСППЗУ), регистрах, на жестком диске, съемном диске, ПЗУ на компакт-диске (CD-ROM) или любом другом носителе для хранения данных, известном в технике. Приведенный для примера носитель записи связан с процессором, так что процессор может считывать информацию с носителя записи и записывать информацию на носитель записи. В альтернативном варианте, носитель записи может находиться на ASIC. ASIC может находиться в пользовательском терминале. В альтернативном варианте процессор и носитель записи могут находиться на дискретных компонентах в терминале.The steps of a method or algorithm described in connection with the disclosed embodiments may be implemented directly in hardware, in a software module executed by a processor, or in a combination of the two. The software module may reside in random access memory (RAM), flash memory, read-only memory (ROM), electronically programmable ROM (EEPROM), electronically erasable programmable ROM (EEPROM), registers, on a hard disk, a removable disk, ROM on a compact disc (CD-ROM) or any other storage medium known in the art. An exemplary recording medium is associated with a processor, so that the processor can read information from the recording medium and write information to the recording medium. Alternatively, the recording medium may reside on an ASIC. ASIC may reside in a user terminal. Alternatively, the processor and the recording medium may reside on discrete components in a terminal.
Предыдущее описание раскрытых вариантов осуществления предназначено для того, чтобы обеспечить возможность специалистам в данной области техники реализовать или использовать настоящее изобретение. Различные модификации этих вариантов осуществления изобретения будут очевидны для специалистов в данной области техники, и общие раскрытые принципы могут быть применены к другим вариантам осуществления без отклонения от сущности или объема изобретения. Таким образом, настоящее изобретение не предназначается для ограничения раскрытыми вариантами осуществления, а должно соответствовать самому широкому объему, совместимому с раскрытыми принципами и новыми признаками. Слово «примерный» используется здесь исключительно для обозначения «служащий в качестве примера, реализации или иллюстрации». Любой аспект, описанный здесь как «примерный» не обязательно должен толковаться как предпочтительный или имеющий преимущества над другими аспектами.The previous description of the disclosed embodiments is intended to enable those skilled in the art to make or use the present invention. Various modifications to these embodiments of the invention will be apparent to those skilled in the art, and the general principles disclosed may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited by the disclosed embodiments, but should correspond to the broadest scope consistent with the disclosed principles and new features. The word “exemplary” is used solely to mean “serving as an example, implementation, or illustration.” Any aspect described herein as “exemplary” need not be construed as preferred or having advantages over other aspects.
Соответственно, хотя здесь показаны и описаны один или более аспектов системы получения услуг, следует понимать, что различные изменения могут быть выполнены в этих аспектах без отклонения от их сущности и существенных характеристик. Поэтому эти раскрытия и описания предназначены для иллюстрации, но не для ограничения объема изобретения, который устанавливается следующей формулой изобретения.Accordingly, although one or more aspects of a service delivery system are shown and described herein, it should be understood that various changes can be made in these aspects without deviating from their nature and essential characteristics. Therefore, these disclosures and descriptions are intended to illustrate, but not to limit the scope of the invention, which is established by the following claims.
Claims (60)
генерацию одного или более сигналов видеопереключения каналов (CSV), ассоциированных с одним или более мультимедийными сигналами, причем каждый CSV сигнал соответствует каналу принимаемого сигнала мультиплексной передачи;
кодирование CSV сигналов и мультимедийных сигналов для формирования кодированных с коррекцией ошибок блоков, причем кодированные с коррекцией ошибок блоки содержат кодированные с коррекцией ошибок блоки, ассоциированные со служебной информацией, и кодированные с коррекцией ошибок блоки, содержащие данные, ассоциированные с одним или более мультимедийными сигналами;
пред-перемежение кодированных с коррекцией ошибок блоков, так что кодированные с коррекцией ошибок блоки, ассоциированные со служебной информацией, позиционированы после кодированных с коррекцией ошибок блоков, содержащих данные, ассоциированные с мультимедийными сигналами, и
инкапсулирование кодированных с коррекцией ошибок блоков в кадры сигнала мультиплексной передачи.1. A method of encoding data into a multiplex signal adapted to receive multimedia services, the method comprising
generating one or more channel switching signals (CSVs) associated with one or more multimedia signals, each CSV signal corresponding to a channel of a received multiplex signal;
encoding CSV signals and multimedia signals to form error-coded blocks, error-coded blocks containing error-coded blocks associated with overhead information and error-coded blocks containing data associated with one or more multimedia signals;
pre-interleaving the error-coded blocks, so that the error-coded blocks associated with the service information are positioned after the error-coded blocks containing data associated with the multimedia signals, and
Encapsulating error-corrected blocks in frames of a multiplex transmission signal.
кодер источника, конфигурированный для генерации одного или более сигналов видеопереключения каналов (CSV), ассоциированных с одним или более мультимедийными сигналами, причем каждый CSV сигнал соответствует каналу принимаемого сигнала мультиплексной передачи;
кодер с коррекцией ошибок, конфигурированный для кодирования CSV сигналов и мультимедийных сигналов для формирования кодированных с коррекцией ошибок блоков, причем кодированные с коррекцией ошибок блоки содержат кодированные с коррекцией ошибок блоки, ассоциированные со служебной информацией, и кодированные с коррекцией ошибок блоки, содержащие данные, ассоциированные с одним или более мультимедийными сигналами;
блок пред-перемежения, конфигурированный для пред-перемежения кодированных с коррекцией ошибок блоков так, что кодированные с коррекцией ошибок блоки, ассоциированные со служебной информацией, позиционированы после кодированных с коррекцией ошибок блоков, содержащих данные, ассоциированные с мультимедийными сигналами, и
компоновщик, конфигурированный для инкапсулирования кодированных с коррекцией ошибок блоков в кадры сигнала мультиплексной передачи.5. A device for encoding data into a multiplex signal, adapted to receive multimedia services, and the device contains
a source encoder configured to generate one or more channel video switching (CSV) signals associated with one or more multimedia signals, wherein each CSV signal corresponds to a channel of a received multiplex transmission signal;
error correction encoder configured to encode CSV signals and multimedia signals to generate error-encoded blocks, error-encoded blocks containing error-encoded blocks associated with overhead information and error-encoded blocks containing data associated with one or more multimedia signals;
a pre-interleaver configured to pre-interleave error-coded blocks so that error-coded blocks associated with service information are positioned after error-coded blocks containing data associated with multimedia signals, and
a linker configured to encapsulate error-corrected blocks in multiplexed transmission signal frames.
средство для генерации одного или более сигналов видеопереключения каналов (CSV), ассоциированных с одним или более мультимедийными сигналами, причем каждый CSV сигнал соответствует каналу принимаемого сигнала мультиплексной передачи;
средство для кодирования CSV сигналов и мультимедийных сигналов для формирования кодированных с коррекцией ошибок блоков, причем кодированные с коррекцией ошибок блоки содержат кодированные с коррекцией ошибок блоки, ассоциированные со служебной информацией, и кодированные с коррекцией ошибок блоки, содержащие данные, ассоциированные с одним или более мультимедийными сигналами;
средство для пред-перемежения кодированных с коррекцией ошибок блоков, так что кодированные с коррекцией ошибок блоки, ассоциированные со служебной информацией, позиционированы после кодированных с коррекцией ошибок блоков, содержащих данные, ассоциированные с мультимедийными сигналами, и
средство для инкапсулирования кодированных с коррекцией ошибок блоков в кадры сигнала мультиплексной передачи.9. An apparatus for encoding data into a multiplex signal adapted to receive multimedia services, the apparatus comprising
means for generating one or more channel switching signals (CSV) associated with one or more multimedia signals, wherein each CSV signal corresponds to a channel of a received multiplex transmission signal;
means for encoding CSV signals and multimedia signals for generating error-coded blocks, error-coded blocks containing error-coded blocks associated with service information and error-coded blocks containing data associated with one or more multimedia signals;
means for pre-interleaving the error-coded blocks, so that the error-coded blocks associated with the service information are positioned after the error-coded blocks containing data associated with the multimedia signals, and
means for encapsulating error-coded blocks into error frames of a multiplex transmission signal.
генерировать один или более сигналов видеопереключения каналов (CSV), ассоциированных с одним или более мультимедийными сигналами, причем каждый CSV сигнал соответствует каналу принимаемого сигнала мультиплексной передачи;
кодировать CSV сигналы и мультимедийные сигналы для формирования кодированных с коррекцией ошибок блоков, причем кодированные с коррекцией ошибок блоки содержат кодированные с коррекцией ошибок блоки, ассоциированные со служебной информацией, и кодированные с коррекцией ошибок блоки, содержащие данные, ассоциированные с одним или более мультимедийными сигналами;
выполнять пред-перемежение кодированных с коррекцией ошибок блоков, так что кодированные с коррекцией ошибок блоки, ассоциированные со служебной информацией, позиционированы после кодированных с коррекцией ошибок блоков, содержащих данные, ассоциированные с мультимедийными сигналами, и
инкапсулировать кодированные с коррекцией ошибок блоки в кадры сигнала мультиплексной передачи.13. A machine-readable medium containing instructions for encoding data into a multiplex signal, adapted to receive multimedia services, and the instructions upon execution force the machine
generate one or more channel switching signals (CSV) associated with one or more multimedia signals, wherein each CSV signal corresponds to a channel of a received multiplex transmission signal;
encode CSV signals and multimedia signals to form error-coded blocks, error-coded blocks containing error-coded blocks associated with service information and error-coded blocks containing data associated with one or more multimedia signals;
perform pre-interleaving of error-coded blocks for error correction, so that error-coded blocks associated with overhead information are positioned after error-coded blocks containing data associated with multimedia signals, and
encapsulate error-coded blocks into frames of a multiplex transmission signal.
генерации одного или более сигналов видеопереключения каналов (CSV), ассоциированных с одним или более мультимедийными сигналами, причем каждый CSV сигнал соответствует каналу принимаемого сигнала мультиплексной передачи;
кодирования CSV сигналов и мультимедийных сигналов для формирования кодированных с коррекцией ошибок блоков, причем кодированные с коррекцией ошибок блоки содержат кодированные с коррекцией ошибок блоки, ассоциированные со служебной информацией, и кодированные с коррекцией ошибок блоки, содержащие данные, ассоциированные с одним или более мультимедийными сигналами;
пред-перемежения кодированных с коррекцией ошибок блоков, так что кодированные с коррекцией ошибок блоки, ассоциированные со служебной информацией, позиционированы после кодированных с коррекцией ошибок блоков, содержащих данные, ассоциированные с мультимедийными сигналами, и
инкапсулирования кодированных с коррекцией ошибок блоков в кадры сигнала мультиплексной передачи.17. A processor for encoding data into a multiplex signal adapted to receive a multimedia service, the processor being configured to
generating one or more channel switching signals (CSVs) associated with one or more multimedia signals, each CSV signal corresponding to a channel of a received multiplex signal;
encoding CSV signals and multimedia signals to form error-coded blocks, error-coded blocks containing error-coded blocks associated with overhead information and error-coded blocks containing data associated with one or more multimedia signals;
pre-interleaving the error-coded blocks, so that the error-coded blocks associated with the service information are positioned after the error-coded blocks containing data associated with the multimedia signals, and
encapsulating error-corrected blocks in frames of a multiplex transmission signal.
прием сигнала мультиплексной передачи, ассоциированного с множеством каналов;
обнаружение выбора одного из каналов;
декодирование сигнала видеопереключения каналов (CSV), ассоциированного с выбранным каналом;
декодирование сигнала мультиплексной передачи для формирования кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации;
обращенное перемежение кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации, причем кодированные с коррекцией ошибок блоки информации позиционированы после кодированных с коррекцией ошибок блоков данных; и
воспроизведение CSV сигнала.21. A method of obtaining a multimedia service from a multiplex signal, comprising
receiving a multiplex signal associated with multiple channels;
detection of a choice of one of the channels;
decoding a video channel switching signal (CSV) associated with the selected channel;
decoding the multiplex signal to generate error-coded data blocks and error-coded information blocks;
reverse interleaving of error-coded data blocks and error-coded information blocks, wherein error-coded information blocks are positioned after error-coded data blocks; and
CSV signal playback.
приемник, конфигурированный для приема сигнала мультиплексной передачи, ассоциированного с множеством каналов;
логический блок выбора, конфигурированный для обнаружения выбора одного из каналов;
распаковщик, конфигурированный для декодирования сигнала видеопереключения каналов (CSV), ассоциированного с выбранным каналом;
декодер, конфигурированный для декодирования сигнала мультиплексной передачи для формирования кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации;
блок обращенного перемежения, конфигурированный для обращенного перемежения кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации, причем кодированные с коррекцией ошибок блоки информации позиционированы после кодированных с коррекцией ошибок блоков данных; и
декодер источника, конфигурированный для воспроизведения CSV сигнала.25. A device for receiving multimedia services from a multiplex signal, containing
a receiver configured to receive a multiplex signal associated with multiple channels;
a selection logic unit configured to detect a selection of one of the channels;
an unpacker configured to decode a video channel switching signal (CSV) associated with the selected channel;
a decoder configured to decode the multiplex signal to generate error-coded data blocks and error-coded information blocks;
a deinterleaving unit configured to deinterleave the error-coded data blocks and error-coded information blocks, wherein the error-coded information blocks are positioned after the error-coded data blocks; and
source decoder configured to play a CSV signal.
средство для приема сигнала мультиплексной передачи, ассоциированного с множеством каналов;
средство для обнаружения выбора одного из каналов;
средство для декодирования сигнала видеопереключения каналов (CSV), ассоциированного с выбранным каналом;
средство для декодирования сигнала мультиплексной передачи для формирования кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации;
средство для обращенного перемежения кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации, причем кодированные с коррекцией ошибок блоки информации позиционированы после кодированных с коррекцией ошибок блоков данных; и
средство для воспроизведения CSV сигнала.29. A device for receiving multimedia services from a multiplex signal, containing
means for receiving a multiplex signal associated with multiple channels;
means for detecting the selection of one of the channels;
means for decoding a video channel switching signal (CSV) associated with the selected channel;
means for decoding a multiplex signal for generating error-coded data blocks and error-coded information blocks;
means for reversing the alternation of error-coded data blocks and error-coded information blocks, wherein the error-coded information blocks are positioned after the error-coded data blocks; and
means for reproducing the CSV signal.
прием сигнала мультиплексной передачи, ассоциированного с множеством каналов;
обнаружение выбора одного из каналов;
декодирование сигнала видеопереключения каналов (CSV), ассоциированного с выбранным каналом;
декодирование сигнала мультиплексной передачи для формирования кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации;
обращенное перемежение кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации, причем кодированные с коррекцией ошибок блоки информации позиционированы после кодированных с коррекцией ошибок блоков данных; и
воспроизведение CSV сигнала.33. A computer-readable medium containing instructions for obtaining a multimedia service from a multiplex signal, and the instructions, when executed, force the machine to execute
receiving a multiplex signal associated with multiple channels;
detection of a choice of one of the channels;
decoding a video channel switching signal (CSV) associated with the selected channel;
decoding the multiplex signal to generate error-coded data blocks and error-coded information blocks;
reverse interleaving of error-coded data blocks and error-coded information blocks, wherein error-coded information blocks are positioned after error-coded data blocks; and
CSV signal playback.
приема сигнала мультиплексной передачи, ассоциированного с множеством каналов;
обнаружения выбора одного из каналов;
декодирования сигнала видеопереключения каналов (CSV), ассоциированного с выбранным каналом;
декодирования сигнала мультиплексной передачи для формирования кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации;
обращенного перемежения кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации, причем кодированные с коррекцией ошибок блоки информации позиционированы после кодированных с коррекцией ошибок блоков данных; и
воспроизведения CSV сигнала.37. A processor for receiving a multimedia service from a multiplex signal, the processor being configured to
receiving a multiplex signal associated with multiple channels;
detecting the selection of one of the channels;
decoding a video channel switching signal (CSV) associated with the selected channel;
decoding the multiplex signal to generate error-coded data blocks and error-coded information blocks;
reverse alternation of error-coded data blocks and error-coded information blocks, wherein the error-coded information blocks are positioned after the error-coded data blocks; and
Play CSV signal.
формирование множества кадров передачи, причем каждый кадр передачи ассоциирован с выбранным интервалом времени; и
кодирование данных, ассоциированных с одним или более каналов, во множество кадров передачи, причем выбранные данные кодируются в предварительно определенные кадры передачи, так что флуктуации канала могут быть устранены с использованием одного буфера, имеющего выбранную длительность времени, при этом кодирование данных содержит пред-перемежение кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации, ассоциированных с одним или более каналов данных, так что кодированные с коррекцией ошибок блоки информации позиционированы после кодированных с коррекцией ошибок блоков данных.41. A method for generating a multiplex signal adapted to receive a multimedia service, the method comprising
generating a plurality of transmission frames, wherein each transmission frame is associated with a selected time interval; and
encoding data associated with one or more channels into a plurality of transmission frames, wherein the selected data is encoded into predetermined transmission frames so that channel fluctuations can be eliminated using a single buffer having a selected time duration, wherein the data encoding comprises pre-interleaving error-coded data blocks and error-coded information blocks associated with one or more data channels, so error-corrected coded k information blocks are positioned after error-coded data blocks.
средство для формирования множества кадров передачи, причем каждый кадр передачи ассоциирован с выбранным интервалом времени; и
средство для кодирования данных, ассоциированных с одним или более каналами, во множество кадров передачи, причем выбранные данные кодируются в предварительно определенные кадры передачи, так что флуктуации канала могут быть устранены с использованием одного буфера, имеющего выбранную длительность времени, при этом средство для кодирования данных содержит средство для пред-перемежения кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации, ассоциированных с одним или более каналами данных, так что кодированные с коррекцией ошибок блоки информации позиционированы после кодированных с коррекцией ошибок блоков данных.45. An apparatus for generating a multiplex signal adapted to receive multimedia services, the apparatus comprising
means for generating a plurality of transmission frames, wherein each transmission frame is associated with a selected time interval; and
means for encoding data associated with one or more channels into a plurality of transmission frames, the selected data being encoded into predetermined transmission frames, so that channel fluctuations can be eliminated using a single buffer having a selected length of time, the means for encoding data comprises means for pre-interleaving error-coded data blocks and error-coded information blocks associated with one or more data channels So that the error correction coded information blocks are positioned after correction-coded data block errors.
упаковщик, конфигурированный для формирования множества кадров передачи, причем каждый кадр передачи ассоциирован с выбранным интервалом времени; и
кодер, конфигурированный для кодирования данных, ассоциированных с одним или более каналами, во множество кадров передачи, причем выбранные данные кодируются в предварительно определенные кадры передачи, так что флуктуации канала могут быть устранены с использованием одного буфера, имеющего выбранную длительность времени, при этом кодер конфигурирован для пред-перемежения кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации, ассоциированных с одним или более каналов данных, так что кодированные с коррекцией ошибок блоки информации позиционированы после кодированных с коррекцией ошибок блоков данных.49. A device for generating a multiplex signal adapted to receive multimedia services, the device comprising
a packer configured to form a plurality of transmission frames, wherein each transmission frame is associated with a selected time interval; and
an encoder configured to encode data associated with one or more channels into a plurality of transmission frames, the selected data being encoded into predetermined transmission frames, so that channel fluctuations can be eliminated using a single buffer having a selected time duration, wherein the encoder is configured for pre-interleaving error-coded data blocks and error-coded information blocks associated with one or more data channels, so that ated with correction information blocks are positioned after error coded data blocks with error correction.
формировать множество кадров передачи, причем каждый кадр передачи ассоциирован с выбранным интервалом времени; и
кодировать данные, ассоциированные с одним или более каналами, во множество кадров передачи, причем выбранные данные кодируются в предварительно определенные кадры передачи, так что флуктуации канала могут быть устранены с использованием одного буфера, имеющего выбранную длительность времени, при этом кодирование данных содержит пред-перемежение кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации, ассоциированных с одним или более каналами данных, так что кодированные с коррекцией ошибок блоки информации позиционированы после кодированных с коррекцией ошибок блоков данных.50. A machine-readable medium containing instructions for generating a multiplex signal adapted to receive a multimedia service, the instructions forcing them to force the machine
generate a plurality of transmission frames, each transmission frame being associated with a selected time interval; and
encode data associated with one or more channels into a plurality of transmission frames, wherein the selected data is encoded into predetermined transmission frames, so that channel fluctuations can be eliminated using a single buffer having a selected time duration, wherein the data encoding comprises pre-interleaving error-coded data blocks and error-coded information blocks associated with one or more data channels, so error-coded ok information blocks are positioned after data blocks encoded with error correction.
формирования множества кадров передачи, причем каждый кадр передачи ассоциирован с выбранным интервалом времени; и
кодирования данных, ассоциированных с одним или более каналами, во множество кадров передачи, причем выбранные данные кодируются в предварительно определенные кадры передачи, так что флуктуации канала могут быть устранены с использованием одного буфера, имеющего выбранную длительность времени, при этом кодирование данных содержит пред-перемежение кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации, ассоциированных с одним или более каналами данных, так что кодированные с коррекцией ошибок блоки информации позиционированы после кодированных с коррекцией ошибок блоков данных.51. A processor for generating a multiplex signal adapted to receive a multimedia service, the processor being configured to
forming a plurality of transmission frames, wherein each transmission frame is associated with a selected time interval; and
encoding data associated with one or more channels into a plurality of transmission frames, wherein the selected data is encoded into predetermined transmission frames, so that channel fluctuations can be eliminated using a single buffer having a selected time duration, wherein the data encoding comprises pre-interleaving error-coded data blocks and error-coded information blocks associated with one or more data channels, so that error-corrected codes side information blocks are positioned after data blocks encoded with error correction.
прием множества кадров передачи, причем каждый кадр передачи ассоциирован с выбранным интервалом времени и содержит данные, ассоциированные с одним или более каналами данных, причем выбранные данные кодированы в предварительно определенные кадры передачи;
буферизацию множества кадров передачи с использованием одного буфера, ассоциированного с выбранной длительностью времени, причем флуктуации канала, ассоциированные с одним или более каналами, устраняются; и
декодирование одного или более каналов данных с использованием декодирования с прямой коррекцией ошибок путем обращенного перемежения кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации, ассоциированных с одним или более каналами данных, так что кодированные с коррекцией ошибок блоки информации позиционированы после кодированных с коррекцией ошибок блоков данных.52. A method of obtaining a multimedia service from a multiplex signal, comprising
receiving multiple transmission frames, each transmission frame being associated with a selected time interval and containing data associated with one or more data channels, the selected data being encoded into predetermined transmission frames;
buffering multiple transmission frames using a single buffer associated with a selected length of time, wherein channel fluctuations associated with one or more channels are eliminated; and
decoding one or more data channels using forward error correction decoding by deinterleaving the error-coded data blocks and error-coded information blocks associated with one or more data channels, so that the error-coded information blocks are positioned after the coded information error correction data blocks.
средство для приема множества кадров передачи, причем каждый кадр передачи ассоциирован с выбранным интервалом времени и содержит данные, ассоциированные с одним или более каналами данных, причем выбранные данные кодированы в предварительно определенные кадры передачи;
средство для буферизации множества кадров передачи с использованием одного буфера, ассоциированного с выбранной длительностью времени, причем флуктуации канала, ассоциированные с одним или более каналами, устраняются; и
средство для декодирования одного или более каналов данных с использованием декодирования с прямой коррекцией ошибок путем обращенного перемежения кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации, ассоциированных с одним или более каналами данных, так что кодированные с коррекцией ошибок блоки информации позиционированы после кодированных с коррекцией ошибок блоков данных.55. Device for receiving multimedia services from a multiplex signal, containing
means for receiving a plurality of transmission frames, wherein each transmission frame is associated with a selected time interval and comprises data associated with one or more data channels, the selected data being encoded into predetermined transmission frames;
means for buffering multiple transmission frames using a single buffer associated with a selected length of time, wherein channel fluctuations associated with one or more channels are eliminated; and
means for decoding one or more data channels using forward error correction decoding by deinterleaving error-coded data blocks and error-coded information blocks associated with one or more data channels, so that error-coded information blocks are positioned after error-coded data blocks.
приемник, конфигурированный для приема множества кадров передачи, причем каждый кадр передачи ассоциирован с выбранным интервалом времени и содержит данные, ассоциированные с одним или более каналами данных, причем выбранные данные кодированы в предварительно определенные кадры передачи;
демодулятор, конфигурированный для буферизации множества кадров передачи с использованием одного буфера, ассоциированного с выбранной длительностью времени, причем флуктуации канала, ассоциированные с одним или более каналами, устраняются; и
декодер, конфигурированный для декодирования одного или более каналов данных с использованием декодирования с прямой коррекцией ошибок путем обращенного перемежения кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации, ассоциированных с одним или более каналами данных, так что кодированные с коррекцией ошибок блоки информации позиционированы после кодированных с коррекцией ошибок блоков данных.58. A device for receiving multimedia services from a multiplex signal, containing
a receiver configured to receive a plurality of transmission frames, each transmission frame being associated with a selected time interval and containing data associated with one or more data channels, the selected data being encoded into predetermined transmission frames;
a demodulator configured to buffer a plurality of transmission frames using a single buffer associated with a selected length of time, wherein channel fluctuations associated with one or more channels are eliminated; and
a decoder configured to decode one or more data channels using forward error correction decoding by deinterleaving error-coded data blocks and error-coded information blocks associated with one or more data channels, such that information blocks encoded with error correction positioned after error-coded data blocks.
прием множества кадров передачи, причем каждый кадр передачи ассоциирован с выбранным интервалом времени и содержит данные, ассоциированные с одним или более каналами данных, причем выбранные данные кодированы в предварительно определенные кадры передачи;
буферизацию множества кадров передачи с использованием одного буфера, ассоциированного с выбранной длительностью времени, причем флуктуации канала, ассоциированные с одним или более каналами, устраняются; и
декодирование одного или более каналов данных с использованием декодирования с прямой коррекцией ошибок путем обращенного перемежения кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации, ассоциированных с одним или более каналами данных, так что кодированные с коррекцией ошибок блоки информации позиционированы после кодированных с коррекцией ошибок блоков данных.59. A computer-readable medium containing instructions for obtaining a multimedia service from a multiplex signal, and the instructions, when executed, force the machine to execute
receiving multiple transmission frames, each transmission frame being associated with a selected time interval and containing data associated with one or more data channels, the selected data being encoded into predetermined transmission frames;
buffering multiple transmission frames using a single buffer associated with a selected length of time, wherein channel fluctuations associated with one or more channels are eliminated; and
decoding one or more data channels using forward error correction decoding by deinterleaving the error-coded data blocks and error-coded information blocks associated with one or more data channels, so that error-coded information blocks are positioned after coded with error correction data blocks.
приема множества кадров передачи, причем каждый кадр передачи ассоциирован с выбранным интервалом времени и содержит данные, ассоциированные с одним или более каналами данных, причем выбранные данные кодированы в предварительно определенные кадры передачи;
буферизации множества кадров передачи с использованием одного буфера, ассоциированного с выбранной длительностью времени, причем флуктуации канала, ассоциированные с одним или более каналами, устраняются; и
декодирования одного или более каналов данных с использованием декодирования с прямой коррекцией ошибок путем обращенного перемежения кодированных с коррекцией ошибок блоков данных и кодированных с коррекцией ошибок блоков информации, ассоциированных с одним или более каналов данных, так что кодированные с коррекцией ошибок блоки информации позиционированы после кодированных с коррекцией ошибок блоков данных. 60. A processor for receiving a multimedia service from a multiplex signal, the processor being configured to
receiving multiple transmission frames, each transmission frame being associated with a selected time interval and containing data associated with one or more data channels, the selected data being encoded into predetermined transmission frames;
buffering multiple transmission frames using a single buffer associated with a selected length of time, wherein channel fluctuations associated with one or more channels are eliminated; and
decoding one or more data channels using forward error correction decoding by deinterleaving error-coded data blocks and error-coded information blocks associated with one or more data channels, so that error-coded information blocks are positioned after coded with error correction data blocks.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US72156505P | 2005-09-27 | 2005-09-27 | |
US60/721,565 | 2005-09-27 | ||
US73496205P | 2005-11-08 | 2005-11-08 | |
US60/734,962 | 2005-11-08 | ||
US60/742,189 | 2005-12-05 |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2008116716A RU2008116716A (en) | 2009-12-10 |
RU2388171C2 true RU2388171C2 (en) | 2010-04-27 |
Family
ID=41488810
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2008116716/09A RU2388171C2 (en) | 2005-09-27 | 2006-09-27 | Methods and device for service acquisition |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2388171C2 (en) |
-
2006
- 2006-09-27 RU RU2008116716/09A patent/RU2388171C2/en not_active IP Right Cessation
Non-Patent Citations (1)
Title |
---|
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.10.2004, c.2075-2078. * |
Also Published As
Publication number | Publication date |
---|---|
RU2008116716A (en) | 2009-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8670437B2 (en) | Methods and apparatus for service acquisition | |
US8761162B2 (en) | Systems and methods for applications using channel switch frames | |
US8831039B2 (en) | Time-interleaved simulcast for tune-in reduction | |
CA2412722C (en) | Video error resilience | |
US7289506B1 (en) | Data transmission | |
EP2312857B1 (en) | Time slicing techniques for variable data rate encoding | |
JP5400165B2 (en) | Fast channel change | |
US20110029684A1 (en) | Staggercasting with temporal scalability | |
US20080301742A1 (en) | Time-interleaved simulcast for tune-in reduction | |
US20160337671A1 (en) | Method and apparatus for multiplexing layered coded contents | |
JP2017520940A5 (en) | Method and apparatus for multiplexing layered coded content | |
RU2388171C2 (en) | Methods and device for service acquisition | |
Ohm et al. | Transmission and storage of multimedia data | |
WO2008149271A2 (en) | Time-interleaved simulcast for tune-in reduction |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20110928 |