СПОСОБ И СИСТЕМА АДАПТИВНОГО КОДИРОВАНИЯ ИНФОРМАЦИИ В РЕЖИМЕ РЕАЛЬНОГО ВРЕМЕНИ В БЕСПРОВОДНЫХ СЕТЯХ
METHOD AND SYSTEM FOR ADAPTIVE INFORMATION CODING IN REAL TIME MODE IN WIRELESS NETWORKS

Уровень техники
Испрашивание приоритета
В настоящем изобретении испрашивается приоритет в соответствии с предварительной заявкой на патент США № 60/729017 под названием "METHODS AND SYSTEMS FOR ADAPTIVE REALTIME INFORMATION ENCODING IN WIRELESS COMMUNICATIONS," поданной 21 октября 2005 г., и права на которую принадлежат заявителю настоящего изобретения, и тем самым явно приведенной здесь в качестве ссылочного материала.
Область техники, к которой относится изобретение
Данное раскрытие, в общем, относится к беспроводной связи. Более конкретно, раскрытые здесь варианты воплощения относятся к обеспечению адаптивного кодирования информации в режиме реального времени в беспроводной системе связи с пакетной коммутацией.
Описание предшествующего уровня техники
Системы беспроводной связи часто разворачивают для обеспечения различных типов связи (такой как голосовая связь и передача данных) для множества пользователей. Такие системы могут быть основаны на многостанционном доступе с кодовым разделением (CDMA, МДКР), многостанционном доступе с временным разделением (TDMA, МКВР), многостанционном доступе с частотным разделением (FDMA, МКЧР) или других технологиях многостанционного доступа. Система беспроводной связи может быть разработана для воплощения одного или больше стандартов, таких как IS-95, cdma2000, IS-856, WCDMA, TD-SCDMA и других стандартов.
Поскольку в беспроводных системах связи повышаются требования к мультимедийным услугам (например, обработки в реальном времени видеоданных и аудиоданных, беспроводных игр и других мультимедийных данных), возникает проблема обеспечения эффективного и высококачественного предоставления мультимедийных услуг.
Краткое описание чертежей
На фиг.1 иллюстрируется вариант воплощения системы связи;
на фиг.2 представлен вариант воплощения схемы с адаптацией скорости передачи данных, которая показана как график задержки данных по обратному каналу связи, как функция времени;
на фиг.3 иллюстрируется вариант воплощения адаптивной регулировки установленных пороговых значений в схеме с адаптацией скорости передачи данных, которая основана на задержке данных в цикле прямой и обратной передачи;
на фиг.4 иллюстрируется блок-схема последовательности операций способа, который можно использовать для воплощения некоторых раскрытых вариантов воплощения;
на фиг.5 иллюстрируется блок-схема последовательности операций способа, который можно использовать для воплощения некоторых раскрытых вариантов воплощения;
на фиг.6 иллюстрируется блок-схема устройства, в котором могут быть воплощены некоторые раскрытые варианты воплощения;
на фиг.7A-7C иллюстрируются варианты воплощения адаптивного выбора типа фрейма кодирования на основе потерянной информации о пакете; и
на фиг.8 иллюстрируется блок-схема последовательности операций способа, который можно использовать для воплощения некоторых раскрытых вариантов воплощения.
Подробное описание изобретения
Адаптивные мультимедийные источники, работающие в режиме реального времени (например, видеотелефонная связь (VT, ВТ)), все еще находятся на ранней стадии разработки в современной среде беспроводной связи, например, по сравнению с их развитием в кабельной среде передачи данных (такой как Интернет). Например, в системе WCDMA (ШМДКР, широкополосный многостанционный доступ с кодовым разделением каналов) в настоящее время используется подход, состоящий в кодировании всех видеофреймов так, чтобы они соответствовали определенной полосе пропускания или скорости передачи битов. Учитывая переменную сложность, неизменно ассоциированную с различными видеопоследовательностями, фиксированная скорость передачи битов может оказаться чрезмерно большой для некоторых видеопоследовательностей и, таким образом, не будет обеспечивать значимое улучшение качества восприятия, в то же время являясь неприемлемо низкой для других видеопоследовательностей, и, таким образом, формирует заметно низкое качество восприятия. Что касается современных сетей беспроводной передачи пакетных данных (например, высокоскоростная система передачи пакетных данных (HRPD, ВСПП)), в ней отсутствует фиксированная или заранее определенная частота трафика для потока VT (например, как в системе WCDMA). Учитывая постоянно растущую потребность в VT и в других мультимедийных услугах, работающих в режиме реального времени, существует потребность развития VT и другого кодирования информации, следующей в режиме реального времени, в системах беспроводной связи.
В беспроводной сети пакетной передачи данных кодер (например, установленный в устройстве беспроводной связи, таком как терминал доступа) может быть выполнен с возможностью делать вывод о текущем канале сквозной передачи трафика по каналу трафика обратного канала (RL, ОК) (который представляет собой локальную информацию в терминале доступа, как дополнительно описано ниже), а также по сигналу обратной связи сквозной передачи (E2E) из буфера декодера в приемном декодере. Таким образом, было бы желательно, чтобы кодер адаптировал скорость кодирования в соответствии с фактической рабочей характеристикой канала (например, в соответствии с условиями канала трафика RL, условиями перегрузки/задержки/потери в тракте сквозной передачи и т.д.) на основе информации обратной связи, доступной при выполнении кодирования информации в режиме реального времени (например, таким образом, что информация, поступающая в декодер, может быть декодирована без размещения в буфере существенной ее части). Такой подход может обеспечить эффективное управление задержкой фрейма и в результате улучшить качество и эффективность передачи VT и другой информации, следующей в режиме реального времени, в беспроводной среде. (Следует отметить, что для VT в беспроводной среде первый интервал связи (например, от настольного компьютера в сеть Интернет) обычно не представляет собой ограничивающий ресурс, и при этом доступная полоса пропускания и условия в первом интервале передачи не подвержены быстрым изменениям с течением времени. Поэтому информация канала локального трафика может не потребоваться при регулировании скорости кодирования VT в такой среде).
Раскрытые здесь варианты воплощения относятся к способам и системам, предназначенным для обеспечения адаптивного кодирования информации, поступающей в режиме реального времени, в беспроводных системах связи с коммутацией пакетов. В следующем описании VT может использоваться в качестве примера для иллюстрации аспектов изобретения. При этом ее не следует рассматривать как ограничение. Различные варианты воплощения и аспекты, раскрытые здесь, могут быть применены для адаптивного кодирования любой информации, поступающей в режиме реального времени, в системах беспроводной связи.
Описанный здесь кодер может быть связан с (например, находиться в) устройством беспроводной связи, таким как терминал доступа (AT, ТД), выполненным с возможностью кодирования любой информации, поступающей в режиме реального времени, включающей в себя (но без ограничений) видео, аудио, игровые и другие данные, поступающие в режиме реального времени (например, интерактивные данные).
Описанный здесь AT может относиться к различным типам устройств, включающим в себя (но без ограничений) беспроводный телефон, сотовый телефон, переносной компьютер, беспроводное мультимедийное устройство, карту беспроводной связи для персонального компьютера (ПК), карманный персональный компьютер (КПК), внешний или внутренний модем и т.д. AT может представлять собой любое устройство обработки данных, которое обеспечивает связь по беспроводным каналам и/или через проводной канал (например, по оптоволоконным или коаксиальным кабелям). AT может иметь различные названия, такие как модуль доступа, абонентский модуль, мобильная станция, мобильное устройство, мобильный модуль, мобильный телефон, мобильная удаленная станция, удаленный терминал, удаленный модуль, устройство пользователя, оборудование пользователя, портативное устройство и т.д. Различные AT могут быть внедрены в систему. AT могут быть мобильными или стационарными и могут быть рассредоточены по всей системе связи. АТ может быть связан с сетью доступа (AN, СД) по прямому каналу (FL, ПК) и/или RL передачи данных в заданный момент. FL (или нисходящий канал) относится к передаче от AN в AT. Обратный канал (или восходящий канал) относится к передаче из AT в AN.
Описанный здесь AN может относиться к участку сети в системе связи и может включать в себя (но не ограничивается этим), и/или может воплощать функции базовой станции (BS, БС), систему приемопередатчика базовой станции (BTS, СПБ), точки доступа (AP, ТД), приемопередатчика модемного пула (MPT, ПМП), узел B (например, в системе типа WCDMA) и т.д. Кроме того, ячейка может относиться к зоне обслуживания AN. Ячейка может быть разделена на один или больше секторов.
Различные аспекты, свойства и варианты воплощения более подробно описаны ниже.
На фиг.1 иллюстрируется вариант воплощения системы 100 связи, в которой могут быть воплощены различные варианты воплощения, описанные здесь. В качестве примера кодер 120 вместе с блоком 130 (или модулем) адаптации скорости может быть установлен в AT 110. Кодер 120 может быть выполнен так, что он будет иметь большую скорость кодирования. Кодер 120 может обращаться к беспроводным/проводным сетям 150 через модуль 140 беспроводного AT 110. Проводные/беспроводные сети могут включать в себя одну или больше AN, сеть обратного соединения базовой станции с центром управления и базовую сеть и другую сетевую инфраструктуру. Модуль 140 беспроводного доступа может включать в себя, например, уровень канала доступа к среде передачи данных (MAC, УДС), физический уровень и другие средства, выполненные с возможностью обеспечения доступа к беспроводной/проводной сети 150. В некоторых вариантах воплощения, например, физический уровень/уровень MAC в модуле 140 беспроводного доступа может быть выполнен с возможностью связи с AN в беспроводных/проводных сетях 150 и для приема некоторой локальной информации обратной связи, доступной в AN. Декодер 170 вместе с буфером 180 декодера могут быть установлены в другом AT 160, выполненном с возможностью декодирования кодированных данных из кодера 120 через проводные/беспроводные сети 150.
В системе 100 модуль 130 адаптации скорости может быть выполнен с возможностью приема информации обратной связи, относящейся к передаче данных, которая может включать в себя "локальную информацию обратной связи" (обозначена как "Локальная" на фиг.1) и "информацию обратной связи при сквозной передаче" (обозначена как "E2E" на фиг.1) из модуля 140 беспроводного доступа и может адаптировать информацию кодирования, поступающую в режиме реального времени в соответствии с такой информацией обратной связи, как дополнительно описано ниже.
Раскрытый здесь термин "локальная информация обратной связи" может относиться к информации обратной связи, непосредственно и без значительной задержки доступной в кодере 120 (например, предоставляемой модулем 140 беспроводного доступа, включающей в себя (но без ограничений) задержку данных RL (например, предоставляемых физическим уровнем/уровнем MAC в модуле 140 беспроводного доступа), состояние канала RL (например, запас по мощности передачи AT, оценка скорости передачи канала и т.д.), статус загрузки сектора RL (например, ассоциированный с количеством передатчиков для RL, превышение уровня тепловых шумов (RoT, ПТШ), измеренное по RL, и т.д.), полезная нагрузка пакета физического уровня/уровня MAC RL (например, предоставляемую физическим уровнем/уровнем MAC в модуль 140 беспроводного доступа), информацию о потерянных пакетах RL (например, предоставляемую физическим уровнем/уровнем MAC в модуль 140 беспроводного доступа), количество данных, находящихся в данный момент времени в буфере модуля 140 беспроводного доступа, и т.д.)
Раскрытый здесь термин "информация обратной связи для сквозной передачи может относиться к информации обратной связи, передаваемой из приемника (например, декодера 170) обратно в передатчик (например, в кодер 120), например, через беспроводные/проводные сети 150 и модуль 140 беспроводного доступа (такой как представлен пунктирной линией на фиг.1), включая в себя (но не ограничиваясь этим) задержку данных при сквозной передаче, флуктуации при сквозной передаче, статус буфера декодера, базовую сеть и задержку трафика обратной передачи данных, информацию о потерянных пакетах при сквозной передаче и т.д. Информация обратной связи при сквозной передаче также может учитывать состояние канала FL (например, как представлено отношением "сигнал-шум плюс взаимная помеха" (SINR, ОСШП), измеренным по FL), статус нагрузки сектора FL (например, ассоциированный с количеством пользователей, совместно использующих планировщик в AN) и т.д.
В некоторых вариантах воплощения задержка при сквозной передаче может быть определена в декодере 170 и может быть передана в модуль 130 адаптации скорости передачи данных, например, через беспроводные/проводные сети 150 и модуль 140 беспроводного доступа так, как показано на фиг.1. В других вариантах воплощения задержка при сквозной передаче данных может быть выведена (или оценена) на основе информации адаптации обратной связи, которую модуль 130 адаптации скорости передачи принимает из декодера 170, например, через беспроводную/проводную сеть 150 и модуль 140 беспроводного доступа. Информация обратной связи для сквозной передачи может быть передана, например, через протокол управления передачей в реальном времени (RTCP, ПУПРВ), который внедрен в статический поток из приемника в передатчик, или через сообщения, определенные прикладной программой.
В одном варианте воплощения модуль 130 адаптации скорости передачи может адаптировать скорость кодирования в соответствии с задержкой данных RL. Например, модуль 130 адаптации скорости может уменьшать скорость кодирования, если задержка данных RL считается большой, например, по сравнению с заданным пороговым значением (или "целевым значением задержки"). Модуль 130 адаптации скорости может увеличивать скорость кодирования (например, для улучшения качества), если задержка данных RL значительно меньше целевого значения задержки. Рассмотрим в качестве примера видеокодирование. Кодер может регулировать скорость своего кодирования, используя параметр квантования (QP, ПК), такой как, например, в системах стандарта MPEG-4, H.263 или H.264. QP обозначает размер шага квантования для данного фрейма, который может находиться, например, в диапазоне {1,..., 31}. Меньшее значение QP позволяет получить лучшее качество видеоизображения и приводит к увеличению размера фрейма для заданного фрейма. В отличие от этого при большем значении QP получают худшее качество видеоизображения, но меньший размер фрейма. В некоторых вариантах воплощения модуль 130 адаптации скорости может использовать задержку данных RL (например, фрейма) для регулирования значения QP для следующего фрейма на основе текущего значения QP. Если выведенная задержка фрейма RL считается большой для буфера 180 декодера (например, по сравнению с целевой задержкой), QP может быть увеличен для уменьшения размера следующего фрейма (и, следовательно, задержки будущего фрейма). И, наоборот, если будет определено, что задержка фрейма RL небольшая (например, меньше целевого значения задержки), QP может быть уменьшен для улучшения качества видеоизображения, например, так, чтобы поддерживать значение задержки фрейма RL в пределах целевого значения задержки.
В варианте воплощения модуль 130 адаптации скорости может адаптировать скорость кодирования, изменяя частоту, на которой кодированные данные могут быть переданы в декодер 170. Например, в приложениях VT он может включать в себя регулирование скорости кодированного видеофрейма в соответствии с информацией обратной связи.
В некоторых вариантах воплощения модуль 130 адаптации скорости может адаптировать скорость кодирования в соответствии с состоянием канала RL, статусом загрузки сектора RL и т.д. При этом может обеспечиваться возможность реакции кодера 120 на события, изменяющиеся по времени (например, внезапные изменения запаса по мощности передачи AT, перегрузка сети и/или выполнение передачи AT 110 между секторами с разной нагрузкой) в беспроводных/проводных сетях 150, обеспечивая при этом, чтобы информация все еще поступала в декодер 170, по существу, вовремя и без перерыва и была декодирована с достаточным качеством. Например, модуль 130 адаптации скорости (и/или модуль 140 беспроводного доступа) может вначале получить оценку скорости передачи канала (например, доступную пропускную способность в беспроводном канале передачи данных) на основе условий канала RL, статуса нагрузки сектора RL и другой информации обратной связи, и затем регулировать фактическую скорость кодирования на основе оценки скорости передачи в канале.
В варианте воплощения модуль 130 адаптации скорости передачи данных может быть выполнен с возможностью увеличения скорости кодирования, когда сектор мало загружен, и снова понижать скорость кодирования, когда сектор сильно загружен.
В варианте воплощения модуль 130 адаптации скорости передачи данных может адаптировать скорость кодирования в соответствии с условием канала RL, например, запасом по мощности передачи AT 110. Это может позволить AT с ограниченной мощностью (например, с ограниченным запасом по мощности, или расположенному на краю своего сектора) обеспечивать кодирование информации в режиме реального времени (например, приложения VT) с приемлемым уровнем качества путем уменьшения скорости кодирования.
В варианте воплощения модуль 130 адаптации скорости передачи данных может адаптировать скорость кодирования в соответствии с полезной нагрузкой пакета физического уровня RL и/или полезной нагрузкой пакета уровня MAC. Например, кодер может кодировать информацию со скоростью кодирования, которая совместима с (например, меньше чем) нагрузкой пакета физического/MAC уровня RL.
В одном варианте воплощения модуль 130 адаптации скорости передачи данных может адаптировать скорость кодирования в соответствии со сквозной передачей информации обратной связи (например, задержкой при сквозной передаче данных), которая может быть предусмотрена декодером 170, вместе с буфером 180 декодера через беспроводные/проводные сети 150 (такие как показаны на фиг.1). Например, в случае, когда AT 110 испытывает плохое состояние FL, или в случае сильно загруженного сектора FL, модуль 130 адаптации скорости может уменьшить скорость кодирования для уменьшения нагрузки в секторе и обеспечить то, что информация все еще будет поступать в декодер 170, по существу, вовремя и без перерывов и будет декодирована с достаточным качеством. В случае, когда AT 110 находится в хорошем состоянии сквозной передачи данных, модуль 130 адаптации скорости может увеличить скорость кодирования, обеспечивая, таким образом, лучшее общее качество, все еще удовлетворяя требованиям по задержке.
Например, в приложениях VT поступление потерянного видеофрейма или задержанного видеофрейма может обозначать, что текущая скорость кодирования является слишком большой. В таких случаях QP может быть отрегулирован соответственно, например, увеличен, для уменьшения размера фрейма. В некоторых вариантах воплощения информацию об обратной связи для цикла сквозной передачи данных также можно использовать для регулирования установленных пороговых значений в схемах управления адаптации скоростью передачи, как подробно описано ниже.
На фиг.2 представлен вариант воплощения схемы управления адаптации скорости, на которой график задержки данных RL, как функция времени для приложения VT, иллюстрируется в качестве примера. Данные RL (например, задержка фрейма) могут измеряться (или могут оцениваться) на основе локальной информации обратной связи, доступной в модуле 140 беспроводного доступа и предоставляемой в модуль 130 адаптации скорости, как представлено на фиг.1. Одно или больше установленных пороговых значений, например, обозначенных как (Ti+D), i=1, 2, 3, 4, можно использовать для регулирования задержки данных RL, где параметр D может представлять влияние задержки сквозной передачи данных (например, задержки фрейма), как дополнительно описано ниже. Например, если задержка данных RL в некоторых случаях превышает определенное пороговое значение, например, между (T3+D) и (T4+D), QP можно регулировать, например, увеличить до (QP+QP3) для уменьшения задержки. Если задержка данных RL в других случаях опускается ниже второго порогового значения, например, между (T1+D) и (T2+D), QP также можно регулировать, например, увеличить до (QP-QP2) для обеспечения лучшего качества.
L
H
На фиг.3 иллюстрируется вариант воплощения возможности использования информации задержки при сквозной передаче данных для регулирования установленных пороговых значений в схеме управления адаптации скорости (как в варианте воплощения, показанном на фиг.2). В качестве примера в прямоугольнике 310 иллюстрируется задержка времени RL, как функция времени, которая может быть определена (например, измерена или оценена) в модуле 140 беспроводного доступа и которую передают в модуль 130 адаптации скорости (такой как показано на фиг.1). В прямоугольнике 320 иллюстрируется задержка данных при сквозной передаче данных, как функция времени, которую модуль 130 адаптации скорости также может принимать из модуля 140 беспроводного доступа (такого как описан выше). Как показано на чертеже, если задержка данных при сквозной передаче падает ниже порогового значения T (например, в точке 322), установленные пороговые значения (Ti, i=1, 2, 3, 4) в прямоугольнике 310 могут быть увеличены, как показано в секции 312 (что может быть эквивалентно включению большего значения D в установленные пороговые значения, как показано на фиг.2). Если задержка данных при сквозной передаче превышает верхнее пороговое значение T (например, в точке 324), установленные пороговые значения (Ti, i=1, 2, 3, 4) в прямоугольнике 310 могут быть уменьшены, как представлено секцией 314 (что может быть эквивалентно включению меньшего значения D в установленное пороговое значение, как показано на фиг.2).
На фиг.4 иллюстрируется блок-схема последовательности операций способа 400, который можно использовать для воплощения некоторых раскрытых вариантов воплощения. На этапе 410 принимают задержку данных RL (например, из модуля 140 беспроводного доступа). На этапе 420 выполняют сравнение задержки данных RL с одним или больше установленными пороговыми значениями и соответствующим образом регулируют скорость кодирования. На этапе 430 принимают задержку данных при сквозной передаче (например, из модуля 140 беспроводного доступа). На этапе 440 регулируют установленные пороговые значения на основе задержки принятых данных, передававшихся при сквозной передаче. Впоследствии процесс 400 возвращается на этап 410.
На фиг.5 иллюстрируется блок-схема последовательности операций способа 500, который можно использовать для воплощения некоторых раскрытых вариантов воплощения, например, способа 400 по фиг.4 в приложении VT. На этапе 510 принимают задержку данных RL (например, из модуля 140 беспроводного доступа). На этапе 520 сравнивают задержку данных RL с одним или больше пороговым значением. Если задержка данных RL будет определена как высокая (например, при ссылке на установленное пороговое значение, такое как представлено на фиг.2), следует этап 530 и увеличивает QP. С другой стороны, если задержка данных RL считается низкой, следует этап 540 и уменьшает QP. В качестве альтернативы, если задержка данных RL считается приемлемой (или "OK"), не требуется проводить какие-либо регулировки. Впоследствии следует этап 550, и на нем принимают задержку данных при сквозной передаче. На этапе 560 затем определяют, является ли задержка при сквозной передаче данных приемлемой (например, в соответствии с некоторыми заданными пороговыми значениями, такими как представлены на фиг.3). Если задержка данных при сквозной передаче рассматривается слишком высокой, следует этап 570 и уменьшает установленные пороговые значения (такие как представлены на фиг.3). Если задержка при сквозной передаче данных рассматривается низкой, следует этап 580 и увеличивает установленные пороговые значения (такие как представлены на фиг. 3). В качестве альтернативы, если задержка данных при сквозной передаче считается приемлемой (или "OK"), не требуется выполнять какие-либо регулировки. Процесс 500 впоследствии возвращается на этап 510.
В некоторых вариантах воплощения (таких как показаны на фиг.2-5, описанных выше) схема управления адаптацией скорости может быть воплощена при использовании двух контуров управления, например, включающих в себя быстрый (или внутренний) контур, связанный с задержкой данных RL, и медленный (или внешний) контур, связанный с задержкой при сквозной передаче данных (как схематично показано на фиг.1). Такой подход с двумя контурами управления позволяет эффективно использовать как малую задержку, предоставляемую локальной информацией об обратной связи, так и большую задержку, предоставляемую информацией обратной связи при сквозной передаче данных. (В последнем случае может дополнительно потребоваться оценивать поведение при сквозной передаче данных.) В одном варианте воплощения два контура управления могут быть выполнены с возможностью адаптации рабочей характеристики системы кодер/декодер в соответствии с требуемым компромиссом между задержкой и качеством. Например, задержка данных может использоваться как "целевая мера" (следовательно, от нее зависит качество) для схемы управления в некоторых ситуациях; в то время как качество может использоваться как целевая мера (следовательно, от нее зависит задержка данных) для схемы управления в других ситуациях.
В других вариантах воплощения в схеме управления адаптацией скорости может использоваться один контур управления, например, на основе задержки данных RL, задержки при сквозной передаче данных или информации обратной связи других типов (как описано выше). Другие схемы адаптации скорости могут также быть воплощены. Схемы адаптации скорости, описанные таким образом, можно использовать для управления кодированием любой информации в режиме реального времени.
На фиг.6 иллюстрируется блок-схема устройства 600, в котором могут быть воплощены некоторые раскрытые варианты воплощения. Устройство 600 может включать в себя модуль (или блок) 610 локального приема обратной связи, выполненный с возможностью приема задержки данных RL и другой локальной информации обратной связи (например, из модуля 140 беспроводного доступа); модуль 620 регулирования порогового значения, выполненный с возможностью генерирования и/или регулирования одного или больше установленных пороговых значений; модуль 630 сравнения, выполненный с возможностью сравнения целевой меры (например, задержки данных RL) с установленными пороговыми значениями, предоставленными модулем 620 регулировки порогового значения; и модуль 640 регулирования скорости, выполненный с возможностью регулирования скорости кодирования (например, используя QP или скорость передачи фреймов, как в приложениях VT) на основе выхода из модуля 630 сравнения. Устройство 600 может дополнительно включать в себя модуль 650 приема обратной связи E2E, выполненный с возможностью приема информации обратной связи при сквозной передаче данных (например, из модуля 140 беспроводного доступа) и предоставления ее в модуль 620 порогового значения. Модуль 620 порогового значения может дополнительно регулировать установленные пороговые значения на основе информации обратной связи при сквозной передаче данных (как описано выше).
В некоторых ситуациях может быть желательным использовать информацию о потерянных пакетах RL (например, предоставляемую локально путем автоматического запроса на повторную пересылку физического уровня RL (ARQ, АЗП), гибридного ARQ RL и/или RLMAC-ARQ) для определения следующего модуля информации, которая должна быть кодирована, например, типа фрейма для последующего фрейма, который должен быть кодирован в приложении VT. В качестве примера на фиг.7A-7C иллюстрируются варианты воплощения адаптивного выбора типа фрейма кодирования на основе информации о потерянном пакете RL. В приложениях VT, поскольку декодирование зависит от спрогнозированных фреймов (или P-фреймов), потери I-фрейма или P-фрейма приводят к ошибкам, распространяющимся на последующие P-фреймы, как представлено на фиг.7A. В таком случае, если кодер продолжает передавать оставшиеся P-фреймы со ссылкой на потерянный фрейм до конца группы изображений (GOP, ГИ), визуальное качество оставшихся фреймов может быть существенно ухудшено. Таким образом, используя локальную информацию обратной связи, которая относится к потерянным фреймам, кодер может кодировать последующий фрейм как I-фрейм для прерывания распространения ошибки, как представлено на фиг.7B. Кодер может кодировать следующий фрейм как новый P-фрейм, опорный фрейм которого представляет собой последний успешно переданный фрейм, как представлено на фиг.7C.
На фиг.8 иллюстрируется блок-схема последовательности операций способа 800, который можно использовать для воплощения некоторых раскрытых вариантов воплощения. На этапе 810 принимают информацию обратной связи, связанную с передачей данных, из модуля беспроводного доступа. На этапе 820 кодируют информацию, поступающую в режиме реального времени, в соответствии с принятой информацией обратной связи.
В способе 800 этап 820 может дополнительно включать в себя адаптацию скорости кодирования в соответствии с информацией обратной связи и кодирование информации, поступающей в режиме реального времени, со скоростью кодирования (как описано выше). Этап 820 также может включать в себя определение следующего модуля информации, предназначенного для кодирования (например, выбирая тип фрейма для последующего кодируемого фрейма, как в приложениях VT) в соответствии с информацией об обратной связи (такой как представлено на фиг.7A-7C).
Раскрытые здесь варианты воплощения обеспечивают возможность построения некоторых вариантов воплощения адаптивного кодирования информации, поступающей в режиме реального времени в системе беспроводной связи с коммутацией пакетов. Существуют другие варианты воплощения и выполнения.
Различные модули/блоки, описанные здесь, могут быть воплощены в виде аппаратных средств, программных средств, встроенного программного обеспечения или их комбинации. При выполнении в виде аппаратных средств различные модули могут быть воплощены с использованием одной или больше специализированных интегральных микросхем (ASIC), цифровых сигнальных процессоров (DSP), устройств цифровой обработки сигналов (DSPD), программируемой вентильной матрицы (FPGA), процессоров, микропроцессоров, контроллеров, микроконтроллеров, программируемых логических устройств (PLD), других электронных модулей или любой их комбинации. При воплощении в виде программных средств различные модули могут быть воплощены с использованием модулей (например, процедур, функций и так далее), которые выполняют описанные здесь функции. Программные коды могут быть сохранены в запоминающем устройстве и могут выполняться с помощью процессора (или модуля обработки). Запоминающее устройство может быть воплощено как встроенное в процессор или внешнее устройство относительно процессора, и в этом случае оно может быть соединено с возможностью передачи данных с процессором через различные средства, известные в данной области техники.
Различные раскрытые варианты воплощения могут быть воплощены в AT и в других средствах, выполненных с возможностью кодирования информации в режиме реального времени.
Специалисту в данной области техники будет понятно, что информация и сигналы могут быть представлены с использованием любого множества различных технологий и методик. Например, данные, инструкции, команды, информация, сигналы, биты, символы и элементарные посылки, на которые может быть сделана ссылка в приведенном выше описании, могут быть представлены напряжениями, токами, электромагнитными волнами, магнитными полями или частицами, оптическими полями или частицами или любой их комбинацией.
Специалистам в данной области техники будет также понятно, что различные иллюстративные логические блоки, модули, цепи и этапы алгоритмов, описанные в связи с раскрытыми здесь вариантами воплощения, могут быть воплощены как электронные аппаратные средства, компьютерное программное обеспечение или комбинации этих подходов. Для ясной иллюстрации такой взаимозаменяемости аппаратных и программных средств различные иллюстративные компоненты, блоки, модули, цепи и этапы были описаны выше, в общем, с представлением их функций. Конкретное воплощение таких функций в виде аппаратных или программных средств зависит от практического применения и конструктивных ограничений, наложенных на всю систему. Специалисты в данной области техники могут воплотить требуемые функции различными способами для каждого конкретного варианта применения, но такие решения при воплощении не следует интерпретировать как приводящие к выходу за пределы объема настоящего изобретения.
Различные иллюстративные логические блоки, модули и цепи, описанные в связи с раскрытыми здесь вариантами воплощениями, могут быть воплощены или могут выполняться с использованием процессора общего назначения, цифрового сигнального процессора (DSP), специализированной интегральной микросхемы (ASIC), программируемой вентильной матрицы (FPGA) или другого программируемого логического устройства, дискретных логических элементов или транзисторных логических схем, дискретных аппаратных компонентов или любой их комбинации для выполнения описанных здесь функций. Процессор общего назначения может представлять собой микропроцессор, но в качестве альтернативы процессор может представлять собой любой обычный процессор, контроллер, микроконтроллер или конечный автомат. Процессор также может быть воплощен как комбинация вычислительных устройств, например, комбинация DSP и микропроцессора, множества микропроцессоров, одного или больше микропроцессоров, работающих совместно с ядром DSP, или любой другой такой конфигурации.
Этапы способа или алгоритма, описанного в связи с раскрытыми здесь вариантами воплощения, могут быть воплощены непосредственно в виде аппаратных средств, в виде программного модуля, выполняемого процессором, или с использованием комбинации этих двух подходов. Программный модуль может резидентно находиться в оперативном запоминающем устройстве (ОЗУ), в запоминающем устройстве типа флэш, постоянном запоминающем устройстве (ПЗУ), электрически программируемом ПЗУ (EPROM, ЭППЗУ), электрически стираемом программируемом ПЗУ (EЕPROM, СППЗУ), регистрах, на жестком диске, на съемном диске, на CD-ROM или на носителе записи в любой другой форме, известной в данной области техники. Примерный носитель записи подключен к процессору таким образом, что процессор может считывать с него информацию и записывать информацию на этот носитель записи. В качестве альтернативы носитель записи может быть выполнен интегрированным в процессор. Процессор и носитель записи могут быть выполнены в виде ASIC. ASIC может быть установлена в AT. В качестве альтернативы процессор и носитель записи могут быть выполнены как дискретные компоненты в AT.
Предыдущее описание раскрытых вариантов воплощения представлено для обеспечения возможности использования настоящего изобретения любым специалистом в данной области техники. Различные модификации этих вариантов воплощения будут понятны специалисту в данной области техники, и определенные здесь обобщенные принципы можно применять к другим вариантам воплощения без выхода за пределы сущности или объема изобретения. Таким образом, настоящее изобретение не предполагается ограничивать представленными здесь вариантами воплощения, но оно должно соответствовать самому широкому объему, который соответствует раскрытым здесь принципам и новым свойствам.