СПОСОБ И УСТРОЙСТВО ПЛАНОВОГО ПЕРЕКЛЮЧЕНИЯ ПРИЕМА МЕЖДУ МУЛЬТИМЕДИЙНЫМИ ПОТОКАМИ В СИСТЕМЕ БЕСПРОВОДНОЙ СВЯЗИ
METHOD AND DEVICE FOR SCHEDULED SWITCHING OF RECEPTION BETWEEN MULTIMEDIA STREAMS IN WIRELESS COMMUNICATION SYSTEM

Данная заявка на патент притязает на преимущества предварительной заявки США номер № 60/514401, озаглавленной "A Method for Seamlessly Switching Reception Between Multimedia Streams in a Wireless Multicast Network" (Способ плавного переключения приема между мультимедийными потоками в сети беспроводной связи c многоадресной передачей), поданной 24 октября 2003 г.
I. ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Настоящее изобретение в целом относится к передаче информации, и более конкретно к способам переключения приема между мультимедийными потоками.
II. ПРЕДШЕСТВУЮЩИЙ УРОВЕНЬ ТЕХНИКИ
Система беспроводной связи может одновременно передавать множественные информационные потоки для услуг широковещательной, многоадресной, одноадресной передачи. Информационный поток является потоком данных, которые могут быть независимо приняты устройством беспроводной связи. Широковещательную передачу посылают на все устройства беспроводной связи в пределах зоны обслуживания, многоадресную передачу посылают на группу устройств беспроводной связи и одноадресную передачу посылают на конкретное устройство беспроводной связи. Например, базовая станция может передавать ряд потоков данных для мультимедийных (например, телевизионных) программ через наземную линию радиосвязи для приема данных посредством устройств беспроводной связи в пределах зоны обслуживания базовой станции.
Устройство беспроводной связи может принимать только одну из мультимедийных программ, передаваемых базовой станцией, в любой заданный момент времени. Чтобы принимать эту программу, устройство беспроводной связи идентифицирует все потоки данных, передаваемые базовой станцией для программы, определяет подходящие параметры для каждого интересующего потока (например, как и где каждый поток данных передают), декодирует каждый поток данных в соответствии с этими параметрами и дополнительно обрабатывает каждый декодированный поток данных, чтобы сформировать выходные данные, подходящие для представления пользователю. Устройство беспроводной связи непрерывно декодирует потоки данных для выбранной программы и обеспечивает декодированные данные способом потоковой передачи до тех пор, пока программа является выбранной для приема.
Если пользователь выбирает другую мультимедийную программу для приема, то устройство беспроводной связи обычно должно выполнить ряд задач для того, чтобы получить (приобрести), декодировать и визуально воспроизвести новую программу. Эти задачи могут включать в себя завершение декодирования и обработки текущей программы, идентификацию всех потоков данных, передаваемых базовой станцией для новой программы, определение подходящих параметров для каждого потока данных, предназначенного для новой программы, и декодирование каждого нового потока данных в соответствии с его параметрами.
Устройство беспроводной связи может "замораживать" (т.е. вызывать приостановку) визуального воспроизведения последним декодированным кадром для старой программы или "гасить" визуальное воспроизведение синим или черным фоном в течение времени, в которое устройство выполняет задачи для новой программы. Время, необходимое для получения и декодирования новой программы, может быть относительно длительным (например, свыше 1 секунды) для некоторых систем беспроводной связи. В этом случае, «замораживание» или гашение визуального воспроизведения в течение полной продолжительности времени может оказываться "раздражающим" для пользователя.
Следовательно, в области техники имеется потребность для более совершенных способов переключения приема между мультимедийными программами.
КРАТКОЕ ОПИСАНИЕ СУЩНОСТИ ИЗОБРЕТЕНИЯ
В документе описаны способы плавного переключения приема между мультимедийными программами/потоками. Эти способы могут обеспечивать лучшее впечатление пользователя в отношении программных переключений и более высокую скорость получения в некоторых случаях. Эти способы включают в себя «продолженное декодирование» выбранной в данный момент программы, «предварительное декодирование» ожидаемой программы и передачу видео и аудио с компенсацией времени.
Для продолженного декодирования устройство беспроводной связи продолжает принимать, декодировать, осуществлять декомпрессию и (необязательно) визуально воспроизводить текущую программу, даже после того, как была выбрана новая программа, до тех пор, пока не получена служебная информация, необходимая для приема и декодирования новой программы. В контексте обработки потоковой передачи «декодирование» относится к физическому уровню обработки, выполняемой приемником, или канальному декодированию, и «декомпрессия» относится к более высокому уровню обработки, выполняемой приемником, или декодированию источника (например, декомпрессия видео и аудио). После получения служебной информации устройство беспроводной связи декодирует новую программу, но продолжает осуществлять декомпрессию текущей программы с помощью декодированных данных, полученных предварительно для текущей программы. Устройство беспроводной связи затем осуществляет декомпрессию новой программы после завершения декодирования этой программы. Если текущую и новую программу передают с помощью многоуровневого кодирования (что не является необходимым условием), то переход между этими двумя программами может быть осуществлен более плавно, как описано ниже.
Для предварительного декодирования устройство беспроводной связи принимает пользовательскую входную информацию и идентифицирует программу с потенциальными возможностями для пользовательского выбора. Пользовательская входная информация может соответствовать вызову указателя программ, навигации пользователя по указателю программ, нажатию клавиши на блоке дистанционного управления, и так далее. Идентифицированная программа может быть той, которая выделена согласно пользовательской входной информации, или программой, ожидаемой, чтобы быть выбранной на основании пользовательской входной информации. Устройство беспроводной связи инициирует декодирование идентифицированной программы прежде ее выбора, так что программа может быть декомпрессирована и визуально воспроизведена в течение более краткого времени, если ее впоследствии выбирают. Устройство беспроводной связи может также выполнять некоторые задачи (например, непрерывно принимать служебную информацию) в ожидании пользовательского выбора новой программы с тем, чтобы эта программа могла быть декодирована, декомпрессирована и визуально воспроизведена ранее.
Для передачи с компенсацией времени базовая станция передает видео и аудио для программы таким способом, чтобы учитывать разность между задержкой обработки аудио и задержкой обработки видео в устройстве беспроводной связи. Если задержка обработки видео является на ΔD более длительной, чем задержка обработки аудио, то базовая станция может передавать видео раньше на ΔD. Устройство беспроводной связи затем способно принимать, декодировать, осуществлять декомпрессию и представлять аудио и видео с малой буферизацией или без нее при достижении надлежащей синхронизации по времени для видео и аудио. Это дает возможность устройству беспроводной связи представлять аудио ранее в течение смены программы, поскольку его задержка обработки является более короткой, и таким образом обеспечивать более быструю реакцию на изменение программы.
Способы, описанные в документе, могут применяться индивидуально или в комбинации. Различные аспекты и варианты осуществления изобретения описаны ниже с дополнительными подробностями.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Признаки и существо настоящего изобретения будут более очевидны из сформулированного ниже подробного описания при рассмотрении вместе с чертежами, на которых одинаковые номера позиций осуществляют соответственную идентификацию по всему документу и на которых:
Фиг.1 - блок-схема базовой станции и устройства беспроводной связи;
Фиг.2 - примерная структура супер-кадра;
Фиг.3 - иллюстрация передачи потока данных по каналу данных;
Фиг.4 - процессор передачи (TX) данных в базовой станции;
Фиг.5 - процессор приема (RX) данных в устройстве беспроводной связи;
Фиг.6 - временная диаграмма переключения приема от программы A на программу B;
Фиг.7 - временная диаграмма для переключения приема от программы A на программу B при многоуровневом кодировании, используемом для обеих программ;
Фиг.8 - процесс переключения приема от программы A на программу B;
Фиг.9 - примерный экран дисплея;
Фиг.10 - примерная таблица, поддерживаемая для указателя программ;
Фиг.11 - процесс переключения приема между программами с помощью предварительного декодирования;
Фиг.12 - синхронизированная передача видео и аудио; и
Фиг.13 - передача видео и аудио с компенсацией времени.
ПОДРОБНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ
Слово "примерный" используется в документе, чтобы означать "используемый в качестве примера, экземпляра или иллюстрации". Любой вариант осуществления или конструктивного решения, описанный в документе в качестве "примерного", не должен обязательно рассматриваться как предпочтительный или преимущественный над другими вариантами осуществления или конструктивными решениями.
Способы, описанные в документе для плавного переключения приема между мультимедийными потоками, могут использоваться для систем беспроводной и проводной связи, для систем мультиплексной передачи (TDM) с временным разделением, мультиплексной передачи (FDM) с частотным разделением, и мультиплексной передачи (CDM) с кодовым разделением, и для систем с одной несущей и с несколькими несущими. Несколько несущих могут быть обеспечены посредством мультиплексирования (OFDM) с ортогональным частотным разделением сигналов, некоторыми другими способами модуляции с несколькими несущими, или некоторым другим конструктивным компонентом. Способы, описанные в документе, также могут использоваться для услуг широковещательной, многоадресной и одноадресной передачи. Для ясности, эти способы описаны ниже для примерной системы беспроводной связи с применением конкретной схемы каскадного кодирования, конкретной структуры кадра и конкретной схемы передачи.
На Фиг.1 показана блок-схема базовой станции 110 и устройства 150 беспроводной связи в системе 100 беспроводной связи. Базовая станция 110 является обычно стационарной станцией и также может быть именуемой приемопередатчиком (BTS) базовой станции, точкой доступа, передатчиком или некоторой другой терминологией. Устройство 150 беспроводной связи также может быть портативным устройством таким, как сотовый телефон, переносное устройство, модулем беспроводной связи, персональным цифровым ассистентом (PDA), и так далее.
В базовой станции 110 процессор 120 передачи данных (TX-процессор) принимает множество (T) потоков данных (или данные "трафика") от источников 112 данных и обрабатывает (например, сжимает, кодирует, перемежает и устанавливает соответствие символов) каждый поток данных, чтобы сформировать символы данных. Как используется в документе, "символ данных" является символом модуляции для данных трафика, "символ пилот-сигнала" является символом модуляции для пилот-сигнала (который является данными, априорно известным и базовой станции, и устройству беспроводной связи), и символ модуляции является сложным значением для знака (позиции) в комбинации сигнала для схемы модуляции (например, М-PSK, М-QAM и так далее). Мультиплексор (Mux)/модулятор 130 принимает и мультиплексирует символы данных для всех потоков данных вместе с символами пилот-сигнала и формирует составной (комбинированный) поток символов. Модулятор 130 выполняет модуляцию на составном потоке символов и формирует поток выборок (дискрет) данных. Блок 132 передатчика (TMTR) преобразовывает поток выборок данных в аналоговые сигналы и дополнительно приводит в определенное состояние (например, усиливает, фильтрует и преобразует с повышением по частоте) аналоговые сигналы, чтобы сформировать модулированный сигнал. Базовая станция 110 затем передает модулированный сигнал от антенны 134 на устройства беспроводной связи в системе.
В устройстве 150 беспроводной связи переданный сигнал от базовой станции 110 принимает антенна 152 и подает на блок 154 приемника (RCVR). Блок 154 приемника приводит в рабочее состояние (например, фильтрует, усиливает, преобразует с понижением частоты, и представляет в цифровой форме) принятый сигнал и обеспечивает поток входных выборок. Демодулятор/демультиплексор (Demod/Demux) 160 выполняет демодуляцию на входных выборках, чтобы получить принятые символы для одного или нескольких представляющих интерес потоков данных (например, всех потоков данных для выбранной мультимедийной программы). Демодулятор 160 затем выполняет детектирование (например, коррекцию или согласованную фильтрацию) на принятых символах, чтобы получить детектированные символы данных, которые являются оценками символов данных, посланных базовой станцией 110. Процессор 170 приема (RX) данных (RX процессор) обрабатывает (например, осуществляет обратное преобразование, обращенное перемежение и декодирование символов) детектированные символы данных для каждого выбранного потока данных и обеспечивает выходные данные для этого потока. Обработка посредством демодулятора 160 и RX процессора 170 данных является взаимодополняющей для обработки посредством модулятора 130 и TX процессора 120 данных соответственно в базовой станции 110. Процессор 180 пост-обработки обрабатывает (например, преобразует в аналоговые, фильтрует и усиливает) выходные данные для выбранных потоков данных и формирует выходные сигналы, подходящие для представления на электронном устройстве 182 вывода на экран (например, жидкокристаллический дисплей (ЖКИ, LCD)), аудиоустройстве 184 (например, громкоговорителе), и/или других устройствах вывода.
Контроллеры 140 и 190 управляют действием в базовой станции 110 и устройстве 150 беспроводной связи соответственно. Запоминающие устройства 142 и 192 обеспечивают хранение программных кодов и данных, используемых контроллерами 140 и 190, соответственно. Контроллер 140 или планировщик 144 могут распределять ресурсы для потоков данных, передаваемых базовой станцией 110.
Базовая станция 110 может передавать T потоков данных для мультимедийных (например, телевизионных) программ и для мультимедийного содержимого, такого как видео, аудио, телетекст, данные, видео/аудио фрагменты, и так далее. Одиночная мультимедийная программа может быть передана в виде многих потоков данных, например, трех отдельных потоков данных для видео, аудио и данных. Это дает возможность устройству беспроводной связи независимо принимать порции видео, аудио и данных для мультимедийных программ. Одиночная мультимедийная программа также может иметь множественные потоки аудио данных, например, предназначенные для различных языков. Для простоты, в нижеследующем описании предполагается, что каждый поток данных посылают по отдельному каналу данных, который также называют мультиплексным логическим каналом (МЛК, MLC). В этом случае имеется взаимно однозначная взаимосвязь между потоками данных и каналами MLC. Обычно, каждый MLC/канал данных может переносить (транспортировать) любое число потоков данных. Базовая станция 110 может передавать потоки данных с использованием различных схем передачи, одна из которых описана ниже.
На Фиг.2 показана примерная структура 200 супер-кадра, которая может быть использована для системы 100. Данные трафика могут быть передаваемыми в супер-кадрах, причем каждый супер-кадр 210 имеет заранее установленную длительность времени (например, приблизительно 1 секунда). Супер-кадр также может быть обозначаемым как кадр, элементарный временной интервал, или некоторой другой терминологией. Для варианта осуществления, показанного на Фиг.2, каждый супер-кадр 210 включает в себя поле 220, предназначенное для пилот-сигнала, поле 230 для одного или нескольких символов (ССИ, OIS) служебной/управляющей информации, и поле 240 для данных трафика. Устройства беспроводной связи могут использовать пилот-сигнал для синхронизации (например, обнаружение кадра, оценка ошибок по частоте и вхождение в синхронизм) и возможно для оценки канала. Служебная информация может указывать различные параметры для T передаваемых потоков данных (например, частотно-временное положение каждого потока данных в пределах супер-кадра). T потоков данных являются посылаемыми в поле 240. Для варианта осуществления, показанного на Фиг.2, поле 240 дополнительно разделено на четыре равно-размерных кадра 242a-242d, чтобы содействовать передаче данных. В целом, супер-кадр может иметь любую длительность времени и может включать в себя любое количество полей и кадров. Пилотную и служебную информацию также можно посылать другими способами, отличными от показанного на Фиг.2.
На Фиг.3 проиллюстрирована примерная передача потока данных по MLC. Поток данных обрабатывают в виде блоков данных. М блоков данных могут быть переданными по MLC в каждом супер-кадре, причем M≥0 и может изменяться от супер-кадра к супер-кадру. Каждый блок данных содержит конкретное число информационных битов и для формирования блока кода является кодируемым отдельно с помощью внешнего кода. Каждый блок кода затем разбивают на четыре подблока, и каждый подблок кодируют с помощью внутреннего кода и модулируют (то есть отображают на символы модуляции) на основании "режима", выбранного для MLC. Режим может указывать внутреннюю кодовую скорость и схему модуляции, используемую для MLC. Четыре подблока символов модуляции для каждого блока кода передают в четырех кадрах одного супер-кадра, один подблок на один кадр, чтобы достигать временного разнесения и характеристики надежного приема. Для каждого кадра, М подблоков для М блоков кода передают в порции кадра, который был распределен на MLC.
Каждый MLC может передаваться непрерывно или прерывисто, в зависимости от типа потока данных, переносимого этим MLC, и, возможно, других факторов. Для каждого супер-кадра "активным" MLC является MLC, передаваемый в этом супер-кадре. Каждый активный MLC может переносить один или несколько блоков данных в супер-кадре. Чтобы упростить распределение и выделение ресурсов, каждому активному MLC предоставляют одинаковое задание ресурса (например, одинаковое частотно-временное положение) для четырех кадров, как показано на Фиг.3.
Возвращаясь к Фиг.2, OIS для каждого супер-кадра может нести "составную" служебную информацию для всех активных MLC, посылаемых в этом супер-кадре. Составная служебная информация передает подходящие параметры для каждого активного MLC (например, частотно-временное положение MLC в супер-кадре). Кроме того, каждый MLC может нести "вложенную" служебную информацию, относящуюся к передаче этого MLC в следующем супер-кадре. Вложенная служебная информация дает возможность устройству беспроводной связи восстанавливать передачу MLC в следующем супер-кадре без необходимости проверки OIS, посланной в этом супер-кадре. Устройства беспроводной связи могут сначала использовать составную служебную информацию в (составе) OIS, чтобы определить частотно-временное положение каждого интересующего потока данных, и впоследствии могут использовать вложенную служебную информацию, чтобы включать питание только в течение времени, в которое поток данных передают. Скорость внешнего кода и режим, используемый для каждого MLC, могут быть посланы в OIS или по отдельному каналу управления. Для ясности в нижеследующем описании полагают, что OIS для каждого супер-кадра несет все параметры, необходимые для приема каждого MLC, посылаемого в этом супер-кадре.
На Фиг.4 показана блок-схема варианта осуществления процессора 120 данных TX в базовой станции 110. Для простоты на Фиг.4 показана обработка видео и аудио для одной мультимедийной программы. На Фиг.4 также показано использование "многоуровневого" кодирования, посредством чего поток данных посылают в виде двух подпотоков, которые называют основным потоком и потоком расширения. Основной поток может нести основную информацию для всех устройств беспроводной связи, и поток расширения может нести дополнительную информацию для устройств беспроводной связи, наблюдающих лучшие условия канала. При многоуровневом кодировании основной поток и поток расширения кодируют и модулируют отдельно, чтобы сформировать два потока символов модуляции, которые затем объединяют, чтобы получить один поток символов данных.
В пределах TX процессора данных 120 кодер 410 видеоданных для порции видео принимает и сжимает поток  видеоданных мультимедийной программы и для порции видео обеспечивает основной поток  и поток расширения  Кодер 410 видео может осуществлять стандарт MPEG-2 (стандарт сжатия движущегося изображения и звука Экспертной группы по вопросам движущегося изображения) и может формировать последовательность кадров с внутренним кодированием (I), прямых прогнозируемых (P) кадров, и двунаправленных прогнозируемых (B) кадров для потока видео данных. Основной поток  может нести кадры и I, и P, а поток расширения  может нести кадры B и, возможно, P. В общем, кодер 410 видео может осуществлять любую схему сжатия видео, и основной поток и поток расширения могут нести любой тип и комбинацию кадров.
TX процессор 420 основного потока принимает и обрабатывает основной поток  видео. В пределах процессора 420 внешний кодер/перемежитель 422 кодирует каждый блок данных в основном потоке видео и формирует блок кода. Каждый блок данных содержит K пакетов данных и может быть внешним кодированным (с внешним кодированием), например, с помощью кода (N, K) Рида-Соломона (Reed-Solomon), для формирования блока кода с N внешними кодированными пакетами. Например, блок данных с 12 пакетами данных может быть внешним кодированным с помощью кода Рида-Соломона со скоростью 3/4, чтобы сформировать блок кода с 16 внешними кодированными пакетами. Внешний кодер 422 также формирует и добавляет к каждому внешнему кодированному пакету значение циклического избыточного кода (ЦИК, CRC), используемое для выявления ошибок (то есть определения, является ли пакет декодирован корректно или с ошибкой). Перемежитель 422 разбивает каждый блок кода на четыре подблока для четырех кадров и дополнительно перемежает (то есть переупорядочивает) внешние кодированные пакеты для каждого кадра. Внутренний кодер/перемежитель 424 кодирует каждый внешний кодированный пакет с помощью, например, турбо-кода, чтобы сформировать внутренний кодированный пакет (с внутренним кодированием). Перемежитель 424 перемежает биты в каждом внутреннем кодированном пакете, чтобы сформировать перемеженный пакет. Блок 426 отображения символов отображает биты из перемежителя 424 на символы модуляции на основании схемы модуляции (например, QPSK или 16-QAM), выбранной для потока видео данных, и обеспечивает первый поток символов модуляции  для основного потока видео.
bs
es
bs
es
TX процессор 430 потока расширения обрабатывает поток расширения  видео и обеспечивает второй поток символов модуляции . Процессор 430 может использовать одинаковые или различные внешний код, внутренний код и схему модуляции, используемые процессором 420 для основного потока. Объединитель 440 принимает и масштабирует первый и второй потоки символов модуляции с помощью коэффициентов усиления G и G соответственно, и объединяет масштабированные потоки символов модуляции, чтобы сформировать поток  символов данных для порции видео. Коэффициенты усиления G и Gопределяют величины мощности передачи (и таким образом, зон обслуживания) соответственно для основного потока и потока расширения. Если многоуровневое кодирование не используют, то кодер 410 видео обеспечивает один поток  данных, процессор 420 кодирует этот поток данных, чтобы сформировать поток  символов данных, и процессор 430 и объединитель 440 не являются необходимыми.
Кодер 450 аудио принимает и кодирует поток  данных аудио для порции аудио мультимедийной программы и обеспечивает основной поток  и поток  расширения для порции аудио. Кодер 450 аудио может осуществлять любую схему сжатия аудио. Основной поток  может транспортировать аудио (например, влево плюс вправо, или L+R) в режиме «моно» и поток  расширения может транспортировать аудио (например, влево минус вправо, или L-R) в режиме «стерео».
TX процессор 460 основного потока принимает и обрабатывает основной поток  аудио и обеспечивает первый поток  символов модуляции для основного потока аудио. В пределах процессора 460 блоки данных для основного потока аудио кодируют внешним кодом и перемежают внешним кодером/перемежителем 462, дополнительно кодируют внутренним кодом и перемежают внутренним кодером/перемежителем 464, и отображают на символы модуляции посредством блока 466 отображения символов. TX процессор 470 потока расширения обрабатывает поток  расширения аудио и обеспечивает второй поток  символов модуляции. Объединитель 480 принимает, масштабирует и объединяет потоки символов модуляции  и  и формирует поток символов данных  для порции аудио. Если многоуровневое кодирование не используют, то кодер 450 аудио обеспечивает один поток  данных, процессор 460 кодирует этот поток данных, чтобы сформировать поток  символов данных, и процессор 470 и объединитель 480 не являются необходимыми.
Кодер 410 видео и кодер 450 аудио выполняют обработку более высокого уровня (или "сжатие") для потоков данных. Процессоры 420, 430, 460 и 470 и объединители 440 и 480 выполняют обработку физического уровня (или "кодирование") для потоков данных. Другие потоки данных для других мультимедийных программ и/или другого содержимого могут быть сжаты и кодированы способом, подобным показанному на Фиг.4.
На Фиг.5 показана блок-схема варианта осуществления RX процессора 170 данных в устройстве 150 беспроводной связи. Для простоты на Фиг.5 показана обработка видео и аудио для одной мультимедийной программы. В пределах RX процессора 170 данных RX процессор 520 основного потока и RX процессор 530 потока расширения принимает от демодулятора 160 поток  детектированных символов данных, который является оценкой потока  символов данных для порции видео. В пределах процессора 520 блок 522 обратного преобразования символа осуществляет обратное преобразование детектированных символов данных и обеспечивает детектированные биты, что может быть представлено в виде логарифмических отношений (LLR) правдоподобия. Блок 522 может быть частью демодулятора 160, а не RX процессора 170 данных. Внутренний обращенный перемежитель/декодер 524 осуществляет обращенное перемежение и декодирует детектированные биты для каждого пакета на основании внутреннего кода и обеспечивает внутренний декодированный пакет. Декодер 524 также проверяет каждый внутренний декодированный пакет с помощью значения CRC, добавленного к пакету. Внешний обращенный перемежитель/декодер 526 осуществляет обращенное перемежение внутренних декодированных пакетов для каждого кадра. Если какой-либо пакет в заданном блоке кода является декодированным с ошибкой, то декодер 526 выполняет внешнее декодирование на N внутренних декодированных пакетах для этого блока кода на основании, например, кода (N, K) Рида-Соломона, и обеспечивает K внешних декодированных пакетов для блока кода. Внешнее декодирование можно пропустить, если в блоке кода нет пакетов, внутренне декодированных с ошибкой. Процессор 520 обеспечивает декодированный основной поток  видео.
Процессор 530 обрабатывает поток  детектированных символов данных и обеспечивает декодированный поток  расширения для видео. Декодер 540 видео принимает декодированные основной поток и поток расширения, выполняет декомпрессию видео взаимно дополняющим образом по отношению к сжатию видео, выполняемому в базовой станции, и обеспечивает декомпрессированный поток буфера 542 видео  данных видео. Мультиплексор 544 принимает декомпрессированный поток  данных видео и вспомогательный поток  видео их буфера 542 видео и обеспечивает либо поток  либо  в качестве потока  выходных данных. Буфер 542 видео может хранить предварительно записанные видеофрагменты, графические знаки, рекламные объявления, текстовые сообщения, и так далее. Например, содержимое из буфера 542 видео может быть визуально воспроизводимым между изменениями программ, чтобы подавать пользователю указание, что продолжается получение новой программы.
RX процессор 560 основного потока и RX процессор 570 потока расширения принимает поток  детектированных символов данных, который является оценкой потока  символов данных для порции аудио мультимедийной программы. В пределах процессора 560 блок 562 обратного преобразования символов осуществляет обратное преобразование детектированных символов данных и обеспечивает детектированные биты. Блок 562 может быть частью демодулятора 160, а не RX процессора 170 данных. Внутренний обращенный перемежитель/декодер 564 осуществляет обращенное перемежение и декодирует детектированные биты для каждого пакета и обеспечивает внутренний декодированный пакет. Декодер 564 также проверяет каждый внутренний декодированный пакет с помощью значения CRC, добавленного к пакету. Внешний обращенный перемежитель/декодер 566 осуществляет обращенное перемежение внутренних декодированных пакетов для каждого кадра. Для каждого блока кода, с наличием по меньшей мере одной ошибки пакета, декодер 566 выполняет внешнее декодирование на внутренних декодированных пакетах для этого блока кода и обеспечивает внешние декодированные пакеты. Процессор 560 обеспечивает декодированный основной поток  аудио.
Процессор 570 обрабатывает поток  детектированных символов данных и обеспечивает декодированный поток  расширения аудио. Декодер 580 аудио принимает и осуществляет декомпрессию декодированных потоков основного и расширения взаимно дополняющим образом по отношению к сжатию аудио, выполняемому в базовой станции, и обеспечивает декомпрессированный поток  данных аудио. Мультиплексор 584 принимает декомпрессированный поток  данных аудио и вспомогательный поток  аудио из буфера 582 аудио и обеспечивает либо поток  либо  в качестве потока  выходных данных. Буфер 582 аудио может хранить предварительно записанные фрагменты аудио, рекламные объявления, и так далее.
Процессоры 520, 530, 560 и 570 осуществляют физический уровень выполняемой приемником обработки (или "декодирование") потоков данных. Декодер 540 видео и декодер 580 аудио осуществляют более высокий уровень выполняемой приемником обработки (или "декомпрессию") для потоков данных. Другие потоки данных для других мультимедийных программ и/или другого содержимого могут быть декодированы и декомпрессированы способом, подобным показанному на Фиг.5.
1. Продолженное декодирование
1
На Фиг.6 показана временная диаграмма для плавного переключения приема от текущей мультимедийной программы A на новую мультимедийную программу B. Первоначально в супер-кадре n устройство беспроводной связи декодирует, осуществляет декомпрессию и визуально воспроизводит программу A. Во время T пользователь выбирает новую программу B. В это время устройство беспроводной связи не имеет служебной информации, необходимой для декодирования программы B. Вместо фиксирования или гашения визуального воспроизведения устройство беспроводной связи продолжает декодировать, осуществлять декомпрессию и (необязательно) визуально воспроизводить программу A в супер-кадре n.
2
Во время T, которое является началом следующего супер-кадра n+1, устройство беспроводной связи принимает OIS для этого супер-кадра и принимает служебную информацию для программы B. Устройство беспроводной связи имеет возможность начать декодирование программы B в супер-кадре n+1 с помощью этой служебной информации. Устройство беспроводной связи продолжает декомпрессию программы A в супер-кадре n+1 с помощью декодированных данных, принятых в предшествующем супер-кадре n для программы A.
3
3
Во время T устройство беспроводной связи завершает декодирование программы B для супер-кадра n+1. Если программа B использует код Рида-Соломона со скоростью 3/4, и пакеты проверки четности для каждого блока кода посылают в кадре 4, то устройство беспроводной связи может восстановить все блоки кода для программы B в кадре 3, если нет пакетов внутренне декодированных с ошибкой, как показано на Фиг.6. Устройство беспроводной связи может начинать декомпрессию программы B ранее в супер-кадре n+1 после завершения декодирования программы (например, во время T, как показано на Фиг.6). Устройство беспроводной связи также может начинать декомпрессию программы B ранее, после получения достаточных декодированных данных (например, кадра I) для программы B. Устройство беспроводной связи может, таким образом, начинать декомпрессию программы B ранее в течение супер-кадра n+1. В качестве альтернативы, устройство беспроводной связи может начинать декомпрессию программы B в начале следующего супер-кадра n+2 (не показано на Фиг.6).
1
3
Промежуток времени между T и T можно рассматривать для новой программы B в качестве времени получения. Время получения является переменным и зависит от того, когда принят пользовательский выбор относительно следующей OIS и когда инициирована декомпрессия программы B. Это время получения может быть относительно длительным, если OIS посылают редко (например, каждую 1 секунду) и/или если задержка декодирования является длительной. Продолженное декодирование, декомпрессия и (необязательно) визуальное представление программы A в течение времени получения могут обеспечивать лучшее пользовательское впечатление, чем фиксирование или гашение визуального воспроизведения в течение полного времени получения.
1
На Фиг.7 показана временная диаграмма для плавного переключения приема от текущей мультимедийной программы A на новую мультимедийную программу B с помощью многоуровневого кодирования, используемого для обеих программ. Первоначально в супер-кадре n устройство беспроводной связи декодирует, осуществляет декомпрессию и представляет визуально потоки (BS & ES) основной и расширения для программы A. Во время Т пользователь выбирает новую программу B. Поскольку устройство беспроводной связи не имеет служебной информации для декодирования программы B в это время, устройство беспроводной связи продолжает декодировать, осуществлять декомпрессию и (необязательно) визуально воспроизводить программу A в супер-кадре n.
2
Во время T устройство беспроводной связи принимает OIS для следующего супер-кадра n+1 и принимает служебную информацию для программы B. В супер-кадре n+1 устройство беспроводной связи продолжает декодировать основной поток для программы A (например, используя процессоры 520 и 560 по Фиг.5) и начинает декодировать основной поток для программы B (например, используя процессоры 530 и 570 по Фиг.5, которые обычно используются для потока расширения, но также могут быть настроены с возможностью обработки основного потока). Устройство беспроводной связи также продолжает декомпрессию основного потока (или и основного, и потока расширения) для программы A в супер-кадре n+1 с помощью декодированных данных, принятых для программы A в предшествующем супер-кадре n.
3
3
5
5
Во время T устройство беспроводной связи завершает декодирование основного потока для программы B. Устройство беспроводной связи может начинать декомпрессию программы B ранее в супер-кадре n+1 (например, во время T, как показано на Фиг.7) или в начале следующего супер-кадра n+2. В супер-кадре n+2 устройство беспроводной связи заканчивает декодирование программы A и выполняет декодирование потоков основного и расширения для программы B. Устройство беспроводной связи также осуществляет декомпрессию основного потока для программы B с помощью декодированных данных, принятых для этого основного потока в предшествующем супер-кадре n+1. Во время T являются доступными декодированные данные для потока расширения для программы B. Устройство беспроводной связи может начинать ранее декомпрессию потоков и основного, и расширения для программы B (например, во время T, как показано на Фиг.7) или в начале следующего супер-кадра n+3.
Как показано на Фиг.7, переход от текущей программы A на новую программу B может быть осуществлен "более плавно", если обе программы передают с использованием многоуровневого кодирования. Устройство беспроводной связи может быть переключаемым от программы A на программу B постадийно. Устройство беспроводной связи принимает потоки и основной, и расширения для программы A на первой стадии, затем основной поток для программы A на второй стадии, затем основной поток для программы B на третьей стадии, затем и основной поток, и поток расширения для программы B на четвертой стадии. Одна или несколько стадий могут быть опущены, например, если программу A или B не передают с помощью многоуровневого кодирования, если переключение выполняют в небольшом числе супер-кадров (как показано на Фиг.7), и так далее.
На Фиг.8 показана схема последовательности операций процесса 800, предназначенного для переключения приема от текущей мультимедийной программы A на новую мультимедийную программу B. Устройство беспроводной связи принимает, декодирует, осуществляет декомпрессию и визуально воспроизводит текущую программу A (этап 810). Устройство беспроводной связи принимает пользовательский выбор новой программы B (этап 812). Устройство беспроводной связи продолжает декодировать, осуществлять декомпрессию и (необязательно) визуально воспроизводить текущую программу A (этап 814), пока не будет доступной служебная информация для новой программы B, как определяют на этапе 816. В это время устройство беспроводной связи декодирует новую программу B, но продолжает декомпрессию и (необязательно) визуальное воспроизведение текущей программы A (этап 818). Как только новая программа B декодирована, как определяют на этапе 820, устройство беспроводной связи декодирует, осуществляет декомпрессию и визуально воспроизводит новую программу B (этап 822).
2. Предварительное декодирование
В описании выше для "продолженного декодирования" предполагают, что устройство беспроводной связи не имеет информации для изменения программы прежде пользовательского выбора новой программы. Если это так, то устройство беспроводной связи начинает декодировать новую программу после получения пользовательского выбора. Однако, во многих случаях, устройство беспроводной связи содержит информацию относительно предшествующих действий пользователя и может использовать эту информацию, чтобы ожидать или прогнозировать будущий выбор пользователя. Устройство беспроводной связи может исполнять "предварительное" декодирование программы, до ее выбора пользователем, чтобы достичь более быстрого переключения между программами. Предварительное декодирование может быть выполнено различными способами, как описано ниже.
На Фиг.9 показан примерный экран 900 дисплея, сформированный устройством беспроводной связи. Для этого варианта осуществления экран 900 дисплея включает в себя две области 910 и 920. Область 910 показывает видео для выбранной на текущий момент мультимедийной программы. Область 920 показывает указатель программ (PG), который может быть перечнем программ, показываемых на различных программных каналах. В общем, экран 900 дисплея может включать в себя любое число областей для показа любого типа содержимого.
Пользователь может извлекать указатель программ в любое время путем щелчка по соответствующей клавише (например, по клавише "program menu" (меню программ)) на устройстве беспроводной связи или блоке дистанционного управления. Устройство беспроводной связи также может автоматически извлекать указатель программ, если пользователь осуществляет щелчок на любой из указанного набора клавиш (например, кнопке "scroll up" (прокрутка вверх) или "scroll down" (прокрутка вниз)). В любом случае, устройство беспроводной связи может управлять навигацией пользователя по указателю программ, чтобы ожидать следующий выбор программы.
Для варианта осуществления, показанного на Фиг.9, указатель программ визуально воспроизводит перечень программных каналов и программ, в текущий момент показываемых на этих каналах. Курсор 922 указывает программу, в текущий момент выделенную яркостью. Курсор 922 перемещается вверх и вниз по указателю программ в ответ на действие пользователя клавишей. Если пользователь перемещает курсор за верхнюю или нижнюю часть области 920, то извлекают другой раздел указателя программ и отображают в области 920.
На Фиг.10 показана примерная таблица 1000, поддерживаемая устройством беспроводной связи для указателя программ. Для быстрого доступа таблица 1000 может храниться в кэше внутри устройства беспроводной связи. Таблица 1000 включает в себя столбец 1012, который хранит программные каналы, столбец 1014, который хранит наименование программ, столбец 1016, который хранит MLC, используемые для передачи каждой программы, столбец 1018, который хранит подходящие параметры для каждого MLC, и столбец 1020, который хранит частотно-временное положение каждого MLC для текущего супер-кадра. Базовая станция передает информацию для столбцов 1012-1018, которая может изменяться редко, и устройство беспроводной связи обновляет эту информацию по мере необходимости. Частотно-временное положение для каждого MLC может изменяться в каждом супер-кадре. Если устройство беспроводной связи непрерывно принимает выбранную на текущий момент мультимедийную программу, то частотно-временное положение для каждого MLC, используемого для этой программы, может быть получено из вложенной служебной информации, пересылаемой по этому MLC, как описано выше. Устройство беспроводной связи не будет нуждаться в запуске и приеме OIS. В этом случае, информация в столбце 1020 будет устаревшей для всех MLC, кроме используемых для выбранной на текущий момент программы.
Если устройство беспроводной связи выявляет, что пользователь возможно изменяет программу (например, на основании активности клавиши/кнопки), то устройство беспроводной связи может начинать прием OIS в каждом супер-кадре. Устройство беспроводной связи может сохранять служебную информацию для (1) MLC, используемых для программ, визуально представляемых в области 920 для указателя программ, (2) всех MLC, посланных в текущем супер-кадре, или (3) некоторой другой группы MLC. Устройство беспроводной связи затем будет способно начать декодирование любого из этих MLC в текущем супер-кадре без необходимости ожидания OIS в следующем супер-кадре.
Устройство беспроводной связи может быть способным восстановить блок кода, посланный по данному MLC, без необходимости принимать полный блок кода. Например, если для блока кода используется код Рида-Соломона со скоростью 3/4, и блок кода разбит на четыре подблока и послан в четырех кадрах одного супер-кадра (как показано на Фиг.3), то устройство беспроводной связи может быть способным восстановить блок кода с помощью только трех из этих подблоков. Устройство беспроводной связи может быть способным восстановить блок кода посредством декодирования MLC, начиная либо в 1, либо во 2 кадре. Таким образом, если указание декодировать MLC принято в течение кадра 1, то устройство беспроводной связи может начинать декодировать этот MLC в кадре 2 и не нуждается в ожидании следующего супер-кадра.
Возвращаясь к Фиг.9, если пользователь перемещается по указателю программ, курсор 922 указывает программу, выделенную на текущий момент. Устройство беспроводной связи может начинать декодировать выделенную программу, как только становится доступной служебная информация для MLC, используемых для этой программы. Устройство беспроводной связи может одновременно декодировать на текущий момент выбранную программу и выделенную программу, если являются доступными достаточные ресурсы в устройстве, как описано выше. В одном варианте осуществления устройство беспроводной связи начинает осуществлять декомпрессию выделенной программы, как только являются доступными декодированные данные для этой программы. Устройство беспроводной связи может необязательно визуально воспроизводить эту выделенную программу после того, как она была декомпрессирована. В другом варианте осуществления устройство беспроводной связи продолжает декодировать, осуществлять декомпрессию и визуально воспроизводить выбранную на текущий момент программу до тех пор, пока пользователь не выберет выделенную программу. Для этого варианта осуществления устройство беспроводной связи использует декодированные данные для выделенной программы, чтобы быстро переключиться на эту программу при выборе пользователем.
Если многоуровневое кодирование не используется для выделенной программы, то устройство беспроводной связи может декодировать выделенную программу при декомпрессии выбранной на текущий момент программы, например, как показано на Фиг.6. Устройство беспроводной связи может осуществлять декомпрессию и визуально воспроизводить выделенную программу, как только являются доступными декодированные данные для этой программы. Если используется многоуровневое кодирование для выбранной на текущий момент программы и выделенной программы, то устройство беспроводной связи может осуществлять переключение между программами постадийно, например, как показано на Фиг.7. Устройство беспроводной связи может декодировать основные потоки для обеих программ и может осуществлять декомпрессию и визуально воспроизводить основной поток для выбранной на текущий момент программы. Устройство беспроводной связи может осуществлять декомпрессию и визуально воспроизводить основной поток для выделенной программы (1) как только являются доступными декодированные данные для этой программы и/или (2) если пользователь выбирает эту программу. Устройство беспроводной связи может декодировать, осуществлять декомпрессию и визуально воспроизводить основной поток и поток расширения для выделенной программы, если пользователь выбирает эту программу.
Если устройство беспроводной связи декодирует выделенную на текущий момент программу Y и пользователь выделяет другую программу Z, то устройство беспроводной связи завершает обработку программы Y и начинает декодировать программу Z, как только является доступной служебная информация для программы Z. Устройство беспроводной связи отслеживает навигацию пользователя по различным программам и пытается декодировать всякую программу, которая в текущий момент является выделенной. Это дает возможность устройству беспроводной связи быстро переключаться на самую последнюю выделенную программу, если она впоследствии выбрана пользователем.
Устройство беспроводной связи может выполнять предварительное декодирование выделенной программы без рассмотрения другой информации, как описано выше. Устройство беспроводной связи также может ожидать следующий пользовательский выбор на основании другой информации, такой как, например, направление прокрутки, скорость прокрутки, способ прокрутки и так далее.
Например, пользователь может постоянно нажимать кнопку "scroll up", если пользователь пытается найти конкретный программный канал, который находится относительно далеко от текущего программного канала. В этом случае, устройство беспроводной связи может игнорировать быстрое изменение выделенных программ, пока не отпущена кнопка "scroll up". Устройство беспроводной связи затем может выполнять предварительное декодирование самой последней выделенной программа после отпускания кнопки. В качестве альтернативы, устройство беспроводной связи может декодировать программу, которая находится впереди выделенной на текущий момент программы. Эта "будущая" программа может быть определена на основании направления и скорости прокрутки. Показ на экране промежуточных программ в течение быстрой прокрутки может обеспечивать пользователю хорошую обратную связь.
В качестве другого примера пользователь может осуществлять щелчок по кнопке "scroll up" с некоторой повторяющейся частотой, чтобы переключать программные каналы. В этом случае устройство беспроводной связи может декодировать, осуществлять декомпрессию и визуально воспроизводить каждую выделенную программу, для которой задано достаточное время, чтобы выполнить эти задачи. Устройство беспроводной связи также может декодировать одну или несколько программ с опережением выделенной на текущий момент программы (если являются доступными ресурсы) в ожидании навигации пользователя в этом направлении. Например, если четыре программы A, B, C и D являются упорядоченными от А до D, когда устройство беспроводной связи может начать получение программ B и C после приема «повышения номера» канала в программе A. Устройство беспроводной связи может отказаться от программы B и начать получение программ C и D после приема «повышения номера» канала в программе B. Устройство беспроводной связи может также начинать получение многих программ во многих направлениях (например, в противоположных направлениях прокрутки каналов).
Пользователь может выбирать новую программу непосредственным вводом номера ее канала с помощью цифровой клавиатуры. Устройство беспроводной связи может инициировать предварительное декодирование на основании введенных пользователем клавиш. Например, пользователь может осуществить щелчок по "3", за которой следует "8" и затем "enter" (ввод) для перехода на программный канал 38. После приема от пользователя нажатия клавиши "3" устройство беспроводной связи может начинать предварительное декодирование программного канала 3 (в ожидании выбора пользователем этого канала) и/или сохранить служебную информацию для программных каналов 30-39 (в ожидании выбора пользователем одного из этих каналов). При приеме нажатия клавиши "8" устройство беспроводной связи может начинать предварительное декодирование программного канала 38 в ожидании выбора пользователем этого канала. Приняв нажатие клавиши "enter", устройство беспроводной связи может осуществлять декомпрессию и визуально воспроизводить этот канал.
Устройство беспроводной связи также может хранить служебную информацию и/или выполнять предварительное декодирование для программ, которые являются часто посещаемыми. Например, пользователь может часто или постоянно переходить между двумя интересующими программами (например, путем щелчка по кнопке "jump" (переход). Выявив это состояние, устройство беспроводной связи может декодировать обе программы в ожидании следующего перехода. Пользователь также может осуществлять прокрутку назад и вперед в пределах небольшого диапазона программных каналов. Выявив это состояние, устройство беспроводной связи может декодировать следующую программу в ожидании следующего изменения канала в прокрутке.
В общем, устройство беспроводной связи может использовать любую подходящую информацию для предварительного декодирования программ. Различные вводы с клавиатуры (например, "scroll up", "jump", числовой номер и так далее) могут обеспечивать различную информацию, которая может быть использована устройством беспроводной связи, чтобы ожидать следующий пользовательский выбор. Устройство беспроводной связи может выполнять предварительное декодирование любой программы, ожидаемой, чтобы будет выбрана пользователем, например, выделенной на текущий момент программа, программы в направлении прокрутки и так далее.
На Фиг.11 показана схема последовательности операций процесса 1100, предназначенного для переключения приема между мультимедийными программами с помощью предварительного декодирования. Устройство беспроводной связи выявляет навигацию пользователя по программам, например, на основании действия клавиши/кнопки (этап 1112). Если выявлена навигация пользователя, как определено на этапе 1114, то устройство беспроводной связи начинает обрабатывать OIS в каждом супер-кадре и сохраняет служебную информацию для интересующих MLC (этап 1116). Например, устройство беспроводной связи может сохранять служебную информацию для всех MLC, или только для MLC, используемых для программ, визуально представленных на экране указателя программ, или для некоторой другой группы MLC.
После того, как навигация пользователя была выявлена, устройство беспроводной связи после этого осуществляет текущий контроль пользовательской входной информации (этап 1118). Если пользовательская входная информация принята, что определяют на этапе 1120, то устройство беспроводной связи определяет, соответствует ли этот пользовательская входная информация клавише выбора (переключения) канала (этап 1122). Клавиши выбора канала являются клавишами, указывающими пользовательский выбор нового программного канала и могут включать в себя клавиши "enter", "channel up" (повысить номер канала), "channel down" (понизить номер канала) и "jump". Если клавиша выбора канала не принята, то устройство беспроводной связи идентифицирует программу с учетом потенциальной возможности пользовательского выбора на основании пользовательской входной информации, принятой до этого времени (этап 1124). Эта программа может быть выделенной на текущий момент программой или программой, ожидаемой, что будет выбрана на основании вводов с цифровой и/или нецифровой клавиатуры, как описано выше. Устройство беспроводной связи начинает предварительное декодирование этой идентифицированной программы (этап 1126). Устройство беспроводной связи также может осуществлять декомпрессию и (необязательно) визуально воспроизводить программу прежде пользовательского выбора (этап 1128). В качестве альтернативы, устройство беспроводной связи может ожидать пользовательский выбор этой программы прежде осуществления декомпрессии и визуального воспроизведения программы (не показано на Фиг.11). Затем процесс возвращается на этап 1118.
Возвращаясь к этапу 1122, если принята клавиша выбора канала, то устройство беспроводной связи переключается на заново выбранную программу, которая может быть программой, идентифицированной на основании предшествующих вводов пользовательской входной информации. Устройство беспроводной связи затем декодирует, осуществляет декомпрессию и представляет визуально эту выбранную программу (этап 1130). Процесс может затем возвращаться на этап 1118 (как показано на Фиг.11) или на этап 1112.
Устройство беспроводной связи может выполнять этапы 1112- 1116 в ответ на прием первой пользовательской входной информации после интервала бездействия клавиши/кнопки. Первая пользовательская входная информация запустит также этапы 1118 и 1120 и будет соответственно обработана.
Для ясности, выше был описан выбор программы с помощью справочника-указателя программ. Программы также могут быть выбраны другими способами, например, используя другие показываемые на экране способы выбора. Например, экран дисплея может показывать одну или несколько пиктограмм, и каждая пиктограмма может представлять конкретную программу. В любом случае, устройство беспроводной связи может запускать получение (например, декодирование) программы ранее, как только программа выделена, и может осуществлять переключение на эту программу при выборе пользователем. Пользователь воспринимает более высокую скорость получения, поскольку процесс получения начинают прежде пользовательского выбора.
Способы продолженного декодирования и предварительного декодирования могут использоваться для одного или нескольких потоков данных, связанных с мультимедийными программами. Например, продолженное декодирование или предварительное декодирование могут быть выполнены только для порции/компонента аудио, или только порции видео, или порций и аудио, и видео для текущей и новой мультимедийных программ. Этапы 810, 814, 818 и 822 по Фиг.8 и этапы 1126, 1128 и 1130 по Фиг.11 таким образом могут быть выполненными для порции аудио, порции видео, или порций и аудио, и видео для текущей и новой мультимедийных программ.
Ресурсы в устройстве беспроводной связи также могут быть настроены с возможностью приема различных порций/компонентов для различных мультимедийных программ. Например, RX процессор 170 данных может одновременно декодировать и осуществлять декомпрессию порции аудио одной программы и порции видео другой программы. Это дает возможность пользователю просматривать и слушать две различные программы одновременно. Способы продолженного декодирования и предварительного декодирования дают возможность пользователю в большей степени плавно переключать порцию аудио и/или видео для этих двух программ. Например, пользователь может одновременно смотреть узкополосную передачу игры и слушать музыку. Если игра становится интересной, то пользователь может более плавно переключиться от порции музыки на порцию аудио, соответствующую игре. Пользователь также может смотреть одну игру и слушать другую игру одновременно, и может переключать видео и/или аудио на более интересную игру всякий раз, когда происходит интересное событие.
3. Передача видео и аудио с компенсацией времени
Декодеры видео и аудио в устройстве беспроводной связи требуют некоторого времени для выполнения декомпрессии видео и аудио соответственно. Базовая станция может передавать видео и аудио таким способом, чтобы усовершенствовать получение новых программ.
11
12
dec
video
audio
video
audio
audio
13
video
audio
14
На Фиг.12 показана передача видео и аудио, синхронизированных в базовой станции. Порция 1210 видео и порция 1212 аудио намечены для воспроизведения вместе и передаются базовой станцией во время Tсинхронизированными. Устройство беспроводной связи принимает порции видео и аудио, декодирует каждую порцию и завершает декодирование этих порций во время T. Для простоты на Фиг.12 показана одинаковая задержка D передачи и декодирования для порций видео и аудио. Устройство беспроводной связи затем осуществляет декомпрессию декодированных порций видео и аудио, отдельно используя декодеры видео и аудио соответственно. На Фиг.12 показана задержка D декомпрессии видео и задержка D декомпрессии аудио, причем D обычно больше D и может быть значительно больше D, например, если кадры передают вне последовательности, предназначенной для улучшенной характеристики сжатия. Тогда устройство беспроводной связи завершит декомпрессию аудио ранее во время T. Устройство беспроводной связи обычно буферизует декодированное аудио (вместо декомпрессированного аудио, которое содержит большее количество битов) согласно разности задержек декомпрессии (то есть ΔD=D-D). Эта буферизация дает возможность воспроизводить порции видео и аудио вместе, если декомпрессия видео завершена во время Т.
21
22
23
24
25
video
audio
22
21
На Фиг.13 показана передача видео и аудио с компенсацией времени, чтобы учитывать разность в задержках декомпрессии видео и аудио. Порция 1310 видео и порция 1312 аудио намечена подлежащей воспроизведению вместе, но передаются базовой станцией в различные времена T и T соответственно. Устройство беспроводной связи принимает порции видео и аудио, декодирует каждую порцию, завершает декодирование видео во время T, и завершает декодирование аудио во время T. Устройство беспроводной связи осуществляет декомпрессию порции декодированного видео и аудио отдельно и завершает декомпрессию обеих порций приблизительно во время T. Задержкой декомпрессии видео является D, и задержкой декомпрессии аудио является D, которые являются такими же, как показано на Фиг.12. Однако порция 1310 видео была передана ранее относительно порции 1312 аудио на разность задержки ΔD или ΔD=T-T.
С помощью показанной на Фиг.13 передачи с компенсацией задержки устройство беспроводной связи может воспроизводить аудио, как только оно декомпрессировано, без необходимости буферизовать аудио и ожидать завершения декомпрессии для видео. Воспроизведение аудио насколько возможно быстро (и ранее, чем видео, вследствие более краткой задержки декомпрессии) является желательной для обеспечения более быстрой реакции на изменение программы. Время реакции для передачи с компенсацией времени по Фиг.13 является более быстрым, чем время реакции для синхронизированной передачи по Фиг.12, на разность задержки ΔD. Поскольку аудио несет существенную информацию для многих программ таких, как новости, сводка погоды, и так далее, пользователь может пользоваться аудио даже без видео.
Различные способы для плавного переключения приема (например, продолженное декодирование, предварительное декодирование, постадийное переключение с использованием основного потока и потока расширения, и передача видео и аудио с компенсацией времени) могут применяться по отдельности. Эти способы также могут применяться в разнообразных различных комбинациях. Например, предварительное декодирование может выполняться в комбинации с переключением по стадиям, как описано выше.
Способы плавного переключения приема, описанные в документе, могут быть осуществлены различными средствами. Например, эти способы могут быть осуществлены в виде аппаратных средств программного обеспечения или их комбинации. Для осуществления аппаратными средствами блоки обработки, используемые для поддержки или выполнения плавного переключения приема, могут быть реализованы в рамках одной или нескольких специализированных интегральных схем (ASIC), цифровых сигнальных процессоров (DSP), устройств (DSPD) цифровой обработки сигналов, программируемых логических устройств (ПЛУ, PLD) обработки цифровых сигналов, программируемых вентильных матриц (FPGA), процессоров, контроллеров, микроконтроллеров, микропроцессоров, других электронных модулей, предназначенных для исполнения описанных в документе функций, или их комбинации.
Для программного осуществления способы, описанные в документе, могут быть реализованы с помощью модулей (например, процедур, функций и так далее), которые выполняют функции, описанные в документе. Программные коды могут храниться в запоминающем устройстве (например, запоминающих устройствах 142 или 192 по Фиг.1) и быть исполняемыми процессором (например, контроллерами 140 или 190). Запоминающее устройство может быть осуществлено в пределах процессора или быть внешним по отношению к процессору, в каком случае оно может быть коммуникативно соединено с процессором с помощью различных средств, известных в области техники.
Заголовки включены в документ для ссылки и содействия в определении положения некоторых разделов. Эти заголовки не подразумевают ограничения объема описанных под ними идей изобретения, и эти идеи могут иметь применимость в других разделах по всему полному описанию изобретения.
Предшествующее описание раскрытых вариантов осуществления представлено, чтобы дать возможность любому специалисту в данной области техники создавать или использовать настоящее изобретение. Различные модификации этих вариантов осуществления будут очевидны специалистам в данной области техники, и родовые принципы, определенные в документе, могут применяться для других вариантов осуществления без выхода за рамки объема или существа изобретения. Таким образом, настоящее изобретение не подразумевает являться ограниченным вариантами осуществления, показанными в документе, но должно соответствовать самым широким рамкам, совместимым с принципами и новыми признаками, раскрытыми в документе.