система воспроизведения мультимедиа в портативном устройстве
Классы МПК: | H04N7/173 с двухсторонним режимом работы, например когда абонент посылает сигнал выбора программы H04Q7/32 оборудование движущегося абонента G06F15/16 сочетание двух или более вычислительных машин, каждая из которых снабжена по меньшей мере арифметическим устройством, программным устройством и регистром, например для одновременной обработки нескольких программ H04L29/02 управление передачей данных; обработка данных, поступающих с линий связи |
Автор(ы): | ПАТВАРИ Сринивас (US) |
Патентообладатель(и): | КВЭЛКОММ ИНКОРПОРЕЙТЕД (US) |
Приоритеты: |
подача заявки:
2003-06-04 публикация патента:
10.02.2008 |
Изобретение относится к системам обработки мультимедиа и, в частности, к системе воспроизведения мультимедиа в портативном устройстве, имеющем встроенный контроллер. Техническим результатом является собственно создание системы, позволяющей воспроизводить новые форматы мультимедийного контента на различных портативных устройствах без необходимости его приспособления с учетом различных ресурсов воспроизведения, имеющихся в каждом устройстве. Мультимедийная система для воспроизведения мультимедийного контента в портативном устройстве для обработки данных содержит встроенный процессор для управления ресурсами воспроизведения мультимедийного контента, а портативное устройство содержит один или несколько ресурсов воспроизведения. Мультимедийная система выполнена с возможностью осуществлять операции генерации мультимедийного объекта на основании мультимедийного контента, связывать обработчик формата с мультимедийным объектом и управлять выбранным ресурсом воспроизведения с использованием обработчика формата для воспроизведения мультимедийного контента из мультимедийного объекта. 3 н. и 6 з.п. ф-лы, 5 ил., 1 табл.
Формула изобретения
1. Способ воспроизведения мультимедийного контента в портативном устройстве для обработки данных, имеющем встроенный процессор для управления ресурсами воспроизведения мультимедийного контента, причем мультимедийный контент имеет связанный тип мультимедиа, при этом портативное устройство дополнительно содержит один или несколько ресурсов воспроизведения, заключающийся в том, что видоизменяют мультимедийный объект на основании мультимедийного контента, причем мультимедийный объект имеет интерфейс, включающий в себя способ проигрывания, ставят в соответствие мультимедийный объект процедуре обработки в обработчике формата, причем обработчик формата выбран из множества обработчиков формата, каждый из которых соответственно связан с конкретным типом мультимедиа и поддерживает по меньшей мере функцию проигрывания, и применяют способ проигрывания мультимедийного объекта для воспроизведения мультимедийного контента, причем способ проигрывания вызывает функцию проигрывания обработчика формата для управления выбранным ресурсом воспроизведения упомянутого устройства для воспроизведения мультимедийного контента из мультимедийного объекта.
2. Способ по п.1, отличающийся тем, что дополнительно генерируют структуру мультимедийных данных на основании мультимедийного контента.
3. Способ по п.1, отличающийся тем, что на этапе управления реализуют конечный автомат в обработчике формата для управления выбранным ресурсом воспроизведения и воспроизводят мультимедийный контент с использованием конечного автомата в обработчике формата.
4. Компьютерно-считываемый носитель данных, хранящий компьютерно-выполняемые команды, которые при выполнении встроенным процессором портативного устройства предписывают портативному устройству воспроизводить мультимедийный контент, имеющий связанный тип мультимедиа, посредством осуществления способа, заключающегося в том, что видоизменяют мультимедийный объект на основании мультимедийного контента, причем мультимедийный объект имеет интерфейс, включающий в себя способ проигрывания, ставят в соответствие мультимедийный объект процедуре обработки в обработчике формата, причем обработчик формата выбран из множества обработчиков формата, каждый из которых соответственно связан с конкретным типом мультимедиа и поддерживает по меньшей мере функцию проигрывания, и применяют способ проигрывания мультимедийного объекта для воспроизведения мультимедийного контента, причем способ проигрывания вызывает функцию проигрывания обработчика формата для управления выбранным ресурсом воспроизведения упомянутого устройства для воспроизведения мультимедийного контента из мультимедийного объекта.
5. Компьютерно-считываемый носитель данных по п.4, отличающийся тем, что дополнительно генерируют структуру мультимедийных данных на основании мультимедийного контента.
6. Компьютерно-считываемый носитель данных по п.4, отличающийся тем, что на этапе управления реализуют конечный автомат в обработчике формата для управления выбранным ресурсом воспроизведения и воспроизводят мультимедийный контент с использованием конечного автомата в обработчике формата.
7. Мультимедийная система для воспроизведения мультимедийного контента, имеющего связанный тип мультимедиа, в портативном устройстве для обработки данных, имеющем встроенный процессор для управления ресурсами воспроизведения мультимедийного контента, причем портативное устройство дополнительно содержит один или несколько ресурсов воспроизведения, содержащая средство видоизменения мультимедийного объекта на основании мультимедийного контента, причем мультимедийный объект имеет интерфейс, включающий в себя способ проигрывания, средство соотнесения мультимедийного объекта процедуре обработки в обработчике формата, причем обработчик формата выбран из множества обработчиков формата, каждый из которых соответственно связан с конкретным типом мультимедиа и поддерживает по меньшей мере функцию проигрывания, и средство применения способа проигрывания мультимедийного объекта для воспроизведения мультимедийного контента, причем способ проигрывания вызывает функцию проигрывания обработчика формата для управления выбранным ресурсом воспроизведения упомянутого устройства для воспроизведения мультимедийного контента из мультимедийного объекта.
8. Мультимедийная система по п.7, отличающаяся тем, что дополнительно содержит средство генерации структуры мультимедийных данных на основании мультимедийного контента.
9. Мультимедийная система по п.7, отличающаяся тем, что средство управления выбранным ресурсом воспроизведения содержит средство реализации конечного автомата в обработчике формата для управления выбранным ресурсом воспроизведения и средство воспроизведения мультимедийного контента с использованием конечного автомата в обработчике формата.
Описание изобретения к патенту
Область техники, к которой относится изобретение
Настоящее изобретение относится, в целом, к обработке мультимедиа и, в частности, к системе воспроизведения мультимедиа в портативном устройстве, имеющем встроенный контроллер.
Уровень техники
Достижения в технологии привели к созданию более миниатюрных и более мощных персональных вычислительных устройств. Например, в настоящее время существуют разнообразные портативные сотовые телефоны, карманные персональные компьютеры (КПК) и пейджеры, отличающиеся малыми размерами, малым весом и простотой использования. Обычно эти устройства имеют встроенный контроллер с ограниченными ресурсами памяти. Например, объем доступной памяти может ограничиваться малым размером устройства.
Однако все в большей степени требуется, чтобы эти устройства обрабатывали большие объемы данных и выполняли более сложные программы. Например, пользователям требуется удаленный доступ к интерактивным программам, например игровым программам, которые требуют, чтобы портативное устройство обеспечивало быстрое и эффективное воспроизведение мультимедийных приложений и контента (содержимого). Например, пользователи хотели бы использовать свои портативные устройства для просмотра и прослушивания мультимедийного контента, например видеоклипов, мультфильмов, кинофильмов и аудиозаписей, например, музыкального контента, обеспеченного в формате МР3.
Для воспроизведения мультимедийного контента на портативном устройстве необходимо управлять ресурсами воспроизведения устройства. Например, один тип портативного устройства может включать в себя малый экран дисплея с низким разрешением или громкоговоритель, а другой тип портативного устройства может включать в себя более крупный дисплей с более высоким разрешением и стереоустройство с двумя громкоговорителями. Таким образом, каждый тип портативного устройства может иметь разные ресурсы воспроизведения мультимедиа, с помощью которых можно воспроизводить мультимедийный контент. Поэтому для обеспечения мультимедийного контента для использования широким кругом портативных устройств, имеющих разные конфигурации и ресурсы воспроизведения, нужно решать проблемы совместимости.
Один способ, используемый для решения проблем совместимости, требует, чтобы мультимедийный контент имел формат, который, в частности, совместим с ресурсами воспроизведения, имеющимися в портативном устройстве. Например, если разработчик контента желает создать видеоконтент для использования в конкретном портативном устройстве, то разработчик приспосабливает видеоконтент так, чтобы он был точно совместим с ресурсами воспроизведения видео, имеющимися в портативном устройстве.
К сожалению, дорого и неэффективно создавать мультимедийный контент, приспособленный для каждого портативного устройства, на котором должен воспроизводиться контент. Например, разработчику контента понадобится видоизменять контент для различных портативных устройств и, таким образом, генерировать множественные версии одного и того же контента. Кроме того, разработчик контента вынужден постоянно обновлять свой контент по мере появления новых ресурсов воспроизведения.
Поэтому нужна система, позволяющая воспроизводить мультимедийный контент на различных портативных устройствах без необходимости его приспособления с учетом различных ресурсов воспроизведения, имеющихся в каждом устройстве. Система должна позволять воспроизводить все типы мультимедийного контента и обеспечивать расширяемую архитектуру, позволяющую воспроизводить новые форматы мультимедиа по мере их появления.
Сущность изобретения
Согласно одному или нескольким вариантам осуществления предусмотрена мультимедийная система, включающая в себя способы и устройство воспроизведения мультимедийного контента на портативном устройстве. В качестве портативного устройства может выступать, например, сотовый телефон со встроенным контроллером и ограниченными ресурсами памяти, который выполняет команды программы для воспроизведения мультимедийного контента с использованием имеющихся ресурсов воспроизведения устройства. Согласно одному или нескольким вариантам осуществления мультимедийная система является малой и эффективной реализацией, которая использует мало ресурсов и, в частности, хорошо подходит для использования в портативных устройствах, имеющих встроенные контроллеры с ограниченными ресурсами памяти.
Согласно одному варианту осуществления система содержит совокупность обработчиков формата для управления ресурсами воспроизведения устройства. Каждый обработчик формата предназначен для обработки мультимедийного контента, имеющего конкретный формат, и, таким образом, для управления ресурсами воспроизведения устройства для воспроизведения этого контента. Например, каждый обработчик формата воспроизводит (определенным образом форматированный) мультимедийный файл аудио или видео (проигрывает и понимает его). Обработчик формата определяет, какие ресурсы нужны контенту, считывает файл и вызывает нужные ресурсы. Портативное устройство содержит интерфейс прикладной программы (API) высокого уровня, который обработчик формата использует для выполнения задачи. Каждый обработчик формата может быть включен как часть мультимедийной системы в портативное устройство при изготовлении или может загружаться динамически. Поэтому, согласно одному или нескольким вариантам осуществления, можно использовать совокупность обработчиков формата, что позволяет воспроизводить мультимедийный контент в различных портативных устройствах без необходимости приспосабливать контент в зависимости от ресурсов воспроизведения, имеющихся на каждом устройстве. Кроме того, мультимедийная система обеспечивает расширяемую архитектуру, которая позволяет расширять систему, добавляя новые обработчики формата для воспроизведения новых типов контента по мере их разработки.
Архитектура мультимедийной системы выгодна как пользователям мультимедиа, так и разработчикам. Например, она позволяет разработчикам писать свои собственные обработчики формата для использования на беспроводной платформе. И пользователи мультимедиа приобретают выгоду, поскольку система обеспечивает простой интерфейс, позволяющий воспроизводить все типы контента без необходимости знать точную конфигурацию воспроизводящего устройства.
Согласно одному варианту осуществления предложен способ воспроизведения мультимедийного контента в портативном устройстве, имеющем встроенный процессор. Портативное устройство дополнительно содержит один или несколько ресурсов воспроизведения. Способ заключается в том, что генерируют мультимедийный объект на основании мультимедийного контента, связывают обработчик формата с мультимедийным объектом и управляют выбранным ресурсом воспроизведения с использованием обработчика формата для воспроизведения мультимедийного контента из мультимедийного объекта.
Согласно другому варианту осуществления, предложена мультимедийная система для воспроизведения мультимедийного контента в портативном устройстве, имеющем встроенный процессор. Портативное устройство содержит один или несколько ресурсов воспроизведения. Мультимедийная система содержит логику создания медиа, которая предназначена для генерации мультимедийного объекта на основании мультимедийного контента. Система также содержит логику выбора, которая предназначена для связывания обработчика формата с мультимедийным объектом. Система также содержит логику обработки формата, которая предназначена для управления выбранным воспроизведением для воспроизведения мультимедийного контента из мультимедийного объекта.
Согласно еще одному варианту осуществления предложен компьютерно-считываемый носитель данных, содержащий компьютерно-выполняемые команды для воспроизведения мультимедийного контента в портативном устройстве, имеющем встроенный процессор. Портативное устройство дополнительно содержит один или несколько ресурсов воспроизведения. При выполнении команд осуществляется способ, который заключается в том, что генерируют мультимедийный объект на основании мультимедийного контента, связывают обработчик формата с мультимедийным объектом и управляют выбранным ресурсом воспроизведения с использованием обработчика формата для воспроизведения мультимедийного контента из мультимедийного объекта.
Согласно еще одному варианту осуществления предложена мультимедийная система для воспроизведения мультимедийного контента в портативном устройстве, имеющем встроенный процессор. Портативное устройство дополнительно содержит один или несколько ресурсов воспроизведения. Мультимедийная система содержит средство генерации мультимедийного объекта на основании мультимедийного контента. Система также содержит средство связывания обработчика формата с мультимедийным объектом. Система также содержит средство управления выбранным ресурсом воспроизведения с использованием обработчика формата для воспроизведения мультимедийного контента из мультимедийного объекта.
Другие объекты, преимущества и признаки настоящего изобретения станут более понятными из нижеследующих краткого описания чертежей, подробного описания изобретения и формулы изобретения.
Краткое описание чертежей
Вышеизложенные аспекты и соответствующие преимущества описанных здесь вариантов осуществления дополнительно проясняются при рассмотрении нижеследующего подробного описания, приведенного в сочетании с прилагаемыми чертежами, на которых:
фиг.1 - схема сети передачи данных, которая включает в себя портативное беспроводное устройство со встроенным контроллером, пригодное для реализации одного варианта осуществления мультимедийной системы для воспроизведения мультимедийного контента;
фиг.2 - функциональная блок-схема, иллюстрирующая один вариант осуществления портативного устройства, показанного на фиг.1, которое включает в себя один вариант осуществления мультимедийной системы, которая предназначена для воспроизведения мультимедийного контента;
фиг.3 - подробная блок-схема одного варианта осуществления мультимедийной системы, показанной на фиг.2;
фиг.4 - один вариант осуществления конечного автомата, управляемого обработчиком формата, для воспроизведения мультимедийного контента;
фиг.5 - схема одного варианта осуществления способа воспроизведения мультимедийного контента в портативном устройстве.
Подробное описание
В нижеследующем подробном описании описана мультимедийная система, включающая в себя способы и устройство воспроизведения мультимедийного контента на портативном устройстве. Согласно одному или нескольким вариантам осуществления, портативное устройство имеет встроенный контроллер и ограниченные ресурсы (т.е. ограниченную емкость памяти), и система предназначена для воспроизведения мультимедийного контента с использованием имеющихся ресурсов воспроизведения устройства.
В одном или нескольких вариантах осуществления, мультимедийная система взаимодействует с рабочей средой, выполняющейся в устройстве, которая используется для упрощения работы устройства, например, путем обеспечения обобщенных вызовов ресурсов, зависящих от устройства. Одной такой рабочей средой является программная платформа двоичной рабочей среды для беспроводных устройств (BREW), разработанная фирмой QUALCOMM Inc., Сан-Диего, Калифорния. В нижеследующем описании, предполагается, что мультимедийная система реализована на портативном устройстве, выполняющем рабочую среду, например, программную платформу BREW. Однако один или несколько вариантов осуществления мультимедийной системы пригодны для использования с другими типами рабочих сред для воспроизведения мультимедийного контента на портативном устройстве.
На фиг.1 показана сеть 100 передачи данных, которая содержит портативное беспроводное устройство 102 со встроенным контроллером, пригодное для реализации одного варианта осуществления мультимедийной системы для воспроизведения мультимедийного контента. Например, устройство 102 содержит один вариант осуществления мультимедийной системы 104, которую далее будем называть "IMedia." В сети 100, беспроводное устройство 102 связывается с сетевым сервером 106 по беспроводной сети 108 с использованием каналов 110 беспроводной связи.
Согласно одному варианту осуществления, устройство 102 содержит сотовый телефон, который может передавать и/или принимать речевую информацию по беспроводной сети 108. Однако один или несколько вариантов осуществления описанной мультимедийной системы пригодны для использования с другими типами портативных устройств. Например, другие подходящие портативные устройства включают в себя, но не исключительно, КПК, устройства электронной почты, пейджеры, планшетные компьютеры, мобильные телефоны или, практически, любой другой тип портативного устройства, которое содержит ресурсы воспроизведения мультимедиа.
Устройство 102 может также принимать мультимедийные приложения или контент по беспроводной сети 108. Например, мультимедийные приложения 112 и 114 могут загружаться в устройство 102 с сетевого сервера 106. Дополнительно, мультимедийный контент 116 также может загружаться в устройство 102 с сетевого сервера 106.
Согласно одному варианту осуществления устройство 102 также подключено непосредственно к локальной системе, например, локальной рабочей станции 118, через прямую линию связи 120. Согласно одному варианту осуществления, локальная рабочая станция 118 загружает мультимедийные приложения или контент в устройство 102 с использованием прямой линии связи 120. Например, мультимедийное приложение 122 загружается в устройство 102 из рабочей станции 118 с использованием линии связи 120.
Система 104 IMedia может загружаться с сервера 106 в устройство 102 и действует в устройстве 102 для воспроизведения мультимедийных приложений или контента. В другом варианте осуществления, система 104 IMedia может загружаться в устройство 102 из рабочей станции 118 через линию связи 120 или может устанавливаться в устройстве в ходе изготовления.
Согласно одному варианту осуществления, система 104 IMedia обеспечена на компьютерно-считываемом носителе данных, например, флоппи-диске, и загружается в систему 118 для передачи в устройство 102. Согласно другом варианту осуществления, система 104 IMedia может храниться в компьютерно-считываемом запоминающем устройстве, например, на карте памяти (не показана), которая подключается непосредственно к устройству 102, так что система 104 IMedia может выполняться в устройстве 102. Таким образом, устройство 102 может принимать систему 104 IMedia посредством беспроводной передачи, проводной передачи или путем извлечения ее непосредственно из запоминающего устройства.
Сеть 100 также может включать в себя другие типы портативных устройств, например, другие типы проводных и беспроводных портативных устройств, и эти устройства могут связываться с сервером 106 и любыми другими сетевыми объектами с использованием различных типов сетей и архитектур связи, частных и общественных сетей, коммутируемых и некоммутируемых сетей, прямых линий связи и любых их комбинаций для загрузки одного или нескольких вариантов осуществления системы 104 IMedia для воспроизведения мультимедийного контента.
На фиг.2 показана функциональная блок-схема, иллюстрирующая один вариант осуществления устройства 102, которое включает в себя один вариант осуществления системы 104 IMedia, которая предназначена для воспроизведения мультимедийного контента. Устройство 102 содержит логику 202 обработки, которая подключена к внутренней шине 204 данных и стековой памяти 216. К внутренней шине данных 204 подключена командная память 206, память 208 мультимедийных приложений/контента, динамическая память 210, пользовательский интерфейс 212, логика 216 отображения, аудиологика и интерфейс 214 ввода/вывода.
В ходе работы устройства 102 логика 202 обработки выполняет команды программы, хранящиеся в командной памяти 206 для генерации рабочей среды 220. Рабочая среда 220 может представлять собой среду BREW или другую подходящую рабочую среду. Чтобы способствовать выполнению команд, логика 202 обработки использует стековую память 216 для временного сохранения программных данных или команд. Например, логика 202 обработки может сохранять константы, переменные, программные адреса, указатели, команды или другие элементы информации в стековой памяти 216. Согласно другому варианту осуществления, логика 202 обработки может временно сохранять информацию в динамической памяти 210. Динамическая память содержит практически любой тип памяти, пригодной для сохранения и извлечения информации логикой 202 обработки.
Согласно одному или нескольким вариантам осуществления логика 202 обработки содержит ЦП, вентильную матрицу, аппаратную логику, программное обеспечение или комбинацию аппаратного и программного обеспечения. Таким образом, логика 202 обработки, в целом, содержит логику для выполнения машинно-считываемых команд.
Командная память 206 содержит ОЗУ, ПЗУ, флэш-память, ЭСППЗУ или любой другой подходящий тип памяти или их комбинацию. Согласно одному варианту осуществления, командная память 206 находится внутри устройства 102, а согласно другому варианту осуществления, командная память 206 содержит сменную карту памяти или запоминающее устройство, которое можно избирательно присоединять к устройству 102 и, таким образом, подключать к внутренней шине 204. Таким образом, командная память 206 может содержать практически любой тип памяти, способный хранить команды, которые могут выполняться логикой 202 обработки.
Пользовательский интерфейс 212 принимает пользовательский ввод, например, с клавиатуры, указательного устройства, сенсорной панели или других механизмов ввода, что позволяет пользователю взаимодействовать с устройством 102. Логика 216 отображения содержит логику для вывода информации на устройство отображения. Например, устройство может содержать ЖКД, светодиод или другой тип ресурса отображения. Аудиологика 218 содержит логику для вывода аудиоинформации на громкоговоритель(и) устройства, удаленный(е) громкоговоритель(и) или аудиосистему или другой тип звукового ресурса. Например, пара удаленных громкоговорителей может принимать входной сигнал аудиологики 218, чтобы воспроизводить аудиоинформацию для пользователя устройства. Таким образом, логика 216 отображения и аудиологика 218 может содержать оборудование и/или программное обеспечение в любой комбинации, чтобы устройство 102 могло воспроизводить визуальную или аудиоинформацию для пользователя устройства.
Интерфейс 214 ввода/вывода предназначен для передачи и приема информации между устройством 102 и внешними устройствами, системами и/или сетями. Например, согласно одному варианту осуществления интерфейс 214 ввода/вывода содержит схему радиоприемопередатчика (не показана), которая предназначена для передачи и приема информации по беспроводной сети передачи данных с использованием, например, линии связи 106. Например, приемопередатчик содержит схему, которая модулирует информацию, полученную от логики 202 обработки, и преобразует модулированную информацию в высокочастотные сигналы, пригодные для беспроводной передачи. Аналогично, приемопередатчик также содержит схему для преобразования принятых высокочастотных сигналов связи в сигналы, пригодные для демодуляции и последующей обработки логикой 202 обработки.
Согласно другому варианту осуществления, интерфейс 214 ввода/вывода содержит приемопередатчик, который предназначен для передачи и приема информации по проводной линии связи, например, телефонной линии, для связи с удаленной системой в общественной сети передачи данных, например, Интернете.
Согласно еще одному варианту осуществления, интерфейс 214 ввода/вывода содержит схему, которая предназначена для связи с локальными устройствами, например, локальной рабочей станцией 116, с использованием линии связи 120. Интерфейс 214 ввода/вывода может также содержать схему (например, логику последовательного или параллельного порта) для связи с принтером или другим локальным компьютером или устройством, например, флоппи-диском или картой памяти. Таким образом, интерфейс 214 ввода/вывода может содержать любой тип оборудования, программного обеспечения или их комбинацию, чтобы устройство 102 могло связываться с другими локальными или удаленными устройствами или системами.
В ходе работы устройства 102 выполнение команд программы логикой 202 обработки приводит к генерации системы 104 IMedia. Например, команды IMedia, при выполнении которых генерируется система 104 IMedia, могут храниться в командной памяти 206. Система 104 IMedia взаимодействует с рабочей средой 220 для воспроизведения мультимедийных приложений и контента на устройстве 102. Например, мультимедийные приложения и контент могут загружаться в устройство 102 через беспроводную сеть 108 и сохраняться в памяти 208. В одном варианте осуществления, система 104 IMedia извлекает мультимедийный контент, хранящийся в памяти 208, через внутреннюю шину 204 и обрабатывает контент для считывания его в устройстве 102 путем взаимодействия с ресурсами воспроизведения устройства (т.е. логикой отображения, аудиологикой и т.д.) через рабочую среду 220. Система 104 также предназначена для обработки и воспроизведения потокового мультимедийного контента. Например, потоковый мультимедийный контент, загружаемый из сети 108 в устройство 102, воспроизводится на устройстве 102 с использованием системы 104 IMedia.
Заметим, что конфигурация устройства 102 является лишь одной из конфигураций, пригодных для реализации одного варианта осуществления системы 104 IMedia для воспроизведения мультимедийных приложений и контента. Можно также реализовать систему 104 IMedia с использованием других устройств или конфигураций устройства в рамках объема настоящего изобретения.
На фиг.3 показана подробная блок-схема одного варианта осуществления системы 104 IMedia для использования в устройстве 102. Устройство 102 содержит собственное оборудование 302, которое содержит логику 202 обработки и может, в необязательном порядке, содержать мультимедийный процессор 304, в частности предназначенный для обработки мультимедийной информации. Предполагается без дальнейшего описания, что собственное оборудование 302 содержит логику для эксплуатации ресурсов воспроизведения устройства (т.е. логику 216 отображения и т.д.) и что логика 202 обработки и мультимедийный процессор 304 могут действовать для управления этими ресурсами.
Устройство 102 также содержит собственное мультимедийное программное обеспечение 306, которое содержит модули аудио1 308, аудио2 310 и видео 312. Эти модули представляют программные модули низкого уровня, которые используются для непосредственной связи с собственным оборудованием 302 для управления выбранными ресурсами воспроизведения. Например, модуль 312 видео связывается с мультимедийным процессором 304 для управления ресурсами воспроизведения видео. Хотя показан один вариант осуществления, можно также иметь меньше или больше мультимедийных программных модулей 306, и эти модули могут связываться со всеми типами собственного оборудования 302. Таким образом, в пределах объема изобретения возможны другие конфигурации собственного оборудования 302 и программного обеспечения 306.
В ходе работы устройство 102 выполняет программные команды для генерации рабочей среды 220, которая, согласно одному варианту осуществления, является средой BREW. Тогда можно выполнять команды IMedia для генерации системы 104 IMedia для воспроизведения мультимедийного контента в сочетании с рабочей средой. Например, команды IMedia могут загружаться в устройство через беспроводную сеть 108 и сохраняться в командной памяти 206.
Система 104 IMedia предназначена для абстрагирования обработки мультимедийного контента и определения структуры мультимедийных интерфейсов. Согласно одному варианту осуществления, система 104 IMedia предназначена для обеспечения следующих особенностей.
1. Обеспечивает общий и простой доступ к мультимедийным особенностям и возможностям устройства.
2. Разделяет мультимедийные API уровня сложных специализированных интегральных схем (СИС) и обеспечивает управление ресурсами.
3. Обеспечивает строительные блоки для разработки сложных мультимедийных приложений.
4. В необязательном порядке, извлекает тип медиа на основании расширения файла, содержимого файла или подписи в файле.
Система 104 IMedia включает в себя утилиту 324 создания медиа, структуру медиаданных 326 и обработчики 314, 316, 318 и 320 формата. В качестве части системы 104 IMedia, показана абстракция 328 IMedia, которая иллюстрирует базовый объект IMedia, который создается в ходе работы системы 104 IMedia. Ниже рассмотрено подробное описание компонентов системы IMedia.
Абстракция IMedia
Абстракция 328 IMedia является абстрактным интерфейсом, позволяющим регистрировать и обрабатывать тип мультимедийного контента. Абстракция 328 IMedia поддерживает ссылку на медиаданные в структуре медиаданных 326.
Структура медиаданных
Структура медиаданных 326 предназначена для инкапсуляции источника или приемника медиаданных. Это позволяет системе 104 IMedia создавать поток медиаданных от различных источников или к различным местам назначения. Согласно одному варианту осуществления структура медиаданных 326 формируется из логики структуры данных, которая содержит логику 202 обработки, выполняющую команды программы для генерации структуры медиаданных 326 в памяти 210.
Утилита создания медиа
Утилита 324 создания медиа осуществляет несколько функций. Во-первых, утилита 324 создания медиа предназначена для приема мультимедийных приложений или контента для воспроизведения. Например, мультимедийные приложения или контент могут сохраняться в памяти 208, и этот контент включает в себя функциональный вызов утилиты 324 создания медиа. Во-вторых, утилита 324 создания медиа обрабатывает мультимедийный контент для создания объекта 328 IMedia на основании информации, содержащейся в медиаданных 326. После создания объекта IMedia, она задает медиаданные и помещает объект IMedia в состояние готовности. Согласно одному варианту осуществления, утилита 326 создания медиа формируется из логики создания медиа, которая содержит логику 202 обработки, выполняющую команды программы для создания объекта 328 IMedia в памяти 210 и осуществляет функции описанной здесь утилиты создания медиа.
Согласно одному варианту осуществления, утилита 326 создания медиа включает в себя логику выбора, которая содержит логику 202 обработки, выполняющую команды программы для выбора обработчика формата для связывания с объектом 328 IMedia и осуществления других описанных здесь функций. Например, логика выбора оценивает структуру данных 326, связанную с контентом медиа, для определения, какой обработчик формата выбрать.
Обработчики формата
Согласно одному варианту осуществления, система 104 IMedia содержит совокупность обработчиков формата (ОФ). Например, система 104 IMedia содержит обработчики формата MIDI 314, MP3 316, MPEG4 318 и ADCPM 320. Эти обработчики формата обеспечивают интерфейсы 322 между объектами 328 IMedia и аппаратурой и программным обеспечением воспроизведения мультимедиа устройства 102. Согласно одному варианту осуществления обработчики формата прерывают общий набор команд, чтобы мультимедийные приложения или контент могли применять одни и те же команды, чтобы предписывать обработчикам формата выполнять аналогичные задачи, как то воспроизведение, остановка, обратная перемотка и т.д. Можно использовать любое количество обработчиков формата и можно добавлять новые обработчики формата для воспроизведения новых типов мультимедийного контента. Согласно одному варианту осуществления обработчики формата сформированы из логики обработки формата, которая содержит логику 202 обработки, выполняющую команды программы для осуществления функций описанных здесь обработчиков формата.
Согласно одному варианту осуществления общий набор команд предписывает обработчикам формата воспроизводить мультимедийный контент и обеспечивает механизм перевода параметров и статуса. Ниже приведен пример команд, входящих в общий набор команд.
1. | IMedia_SetMediaParm() | задает параметры ОФ |
2. | IMedia_GetMediaParm() | получает параметры от ОФ |
3. | IMedia_SetMediaData() | задает медиаданные |
4. | IMedia_GetMediaData() | получает медиаданные |
5. | IMedia_GetClassID() | получает ИД класса |
6. | IMedia_GetState() | получает состояние |
7. | IMedia_RegisterNotify() | регистрирует обратный вызов с ОФ |
8. | IMedia_Play() | выдает команду воспроизведения на ОФ |
9. | IMedia_Stop() | выдает команду остановки на ОФ |
10. | IMedia_SetRect() | задает параметры видео |
Например, команда IMedia_SetMediaParm() может входить в объект IMedia, чтобы предписывать обработчику формата задать конкретные параметры, настройки или переменные, связанные с обработчиком формата. Например, с использованием команды IMedia_SetMediaParm(), можно задать параметры, связанные с обработчиком формата, предназначенным для воспроизведения видео в формате MPEG. В других вариантах осуществления, конкретные обработчики формата могут также интерпретировать дополнительные команды (не показанные выше), которые могут входить в объект 328 IMedia, и которые можно использовать для управления конкретной функцией управляемого ресурса.
Согласно одному варианту осуществления, обработчик формата является программой, действующей в портативном устройстве как часть системы 104 IMedia. Согласно другому варианту осуществления, обработчик формата может представлять собой комбинацию оборудования и программного обеспечения. Кроме того, обработчики форматов можно добавлять в систему IMedia по мере их появления, поэтому система IMedia является расширяемой и способна воспроизводить новые типы мультимедийного контента по мере их появления.
В ходе работы, обработчики формата регистрируются (свой тип MIME) с помощью рабочей среды, и мультимедийные приложения могут обнаружить их, запрашивая тип MIME или просматривая список поддерживаемых (зарегистрированных) обработчиков формата в системе. Каждый обработчик формата обеспечивает выбор функций, в том числе, но не исключительно, следующих.
1. Обеспечение интерфейса прикладной программы (API), который:
а. Осуществляет воспроизведение и запись мультимедийного контента, включая такие функции управления, как поиск, пауза, возобновление и т.д.;
b. Задает и/или получает параметр управления аудио и видео;
с. Обрабатывает асинхронные события от объекта IMedia.
2. Передает асинхронные медиасобытия через зарегистрированную функцию обратного вызова.
3. Управляет ресурсами воспроизведения мультимедиа устройства.
4. Управляет конечным автоматом, который имеет расширение за счет производных классов.
На фиг.4 показан один вариант осуществления конечного автомата 400, управляемого обработчиком формата для воспроизведения мультимедийного контента, например, обработчиком формата 318. Исходным состоянием обработчика формата является холостое состояние 402. После того как обработчик формата связан с объектом IMedia, обработчик формата переходит в состояние готовности 404. Из состояния готовности 404 обработчик формата может перейти либо в состояние воспроизведения 406, либо в состояние записи 408, в зависимости от команд, связанных с мультимедийным контентом. Из состояний воспроизведения 406 и записи 408 обработчик форматов может перейти в состояние приостановки воспроизведения 410 или приостановки записи 412, из этих состояний также можно вернуться в состояния воспроизведения 406 и записи 408. Обработчик формата может также остановиться 414 и возвратиться в состояние готовности 404.
Поэтому, используя конечный автомат 400, каждый обработчик формата может управлять ресурсами воспроизведения устройства, чтобы воспроизводить мультимедийные приложения или контент (объект IMedia), связанные с этим обработчиком формата. Согласно другому варианту осуществления, обработчик формата также может реализовать конечный автомат, отличный от показанного на фиг.4. Кроме того, в других вариантах осуществления, можно задавать дополнительные состояния, которые можно использовать в процессе воспроизведения.
На фиг.5 показан один вариант осуществления способа 500 воспроизведения мультимедийного контента в портативном устройстве.
В блоке 502, мультимедийное приложение или контент создается с использованием конструкций IMedia так, чтобы его можно было воспроизводить на портативном устройстве. Например, разработчики приложений создают объекты IMedia с использованием утилиты 324 создания медиа. Количество объектов IMedia и возможности, например, одновременного воспроизведения или записи, зависят от устройства. Все объекты IMedia подчиняются основному конечному автомату, показанному на фиг.4. Согласно одному варианту осуществления, для создания и использования объекта IMedia можно использовать следующие этапы.
1. Создать структуру медиаданных и инициализировать ее на основании источника/приемника медиаданных. AEEMediaData определяется следующим образом.
typedef struct | |
{ | |
AEECLSID clsData; | // Тип медиаданных |
Void *pData; | //Данные, зависящие от контекста (см. //Таблицу) |
uint32 dwSize; | // Данные, зависящие от контекста (см. //Таблицу) |
} AEEMediaData; |
2. Инициализировать члены вышеуказанной структуры на основании информации, приведенной в следующей таблице.
clsStream | pData | dwSize | Комментарии |
MMD_FILE_NAME | Имя файла | 0 | Для воспроизведения и записи. IMedia не открывает файл, но имя файла передается на API уровня СИС, который открывает файл. |
MMD_BUFFER | Указатель буфера | Размер буфера | Для воспроизведения и записи. Буфер должен содержать полные медиаданные. |
MMS_Source | ISource | Полный размер данных или 0 | Потоковая передача в режиме реального времени. |
В блоке 504, мультимедийный контент загружается в портативное устройство для воспроизведения. Например, приложение или контент может загружаться в устройство через беспроводную сеть 108 передачи данных. Контент может воспроизводиться в потоковом режиме или сохраняться в памяти и воспроизводиться позднее.
В блоке 506 структура медиаданных создается и инициализируется на основании характеристик источника или приемника медиа, включенных в принятый контент. Например, структура медиаданных сохраняется в структуре 326 медиаданных. Согласно одному варианту осуществления, тип медиа выводится на основании расширения файла, содержимого файла или подписи, включенной в файл.
В блоке 508, объект IMedia создается с использованием связанной с ним структуры данных. Например, для создания объекта IMedia используется утилита 324 создания медиа. Объект IMedia возвращается в состоянии готовности 404.
В блоке 510 может осуществляться необязательный этап для регистрации функции извещения, если это нужно для принятых асинхронных событий от объекта IMedia.
В блоке 512 объект IMedia сопоставляется с обработчиком формата, и мультимедийное приложение или контент визуализируется на портативном устройстве. Например, обработчик формата может обеспечивать любую из функций конечного автомата 400 для воспроизведения мультимедийного контента.
В блоке 514 после того как контент воспроизведен, и объект IMedia больше не нужен, он очищается.
Пример реализации
Ниже приведен пример реализации, иллюстрирующий, как, согласно одному варианту осуществления, создается объект IMedia. Пример включает в себя ссылки на соответствующие блоки способа, показанные на фиг.5, и предполагается, что рабочая среда, используемая портативным устройством 102, является средой BREW. Таким образом, "CApp" является примером глобальной структуры апплетов BREW.
static void App_PlayMedia(CApp *pme)
{
int nRet;
AEEMediaData md;
//Создать структуру медиаданных (фиг. 5 - блок 506)
md.clsData = MMD_FILE_NAME;
md.pData = (void *)"media/midi_fmtl.mid";
md.dwSize = 0;
//Создать объект IMedia и поместить в состояние готовности //(фиг.5 - блок 508)
nRet = AEEMediaUtil_CreateMedia(pme->a.pIShell,&md, pme->m_plMedia);
//Если успешно, зарегистрировать App_MediaNotify() как //зарегистрированный обратный вызов событий IMedia (фиг.5 - //блок 510)
if(SUCCESS != nRet)
DisplayErrorDlg(pme, IDS_ERR_CREATEMEDIA);
else if (SUCCESS != IMEDIA_RegisterNotify(pme-> m_pIMedia,
App_MediaNotify, pme))
DisplayErrorDlg(pme, IDS_ERR_REGISTERNOTIFY);
else if (SUCCESS != IMEDIA_Play(pme->m_pIMedia))
//Начать воспроизведение (фиг.5 - блок 512)
DisplayErrorDlg(pme, EDS_ERR_PLAY);
В одном или нескольких вариантах осуществления, включенных в настоящее изобретение, мультимедийная система, включающая в себя способы и устройство, предназначена для воспроизведения мультимедийных приложений и контента на портативном устройстве с ограниченными ресурсами, имеющем встроенный контроллер. Соответственно, хотя здесь были проиллюстрированы и описаны один или несколько вариантов осуществления способов и устройства, можно предложить различные изменения вариантов осуществления изобретения, не выходя за рамки его сущности или существенных признаков. Поэтому приведенные здесь рассмотрения и описания носят иллюстративный характер и не призваны ограничивать объем изобретения, который задан в нижеследующей формуле изобретения.
Класс H04N7/173 с двухсторонним режимом работы, например когда абонент посылает сигнал выбора программы
Класс H04Q7/32 оборудование движущегося абонента
Класс G06F15/16 сочетание двух или более вычислительных машин, каждая из которых снабжена по меньшей мере арифметическим устройством, программным устройством и регистром, например для одновременной обработки нескольких программ
Класс H04L29/02 управление передачей данных; обработка данных, поступающих с линий связи