СИСТЕМА И СПОСОБ УПРАВЛЕНИЯ ПРОГРАММИРУЕМЫМ МУЛЬТИМЕДИЙНЫМ КОНТРОЛЛЕРОМ
SYSTEM AND METHOD OF CONTROLLING PROGRAMMABLE MULTIMEDIA CONTROLLER

Область техники, к которой относится изобретение
Настоящее изобретение в основном относится к взаимодействию устройств и управлению ими и, более конкретно, к программируемому мультимедиа-контроллеру, обеспечивающему коммутацию и управление аудио- и видеоустройствами, телефонными устройствами, устройствами обработки данных, обеспечения безопасности, на основе моторов, на основе реле и/или электронными устройствами других типов.
Уровень техники
Быстрый рост объема предложения потребительских электронных устройств на рынке обусловлен падением стоимости электронной аппаратуры и появлением новых носителей информации. С одной стороны, такое развитие дает пользователям новые возможности при одновременном снижении стоимости; с другой стороны, оно порождает новые проблемы с точки зрения взаимосвязи, совместимости и управления.
Например, в прошлом пользователь имел возможность построить домашнюю стереосистему, "связав" ее компоненты минимальным числом соединений. Такие соединения в общем случае представляли собой аналоговые кабели или простые провода. При этом стереосистемы имели невысокие возможности по совместной работе с другими устройствами; кроме того, управление ими было примитивным и ограничивалось аналоговыми регуляторами и кнопками на лицевой панели модуля. Современные аудиокомпоненты поддерживают обработку многоканального объемного звука и множество форматов обмена аналоговыми и видеосигналами по различным типам соединений. Появилась возможность взаимного соединения множества устройств, но при этом возникло много проблем совместимости новых и конкурирующих форматов подключений. Для многих устройств взаимодействие и взаимное управление реализуется с большими трудностями. Например, задача записи аудиосигнала с аналогового проигрывателя на цифровой МР3-проигрыватель, которая достаточно проста при абстрактном рассмотрении, на практике в общем случае означает необходимость определенных действий по подключению кабелей и конфигурированию.
В то же время управление электронными устройствами стало намного более сложным, и пользователь имеет дело с множеством различных устройств дистанционного управления и типов интерфейсов, каждый из которых в общем случае уникален для каждого конкретного электронного устройства. Например, пользователю, желающему посмотреть фильм на DVD с приглушенным светом и выключенным телефонным звонком, скорее всего, придется воспользоваться тремя пультами дистанционного управления: от DVD-проигрывателя, от телевизора и от аудио/видеоресивера, а также, возможно, контроллером устройств, таким как контроллер освещения Х10™, и органами управления телефона.
Подобные затруднения возникают не только в области приложений аудио/видео, но и во многих других областях, связанных с управлением устройствами. Например, пользователю может потребоваться организовать взаимодействие домашней системы безопасности, системы полива и системы освещения таким образом, что в отсутствие пользователя будет активизироваться определенная схема работы безопасности/полива/освещения. В обычном случае пользователю, желающему получить такую систему, придется выполнить определенные действия с отдельными интерфейсами управления, в каждом из которых реализована отдельная, как правило, сложная схема управления.
Еще более очевидные трудности со взаимодействием наблюдаются в коммерческих предприятиях, где обычно имеется большое количество электронных устройств. Магазины, рестораны, студии звукозаписи, киностудии и другие общественные места коммерческого характера, где требуется управление и коммутация аудио-, видеоустройств и широкого диапазона устройств других типов, сталкиваются с серьезными проблемами совместимости и управления. Многие существующие решения оказываются чрезмерно дорогими, негибкими и трудно конфигурируемыми; как следствие, даже небольшие изменения в конфигурации системы требуют участия разработчика программного обеспечения или другого профессионального программиста.
Кроме того, многие домашние и коммерческие пользователи реализуют возможности своих электронных устройств в недостаточной степени, поскольку применяют лишь минимальное число соединений и управляют устройствами лишь самым элементарным образом. Таким образом, существует необходимость в создании интегрированного устройства, реализующего управление и взаимное соединение аудио- и видеоустройств, телефонных устройств, устройств обработки данных, обеспечения безопасности, на основе моторов, на основе реле и/или других типов электронных устройств. Такая система может обеспечивать создание конвергентного решения за счет связи электронных устройств функционально совместимым способом, т.е. построение интегрированного решения. Помимо этого, такая система должна иметь широкие возможности по настройке, позволяющие конфигурировать и управлять системой пользователю, не имеющему серьезных навыков в области разработки программного обеспечения.
Раскрытие изобретения
В настоящем изобретении в основном описывается интегрированный программируемый мультимедиа-контроллер, обеспечивающий коммутацию и управление аудио- и видеоустройствами, телефонными устройствами, устройствами обработки данных, обеспечения безопасности, устройствами с приводом от двигателя, на основе реле и/или электронными устройствами других типов. В ее составе имеются аудиокоммутатор и видеокоммутатор, которые связаны с микроконтроллером и подсистемой обработки. Аудиокоммутатор и видеокоммутатор также связаны с модулями ввода и вывода звука и видео. Эти модули принимают и выдают сигналы в множестве аналоговых и цифровых форматов и, таким образом, позволяют соединять систему с широким диапазоном устройств. Для коммутации в системе входящие аудио- и видеосигналы преобразуются в общие цифровые форматы.
При поступлении управляющей команды от микроконтроллера и подсистемы обработки аудио- и видеокоммутаторы направляют цифровые сигналы в соединения с модулями вывода. Перед выводом сигналов модулями вывода эти цифровые сигналы преобразуются в необходимые выходные форматы. Коммутация между входами и выходами может выполняться изолированно, т.е. конкретный вход будет соединяться с конкретным выходом, или по всему модулю, т.е с выбранного модуля на другой модуль будут подаваться сигналы с группы входов.
Помимо аудио- и видеоустройств, программируемый мультимедиа-контроллер может соединяться с широким разнообразием других внешних устройств посредством проводных соединений, таких как RS232 и Ethernet, и/или беспроводных соединений, таких как инфракрасное соединение, радиочастотное соединение, соединение Bluetooth, ZigBee или другое подходящее соединение. За счет этого обеспечивается поддержка управления телефонными устройствами, устройствами обеспечения безопасности, с приводом от двигателя, на основе реле и/или электронными устройствами других типов.
В одном варианте осуществления подсистема обработки программируемого мультимедиа-контроллера включает в себя один или несколько компьютеров. Компьютеры могут представлять собой универсальные персональные компьютеры малого форм-фактора, функционально связанные с программируемым мультимедиа-контроллером посредством соединительной платы. При этом универсальные компьютеры подходящей формы и размера, имеющиеся в широкой продаже, могут быть встроены в корпус программируемого мультимедиа-контроллера и использоваться в составе системы в качестве мощностей по обработке; на них также могут выполняться прикладные программы. В другом варианте осуществления могут использоваться компьютеры, устанавливаемые в стойки, или другие автономные компьютеры, подключаемые к домашнему мультимедиа-контроллеру не через соединительную плату, а по сетевому соединению. В любом из этих вариантов осуществления на компьютерах может быть сконфигурировано распределение нагрузки и/или избыточность.
В другом варианте осуществления управлять программируемым мультимедиа-контроллером может мультимедиа-проигрыватель, например DVD-проигрыватель или другое устройство, обеспечивающее отображение данных и генерацию выходного сигнала согласно выбору варианта пользователем, как частью встроенной управляющей техники. При выборе пунктов меню или других объектов мультимедиа-проигрыватель внедряет информацию управления в выходной сигнал. Например, если мультимедиа-проигрывателем является DVD-проигрыватель, пользователь может выбирать пункты меню DVD, при этом в аудиосигнал, генерируемый DVD-проигрывателем, внедряется предопределенная информация, соответствующая выбору. Внедренная информация управления передается программируемому мультимедиа-контроллеру по радиоканалу или проводному соединению, далее эта информация декодируется и на ее основе генерируются команды управления, используемые системой. В одном варианте осуществления методика внедрения управляющей информации представляет собой методику управления с заимствованием бита, т.е. для хранения внедренной информации управления используется наименьший значащий бит каждого слова цифрового аудиосигнала. В другом варианте осуществления методика внедрения управляющей информации представляет собой методику управления с тональным сигналом, т.е. в ответ на выбор варианта пользователем устройство управления генерирует тональный аудиосигнал, который декодируется программируемым мультимедиа-контроллером, который, в свою очередь, генерирует определенную команду управления.
В еще одном варианте осуществления программируемый мультимедиа-контроллер реализует функцию наложения видеоизображений, которая позволяет выводить динамическое видеоизображение, неподвижные кадры и/или текст поверх изображения в любом требуемом месте экрана. Такие накладываемые изображения могут содержать компьютерную графику, генерируемую подсистемой обработки, для визуальной демонстрации информации различных типов пользователю. Область экрана может сдвигаться по одному кадру, что позволяет, например, создавать "движущееся" наложенное изображение или другой специальный эффект. В одном варианте осуществления настоящего изобретения подсистема обработки изменяет цвета, связанные с пикселями в определенной области видеокадра, на предопределенный цвет. Затем видеомикшер распознает появление пикселей предопределенного цвета и подставляет в каждый пиксель, содержащий такой цвет, данные, поступающие от подсистемы обработки. Таким способом, на каждый кадр видеосигнала могут накладываться данные из другого источника. Такая методика может быть легко расширена путем использования нескольких предопределенных цветов, что позволяет выполнять многократное независимое наложение видеоизображений.
В еще одном варианте осуществления программируемый мультимедиа-контроллер может быть связан с дополнительными программируемыми мультимедиа-контроллерами через порт расширения, позволяющий легко масштабировать систему при необходимости дополнительных соединений.
Краткое описание фигур чертежей
Далее приводится более подробное описание изобретения со ссылками на прилагаемые чертежи, при этом сходные числовые ссылки указывают на идентичные или функционально подобные элементы. На чертежах:
на фиг.1 представлена блок-схема программируемого мультимедиа-контроллера, соединенного с множеством устройств, согласно примерному варианту осуществления настоящего изобретения;
на фиг.2 приведена блок-схема аппаратной архитектуры аппаратных средств высокого уровня в системе на фиг.1;
на фиг.3 приведена блок-схема аудиокоммутатора, связанного со множеством модулей ввода и вывода, согласно примерному варианту осуществления настоящего изобретения;
на фиг.4 приведена блок-схема примерного модуля ввода цифрового аудиосигнала;
на фиг.5 приведена блок-схема примерного модуля ввода аналогового аудиосигнала;
на фиг.6 приведена блок-схема примерного модуля ввода цифрового видеосигнала с мультимедиа-интерфейсом высокой четкости (High-Definition Multimedia Interface, HDMI);
на фиг.7 приведена блок-схема примерного порта внешнего аудио/видеосигнала;
на фиг.8 приведена блок-схема примерного модуля вывода цифрового аудиосигнала;
на фиг.9 приведена блок-схема примерного модуля вывода аналогового аудиосигнала;
на фиг.10 приведена блок-схема примерного модуля вывода цифрового видеосигнала с HDMI;
на фиг.11 приведена блок-схема примерного видеокоммутатора, соединенного со множеством модулей ввода и вывода, согласно примерному варианту осуществления настоящего изобретения;
на фиг.12 приведена блок-схема примерного модуля ввода аналогового видеосигнала
на фиг.13 приведена блок-схема примерного комбинированного модуля ввода аналогового и цифрового видеосигнала;
на фиг.14 приведена блок-схема примерной подсистемы обработки согласно примерному варианту осуществления настоящего изобретения;
на фиг.15 показано множество портов подключения на примерном универсальном персональном компьютере малого форм-фактора в трехмерном виде;
на фиг.16 показана часть передней панели программируемого мультимедиа-контроллера, изготовленного в соответствии с примерным вариантом осуществления настоящего изобретения, с двумя универсальными персональными компьютерами малого форм-фактора, вставленными в отсеки;
на фиг.17а приведена блок-схема модулей управления, соединенных с программируемым мультимедиа-контроллером согласно примерному варианту осуществления настоящего изобретения;
на фиг.17b приведена блок-схема примерной методики внедрения управляющей информации на основе управления с заимствованием бита;
на фиг.18 приведена блок-схема примерной схемы взаимосвязи и расширения аудиосистемы;
на фиг.19 приведена блок-схема примерной схемы взаимосвязи и расширения видеосистемы;
на фиг.20 приведена блок-схема с двумя программируемыми мультимедиа-контроллерами, используемыми в примерном приложении, в данном случае в приложении профессиональной аудиозаписи и микширования.
Осуществление изобретения
На фиг.1 приведена блок-схема программируемого мультимедиа-контроллера 100, соединенного со множеством устройств, согласно примерному варианту осуществления настоящего изобретения. Термин "программируемый мультимедиа-контроллер" следует широко понимать как устройство, имеющее функцию управления, коммутации потоков данных и/или взаимодействия с широким кругом различных электронных устройств, таких как аудио- и видеоустройства, телефонные устройства, устройства обработки данных, обеспечения безопасности, на основе моторов, на основе реле и/или другие типы электронных устройств. При взаимодействии с этими устройствами программируемый мультимедиа-контроллер может осуществлять функции интегрированного решения для управления мультимедиа-функциями.
В примерном варианте осуществления программируемый мультимедиа-контроллер 100 связан с широким диапазоном аудио/видеокомпонентов, таких как проигрыватель 105 компакт-дисков (CD), проигрыватель 110 цифровых универсальных дисков (DVD), аудио/видеоресивер 115, телевизор 120, персональный мультимедиа-проигрыватель 125, колонки 122, микрофон 123 и/или видеокамера 124. Программируемый мультимедиа-контроллер может также быть соединен с телефонным оборудованием, таким как телефонная сеть 130 и телефонные трубки 132. Телефонная сеть 130 может представлять собой телефонную сеть общего пользования (publicly switched telephone network, PSTN), цифровую сеть комплексного обслуживания (Integrated Services Digital Network, ISDN) или другую систему связи.
Кроме того, программируемый мультимедиа-контроллер может взаимодействовать с разнообразными системами 135 освещения и/или домашней автоматизации. Эти устройства могут работать по протоколу Х10, разработанному pico Electronics, протоколу INSTEON™, разработанному SmartHome, Inc, стандарту CEBus, контролируемому Промышленным советом CEBus, или другому известному протоколу домашней автоматизации или управления. Аналогичным образом, контроллер может быть связан с устройствами 137 на основе моторов и/или реле, которые могут включать в себя, например, систему отопления, вентиляции и кондиционирования воздуха (heating, ventilation and air conditioning, HVAC), дренажную систему, систему автоматического затенения или жалюзи, электронный дверной замок и другие типы устройств.
Мультимедиа-контроллер подключается к компьютерной сети, такой как Интернет 140. Кроме того, он может быть соединен с персональным компьютером (personal computer, PC) 145, системой 150 видеоигр, домашнего оборудования 165 записи и другими устройствами. Далее, может быть предусмотрен один или несколько пультов 170 дистанционного управления, предназначенных для управления функциями контроллера и/или управления устройствами, связанными с контроллером. Такие пульты дистанционного управления могут связываться с контроллером по проводному сетевому соединению, инфракрасному соединению, радиочастотному каналу, каналу Bluetooth™, каналу ZigBee™ или другому подходящему каналу передачи данных.
В дополнение к обеспечению взаимодействия с широким кругом устройств, программируемый мультимедиа-контроллер может комбинировать, синтезировать и обрабатывать другими способами различные типы данных и за счет этого поддерживать реализацию интегрированного мультимедийного решения для пользователя. Более подробное описание реализуемых различных новых функций и возможностей содержится в документе с последовательным номером 11/314,112, имеющем название ПРОГРАММИРУЕМЫЙ МУЛЬТИМЕДИА-КОНТРОЛЛЕР С ПРОГРАММИРУЕМЫМИ ФУНКЦИЯМИ, автор Роберт П. Мадонна и др., включенном в настоящий документ посредством ссылок.
В целях облегчения вышеописанных процессов соединения и обработки программируемый мультимедиа-контроллер 100 может иметь модульную конструкцию. Например, в одном варианте осуществления программируемый мультимедиа-контроллер 100 имеет в своем составе двенадцать отдельных модулей ввода и вывода, каждый из которых имеет набор портов подключения. Модули ввода и вывода вставляются в разъемы или модульные отсеки программируемого мультимедиа-контроллера 100. Модули соединяются с общей платой, которая обеспечивает подключение к остальной части системы. Применение модульной конструкции позволяет пользователю выбирать конкретные модули по своим потребностям, и система может быть адаптирована к конкретной сфере применения. Кроме того, может быть снижена стоимость начальной покупки за счет того, что пользователь может купить систему в базовой конфигурации с ограниченными возможностями и затем расширять систему путем покупки дополнительных модулей. Ниже описывается несколько примеров модулей со ссылками на фиг.4-10, 12 и 13. Из описания видно, что может использоваться множество разнообразных дополнительных модулей, и, соответственно, данное описание может относиться и к другим возможным конфигурациям. Кроме того, из описания видно, что могут использоваться несколько программируемых мультимедиа-контроллеров, которые после соединения образуют большую систему; таким образом, модульное решение реализуется на уровне контроллеров. Подробные сведения относительно такой взаимосвязи и расширения приводятся далее со ссылками на фиг.18 и 19.
На фиг.2 приведена блок-схема аппаратной архитектуры высокого уровня программируемого мультимедиа-контроллера. Представленные различные компоненты могут размещаться на "системной плате" контроллера или на нескольких платах, связанных с основной платой (не показаны). Микроконтроллер 210 управляет функционированием системы в целом. В примерном варианте осуществления микроконтроллер представляет собой 32-битный микроконтроллер модели MCF5234, поставляемый Freescale Semiconductor Inc. Микроконтроллер 210 соединен с аудиокоммутатором 215 и видеокоммутатором 220 по шине 218. Аудиокоммутатор 215 и видеокоммутатор 220 предпочтительно представляют собой матричные коммутаторы, обеспечивающие одновременную коммутацию множества соединений. С другой стороны, может использоваться множество других типов коммутаторов, обеспечивающих коммутацию цифровых сигналов, например коммутаторы TDM (Time Division Multiplexing, мультиплексирование по времени). Более подробное описание этих коммутаторов приведено далее со ссылками на фиг.3 и фиг.11.
Общая плата 235 соединяет коммутаторы и другие устройства с разнообразными модулями ввода и вывода, такими как модули 600 ввода цифрового видео с HDMI, модули 1000 вывода видео с HDMI, модули 400 ввода цифрового звука и модули 900 вывода цифрового звука. Общая плата 235 также подключается к Ethernet-коммутатору 230, который выполняет коммутацию сигналов Ethernet 10BaseT, 100BaseT или Gigabit Ethernet. Ethernet-коммутатор 230 соединяет Ethernet-порты 232 и подсистему 240 обработки с микроконтроллером 210. В одном варианте осуществления подсистема 240 обработки включает в себя множество универсальных персональных компьютеров малого форм-фактора, которые обеспечивают функционирование с избыточностью и/или распределением нагрузки. В некоторых вариантах осуществления подсистема 240 обработки может содержать одно или несколько устройств хранения, внешних по отношению к персональным компьютерам и предназначенных для расширения емкости устройств хранения, например для хранения цифрового мультимедиа-контента. Более подробное описание различных вариантов осуществления подсистемы 240 обработки данных приведено далее со ссылками на фиг.14-16.
Далее, используется набор USB-портов 242 (Universal Serial Bus, универсальная последовательная шина), подключаемых к USB-концентратору 243 для соединения с подсистемой 240 обработки. Кроме того, к USB-концентратору 243 может быть подключен интерфейс 225 карт памяти. Этот интерфейс поддерживает один или несколько распространенных форматов карт памяти, например карты CompactFlash™, карты Memory Stick™, карты Secure Digital™ (SD) и другие форматы. Для коммутации USB-соединений между различными обрабатывающими компонентами, присутствие которых возможно в системе, используется USB-коммутатор 244. Аналогичным образом используется набор портов 246 IEEE 1394 (FireWire™), подключаемых к концентратору 247 IEEE 1394 и к коммутатору 248 IEEE 1394.
2
2
Далее, микроконтроллер 210 соединяется со схемой 250 распределения последовательного интерфейса периферии (Serial Peripheral Interface, SPI) и схемы связи интегральных микросхем (Inter-lntegrated Circuit, pc), которая реализует последовательный интерфейс передачи данных для устройств с относительно низкой скоростью передачи данных. Контроллер 250 SPI/IC подключается к разъему общей платы 235 и, таким образом, передает команды управления от микроконтроллера 210 на модули и другие устройства в программируемом мультимедиа-контроллере 100. Другие соединения контроллера 250 SPI/IC предназначены для подключения таких устройств, как контроллер 251 вентилятора, температурный датчик 252 и схема 253 управления питанием, которые контролируют тепловые характеристики системы и предотвращают перегревание.
Далее, микроконтроллер 210 соединяется с интерфейсом 260 передачи данных по инфракрасному каналу (Infra-Red, IR), интерфейсом 265 RS232 и радиочастотным интерфейсом 267, обеспечивающими связь с внешними устройствами. Такая взаимосвязь позволяет программируемому мультимедиа-контроллеру 100 управлять внешними устройствами. Кроме того, эти интерфейсы могут принимать сигналы управления, которые влияют на работу непосредственно программируемого мультимедиа-контроллера. Очевидно, что для связи мультимедиа-контроллера с другими устройствами могут использоваться различные интерфейсы, в том числе WI-FI, Bluetooth™, ZigBee™ и другие проводные и беспроводные интерфейсы. Более подробное описание таких интерфейсов приведено ниже со ссылками на фиг.17а и фиг.17b.
Далее, для подключения одной или нескольких систем видеоигр, видеокамер, компьютеров, караоке-устройств или других устройств применяется дополнительный порт 700 аудио/видеосигналов. Для соединения с телефонной сетью общего пользования или с частной сетью, а также телефонными трубками применяется телефонный интерфейс 270. Далее, используется интерфейс 275 управления устройствами, предназначенный для взаимодействия с аппаратурой освещения, домашней автоматизации и устройствами на основе моторов и/или реле. Как более подробно описано ниже, предусматривается порт 280 расширения, предназначенный для соединения нескольких программируемых мультимедиа-контроллеров с целью формирования расширенной системы. Наконец, дисплей 1150 передней панели позволяет отображать информацию о состоянии, конфигурацию и/или другую информацию для пользователя. В одном варианте осуществления на панель могут выводиться видеоданные, поступающие от любого входного источника, связанного с системой, что позволяет выводить видеосодержание на дисплей для предварительного просмотра. В другом варианте осуществления дисплей 1150 передней панели имеет сенсорный экран, и пользователь может указывать варианты выбора путем выбора значков на экране.
Маршруты коммутации аудиосигналов
На фиг.3 приведена блок-схема аудиокоммутатора 215, связанного с множеством модулей ввода и вывода в примерном варианте осуществления программируемого мультимедиа-контроллера 100. Аудиокоммутатор 215 предпочтительно представляет собой полевую программируемую вентильную матрицу (Field Programmable Gate Array, FPGA), такую как полевая программируемая вентильная матрица VIRTEX-II Pro, модель XC2VPS-6FF672C производства Xilinx, Inc. В альтернативном варианте аудиокоммутатор 215 может представлять собой другую интегральную схему, доступную в продаже и обеспечивающую одновременную коммутацию множества сигналов. Аудиокоммутатор 215 имеет конфигурацию, позволяющую принимать множество входных сигналов от входных модулей и коммутировать эти входные сигналы на множество выходов, связанных с модулями вывода и/или другими устройствами. Коммутация между входами и выходами может выполняться изолированно, т.е. между конкретным входом и конкретным выходом, или по всему модулю, т.е. сигналы с группы входов от выбранного модуля будут подаваться на группу выходов, связанных с другим модулем.
2
2
2
Перед подачей в аудиокоммутатор 215 аудиосигналы преобразуются в общие форматы аудиосигналов. Общий формат позволяет коммутировать любой вход с любым выходом. Например, все аудиосигналы могут преобразовываться в распространенный формат S/PDIF (Sony/Philips Digital Interconnect Format, формат цифровых соединений Sony/Philips). В альтернативном варианте все аудиосигналы могут преобразовываться в формат Inter-IC Sound (IC). Специалисту в данной области техники будет ясно, что может использоваться широкое разнообразие других форматов, и, соответственно, настоящее описание следует рассматривать как пример. Аналогичным образом, могут использоваться различные комбинации нескольких предопределенных форматов аудиосигналов. В примерном варианте осуществления настоящего изобретения аудиосигналы с импульсно-кодовой модуляцией (pulse code modulated, PCM) передаются в форме сигналов IS, в то время как аудиосигналы с кодированием (отличные от PCM) передаются в форме сигналов SPDIF. Конфигурация аудиокоммутатора 215 позволяет коммутировать оба эти формата сигналов с применением отдельных маршрутов 216 IS и маршрутов 218 SPDIF.
2
В одном варианте осуществления сигналы IS могут использоваться для транспортировки аудиосигналов нестандартных форматов с применением методики пустых кадров. Модули ввода могут подавать аудиосигналы на один или несколько асинхронных преобразователей частоты дискретизации, такие как преобразователи Cirrus Logic модели CS8421, которые поддерживают вставку пустых кадров между аудиокадрами или избыточную дискретизацию поступающих аудиоданных. За счет этого сигналы с нестандартной скоростью потока данных могут преобразовываться для приведения к предопределенной скорости потока данных, например 192000 выборок в секунду. Одновременно с аудиоданными на модули вывода может коммутироваться независимый тактовый сигнал, указывающий на то, какие кадры содержат непосредственно аудиоданные, а какие являются пустыми. В модулях вывода тактовый сигнал используется для отделения аудиоданных от пустых кадров и воспроизведения аудиосодержания с правильной скоростью. Таким образом, аудиокоммутатор 215 может поддерживать обработку различных нестандартных скоростей потоков аудиоданных при минимальной потребности в дополнительных схемах.
Согласно примерному варианту осуществления, аудиокоммутатор 215 связан с несколькими входными модулями, такими как модуль 400 ввода цифрового аудиосигнала, модуль 500 ввода аналогового аудиосигнала, модуль 600 ввода цифрового видеосигнала с высококачественным мультимедиа-интерфейсом (HDMI) и порт 700 видеоигр. Аналогичным образом, аудиокоммутатор 215 связан с несколькими модулям вывода, такими как модуль 800 вывода аналогового аудиосигнала, модуль 900 вывода цифрового аудиосигнала и модуль 1000 вывода цифрового видеосигнала с HDMI 1000. Подробное описание этих модулей приводится далее со ссылками на фиг.4-10. Кроме того, с коммутатором связан модуль 380 беспроводного ввода/вывода аудиосигнала. В одном варианте осуществления модуль 380 беспроводного ввода/вывода аудиосигнала имеет множество радиочастотных приемопередатчиков, работающих в диапазоне ISM 2.4 ГГц, множество типов которых имеется на рынке. Такие приемопередатчики могут передавать и принимать аудиопотоки скоростью до 1.54 МБит/с на каждом беспроводном канале передачи данных и, таким образом, позволяют обеспечить взаимосвязь с удаленными аудиоустройствами, в которых используются потоки данных аудиосодержания высокого качества. Модуль 380 беспроводного ввода/вывода аудиосигнала может также использоваться для передачи и приема информации управления, что более подробно описано далее со ссылками на фиг.17а и 17b.
Дополнительная взаимосвязь аудиоканалов с подсистемой 240 обработки реализуется посредством одного или нескольких соединений IEEE 1394 и соответствующих схем. Функциональность физического сетевого уровня базируется на паре кабельных приемопередатчиков/арбитров 320, 321 IEEE 1394 физического уровня, таких как приемопередатчик/арбитр модели TSB41AB1 производства Texas Instruments Inc. Далее данные передаются на аудиоконтроллеры 330, 331 FireWire, например контроллеры Oxford Semiconductor Inc. модели OXFW971. Выходные сигналы аудиоконтроллеров 330, 331 FireWire могут подаваться на приемопередатчики S/PDIF (не показаны), такие как приемопередатчики АТК Inc. модели АК4117, для преобразования в сигналы S/PDIF, или на преобразователи 340, 341 частоты дискретизации, такие как асинхронные преобразователи частоты дискретизации модели CS8421 производства Cirrus Logic Inc.
Далее, с аудиокоммутатором 215 связан один или несколько модулей 310, 315 декодирования видео. В модулях 310, 315 декодирования видео могут использоваться специализированные схемы декодирования, позволяющие снять нагрузку, обусловленную задачами декодирования видео, с подсистемы 240 обработки и, таким образом, повысить производительность системы.
Кроме того, согласно примерному варианту осуществления, аудиокоммутатор 215 соединен с телефонным интерфейсом 350. Такой интерфейс включает в себя схемы подключения удаленной АТС (Foreign eXchange Office, FXO) и удаленного абонента (Foreign eXchange Subscriber, FXS) для подключения к телефонной сети общего пользования (ТфОП). Этот интерфейс может также содержать схему для прямого подключения телефонных трубок к системе.
Все модули связаны с системными часами, функционирующими на основе встроенной схемы 360 формирователя тактовых импульсов. Эта схема с кристаллическим осциллятором 370 (XTAL) генерирует локальный тактовый сигнал, обеспечивающий синхронную работу функций коммутации в системе.
На фиг.4 приведена блок-схема примерного модуля 400 ввода цифрового аудиосигнала. Цифровой аудиосигнал принимается модулем через цифровые соединения 410 RCA, поддерживающие передачу сигналов S/PDIF, оптические соединения 420, поддерживающие TOSLINK™ (зарегистрированная торговая марка корпорации Toshiba), и соединения 430 XLR, обычно используемые в профессиональных аудиоприложениях и поддерживающие стандарт цифровых аудиосигналов AES/EBU (Audio Engineering Society/European Broadcasting Union, общество разработки аудио/Европейский союз вещания). Каждое соединение может принимать сигналы с частотами дискретизации 32 кГц, 44.1 кГц, 88,2 кГц, 96 кГц, 176 кГц, 192 кГц или другими частотами. Далее, аудиосигналы могут иметь тип РСМ (импульсно-кодовая модуляция) или отличный от РСМ. Такая гибкость позволяет обеспечивать поддержку общих схем кодирования, таких как Dolby Digital, DTS, MPEG, THX и других форматов. В одном варианте осуществления поступающие цифровые аудиосигналы вначале преобразуются в уровни транзисторно-транзисторной логики (Transistor-Transistor Logic, TTL) схемой преобразователя уровней (не показана). В другом варианте сигналы могут преобразовываться в уровни логики низковольтных дифференциальных сигналов (Low Voltage Differential Signaling, LVDS).
2
Восемь приемников S/PDIF, таких как приемники цифровых аудиосигналов Cirrus Logic модели CS8415, могут принимать аудиосигналы и выводить их на выходы S/PDIF. Аналогичным образом, 8 типовых преобразователей 450 частоты дискретизации, таких как асинхронные преобразователи частоты дискретизации модели CS8421 производства Cirrus Logic Inc., могут выводить аудиоданные на выходы IS, соединенные с аудиокоммутатором 215.
На фиг.5 приведена блок-схема примерного модуля 500 ввода аналогового аудиосигнала. В примерном варианте осуществления аналоговый аудиосигнал принимается через разъемы 510 RCA.
2
В альтернативном варианте аудиосигнал может приниматься через разъемы XLR, поддерживающие формат XLR, в настоящее время распространенный в профессиональных аудиокабельных соединениях. Аналоговые аудиосигналы проходят через один или несколько операционных усилителей 520 для нормализации, после этого они подаются на многоканальные аналого-цифровые преобразователи 530, такие как 8-канальный аналого-цифровой преобразователь модели CS5368 производства Cirrus Logic Inc. Многоканальные аналого-цифровые преобразователи 530 осуществляют дискретизацию аналоговых аудиосигналов и передают последовательные потоки данных IS в аудиокоммутатор 215.
2
На фиг.6 приведена блок-схема примерного модуля 600 ввода цифрового видеосигнала с высококачественным мультимедиа-интерфейсом (HDMI). На данном этапе рассматриваются вопросы работы этого модуля с аудиосигналами, работа с видеосигналами подробно описывается далее. Модуль 600 ввода цифрового видеосигнала с HMDI реализует один или несколько интерфейсов цифровых аудио/видеосигналов, в примерном варианте осуществления рассматриваются четыре цифровых интерфейса 610, 620, 630, 640, которые принимают многоканальный цифровой аудиосигнал и высококачественный видеосигнал через один разъем. Таким образом, HDMI сокращает потребность в кабелях и может с преимуществом использоваться в устройствах-приставках, DVD-проигрывателях, аудио/видеоресиверах, цифровых телевизорах и других устройствах. Сигналы HDMI принимаются и декомпрессируются приемниками 615, 625, 635, 645 HDMI, например приемниками HDMI модели Sil9031 производства Silicon Image Inc. В примерном варианте осуществления приемники HDMI выводят сигнал S/PDIF в аудиокоммутатор 215, а также соединяются с преобразователями 617, 627, 637, 647 частоты дискретизации, которые выводят дополнительные потоки IS в аудиокоммутатор 215.
2
На фиг.7 приведена блок-схема примерного порта 700 видеоигр. Порт может иметь соединения, расположенные на передней панели программируемого мультимедиа-контроллера 100, позволяющие легко подключать и отключать системы видеоигр, такие как Xbox™, Playstation™ или другие популярные системы. На данном этапе рассматриваются вопросы работы этого модуля с аудиосигналами, работа с видеосигналами подробно описывается далее. Порт 700 видеоигр имеет разъем 740 HDMI, связанный с приемником 750 HD3VD, который подает сигнал S/PDIF, а также сигналы IS, на аудиокоммутатор 215. Далее, порт 700 видеоигр имеет разъемы 770 RCA для приема аналоговых аудиосигналов. Аналоговый аудиосигнал преобразуется в цифровой аудиосигнал аналого-цифровым преобразователем 780. Поток цифрового аудиосигнала, такой как поток S/PDIF, может также приниматься через разъем 790 RCA и передаваться на аудиокоммутатор 215.
2
2
На фиг.8 приведена блок-схема образцового модуля 800 вывода цифрового аудиосигнала. В одном варианте осуществления модуль 800 вывода цифрового аудиосигнала принимает от аудиокоммутатора 215 входной сигнал S/PDIF, а также входные сигналы IS. Такие входные сигналы направляются в схемы 840 буферизации и затем на плату 850 цифровой обработки аудиосигналов (digital signal processing, DSP), например плату модели DAE-7 производства Momentum Data Systems или другую плату DSP. Плата 850 DSP включает в себя процессор VLIW, который обеспечивает вычислительную мощность, необходимую для декодирования форматов аудиосигналов объемного звука и выполнения обработки звукового поля. Выходной сигнал с аудиоплаты 850 DSP в формате IS передается на передатчик 860 цифрового аудиосигнала. Передатчик предпочтительно поддерживает различные популярные стандарты цифровых аудиосигналов, такие как S/PDIF и AES/EBU. В одном варианте осуществления передатчик 860 цифрового аудиосигнала представляет собой передатчик модели АК 4101 производства АКМ Semiconductor Inc и поддерживает восемь каналов цифрового аудиосигнала. Выводы передатчика 860 цифрового аудиосигнала связаны с комбинацией цифровых соединений 870 RCA, поддерживающих передачу сигналов S/PDIF, цифровое оптическое соединение 880 TOSLINK™ и соединение 890 XLR, поддерживающее AES/EBU.
2
На фиг.9 приведена блок-схема примерного модуля 900 вывода аналогового аудиосигнала. Согласно примерному варианту осуществления, модуль 900 вывода аналогового аудиосигнала принимает входной сигнал S/PDIF от аудиокоммутатора 215, а также входные сигналы IS. Эти входные сигналы направляются в схемы 940 буферизации, а затем - на аудиоплату 950 DSP. Аудиоплата 950 DSP может представлять собой, например, плату модели DAE-7 производства Momentum Data Systems. Набор выходов аудиоплаты 950 DSP соединяется с линиями S/PDIF для обратной передачи в аудиокоммутатор 215. Например, декодированные аудиосигналы могут передаваться обратно в коммутатор, откуда они направляются в другой модуль вывода аудиосигнала для вывода. Другие выводы аудиоплаты 950 DSP соединяются с цифроаналоговыми стереопреобразователями 960, которые обеспечивают вывод аналоговых сигналов на устройства. В одном варианте осуществления эти выходы представляют собой выходы типа RCA с аналоговыми разъемами RCA. Модуль 900 вывода аналогового аудиосигнала может быть сконфигурирован программным образом для обеспечения поддержки различных схем объемного звука. Например, аналоговые выводы могут быть сконфигурированы как две отдельные зоны объемного звука 7.1. Другие конфигурации могут быть следующими: две отдельных зоны объемного звука 5.1 и четыре зоны стереозвука, одна зона объемного звука 7.1 и четыре зоны стереозвука, восемь зон стереозвука и др. Зонирование в значительной степени может обеспечиваться программным конфигурированием, поэтому систему можно легко повторно конфигурировать согласно изменяющимся требованиям пользователя.
2
На фиг.10 приведена блок-схема примерного модуля 1000 вывода видеосигнала с HMDI. На данном этапе рассматриваются вопросы работы этого модуля с аудиосигналами, работа с видеосигналами подробно описывается далее. Вход S/PDIF и множество входов IS связаны с передатчиками 1010, 1015 HDMI, которые выводят комбинированные сигналы многоканального аудио и цифрового видео высокой четкости на порты 1020, 1025 HDMI. Таким образом, создается аудио/видеосоединение с совместимыми внешними устройствами по одному кабелю.
Маршруты коммутации видеосигналов
На фиг.11 приведена блок-схема видеокоммутатора 220, соединенного с множеством модулей ввода и вывода, в соответствии с примерным вариантом осуществления настоящего изобретения. Видеокоммутатор 220 обеспечивает коммутацию цифрового видеосигнала в цветовом пространстве красный/зеленый/синий (Red/Green/Blue, RGB) и/или яркость, цветность: синий, цветность: красный (Luminance, Chroma: Blue, Chroma: Red, YCbCr), предпочтительно без зависимости от разрешения. Конфигурация такого коммутатора обеспечивает прием множества входных сигналов от входных модулей видеосигналов и коммутацию этих входов на множество выходов, связанных с модулями вывода видеосигналов и/или другими компонентами. Коммутация между входами и выходами может выполняться изолированно, т.е. конкретный вход будет соединяться с конкретным выходом, или по всему модулю, т.е. сигналы с группы линий от выбранного модуля будут коммутироваться на несколько линий другого модуля.
Перед передачей на видеокоммутатор 220 видеосигнал предпочтительно преобразуется в общий формат видеосигналов. Общий формат позволяет коммутировать любой вход на любой выход. Например, перед подачей на коммутатор все видеосигналы могут преобразовываться в формат последовательного цифрового видеосигнала или в формат параллельного цифрового видеосигнала. В одном варианте осуществления последовательные цифровые видеосигналы могут представлять собой сигналы последовательного цифрового интерфейса (Serial Digital Interface, SDI). В другом варианте видеокоммутатор 220 может быть сконфигурирован для коммутации комбинации различных форматов видеосигналов. В примерном варианте осуществления на видеокоммутаторе сконфигурирована коммутация последовательных цифровых видеосигналов по маршрутам 1110 коммутации последовательного сигнала и коммутация параллельных видеосигналов по маршрутам 1120 коммутации параллельного сигнала. Видеоданные могут быть стандартной четкости (standard definition, SD) (480i@30,480p@60 и т.д.), высокой четкости (high definition, HD) (720p@60,1080i@60 и т.д.) или нестандартными (например, VGA, SVGA, XVGA и т.д.), при этом в поток видеоданных может быть внедрена информация с пустыми кадрами или кадрами синхронизации. Пиксельная синхронизация может независимо коммутироваться на модуль вывода для целей полного восстановления как стандартных, так и и нестандартных видеосигналов.
Согласно примерному варианту осуществления, видеокоммутатор 220 связан с несколькими модулями ввода, такими как модуль 600 ввода цифрового видеосигнала с HDMI, модуль 1200 ввода аналогового видеосигнала, модуль 1300 ввода комбинированного аналогового и цифрового видеосигнала. Далее, видеокоммутатор 220 связан с подсистемой 240 обработки данных. В примерном варианте осуществления подсистема 240 обработки данных выдает сигналы цифрового интерфейса визуализации (Digital Visual Interface, DVI), формат RGB, обычно используемый в компьютерных мониторах, например плоскопанельных мониторах на жидких кристаллах (Liquid Crystal Displays, LCDs). Сигналы DVI могут преобразовываться приемниками 1130, 1135 DVI в сигналы YCbCr до поступления в видеокоммутатор 220 или могут быть направлены в коммутатор в формате DVI. Подсистема 240 обработки данных может также выдавать сжатый видеосигнал, например видеосигнал в кодировке MPEG (Moving Picture Experts Group, формат группы экспертов по движущимся изображениям), по одному или нескольким подключениям Ethernet. Очевидно, что помимо MPEG могут использоваться другие стандарты кодирования, и, соответственно, настоящее описание следует рассматривать только как пример. В примерном варианте осуществления коммутация сжатых видеоданных, поступающих от подсистемы 240 обработки, выполняется коммутатором 230 Ethernet.
Видеокоммутатор 220 в сочетании с коммутатором 230 Ethernet обеспечивают передачу видеопотоков на модули 1000 вывода, а также на переднюю панель 1150. Модули вывода 1000 принимают последовательные цифровые видеосигналы от видеокоммутатора 230 или сжатые видеосигналы от коммутатора 230 Ethernet и преобразуют эти сигналы в форматы, совместимые с видеодисплеями и другим оборудованием, например в формат HDMI. Аналогичным образом, экран 1150 передней панели принимает различные форматы видеосигналов и преобразует эти сигналы по мере необходимости для их отображения на экране 1160 LCD-монитора.
На фиг.6 был показан модуль 600 цифрового видеосигнала с HDMI, где происходит прием цифровых видеосигналов от внешних устройств через множество разъемов 610, 620, 630, 640 HDMI. Сигналы HDMI передаются на приемники 615, 625, 635, 645 HDMI, которые выводят последовательные цифровые видеосигналы на видеокоммутатор 220.
На фиг.12 приведена блок-схема примерного модуля 1200 ввода аналогового видеосигнала. Модуль 1200 ввода аналогового видеосигнала в примерном варианте осуществления имеет 4 банка видеовходов 1210, 1220, 1230, 1240, каждый из которых состоит из 3-х разъемов RCA и разъема S-видео. Разъемы RCA могут принимать композитные или компонентные видеосигналы с четкостью SD или HD. Видеосигналы передаются в многоформатные декодеры видеосигналов и аналого-цифровые преобразователи 1215, 1225, 1235, 1245, такие как преобразователи модели AD7403 производства Analog Devices Inc. Многоформатные декодеры видеосигналов и аналого-цифровые преобразователи 1215, 1225, 1235, 1245 поддерживают различные распространенные видеосигналы, такие как 525i, 625i, 525p, 625p, 720p, 1080i, 1250i и др. Выходные сигналы этих устройств в формате последовательных цифровых видеосигналов передаются на матричный видеокоммутатор 220 для коммутации на другие модули.
На фиг.13 приведена блок-схема примерного комбинированного модуля 1300 ввода аналогового и цифрового видеосигнала. Комбинированный модуль целесообразно применять в малых системах, поскольку он позволяет пользователю получить аналоговые и цифровые соединения с применением небольшого числа модулей. Например, система базового уровня может быть создана при наличии только комбинированного модуля 1300 ввода аналогового и цифрового видеосигнала и модуля 1000 вывода видеосигнала. Наличие лишь указанных двух модулей уже обеспечивает наличие достаточных функций коммутации видеосигналов в системе. Согласно примерному варианту осуществления, комбинированный модуль 1300 ввода аналогового и цифрового видеосигнала имеет разъемы HDMI 1310, 1320, соединенные с приемниками 1315, 1325 HDMI, которые подают последовательные цифровые видеосигналы на видеокоммутатор 220. Кроме того, имеется несколько наборов входов 1330, 1340 аналогового видеосигнала, каждый из которых имеет 3 разъема RCA и разъем S-видео, позволяющие принимать видеосигнал по композитному соединению, компонентному соединению и соединению S-video. Аналогично описанному ранее модулю 600 ввода цифрового видеосигнала с HDMI, эти сигналы передаются на многоформатные декодеры видеосигналов и аналого-цифровые преобразователи 1350, 1360, преобразователи модели AD7403 производства Analog Devices Inc., и преобразуются в последовательные цифровые видеосигналы для передачи на видеокоммутатор 220.
Возвращаясь к фиг.7, который является блок-схемой примерного дополнительного порта 700 аудио/видеосигналов, следует отметить, что обеспечиваются разнообразные подключения по видеоканалу к системам видеоигр, видеокамерам, компьютерам, караоке-машинам и/или другим устройствам. Согласно примерному варианту осуществления, имеется банк 710 аналоговых видеовходов с 3-мя разъемами RCA и разъемом S-видео, позволяющий принимать композитные, компонентные сигналы и сигналы S-Video. Видеосигналы проходят на мультиформатный видеодекодер и аналого-цифровой преобразователь 730 для преобразования в последовательные цифровые видеосигналы, которые могут быть переданы на видеокоммутатор 220. Дополнительное подключение к порту 700 видеоигр обеспечивается через разъем 1340 HDMI, соединенный с приемником 1350 HDMI.
Возвращаясь к фиг.10, которая является блок-схемой модуля 1000 вывода видеосигналов согласно примерному варианту осуществления программируемого мультимедиа-контроллера 100, можно отметить следующее. Видеосигналы могут приниматься в различных форматах, в том числе в формате последовательного цифрового видео, параллельного цифрового видео или сжатого видео, передаваемого по Ethernet. Сжатое видео декодируется видеодекодером/кодером 1030 и затем передается на видеопроцессору 1040. Последовательные цифровые видеосигналы принимаются непосредственно видеопроцессором 1040, в котором они проходят деинтерлейсинг, масштабирование, комбинирование, преобразование частоты кадров, обработку "картинка-в-картинке" и другие функции обработки видео. Далее видеопроцессор 1040 масштабирует видеоизображения до разрешения, совместимого с дисплеем, на который они должны выводиться. Кроме того, параллельные видеосигналы буферизуются интерфейсами 1050, 1055 буфера изображений, соединенными с двумя буферными модулями 1060, 1065 памяти, за счет которых они синхронизируются с тактированием выходного сигнала видеопроцессора. Видеосигналы из указанных буферов изображений объединяются и смешиваются с выходным видеосигналом видеопроцессора в видеосмесителе 1070. Выходы видеосмесителя 1070 соединяются с передатчиками 1010, 1015 HDMI, которые выводят объединенные многоканальные аудиосигналы и цифровые видеосигналы высокой четкости на порты 1020, 1025 HDMI. К аналого-цифровым преобразователям 1080, 1085 подключены дополнительные выходы, которые реализуют аналоговые видеовыходы для банков 1090, 1095 видеовыходов, в том числе 3 разъема RCA и разъем S-Video.
Система, сконфигурированная таким образом, может выполнять множество операций, дающих значительное преимущество. Например, видеосигнал от любого источника может быть направлен видеокоммутатором 220 на видеодекодер/кодер 1030 для сжатия и выводиться в форме сжатого видео. Такое сжатое видео может быть сохранено в подсистеме 240 обработки для воспроизведения впоследствии (т.е. со сдвигом во времени) или перемещено на сменный носитель, такой как CDR или DVDR. Таким образом, можно реализовать функции цифрового видеомагнитофона (digital video recorder, DVR) и персонального видеомагнитофона (personal video recorder, PVR), позволяющие пользователю записывать и воспроизводить телепрограммы или другое содержание.
Далее, система может выполнять функции наложения видеоизображений, позволяющие накладывать динамическое видеоизображение, графические символы и/или текст, поступающие от подсистемы обработки, на различные компоненты входных сигналов модулей ввода. Функция экранного отображения (on-screen-display, OSD) в видеосистемах является тривиальной, однако обычные функции в общем случае ограничиваются наложением графических или текстовых данных в конкретных предопределенных прямоугольных областях видеодисплея. Настоящее изобретение позволяет выполнять наложение видео, графических символов и/или текста в любом месте видеодисплея по отдельным пикселям, а также по близким пикселям. Поскольку наложение строится в таком детальном масштабе, возможно наложение фактически любой формы. Далее, местоположение наложенного изображения может конфигурироваться динамически. Так, область дисплея, в которой выводится накладываемое изображение, может описываться по одному кадру, что позволяет, например, создавать "движущееся" наложенное изображение. Кроме того, логика смешивания и взаимного наложения может позволять накладывать видео, графические символы и/или текст с отображением в полупрозрачном виде или с эффектом появления/исчезновения изображения.
Для реализации вышеупомянутых описанных возможностей система использует для своих нужд большое количество цветов, которые могут быть представлены цифровыми видеосигналами. Например, цифровые видеосигналы, закодированные в 24-битных цветах, могут представлять приблизительно 16.7 миллиона уникальных цветов. В одном варианте осуществления настоящего изобретения видеопроцессор 1040 изменяет цвета, соответствующие пикселям в той области кадра, где требуется наложение, на предопределенный цвет. Предопределенный цвет может быть произвольно выбранным цветом, предпочтительно это цвет, который в типичном видео встречается с частотой реже средней. Видеосмеситель 1070 сконфигурирован для обнаружения появления предопределенного цвета, и в каждом пикселе видеокадра, содержащем такой цвет, выполняется подстановка видеоданных из другого видеопотока. Видеоданные из другого видеопотока могут представлять собой динамическое видео, статические изображения и/или текст. Например, область, имеющая предопределенный установленный цвет, может быть заменена на наложенное изображение с динамическим видео, поступающим от подсистемы 240 обработки и передаваемым через параллельные цифровые видеосигналы. Аналогичным образом в этой области может быть подставлено текстовое поле, сгенерированное подсистемой 240 обработки.
Путем выбора различных пикселей, заменяемых на предопределенный цвет, можно легко менять область видеодисплея, на которую будет производиться наложение. За счет этого накладываемые образы могут динамически перемещаться по экрану или могут выводиться меню любой формы, динамически расширяемые в другие области экрана при выборе пунктов.
В общем случае, ввиду большого количества цветов, которые могут представляться видеосигналами, любые "естественные" случаи появления пикселей предопределенного цвета встречаются относительно редко, поэтому любое непредусмотренное наложение видео, возникающее из-за таких пикселей, не будет достаточно заметно для зрителя. Согласно альтернативному варианту осуществления, перед заменой избранных пикселей кадра на предопределенный цвет видеопроцессор 1040 может просканировать кадр для обнаружения случаев появления такого цвета и изменить такие пиксели на почти идентичный оттенок, например, путем добавления одного бита. Таким образом, можно почти полностью предотвратить ошибки наложения видеоизображений.
В еще одном варианте осуществления видеопроцессор 1040 может изменять пиксели в указанной области для наложения предопределенного узора цветов. Например, смежные пиксели могут заменяться на повторяющийся узор из двух или трех пикселей, где каждый из трех смежных пикселей будет иметь собственный предопределенный цвет. Поскольку вероятность появления трех предопределенных цветов в смежных пикселях чрезвычайно низка, "естественные" случаи их появления могут быть устранены почти полностью.
Далее показывается, что может потребоваться наложение частей нескольких различных видеопотоков в каждом кадре видеодисплея. Специалисту в данной области техники будет ясно, что вышеописанная методика может быть расширена за счет выбора дополнительных предопределенных цветов с целью представления каждого накладываемого изображения и конфигурирования видеосмесителя 1070 для применения накладываемых изображений везде, где будет обнаружен каждый из этих цветов
Подсистема обработки
На фиг.14 приведена блок-схема подсистемы 240 обработки согласно примерному варианту осуществления настоящего изобретения. Подсистема 240 обработки реализует пользовательский интерфейс и другие прикладные программы для управления и реализации функциональных возможностей для программируемого мультимедиа-контроллера 100. Например, подсистема 240 обработки реализует функциональные возможности DVR, функции редактирования аудио и видео, контроль и управление средствами домашней автоматизации, управление телефонией и различные другие функции посредством программируемых сервисов. Подробности о сервисах, реализация которых возможна под управлением подсистемы 240 обработки, приведены в документе ПРОГРАММИРУЕМЫЙ МУЛЬТИМЕДИА-КОНТРОЛЛЕР С ПРОГРАММИРУЕМЫМИ ФУНКЦИЯМИ, ранее включенном в настоящий документ посредством ссылок.
Подсистема 240 обработки может включать в себя единственный компьютер или два или более компьютера, сконфигурированные для обеспечения избыточности и/или распределения нагрузки. Используемый термин "компьютер" следует понимать в широком смысле как охватывающий весь диапазон компонентов, реализующих специфичные (для определенных приложений) или универсальные функциональные возможности по обработке. Например, каждый "компьютер" может представлять собой плату центрального процессора, одноплатный компьютер (Single Board Computer, SBC), модуль обработки РС/104, обычную системную плату форм-фактора АТХ и центральный процессор, универсальный персональный компьютер малого форм-фактора, доступный в широкой продаже, и/или универсальный персональный компьютер большого форм-фактора или предназначенный для установки в стойку, доступный в широкой продаже. Соответственно, следует явно отметить, что в подсистеме 240 обработки могут с преимуществом использоваться различные другие "компьютеры", и с развитием технологий в соответствующих областях могут с преимуществом применяться новые технологии.
Согласно примерному варианту осуществления, каждый компьютер 1410, 1420 подключен к соединительной плате 1450, которая обеспечивает интерфейс подключения для портов ввода и вывода компьютера. Порты USB, IEEE 1394, Ethernet, DVI и порты питания, как и другие, подключаются через соединительную плату 1450. В других вариантах осуществления каждый компьютер 1410, 1420 может быть расположен вне домашнего мультимедиа-контроллера и соединяться с программируемым мультимедиа-контроллером по проводному сетевому соединению или беспроводному каналу, такому как канал IR, Wi-Fi и/или Bluetooth™.
Далее, каждый компьютер 1410, 1420 может быть соединен с запоминающими устройствами 1430, 1440, которые являются дополнительной емкостью, например, для хранения цифровой медиа-библиотеки. Запоминающие устройства 1430, 1440 могут представлять собой отдельные жесткие диски, RAID-массивы из нескольких жестких дисков, энергонезависимую оптическую или электромагнитную память и/или системы хранения данных других типов.
Согласно примерному варианту осуществления, подсистема 240 обработки включает в себя два универсальных персональных компьютера малого форм-фактора. Такие компьютеры предпочтительно используются без физической модификации, т.е. в том виде, в котором они имеются в широкой продаже, и остаются в своих первоначальных корпусах, с исходными компонентами и общим видом. В одном варианте осуществления два универсальных персональных компьютера малого форм-фактора представляют собой компьютеры Mac Mini™ производства Apple Computer, Inc. Размеры компьютера Mac Mini™ составляют приблизительно 2 дюйма в высоту, 6,5 дюймов в ширину и 6.5 дюймов в глубину; кроме того, он имеет удобную форму для интеграции в подсистему обработки. Компьютер Mac Mini™ имеет внутренний дисковый привод, который может использоваться совместно с запоминающими устройствами 1430, 1440 для получения расширенной емкости запоминающих устройств и/или для избыточности. Компьютер Mac Mini™ также имеет внутренний интерфейс WI-FI 1470, 1480, который может использоваться для подключения к программируемому мультимедиа-контроллеру 100 по WI-FI.
На фиг.15 изображено множество портов подключения на примерном универсальном персональном компьютере 1410 малого форм-фактора в трехмерном виде. Согласно примерному варианту осуществления, порты подключения персонального компьютера малого форм-фактора размещаются на одной панели компьютера таким образом, что компьютер может быть "включен" в соответственно установленные разъемы на соединительной плате 1450. Например, порт 1510 USB, порт 1520 IEEE 1394, порт 1530 Ethernet, порт 1540 DVI и порт питания 1550 могут соединяться с соединительной платой 1450 за счет прижима. В отсеках, в которые устанавливаются персональные компьютеры малого форм-фактора, могут быть установлены направляющие (не показаны). Такие шины позволяют "вдвигать" компьютеры в отсеки и выравнивать их с разъемами на соединительной плате 1450. В альтернативном варианте осуществления универсальные персональные компьютеры 1410,1420 малого форм-фактора связываются с соединительной платой 1450 набором коротких соединительных проводов (не показанный) к каждому интерфейсу портов компьютера. Такие провода можно легко перемещать для адаптации к различным местоположениям портов и, таким образом, применять различные компьютеры.
На фиг.16 представлена часть передней панели 1600 программируемого мультимедиа-контроллера, созданного в соответствии с примерным вариантом осуществления настоящего изобретения, и показаны два универсальных персональных компьютера 1410, 1420 малого форм-фактора, вставленные в отсеки. Передняя панель 1600 программируемого мультимедиа-контроллера имеет жидкокристаллический дисплей 1150, входы, выходы и устройства управления, такие как регуляторы и кнопки (не показаны). Согласно примерному варианту осуществления, персональные компьютеры 1410, 1420 малого форм-фактора представляют собой компьютеры Mac Mini™, непосредственно связанные с соединительной платой 1450. Передняя панель 1600 программируемого мультимедиа-контроллера может быть очерчена и/или покрашена для соответствия контуру и цвету передних поверхностей персональных компьютеров 1410, 1420 малого форм-фактора, с целью достижения требуемого вида. Кроме того, пользователю могут быть доступны медиа-приводы, такие как оптические приводы 1430, 1440.
Управление
На фиг.17а приведена блок-схема, на которой показаны модули управления, соединенные с программируемым мультимедиа-контроллером 100 согласно примерному варианту осуществления настоящего изобретения. Программируемый мультимедиа-контроллер 100 предпочтительно взаимодействует с множеством различных модулей управления и позволяет пользователю конфигурировать, управлять и выполнять другие действия с системой, состоящей из различных между собой устройств.
Согласно одному варианту осуществления, в качестве модуля дистанционного управления может использоваться мультимедиа-проигрыватель 1710, например портативный проигрыватель DVD или MPEG, DVD-проигрыватель в стойке, прикладное программное обеспечение проигрывания мультимедиа, работающее на универсальном компьютере, и/или устройство другого типа. Мультимедиа-проигрыватель 1710 загружает специальный медиа-файл, например, путем считывания файла DVD с диска DVD или другого носителя данных, такого как жесткий диск или flash-память. Указанный медиа-файл содержит пользовательский интерфейс для программируемого мультимедиа-контроллера 100. В альтернативном варианте мультимедиа-проигрыватель 1710 может получить медиа-файл с пользовательским интерфейсом от программируемого мультимедиа-контроллера 100 по проводному или беспроводному соединению. После этого пользователь может управлять системой путем выбора пунктов меню, отображаемого на мультимедиа-проигрывателе, способом, подобным выбору пунктов меню обычного DVD с кинофильмом. При выборе определенных пунктов меню мультимедиа-проигрыватель помещает в выходной сигнал, генерируемый этим мультимедиа-проигрывателем, предопределенную информацию. В одном варианте осуществления указанный выходной сигнал является выходным цифровым аудиосигналом. В другом варианте осуществления указанный выходной сигнал является выходным цифровым видеосигналом или сигналом другого типа.
Выходной сигнал может приниматься интерфейсом 1720 беспроводной передачи аудиосигнала, который передает сигнал в модуль 380 беспроводной передачи аудиосигнала в программируемом мультимедиа-контроллере 100. После этого информация, внедренная в сигнал, декодируется подсистемой обработки 240 для извлечения явных команд управления. В то время как согласно примерному варианту осуществления сигналы передаются на программируемый мультимедиа-контроллер 100 через беспроводное соединение, следует явно отметить, что могут также использоваться проводные соединения. Например, можно применить проводные соединения с модулем 400 ввода цифрового аудиосигнала или модулем 500 ввода аналогового аудиосигнала, и принимаемые таким образом сигналы будут обрабатываться подсистемой 240 обработки для извлечения специфических команд управления. Далее, можно указать, совместно с вышеописанной методикой внедрения информации управления могут использоваться устройства, отличные от проигрывателей на основе DVD. Например, сигналы с внедренной информацией управления при выборе пунктов меню может генерировать портативный МР3-проигрыватель, такой как IPOD™ производства Apple Computer Inc. Проигрыватель компакт-дисков также может генерировать внедренную информацию управления, например, при выборе пользователем определенной дорожки компакт-диска. Аналогично, система видеоигр, такая как PSP™ производства Sony Electronics Inc., может использоваться подобным способом для генерации информации управления согласно информации, вводимой пользователем. Соответственно, специалисту в данной области техники будет ясно, что вышеупомянутая описанная методика может быть легко адаптирована для использования совместно с различными потребительскими устройствами, способными отображать информацию для пользователя и генерировать сигналы в ответ на ввод информации пользователем.
В одном варианте осуществления методика управления с внедрением информации, описанная выше, представляет собой методику управления с заимствованием бита, в которой один или несколько битов каждого информационного слова выходного сигнала цифрового устройства используются для размещения внедренной информации управления. Например, мультимедиа-проигрыватель может изменять наименьший значащий бит выходного цифрового аудиосигнала для помещения информации управления, при этом остальные биты выходного сигнала остаются неизменными. Современные цифровые аудиосигналы обычно имеют дискретизацию 16 или более бит, поэтому изменение наименьшего значащего бита абсолютно незаметно для слушателя. Подробное описание методики управления с заимствованием бита приведено ниже со ссылками на фиг.17b.
В другом варианте осуществления методика управления с внедрением информации представляет собой методику управления с тональными сигналами, согласно которой персональный мультимедиа-проигрыватель или другое устройство при выборе пункта пользователем генерируют тональный аудиосигнал. Такой тональный аудиосигнал может передаваться программируемому мультимедиа-контроллеру 100 в цифровом или аналоговом формате. Далее тональный аудиосигнал декодируется программируемым мультимедиа-контроллером 100 для генерации определенной команды управления. Следует явно отметить, что возможно использование в системе множества других методик управления, и, таким образом, настоящее описание следует рассматривать как пример.
Кроме вышеописанных методик управления с внедрением информации, программируемым мультимедиа-контроллером можно также управлять через один или несколько обычных пультов 1730 дистанционного управления, генерирущих радиочастотные или инфракрасные сигналы. Такие сигналы принимаются приемопередатчиком 260 IR и конвертером 267 RF. Далее, для управления программируемым мультимедиа-контроллером 100 может использоваться карманный компьютер, ручной компьютер или другое устройство, имеющее интерфейс WI-FI стандарта IEEE 802.11, стандарта Bluetooth™, стандарта Zigbee™ или другого стандарта. Аналогичным образом, к программируемому мультимедиа-контроллеру 100 может быть подключен персональный компьютер 1750, на котором работает приложение управления, по соединению WI-FI и/или проводному соединению по порту 232 Ethernet. В одном варианте осуществления персональный компьютер 1750 снабжается интерфейсом сенсорного экрана, что позволяет пользователю выбирать операции в интерактивном режиме и управлять системой другими способами путем прикосновений.
На фиг.17b приведена блок-схема примерной методики управления с внедрением информации, в которой используется управление с заимствованием бита. Как описано выше, мультимедиа-проигрыватель или другое устройство управления может изменять один или несколько битов в цифровом выходном сигнале, например, наименьший значащий бит цифрового выходного аудиосигнала. После этого цифровой выходной аудиосигнал принимается программируемым мультимедиа-контроллером 100, например модулем 380 беспроводной передачи аудиосигнала. Далее сигнал передается в программируемую вентильную матрицу (Field Programmable Gate Array, FPGA) 1760 с управлением по заимствованному биту. Из цифрового аудиосигнала удаляется наименьший значащий бит 1768 каждого информационного слова 1765. Остающийся сигнал может передаваться в аудиокоммутатор 215 для возможного вывода на динамики, подключенные к системе. Наименьшие значащие биты принимаются модулем 1770 логики блокировочных слов, который восстанавливает управляющие командные слова из потока наименьших значащих битов. Модуль 1770 логики блокировочных слов может искать предопределенные битовые комбинации в полученных наименьших значащих битах для установки "блокировки" на границах слова. Таким образом, при обнаружении специфической предопределенной последовательности битов модуль 1770 логики блокировочных слов определяет достижение границы слова. После этого указанные биты сохраняются в буфере 1780 в качестве управляющих командных слов. Управляющие командные слова передаются в расширитель 1790 I2C и далее на микроконтроллер 210. Микроконтроллер 210 совместно с подсистемой 240 обработки выполняет действия, указанные в управляющих командных словах управления. Специалисту в данной области техники будет ясно, что в вышеописанную методику управления по заимствованному биту могут быть внесены различные модификации без отступления от существа изобретения. Например, могут использоваться другие биты выходного сигнала мультимедиа-проигрывателя, такие как два наименьших значащих бита каждого информационного слова. С другой стороны, сигнал не обязательно должен быть цифровым аудиосигналом. Указанная методика может быть реализована на основе цифрового видеосигнала или другого сигнала.
Расширение
Одиночный программируемый мультимедиа-контроллер 100 может быть соединен с дополнительными программируемыми мультимедиа-контроллерами через порт 280 расширения (фиг.2). Порт 280 расширения позволяет подключать два или более аудио- и видеокоммутатора и осуществлять обмен соответствующими данными управления. Таким образом, источники аудио- и видеосигналов, соединенные с одним контроллером, могут выводиться с другого контроллера, расположенного в другом месте, например в другой части здания или в другом здании.
На фиг.18 приведена диаграмма примерной схемы соединений и расширения для обработки аудиосигналов. Аудиокоммутаторы 215, 1810, 1820 программируемых мультимедиа-контроллеров 100, 1840, 1850 соединяются с интерфейсами 1860, 1870, 1880 Ethernet. Согласно примерному варианту осуществления, интерфейсы Ethernet представляют собой интерфейсы CobraNet™, которые выполняют преобразования "синхронный-в-изохронный" и "изохронный-в-синхронный", а также преобразование данных в форму, требуемую для передачи цифрового аудиосигнала по по сети Ethernet в реальном времени. Интерфейсы CobraNet™ также передают по сети Ethernet данные простого протокола управления сетью (Simple Network Management Protocol, SNMP). Согласно примерному варианту осуществления, любой отдельный программируемый мультимедиа-контроллер может передавать или принимать четыре декомпрессированных аудиопотока. Сама сеть Ethernet может представлять собой проводную сеть или сеть WI-FI на основе какого-либо протокола беспроводных сетей, такого как IEEE 802.11G.
На фиг.19 приведена диаграмма примерной схемы соединений и расширения для обработки видеосигналов. Видеокоммутаторы 220, 1910, 1920 программируемых мультимедиа-контроллеров 100, 1840, 1850 связаны двумя последовательными кольцами 1930, 1940 видеосигналов. Кольца 1930, 1940 последовательных видеосигналов могут представлять собой наборы последовательных видеолиний или, в альтернативном варианте, одиночную оптоволоконную линию, позволяющую передавать множество мультиплексированных последовательных видеосигналов. Согласно примерному варианту осуществления, четыре последовательных видеолинии представляют собой соединение CWDM (Coarse Wavelength Division Multiplexed, мультиплексирование с большим разнесением по длине волны) по одному оптическому волокну, при этом каждый последовательный видеосигнал передается с использованием индивидуальных длин волн.
Пример применения
На фиг.20 приведена блок-схема с двумя программируемыми мультимедиа-контроллерами 100, 1840, используемыми в примерном приложении, а именно в приложении 2000 профессиональной звукозаписи и микширования. Это приложение является лишь одним примером из множества различных приложений, в которых с преимуществом могут использоваться программируемые мультимедиа-контроллеры.
В профессиональной студии звукозаписи и микширования обычно применяется большое число соединений с различными аудиоустройствами, поэтому в настоящем примере используются два программируемых мультимедиа-контроллера 100, 1840, связанные согласно схемам расширения, описанным ранее. Дисплей 2010 редактирования и дисплей 2020 микширования соединяются с контроллерами, например, посредством подключения DVI или HDMI. Дисплеи могут представлять собой универсальные компьютеры, на которых работает прикладное программное обеспечение, имеющее функции редактирования и микширования, или интерфейс с прикладным программным обеспечением редактирования и микширования, работающего в другом месте, например на программируемых мультимедиа-контроллерах 100, 1840 или на подключенном к ним компьютере 2060. В альтернативном варианте дисплеи 2010, 2020 редактирования и микширования могут представлять собой просто компьютерные мониторы, например мониторы с сенсорными экранами, подключенные к программируемым мультимедиа-контроллерам 100, 1840. Кроме того, к программируемым мультимедиа-контроллерам 100, 1840 может быть подключен (например, по соединению Ethernet) один или несколько аппаратных модулей 2050, специально предназначенных для определенных приложений и оптимизированных для редактирования, микширования или других задач. Таким образом, имеется возможность соединения широкого разнообразия распространенного аудиооборудования.
Различные соединения, такие как соединения аналоговых аудиосигналов, цифровых аудиосигналов и/или Firewire™, могут также выводиться на интерфейсную панель 2070. На интерфейсной панели 2070 имеются порты подключения, такие как порты 2072 подключения инструментов и порты 2074 подключения микрофона. Принимаемый аудиосигнал передается программируемым мультимедиа-контроллерам 100, 1840 и может выводиться на динамики 230, 240. Таким образом, использование программируемых мультимедиа-контроллеров позволяет реализовать функциональные возможности профессиональной студии звукозаписи и микширования при минимуме дополнительных аппаратных средств.
Вышеприведенное описание относится к конкретным вариантам осуществления настоящего изобретения. С другой стороны, должно быть очевидно, что в описанные варианты осуществления могут вноситься другие изменения и модификации с достижением некоторых или всех их преимуществ. Кроме того, процедуры или процессы могут быть реализованы в аппаратных средствах, программном обеспечении, в форме носителя с возможностью считывания компьютером, на котором находятся программные команды, встроенном программном обеспечении или их комбинации. Таким образом, цель прилагаемой формулы изобретения состоит в описании всех таких изменений и модификаций в пределах сущности и объема изобретения.