[go: up one dir, main page]

RU2352977C2 - System for control of chamber resource in portable device - Google Patents

System for control of chamber resource in portable device Download PDF

Info

Publication number
RU2352977C2
RU2352977C2 RU2005136654/09A RU2005136654A RU2352977C2 RU 2352977 C2 RU2352977 C2 RU 2352977C2 RU 2005136654/09 A RU2005136654/09 A RU 2005136654/09A RU 2005136654 A RU2005136654 A RU 2005136654A RU 2352977 C2 RU2352977 C2 RU 2352977C2
Authority
RU
Russia
Prior art keywords
camera
application
command
resource
api
Prior art date
Application number
RU2005136654/09A
Other languages
Russian (ru)
Other versions
RU2005136654A (en
Inventor
Сринивас ПАТВАРИ (US)
Сринивас ПАТВАРИ
Original Assignee
Квэлкомм Инкорпорейтед
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US10/453,091 external-priority patent/US20040083015A1/en
Application filed by Квэлкомм Инкорпорейтед filed Critical Квэлкомм Инкорпорейтед
Publication of RU2005136654A publication Critical patent/RU2005136654A/en
Application granted granted Critical
Publication of RU2352977C2 publication Critical patent/RU2352977C2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/545Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72406User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by software upgrading or downloading
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • H04M1/72412User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories using two-way short-range wireless interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/7243User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/41407Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a portable device, e.g. video client on a mobile phone, PDA, laptop

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Business, Economics & Management (AREA)
  • Studio Devices (AREA)
  • Stored Programmes (AREA)
  • Details Of Cameras Including Film Mechanisms (AREA)

Abstract

FIELD: physics, control.
SUBSTANCE: system is suggested for control of chamber resource in resource-limited portable device. Method is suggested for actuation of chamber system to provide the possibility of the fact that application controls chamber resource in portable device. Method consists in the fact that chamber system is activated, at that chamber system is able to work so that it controls chamber resource, application program interface (API) is provided to receive commands from application, command from application is received via program interface of application (API), at that command identifies function of chamber to be performed, and chamber function identified by means of command is identified.
EFFECT: system simplification and expansion of functional resources.
20 cl, 5 dwg

Description

Приоритет по настоящей заявке испрашивается по предварительной заявке на патент США № 60/465,533, поданной 25 апреля 2003, и по заявке на патент США № 10/453,091, поданной 2 июня 2003. Содержание этих документов объединено здесь посредством ссылки.Priority for this application is claimed by provisional application for US patent No. 60 / 465,533, filed April 25, 2003, and patent application US No. 10 / 453,091, filed June 2, 2003. The contents of these documents are incorporated herein by reference.

Область техники, к которой относится изобретениеFIELD OF THE INVENTION

Настоящее изобретение относится в основном к получению изображений и их обработке в портативных устройствах, более конкретно к системе для управления ресурсом камеры в портативном устройстве, имеющем встроенный контроллер.The present invention relates generally to image acquisition and processing in portable devices, and more particularly, to a system for managing a camera resource in a portable device having an integrated controller.

Уровень техникиState of the art

Продвижения вперед в технологии привели к меньшим по размерам и более мощным персональным вычислительным устройствам. Например, в настоящее время существует многообразие портативных беспроводных телефонов, карманных компьютеров (PDA), пейджинговых устройств, которые являются небольшими, легковесными и могут легко переноситься пользователями. Типично, эти устройства включают в себя встроенный контроллер с ограниченными ресурсами запоминающего устройства. Например, объем имеющегося запоминающего устройства и возможности обработки могут быть ограничены маленьким размером этого устройства.Advances in technology have led to smaller and more powerful personal computing devices. For example, there are currently a variety of portable cordless phones, PDAs, and paging devices that are small, lightweight, and can be easily carried by users. Typically, these devices include an embedded controller with limited storage resources. For example, the amount of storage available and processing capabilities may be limited by the small size of this device.

Существует возрастающая потребность в персональных вычислительных устройствах для того, чтобы работать с большими объемами данных и выполнять программы, которые являются более сложными. Например, пользователи запрашивают приложения, которые обеспечивают всестороннюю обработку изображений. В этой области пользователи хотели бы иметь портативные устройства, которые включают в себя ресурсы камеры, которыми можно управлять для получения неподвижных изображений и видеоклипов для обработки и/или передачи.There is an increasing need for personal computing devices in order to work with large volumes of data and execute programs that are more complex. For example, users request applications that provide comprehensive image processing. In this area, users would like to have portable devices that include camera resources that can be controlled to capture still images and video clips for processing and / or transmission.

Для того чтобы фиксировать изображения на портативных устройствах, необходимо управлять ресурсами камеры этих устройств. Например, один тип портативного устройства может включать в себя ресурс камеры с низким разрешением, которая представляет собой разработку для получения неподвижных изображений, и другой тип портативных устройств может включать ресурс камеры, большей по размеру и с более высоким разрешением, с возможностями изменения масштаба изображения, разработанного для фиксирования видеофильма. Таким образом, каждый тип портативного устройства может иметь отличный от других ресурс камеры, с помощью которого фиксировать содержание изображений. Следовательно, разработчики приложений должны преодолевать проблемы, связанные с совместимостью, при разработке приложений для использования на широком многообразии портативных устройств, которые могут иметь различные конфигурации и ресурсы камеры.In order to capture images on portable devices, it is necessary to manage the camera resources of these devices. For example, one type of portable device may include a low-resolution camera resource, which is a design for producing still images, and another type of portable device may include a larger, higher resolution camera resource with zoom capabilities, Designed for movie capture. Thus, each type of portable device can have a different camera resource from which to capture the content of images. Therefore, application developers must overcome compatibility issues when developing applications for use on a wide variety of portable devices that can have different camera configurations and resources.

Одна технология, используемая для преодоления проблем, связанных с совместимостью, требует того, чтобы приложение было специально создано для выполнения его на портативном устройстве, имеющем конкретный ресурс камеры. Например, если разработчик приложения разрабатывает приложение, которое выполняется на портативном устройстве для получения видеоизображений, разработчики должны адаптировать это приложение так, чтобы оно было точно совместимым с ресурсом камеры, имеющемся на этом конкретном устройстве.One technology used to overcome compatibility issues requires that the application be specifically designed to run on a portable device that has a specific camera resource. For example, if an application developer is developing an application that runs on a portable device to receive video images, developers must tailor the application so that it is exactly compatible with the camera resource available on that particular device.

К сожалению, достаточно дорогостоящим и неэффективным является создание приложений для использования на широком многообразии портативных устройств, которые адаптируются для конкретных ресурсов камеры, обнаруженных на этом устройстве. Например, разработчику приложения потребовалось бы модифицировать приложение для использования на различных портативных устройствах на основе имеющегося ресурса камеры, тем самым, выдвигая требование, чтобы были разработаны множественные версии одного и того же приложения. Также разработчик приложения должен был бы постоянно обновлять свои приложения, по мере того, как новые ресурсы камеры становятся доступными.Unfortunately, it is quite expensive and inefficient to create applications for use on a wide variety of portable devices that adapt to the specific camera resources found on this device. For example, an application developer would need to modify the application for use on various portable devices based on the available camera resource, thereby requiring the development of multiple versions of the same application. Also, the application developer would have to constantly update their applications as new camera resources become available.

Другая технология, предлагаемая для управления ресурсами камеры на портативных устройствах, включает в себя использование мультимедийных платформ, в основном доступных для использования в настольных компьютерах, серверах или других относительно больших вычислительных устройствах. Однако эти типы платформ были бы крайне неэффективны, если их использовать в портативном устройстве, имеющем ограниченные ресурсы, потому что эти системы в основном требуют большое число интерфейсов для программного обеспечения, которые должны создаваться между приложением и программными модулями, загружаемыми на это устройство. Таким образом, в дополнение к тому, что они являются очень сложными, эти системы требуют интенсивных запоминающих устройств и средств обработки, что не совместимо с ограниченной производительностью обработки, имеющейся на типичных портативных устройствах.Another technology proposed for managing camera resources on portable devices involves the use of multimedia platforms, mainly available for use on desktop computers, servers, or other relatively large computing devices. However, these types of platforms would be extremely ineffective if used in a portable device that has limited resources, because these systems basically require a large number of software interfaces that must be created between the application and the software modules loaded on this device. Thus, in addition to being very complex, these systems require intensive storage devices and processing facilities, which is not compatible with the limited processing performance available on typical portable devices.

Следовательно, что требуется, так это система, которая обеспечивает возможность того, что приложения эффективно и легко осуществляют доступ к ресурсам камеры и управляют ими на множестве портативных устройств, чтобы фиксировать, кодировать, манипулировать и отображать неподвижные изображения и видеоизображения.Therefore, what is required is a system that allows applications to efficiently and easily access and manage camera resources on a variety of portable devices to capture, encode, manipulate and display still images and video images.

Система должна быть компактной и спроектированной так, чтобы работать, используя ограниченные ресурсы, имеющиеся на типичном портативном устройстве. Например, система не должна требовать протяженных интерфейсов программного обеспечения между программными модулями, которые являются большими, неэффективными и не практичными для использования на небольшом устройстве с ограниченным ресурсом. Система должна работать, чтобы обеспечивать возможность того, что все типы ресурсов камеры были управляемы, и обеспечивать наращиваемую архитектуру, которая предусматривает управление новыми ресурсами камеры по мере того, как они становятся доступны.The system must be compact and designed to work using the limited resources available on a typical portable device. For example, a system should not require extensive software interfaces between software modules that are large, inefficient, and not practical for use on a small device with a limited resource. The system should work to ensure that all types of camera resources are manageable, and provide a scalable architecture that manages new camera resources as they become available.

Раскрытие изобретенияDisclosure of invention

В одном или более вариантах осуществления система камеры, включающая в себя способы и устройства, предлагается для осуществления управления ресурсами камеры на портативных устройствах. Например, одним портативным устройством может быть беспроводной телефон со встроенным контроллером и ограниченными ресурсами запоминающего устройства, который включает в себя устройство камеры. В одном или более вариантах осуществления система камеры содержит небольшую и эффективную программу, которая выполняется на портативном устройстве для обеспечения возможности того, чтобы приложения, выполняющиеся на этом устройстве, управляли ресурсом камеры, используя простой интерфейс. Таким образом, система камеры является особенно хорошо подходящей для использования в портативных устройствах, имеющих встроенные контроллеры с ограниченными ресурсами запоминающего устройства.In one or more embodiments, a camera system including methods and devices is provided for managing camera resources on portable devices. For example, one portable device may be a cordless telephone with an integrated controller and limited storage resources, which includes a camera device. In one or more embodiments, the camera system comprises a small and efficient program that runs on a portable device to enable applications running on this device to control the camera resource using a simple interface. Thus, the camera system is particularly well suited for use in portable devices having integrated controllers with limited storage resources.

В одном варианте осуществления система камеры обеспечивает простой, эффективный и действенный способ доступа и управления ресурсами камеры на портативном устройстве, и обеспечивает возможность того, что статические и динамические приложения: (1) фиксируют кадр или видеоизображения, (2) устанавливают настройки и параметры конфигурации камеры, (3) обрабатывают фиксированное изображение и видеокадры, (4) добавляют дополнительную информацию, такую как информацию о местоположении, для изображения и видеокадра, (5) кодируют фиксированные изображения и видеокадры, (6) отображают фиксированные изображения и видеокадры, и (7) принимают события камеры асинхронно.In one embodiment, the camera system provides a simple, efficient, and effective way to access and manage camera resources on a portable device, and allows static and dynamic applications to: (1) capture a frame or video image, (2) set camera settings and configuration parameters , (3) process a fixed image and video frames, (4) add additional information, such as location information, for the image and video frame, (5) encode fixed images video frames, (6) display fixed images and video frames, and (7) receive camera events asynchronously.

В одном или более вариантах осуществления система камеры содержит небольшой программный модуль, который иллюстрируется примерами посредством выполняющегося приложения. Это приложение затем использует простой программный интерфейс приложения (API), обеспечиваемый программным модулем, чтобы выполнять все операции камеры. События от камеры направляются на приложение посредством зарегистрированной функции обратного вызова. Программный модуль потребляет минимальную память и обеспечивает эффективную реализацию посредством осуществления прямого доступа к программному драйверу на уровне устройства для выполнения всех операций камеры.In one or more embodiments, the camera system comprises a small software module, which is illustrated by examples through an executing application. This application then uses the simple application programming interface (API) provided by the software module to perform all camera operations. Events from the camera are routed to the application through a registered callback function. The software module consumes minimal memory and provides efficient implementation through direct access to the software driver at the device level to perform all camera operations.

В одном варианте осуществления обеспечивается способ для управления системой камеры для обеспечения возможности того, что приложение будет управлять ресурсами камеры в портативном устройстве. Этот способ заключается в том, что активируют систему камеры, при этом система камеры может работать так, чтобы управлять ресурсом камеры, обеспечивают то, что программный интерфейс приложения (API) принимает команды от приложения, осуществляют прием команды от приложения посредством программного интерфейса приложения (API), при этом команда идентифицирует функцию камеры, которая должна выполняться, и выполняют функцию камеры, идентифицируемую с помощью команды.In one embodiment, a method is provided for controlling a camera system to enable an application to manage camera resources in a portable device. This method consists in activating the camera system, while the camera system can operate in such a way as to control the camera resource, ensure that the application program interface (API) receives commands from the application, and the command is received from the application via the application program interface (API ), the command identifies the camera function to be performed, and the camera function identified by the command is performed.

В другом варианте осуществления предлагается устройство для управления системой камеры для обеспечения возможности того, что приложение будет управлять ресурсами камеры в портативном устройстве. Устройство содержит средство для активирования системы камеры, при котором система камеры может работать так, чтобы управлять ресурсом камеры. Устройство также содержит средство для обеспечения того, что программный интерфейс приложения (API) принимает команды от приложения. Устройство также содержит средство для приема команды от приложения посредством программного интерфейса приложения (API), при этом команда идентифицирует функцию камеры, которая должна выполняться. Устройство также содержит средство для выполнения функции камеры, идентифицируемой с помощью команды.In another embodiment, an apparatus for controlling a camera system is provided to enable an application to manage camera resources in a portable device. The device comprises means for activating the camera system, in which the camera system can operate so as to control the camera resource. The device also comprises means for ensuring that the application programming interface (API) receives commands from the application. The device also comprises means for receiving a command from the application via the application program interface (API), the command identifying a camera function to be performed. The device also comprises means for performing a camera function identified by a command.

В другом варианте осуществления предлагается компьютерно-читаемый носитель, который содержит команды, которые, при выполнении процессором в портативном устройстве, действуют так, чтобы обеспечить систему камеры, которая позволяет приложению управлять ресурсом камеры в портативном устройстве. Компьютерно-читаемый носитель содержит команды для активирования системы камеры, при этом система камеры может работать так, чтобы управлять своим ресурсом, команды для обеспечения того, чтобы программный интерфейс приложения (API) принимал команды программного интерфейса приложения (API) от приложения, команды для приема команды программного интерфейса приложения (API) от приложения через программный интерфейс приложения (API), при этом команда программного интерфейса приложения (API) идентифицирует функцию камеры, которая должна выполняться, команды для выполнения функции камеры, идентифицированной посредством команды программного интерфейса приложения (API).In another embodiment, a computer-readable medium is provided that comprises instructions that, when executed by a processor in a portable device, operate to provide a camera system that allows an application to control the camera resource on the portable device. The computer-readable medium contains commands for activating the camera system, while the camera system can operate to control its resource, commands to ensure that the application program interface (API) accepts application program interface (API) commands from the application, commands for receiving commands of the application program interface (API) from the application through the application program interface (API), wherein the application program interface (API) command identifies the camera function to be executed , commands for performing a camera function identified by an application program interface (API) command.

В другом варианте осуществления предлагается устройство для работы системы камеры, чтобы обеспечить возможность для приложения управлять ресурсом камеры в портативном устройстве. Устройство содержит логическую схему для активирования системы камеры, при этом система камеры может работать так, чтобы управлять ресурсом камеры, и дополнительно содержит логическую схему для обеспечения того, что программный интерфейс приложения (API) принимает команды от приложения. Устройство также содержит логическую схему для приема команды от приложения через программный интерфейс приложения, при этом команды идентифицирует функцию камеры, которая должна выполняться, и дополнительно содержит логическую схему для выполнения функции камеры, идентифицированной командой.In another embodiment, an apparatus for operating a camera system is provided to enable an application to manage a camera resource in a portable device. The device comprises a logic circuit for activating the camera system, wherein the camera system can operate to control the camera resource, and further comprises a logic circuit to ensure that the application program interface (API) receives commands from the application. The device also contains a logic circuit for receiving a command from an application through the application programming interface, the command identifying a camera function to be performed, and further comprises a logic circuit for performing a camera function identified by a command.

Другие аспекты, преимущества и признаки настоящего изобретения станут очевидны после обзора нижеприведенного краткого описания чертежей, подробного описания изобретения и формулы изобретения.Other aspects, advantages and features of the present invention will become apparent after a review of the following brief description of the drawings, a detailed description of the invention and the claims.

Краткое описание чертежейBrief Description of the Drawings

Вышеупомянутые аспекты и соответствующие преимущества вариантов осуществления, описанных здесь, станут более легко понятны при помощи ссылок на следующее подробное описание в сочетании с прилагаемыми чертежами, на которых:The aforementioned aspects and corresponding advantages of the embodiments described herein will be more readily understood by reference to the following detailed description in conjunction with the accompanying drawings, in which:

Фиг.1 представляет сеть передачи данных, которая включает в себя портативное беспроводное устройство с встроенным контроллером, подходящим для выполнения одного варианта осуществления системы камеры;Figure 1 represents a data network that includes a portable wireless device with an integrated controller suitable for executing one embodiment of a camera system;

Фиг.2 представляет структурную схему, иллюстрирующую один вариант осуществления портативного устройства, показанного на Фиг.1, который включает в себя один вариант осуществления системы ICamera, которая действует так, чтобы обеспечить возможность того, что приложение управляет ресурсом камеры на устройстве;FIG. 2 is a block diagram illustrating one embodiment of the portable device shown in FIG. 1, which includes one embodiment of an ICamera system that is operable to allow an application to manage a camera resource on a device;

Фиг.3 представляет подробную структурную схему одного варианта осуществления системы ICamera, показанной на Фиг.2;Figure 3 is a detailed block diagram of one embodiment of the ICamera system shown in Figure 2;

Фиг.4 представляет один вариант осуществления конечного автомата, обеспечиваемый одним вариантом осуществления системы ICamera, чтобы обеспечить возможность того, что приложение управляет ресурсом камеры на портативном устройстве; иFIG. 4 represents one embodiment of a state machine provided by one embodiment of an ICamera system to enable an application to manage a camera resource on a portable device; and

Фиг.5 представляет один вариант осуществления способа для функционирования системы ICamera, чтобы обеспечить возможность того, что приложение управляет ресурсом камеры в портативном устройстве.5 represents one embodiment of a method for operating an ICamera system to enable an application to manage a camera resource in a portable device.

Осуществление изобретенияThe implementation of the invention

Следующее подробное описание описывает систему камеры, включающую в себя способы и устройство для управления ресурсом камеры в портативном устройстве. В одном или более вариантах осуществления портативное устройство имеет встроенный контроллер и ограниченные ресурсы (т.е. ограниченную емкость запоминающего устройства), и система камеры работает, чтобы обеспечить возможность того, что программы приложения управляют ресурсом камеры, используя единственный интерфейс.The following detailed description describes a camera system including methods and apparatus for managing a camera resource in a portable device. In one or more embodiments, the portable device has an integrated controller and limited resources (i.e., limited storage capacity), and the camera system works to allow applications to control the camera resource using a single interface.

В одном или более вариантах осуществления система камеры взаимодействует со средой прогона программы, реализующейся на устройстве, которая используется для упрощения работы устройства посредством обеспечения обобщенных вызовов конкретных ресурсов устройства. Одна такая среда прогона программы представляет собой платформу программного обеспечения Двоичной среды прогона программы для беспроводной связи (BREWTM), разработанную компанией QUALCOMM, Inc., Сан-Диего, Калифорния. В следующем описании будет предполагаться, что система камеры осуществляется на портативном устройстве, выполняющем среду прогона программы, такую как платформу программного обеспечения BREW. Однако один или более вариантов осуществления системы камеры являются подходящими для использования с другими типами сред прогона программы для управления ресурсами камеры на портативном устройстве.In one or more embodiments, the camera system interacts with a run environment of a program implemented on a device that is used to simplify the operation of the device by providing generalized calls to specific resources of the device. One such program execution environment is a software platform Binary protection program run for wireless (BREW TM), developed by QUALCOMM, Inc., of San Diego, California. In the following description, it will be assumed that the camera system is implemented on a portable device running a program run environment, such as the BREW software platform. However, one or more embodiments of the camera system are suitable for use with other types of runtime environments for managing camera resources on a portable device.

Фиг.1 представляет сеть 100 передачи данных, которая включает в себя портативное беспроводное устройство 102 со встроенным контроллером, подходящим для выполнения одного варианта осуществления системы камеры, которая будет в дальнейшем называться системой «ICamera» и показана позицией 104. Система 104 «ICamera» работает, чтобы обеспечить возможность того, что приложения, которые работают на устройстве 102, контролируют ресурс 124 камеры, расположенный на устройстве 102. В одном варианте осуществления система 104 «ICamera» взаимодействует со средой 116 прогона программы, реализующейся на устройстве. Например, в одном варианте осуществления среда 116 прогона программы представляет собой платформу программного обеспечения BREW.FIG. 1 represents a data network 100 that includes a portable wireless device 102 with an integrated controller suitable for executing one embodiment of a camera system, hereinafter referred to as the “ICamera” system and shown at 104. The ICamera system 104 is operating to ensure that applications that run on device 102 control a camera resource 124 located on device 102. In one embodiment, the ICamera system 104 interacts with a run environment 116 a program running on a device. For example, in one embodiment, the program run environment 116 is a BREW software platform.

В одном или более вариантах осуществления система 104 «ICamera» является подходящей для использования с широким многообразием портативных устройств. Например, другие подходящие портативные устройства включают в себя, но не ограничиваются ими, карманные компьютеры (PDA), устройства электронной почты, пэйджеры, планшетные компьютеры, мобильные телефоны или фактически любой другой тип портативного устройства, который включает в себя ресурс камеры.In one or more embodiments, the ICamera system 104 is suitable for use with a wide variety of portable devices. For example, other suitable handheld devices include, but are not limited to, handheld computers (PDAs), email devices, pagers, tablets, mobile phones, or virtually any other type of handheld device that includes a camera resource.

Беспроводное устройство 102 может работать, чтобы осуществлять связь с сетевым сервером 106 через сеть 108 передачи данных, используя каналы 110 беспроводной связи. В одном варианте осуществления устройство 102 содержит беспроводной телефон, который может передавать и принимать голосовую и/или другую информацию по сети 108. Устройство 102 также работает, чтобы принимать приложения по сети 108. Например, приложения 112 и 114 могут быть загружены на устройство 102 от сетевого сервера 106. Эти приложения выполняются на устройстве 102 и используют камеру 124 устройства, чтобы предоставить дополнительные признаки и/или функциональность пользователю устройства. Например, приложения могут получать и обрабатывать неподвижные изображения или видеоинформацию от камеры 124 устройства. Возможно, также загружать приложения на устройство 102 от любого другого объекта сети, подключенного к сети 108.Wireless device 102 may operate to communicate with network server 106 via data network 108 using wireless communication channels 110. In one embodiment, device 102 comprises a cordless telephone that can transmit and receive voice and / or other information over network 108. Device 102 also works to receive applications over network 108. For example, applications 112 and 114 can be downloaded to device 102 from network server 106. These applications run on device 102 and use device camera 124 to provide additional features and / or functionality to a device user. For example, applications can receive and process still images or video information from the camera 124 of the device. It is also possible to download applications to the device 102 from any other network object connected to the network 108.

В одном варианте осуществления устройство 102 также непосредственно подключается к локальной системе, такой как локальная рабочая станция 118, через прямую линию 120 связи. Устройство 102 может работать так, чтобы загружать приложения от локальной рабочей станции 118, используя прямую линию 120 связи. Например, приложение 122 загружается на устройство 102 от рабочей станции 118, используя линию 120 связи. Система 104 «ICamera» может загружаться от сервера 106 на устройство 102 и работает на устройстве 102, чтобы обеспечить возможность того, что приложения управляют камерой 124. В другом варианте осуществления система 104 «ICamera» может загружаться на устройство 102 с рабочей станции 118 по линии 120 связи или может быть установлена на устройстве 102 во время изготовления.In one embodiment, device 102 is also directly connected to a local system, such as local workstation 118, through a forward link 120. The device 102 may operate to download applications from the local workstation 118 using the forward link 120. For example, application 122 is downloaded to device 102 from workstation 118 using communication line 120. The ICamera system 104 can be loaded from the server 106 to the device 102 and runs on the device 102 to enable applications to control the camera 124. In another embodiment, the ICamera system 104 can be downloaded to the device 102 from the workstation 118 via 120 communication or can be installed on the device 102 during manufacture.

В одном варианте осуществления система 104 «ICamera» предлагается в качестве команд, запоминаемых на компьютерно-читаемом носителе, таком как флоппи-диск, и загружается на систему 118 для передачи на устройство 102. В другом варианте осуществления система 104 «ICamera» может запоминаться на компьютерно-читаемом носителе, таком как плата запоминающего устройства (не показана), и вставляемом непосредственно в устройство 102, так что система 104 «ICamera» может выполняться на устройстве 102. Таким образом, устройство 102 может принимать систему 104 «ICamera» в беспроводной передаче, проводной передаче или посредством извлечения его непосредственно из запоминающего устройства.In one embodiment, the ICamera system 104 is offered as instructions stored on a computer-readable medium, such as a floppy disk, and downloaded to the system 118 for transmission to the device 102. In another embodiment, the ICamera system 104 can be stored on a computer-readable medium, such as a memory card (not shown), and inserted directly into the device 102, so that the ICamera system 104 can run on the device 102. Thus, the device 102 can receive the ICamera system 104 in wireless a single transmission, a wired transmission, or by removing it directly from a storage device.

Фиг.2 представляет структурную схему, иллюстрирующую один вариант осуществления устройства 102, который включает в себя один вариант осуществления системы 104 «ICamera», которая работает так, чтобы обеспечить возможность того, что приложение будет эффективно управлять ресурсом камеры. Устройство 102 содержит обрабатывающую логическую схему 202, которая подключается к внутренней шине 204 данных запоминающему устройству 210 магазинного типа. Также подключаются к внутренней шине 204 данных запоминающее устройство 206 для хранения команд, запоминающее устройство 216 приложения, динамическая область 210 памяти, пользовательский интерфейс 212, логическая схема 216 камеры, логическая схема 218 аудиоустройства и интерфейс 214 ввода/вывода (I/O).FIG. 2 is a block diagram illustrating one embodiment of a device 102 that includes one embodiment of an ICamera system 104 that operates to enable the application to efficiently manage camera resources. The device 102 comprises processing logic 202 that connects to the internal data bus 204 to a store-type memory 210. Also connected to the internal data bus 204 is a memory 206 for storing commands, an application memory 216, a dynamic memory area 210, a user interface 212, a camera logic 216, an audio device logic 218, and an input / output (I / O) interface 214.

Во время работы устройства 102 обрабатывающая логическая схема 202 выполняет команды программы, хранящиеся в запоминающем устройстве 206 для хранения команд, чтобы активировать среду 116 прогона программы. Среда 116 прогона программы может быть средой BREW или другой подходящей средой прогона программы. Чтобы способствовать выполнению команд, обрабатывающая логическая схема 202 использует запоминающее устройство 216 магазинного типа для хранения программных данных или команд на временной основе. Например, обрабатывающая логическая схема 202 может запоминать постоянные величины, переменные величины, программные адреса, указатели, команды или другую информацию на временной основе в динамической области 210 памяти. Динамическая область памяти содержит виртуально любой тип памяти, подходящий для хранения и извлечения информации посредством обрабатывающей логической схемы 202.During operation of device 102, processing logic 202 executes program instructions stored in instruction memory 206 to activate program run environment 116. The program run environment 116 may be a BREW environment or another suitable program run environment. To facilitate the execution of instructions, processing logic 202 uses a store-type memory 216 to store program data or instructions on a temporary basis. For example, processing logic 202 may store constants, variables, program addresses, pointers, instructions, or other information on a temporary basis in the dynamic memory region 210. The dynamic memory region contains virtually any type of memory suitable for storing and retrieving information through processing logic 202.

В одном или более вариантах осуществления обрабатывающая логическая схема 202 содержит центральный процессор (CPU), вентильную матрицу, программное обеспечение или логическую схему, содержащую любую комбинацию аппаратных средств и программного обеспечения. Таким образом, обрабатывающая логическая схема 202 в основном содержит логическую схему для выполнения машинно-читаемых команд.In one or more embodiments, the processing logic 202 comprises a central processing unit (CPU), a gate array, software, or logic circuitry comprising any combination of hardware and software. Thus, the processing logic 202 basically comprises a logic for executing machine-readable instructions.

Запоминающее устройство 206 для хранения команд содержит запоминающее устройство с произвольной выборкой (RAM), постоянное запоминающее устройство (ROM), запоминающее устройство с групповой перезаписью (FLASH), электронно-перепрограммируемое постоянное запоминающее устройство (EEPROM) или любой другой подходящий тип памяти, или их комбинацию. В одном варианте осуществления запоминающее устройство 106 для хранения команд расположено внутри устройства 102, а в другом варианте осуществления запоминающее устройство 206 для хранения команд содержит удаляемую плату запоминающего устройства или устройство памяти, которое может быть выборочно прикреплено к устройству 102, и, тем самым, подключено к внутренней шине 204. Таким образом, запоминающее устройство 206 для хранения команд может содержать виртуально любой тип памяти, которая способна запоминать команды, которые могут выполняться обрабатывающей логической схемой 202.The memory 206 for storing instructions comprises a random access memory (RAM), read-only memory (ROM), a group-overwritten storage (FLASH), an electronic-programmable read-only memory (EEPROM), or any other suitable type of memory, or a combination. In one embodiment, instruction memory 106 is located inside device 102, and in another embodiment, instruction memory 206 includes a removable memory card or memory device that can be selectively attached to device 102, and thereby connected to the internal bus 204. Thus, the storage device 206 for storing instructions can contain virtually any type of memory that is capable of storing instructions that can be executed on ops logic 202.

Пользовательский интерфейс 212 принимает входные данные пользователя, например, с клавиатуры, указательного устройства, сенсорной клавиатуры или других механизмов ввода, чтобы обеспечить возможность того, что пользователь взаимодействует с устройством 102.The user interface 212 receives user input, for example, from a keyboard, pointing device, touch keyboard, or other input mechanisms to enable the user to interact with device 102.

Аудиологическая схема 218 содержит логическую схему для вывода аудиоинформации на громкоговоритель(и) устройства, удаленные громкоговоритель(и) или аудиосистему, или другой тип источника звука. Например, пара удаленных громкоговорителей может принимать выходные аудиоданные логической схемы 218 для передачи аудиоинформации пользователю устройства.The audio circuit 218 comprises a logic circuit for outputting audio information to the speaker (s) of the device, remote speaker (s) or an audio system, or other type of sound source. For example, a pair of remote speakers may receive audio output from logic 218 to transmit audio information to a device user.

Логическая схема 216 камеры содержит логическую схему аппаратных средств и/или программных средств, которая служит средством соединения с ресурсом 124 камеры, установленным на устройстве. Например, устройство может включать в себя камеру прибора с зарядовой связью (CCD) или любой другой тип ресурса камеры. Логическая схема 216 камеры служит средством соединения с ресурсом камеры для обеспечения возможности того, что неподвижные изображения и видеоизображения будут получаться от ресурса камеры. Таким образом, логическая схема 216 камеры и аудиологическая схема 218 могут содержать аппаратные средства и/или программное обеспечение в любой комбинации, чтобы обеспечить возможность того, что устройство 102 зафиксирует и получит визуальную и аудиоинформацию.The camera logic 216 comprises hardware and / or software logic that serves as a means of connecting to the camera resource 124 installed on the device. For example, a device may include a charge-coupled device (CCD) camera or any other type of camera resource. The camera logic 216 serves as a means of connecting to a camera resource to ensure that still images and video images will be obtained from the camera resource. Thus, the camera logic 216 and the audiological circuit 218 may include hardware and / or software in any combination to enable the device 102 to capture and receive visual and audio information.

Интерфейс 214 ввода/вывода (I/O) работает, чтобы передавать и принимать информацию между устройством 102 и внешними устройствами, системами и/или сетями. Например, в одном варианте осуществления интерфейс 214 ввода/вывода (I/O) содержит цепь радиоприемопередатчика (не показана), которая работает, чтобы передавать и принимать информацию по сети беспроводной передачи данных, используя, например, линию 110 связи. Например, приемопередатчик содержит схему, которая модулирует информацию, принятую от обрабатывающей логической схемы 2-2, и преобразует модулированную информацию в высокочастотные сигналы, пригодные для беспроводной передачи. Подобным образом приемопередатчик также содержит схему для преобразования принятых высокочастотных сигналов передачи в сигналы, подходящие для демодуляции и последующей обработки посредством обрабатывающей логической схемы 202.An I / O interface 214 operates to transmit and receive information between device 102 and external devices, systems, and / or networks. For example, in one embodiment, the input / output (I / O) interface 214 comprises a radio transmitter circuit (not shown) that operates to transmit and receive information over a wireless data network using, for example, communication line 110. For example, the transceiver comprises a circuit that modulates information received from the processing logic 2-2, and converts the modulated information into high frequency signals suitable for wireless transmission. Similarly, the transceiver also comprises a circuit for converting the received high frequency transmission signals to signals suitable for demodulation and subsequent processing by the processing logic 202.

В другом варианте осуществления интерфейс 214 ввода/вывода содержит приемопередатчик, который работает так, чтобы передавать и принимать информацию по линии передачи с фиксированным монтажом, такой как телефонная линия, чтобы осуществлять связь с удаленной системой по сети передачи данных общего пользования, такой как Интернет.In another embodiment, the input / output interface 214 comprises a transceiver that operates to transmit and receive information on a fixed-mount transmission line, such as a telephone line, to communicate with a remote system via a public data network such as the Internet.

В еще другом варианте осуществления интерфейс 214 ввода/вывода содержит схему, которая работает так, чтобы осуществлять связь с локальными устройствами, такими как локальная рабочая станция 116, использующими линию 120 передачи. Интерфейс 214 ввода/вывода может также включать в себя схему (такую как логическая схема с последовательным или параллельным портом), чтобы осуществлять связь с принтером или другим локальным компьютером или устройством, таким как флоппи-диск или плата запоминающего устройства. Таким образом, интерфейс 214 ввода/вывода может содержать любой тип аппаратных средств, программного обеспечения или логическую схему, содержащую любую комбинацию аппаратных средств и программного обеспечения, чтобы обеспечить возможность того, что устройство 102 будет осуществлять связь с другими локальными или удаленно расположенными устройствами или системами.In yet another embodiment, the input / output interface 214 comprises a circuit that operates to communicate with local devices, such as local workstation 116, using transmission line 120. The I / O interface 214 may also include a circuit (such as a logic circuit with a serial or parallel port) to communicate with a printer or other local computer or device, such as a floppy disk or memory card. Thus, the input / output interface 214 may comprise any type of hardware, software, or logic circuitry containing any combination of hardware and software to enable the device 102 to communicate with other local or remotely located devices or systems .

Во время работы устройства 102 выполнение команд программы обрабатывающей логической схемой 202 обусловливает то, что система 104 ICamera активируется. Например, команды ICamera могут сохраняться в компьютерно-читаемых носителях, таких, как запоминающее устройство для хранения команд, и выполнение этих команд активирует систему ICamera. Система 104 ICamera взаимодействует со средой 116 прогона программы для обеспечения возможности того, что приложение эффективно управляет ресурсом 124 камеры, расположенном на устройстве. Например, приложение 220 загружается в устройство 102 посредством беспроводной сети 108 и сохраняется в запоминающем устройстве 208. В одном варианте осуществления приложение 220 активируется и взаимодействует с системой 104 ICamera, чтобы управлять работой ресурса 124 камеры посредством управления логической схемой 216 камеры. Например, приложение 220 может действовать, чтобы извлекать неподвижные изображения или видеокадры из ресурса камеры, или устанавливать выбранные параметры, которые контролируют, как работает ресурс камеры. Чтобы завершить это, приложение 220 взаимодействует с единственным программным интерфейсом, обеспечиваемым системой 104 ICamera, чтобы выполнять все операции, связанные с ресурсом камеры.During operation of device 102, execution of program instructions by processing logic 202 causes ICamera system 104 to activate. For example, ICamera commands can be stored in computer-readable media, such as a memory for storing commands, and executing these commands activates the ICamera system. The ICamera system 104 interacts with the program run environment 116 to enable the application to efficiently manage the camera resource 124 located on the device. For example, application 220 is downloaded to device 102 via wireless network 108 and stored in memory 208. In one embodiment, application 220 is activated and interacts with ICamera system 104 to control the operation of camera resource 124 by controlling camera logic 216. For example, application 220 may act to extract still images or video frames from a camera resource, or set selected parameters that control how the camera resource works. To complete this, application 220 interacts with the only software interface provided by ICamera 104 to perform all operations associated with the camera resource.

Фиг.3 показывает подробную функциональную диаграмму одного варианта осуществления системы 104 ICamera, выполняемого на устройстве 102. Устройство 102 включает в себя свои собственные аппаратные средства 302, которые содержат ресурс камеры, например камеру 124. Устройство 102 также включает в себя свое собственное мультимедийное программное обеспечение 304, которое содержит программные модули для аудио и видео. Эти модули могут включать в себя конкретные кодирующие модули, такие как кодирующие модули MPEG4 и JPEG. Эти модули представляют модули программного обеспечения низкого уровня, которые используются, чтобы непосредственно осуществлять связь с собственными аппаратными средствами 302. Например, модули 304 подключаются к ресурсу 302 камеры. Хотя показан один вариант осуществления, возможно, также иметь меньше или больше мультимедийных модулей 304 программного обеспечения, и эти модули могут подключаться ко всем типам собственных аппаратных средств 302. Таким образом, другие конфигурации собственных аппаратных средств 302 и собственного программного обеспечения 304 возможны в пределах объема правовой охраны настоящего изобретения.FIG. 3 shows a detailed functional diagram of one embodiment of an ICamera system 104 running on the device 102. The device 102 includes its own hardware 302 that contain a camera resource, such as a camera 124. The device 102 also includes its own multimedia software 304, which contains software modules for audio and video. These modules may include specific encoding modules, such as MPEG4 and JPEG encoding modules. These modules represent low-level software modules that are used to directly communicate with native hardware 302. For example, modules 304 are connected to camera resource 302. Although one embodiment is shown, it is also possible to have fewer or more multimedia software modules 304, and these modules can be connected to all types of proprietary hardware 302. Thus, other configurations of proprietary hardware 302 and proprietary software 304 are possible within the scope. legal protection of the present invention.

Во время работы устройство 102 выполняет команды программы, чтобы активировать среду 116 прогона программы, которая в одном варианте осуществления представляет собой среду Brew. Во время работы устройства 102 приложение 220 затем активируется. Например, пользователь устройства загружает приложение 220 от сети передачи данных (т.е. используя интерфейс 214), и активирует приложение 220 через пользователя 212 I/F. Приложение 220 было спроектировано, чтобы управлять ресурсом камеры устройства, и было создано, используя структурные компоненты ICamera, как описано здесь.During operation, device 102 executes program instructions to activate a program run environment 116, which in one embodiment is a Brew environment. During operation of the device 102, application 220 is then activated. For example, a device user downloads an application 220 from a data network (i.e., using an interface 214), and activates an application 220 through an I / F user 212. Application 220 was designed to manage the device’s camera resource, and was created using the structural components of ICamera, as described here.

Приложение 220 иллюстрирует пример системы 104 ICamera, которая обеспечивает возможность того, что приложение 220 использует простой программный интерфейс 306 приложения (API), обеспечиваемый системой 104 ICamera для выполнения всех операций, связанных с ресурсом камеры. Структура 308 данных носителей может быть по выбору создана системой 104 ICamera для запоминания и извлечения видеоинформации.Application 220 illustrates an example of ICamera system 104, which provides the possibility that application 220 uses the simple application programming interface 306 (API) provided by ICamera system 104 to perform all operations related to the camera resource. The media data structure 308 can optionally be created by the ICamera system 104 for storing and retrieving video information.

Система 104 ICamera подключается и осуществляет обмен информацией с собственными модулями 304 через среду 116 прогона программы. Например, среда 116 прогона программы может быть платформой Brew, которая обеспечивает обобщенные вызовы для обеспечения доступа к особым ресурсам устройства. Однако любая подходящая технология интерфейса может использоваться для обеспечения возможности связи между системой 104 ICamera и модулями 304. Таким образом, возможно для системы 104 ICamera непосредственно управлять любым из модулей 304 для выполнения выбранных функций камеры. Например, система 104 ICamera может управлять модулем Mpeg4 для получения видеоданных от ресурса камеры и кодировать их в формате Mpeg4. Данные, полученные системой 104 ICamera от модулей 304, могут быть сохранены в структуре 308 данных, тем самым выполняя функцию «Запись», или могут быть извлечены и отображены на дисплее устройства, тем самым выполняя функцию «Воспроизведение».The ICamera system 104 connects and communicates with native modules 304 through a program run environment 116. For example, the program run environment 116 may be a Brew platform that provides generic calls to provide access to specific device resources. However, any suitable interface technology may be used to enable communication between the ICamera system 104 and the modules 304. Thus, it is possible for the ICamera system 104 to directly control any of the modules 304 to perform selected camera functions. For example, ICamera system 104 may control the Mpeg4 module to receive video data from a camera resource and encode it in Mpeg4 format. Data received by ICamera system 104 from modules 304 can be stored in the data structure 308, thereby performing the “Record” function, or can be retrieved and displayed on the device display, thereby performing the “Play” function.

Структура данных, хранимых на носителеThe structure of data stored on the media

Структура 308 данных, хранимых на носителе, работает, чтобы защитить данные камеры, принятые системой 104 ICamera от собственного программного обеспечения 304. В одном варианте осуществления следующая структура определяет структуру данных, хранимых на носителе, которая обеспечивает данные типа источник/приемник и контекстно-зависимые данные, соотносимые с типом данных, хранимых на носителе.The data structure 308 stored on the medium works to protect the camera data received by the ICamera system 104 from the proprietary software 304. In one embodiment, the following structure defines a structure of data stored on the medium that provides source / receiver and context-sensitive data data related to the type of data stored on the medium.

typedef structtypedef struct

{{

AEECLSID clsData; //Тип данных носителяAEECLSID clsData; // media data type

void *pData; //контекстно-зависимые данныеvoid * pData; // context sensitive data

uint32 dwSize; //контекстно-зависимые данныеuint32 dwSize; // context sensitive data

} AEEMediaData;} AEEMediaData;

где элементы определяются следующим образом:where the elements are defined as follows:

clsData; //Тип данных носителяclsData; // media data type

pData; //контекстно-зависимые данныеpData; // context sensitive data

dwSize; //контекстно-зависимые данныеdwSize; // context sensitive data

и где следующая таблица представляет подробное описание контекстно-зависимых данных для предопределенных типов данных носителя, где «Считывать/Записывать» означает «Воспроизводить/Записывать» в отношении ресурса камеры устройства.and where the following table provides a detailed description of context-sensitive data for predefined media data types, where “Read / Write” means “Play / Write” in relation to the camera resource of the device.

clsDataclsData РежимMode pDatapData dwSizedwSize MMD_FILE_NAME
MMD_BUFFER:
MMD_FILE_NAME
MMD_BUFFER:
считывать/записывать
считывать/записывать
read / write
read / write
имя файла
размер данных буфера печатающего устройства или 0
file name
printer data buffer size or 0
00
MMD_SOURCE:MMD_SOURCE: считывать/записыватьread / write размер данных ISOURCE или 0ISOURCE data size or 0

Следует заметить, что для воспроизведения clsData могут быть установлены на идентификатор класса любого класса на основе ISOURCE с pData, установленными в соответствующем интерфейсном указательном устройстве.It should be noted that for playback clsData can be set to the class identifier of any class based on ISOURCE with pData installed in the corresponding interface pointer device.

В одном варианте осуществления система 104 ICamera обеспечивает единственный интерфейс 306, который обеспечивает возможность того, что приложение управляет ресурсом камеры на устройстве. Интерфейс 306 включает в себя набор команд программного интерфейса приложения (API) системы ICamera, которые обеспечивают выполнение различных функций, относящихся к камере. Набор команд программного интерфейса приложения (API), обеспечиваемый системой ICamera, представляет собой следующее:In one embodiment, the ICamera system 104 provides a single interface 306 that enables the application to manage the camera resource on the device. The interface 306 includes a set of commands for the ICamera system application programming interface (API), which provide various functions related to the camera. The application program interface (API) command set provided by ICamera is as follows:

1.one. ICAMERA_SetParm()ICAMERA_SetParm () ;устанавливает параметры камеры; sets camera parameters 2.2. ICAMERA_GetParm()ICAMERA_GetParm () ;получает параметры камеры; gets camera settings 3.3. ICAMERA_Preview()ICAMERA_Preview () ;начинает предварительный просмотр (режим видоискателя); starts previewing (viewfinder mode) 4.four. ICAMERA_Pause()ICAMERA_Pause () ;приостанавливает выполнение текущей операции; pauses the current operation 5.5. ICAMERA_Resume()ICAMERA_Resume () ;возобновляет выполнение текущей операции; resumes the current operation 6.6. ICAMERA_RecordSnapshot()ICAMERA_RecordSnapshot () ;записывает кадр; record frame 7.7. ICAMERA_RecordMovie()ICAMERA_RecordMovie () ;записывает фильм; recording a movie 8.8. ICAMERA_Stop()ICAMERA_Stop () ;выдает команду прекращения работы ; issues a shutdown command 9.9. ICAMERA_EncodeSnapshot()ICAMERA_EncodeSnapshot () ;кодирует изображение кадра в определенном формате (напр., формате JPEG); encodes a picture of a frame in a specific format (e.g. JPEG format) 10.10. ICAMERA_SetMediaData()ICAMERA_SetMediaData () ;устанавливает данные носителя; sets media data 11.eleven. ICAMERA_RegisterNotify()ICAMERA_RegisterNotify () ;регистрирует функцию уведомления; registers the notification function 12.12. ISHELL_CreateInstance()ISHELL_CreateInstance () ;приписывает значение объекту системы ICamera; assigns a value to an object of the ICamera system и так далее.and so on.

Например, команда ICAMERA_SetParm() может быть выполнена приложением, чтобы дать команду системе 104 ICamera установить конкретные параметры, установки или переменные, связанные с ресурсом камеры устройства. В других вариантах осуществления приложения могут выполнять одну или более других команд программного интерфейса приложения (API) системы ICamera (выше не показаны), которые могут быть включены в систему 104 ICamera для управления фактически любой функцией ресурса камеры.For example, the ICAMERA_SetParm () command may be executed by an application to instruct the ICamera system 104 to set specific parameters, settings, or variables associated with a device’s camera resource. In other embodiments, applications may execute one or more other ICamera system application program interface (API) instructions (not shown above) that may be included in ICamera system 104 to control virtually any camera resource function.

В одном варианте осуществления система 104 ICamera работает так, чтобы обеспечить возможность того, что приложение будет управлять ресурсом камеры для снятия кадра и сохранения его путем выполнения следующих шагов:In one embodiment, the ICamera system 104 is operable to enable the application to manage the camera resource to take a frame and save it by following these steps:

1. Программа приложения приписывает значение объекту системы/интерфейса ICamera, используя команду «ISHELL_CreateInstance()» и регистрирует функцию обратного вызова для приема асинхронных событий.1. The application program assigns a value to the ICamera system / interface object using the “ISHELL_CreateInstance ()” command and registers a callback function for receiving asynchronous events.

2. Команда «ICAMERA_Preview()» начинает работу камеры в режиме предварительного просмотра, обеспечивающем возможность того, что кадры изображения будут приниматься и отображаться при помощи приложения через функцию регистрируемого обратного вызова.2. The “ICAMERA_Preview ()” command starts the camera in the preview mode, which provides the possibility that image frames will be received and displayed using the application through the registered callback function.

3. Команда «ICAMERA_SetMediaData()» устанавливает имя файла/буфер, где требуется записать данные.3. The “ICAMERA_SetMediaData ()” command sets the file name / buffer where data is to be written.

4. Команды «ICAMERA_SetVideoEncode()» и «ICAMERA_SetAudioEncode()» определяет форматы кодирования, которые должны использоваться для кодирования данных изображения от ресурса камеры и аудиоданных. Например, форматами кодирования могут быть кодирование JPEG и MPEG4. Например, ресурс камеры может иметь подсоединенный микрофон для аудиозаписи.4. The “ICAMERA_SetVideoEncode ()” and “ICAMERA_SetAudioEncode ()” commands defines the encoding formats that should be used to encode image data from the camera resource and audio data. For example, encoding formats may be JPEG and MPEG4 encoding. For example, a camera resource may have a connected microphone for audio recording.

5. Команда «ICAMERA_Recordsnapshot()» записывает и кодирует изображение в указанном месте назначения.5. The ICAMERA_Recordsnapshot () command records and encodes the image at the specified destination.

В другом варианте осуществления система 104 ICamera работает, чтобы обеспечить возможность того, что приложение будет управлять ресурсом камеры для установки рабочих параметров камеры, таких как параметр камеры, обеспечивающий изменение масштаба изображения, или уровни яркости и контрастности, посредством выполнения следующих команд программного интерфейса приложения (API).In another embodiment, the ICamera system 104 is operable to enable the application to manage the camera resource to set camera operating parameters, such as a camera parameter that allows for zooming, or brightness and contrast levels, by executing the following application program interface commands ( API).

1. При выполнении команды «ICAMERA_Setzoom()» устанавливается уровень масштаба изображения.1. When the "ICAMERA_Setzoom ()" command is executed, the image scale level is set.

2. При выполнении команды «ICAMERA_Brightness()» устанавливается уровень яркости.2. When the "ICAMERA_Brightness ()" command is executed, the brightness level is set.

3. При выполнении команды «ICAMERA_SetContrast()» устанавливается уровень контраста.3. When the "ICAMERA_SetContrast ()" command is executed, the contrast level is set.

Фиг.4 представляет один вариант осуществления конечного автомата 400, обеспечиваемый одним вариантом осуществления системы ICamera для обеспечения возможности того, что приложение будет управлять ресурсом камеры на портативном устройстве. После того как приложение приписывает значение объекту системы ICamera, конечный автомат 400 находится в состоянии 403 готовности (READY). Приложение может затем выдавать команды программного интерфейса приложения системы ICamera, чтобы переходить в другие состояния конечного автомата 400 и тем самым управлять работой ресурса камеры. Например, команда Preview() активирует состояние 404 предварительного просмотра. Команда Record_snapshot() активирует состояние 406 кадра, когда изображение кадра получается от ресурса камеры. Команда Record_movie() активирует состояние 408 фильма, когда поток видеоизображений получается от ресурса камеры. Конечный автомат 400 также обеспечивает возможность того, что дополнительные команды управляют работой каждого состояния. Например, команды Pause() и Resume() могут использоваться для управления работой состояния 404 предварительного просмотра.FIG. 4 represents one embodiment of a state machine 400 provided by one embodiment of an ICamera system to enable an application to manage a camera resource on a portable device. After the application assigns a value to an object of the ICamera system, state machine 400 is in READY state 403. The application can then issue commands to the ICamera system application program interface to transition to other states of the state machine 400 and thereby control the operation of the camera resource. For example, the Preview () command activates the preview state 404. The Record_snapshot () command activates a frame state 406 when a frame image is obtained from a camera resource. The Record_movie () command activates the movie state 408 when a video stream is received from a camera resource. State machine 400 also provides the possibility that additional commands control the operation of each state. For example, the Pause () and Resume () commands may be used to control the operation of the preview state 404.

Следовательно, использование конечного автомата 400, обеспечиваемого системой ICamera обеспечивает возможность того, что приложения управляют ресурсом камеры системы, чтобы получать неподвижные изображения и видеоклипы. Возможно также модифицировать конечный автомат 400 так, чтобы добавлять, удалять, изменять или переустанавливать состояния, и/или работу команд программного интерфейса приложения (API) для перехода в состояния без отклонения от объема правовой охраны вариантов осуществления. Таким образом, фактически любой тип конечного автомата может обеспечиваться системой ICamera для обеспечения возможности того, что приложения будут управлять ресурсом камеры устройства.Therefore, the use of the state machine 400 provided by the ICamera system makes it possible for applications to control the camera resource of the system to obtain still images and video clips. It is also possible to modify the state machine 400 so as to add, delete, change, or reinstall the states and / or operation of the application program interface (API) commands to transition to the states without deviating from the scope of legal protection of the embodiments. Thus, virtually any type of state machine can be provided by the ICamera system to enable applications to manage the device’s camera resource.

Фиг.5 представляет один вариант осуществления способа 500 для осуществления работы системы ICamera на устройстве, чтобы обеспечить возможность того, что приложение будет управлять ресурсом камеры на устройстве. Будет предполагаться, что устройство реализует среду BREW прогона программы и включает в себя один вариант осуществления системы ICamera, как описано здесь.FIG. 5 represents one embodiment of a method 500 for operating an ICamera system on a device to enable an application to manage a camera resource on a device. It will be assumed that the device implements the BREW run environment of the program and includes one embodiment of the ICamera system, as described here.

В блоке 502 создается приложение, использующее структурные компоненты системы ICamera так, что оно может управлять ресурсом камеры на устройстве посредством использования простого программного интерфейса приложения (API), обеспечиваемого системой ICamera. Например, разработчики приложений создают приложения, которые выполняются на портативных устройствах и реализуют различные функции камеры. Приложения включают в себя команды программного интерфейса приложения (API) системы ICamera, для подключения к системе ICamera и, посредством этого, управляют операциями камеры устройства в соответствии с конечным автоматом (т.е. конечным автоматом 400, показанным на Фиг.4).In block 502, an application is created using the structural components of the ICamera system so that it can control the camera resource on the device by using the simple application programming interface (API) provided by the ICamera system. For example, application developers create applications that run on portable devices and implement various camera functions. Applications include ICamera system application program interface (API) commands for connecting to the ICamera system, and thereby control the camera operations of the device in accordance with the state machine (i.e., state machine 400 shown in FIG. 4).

В блоке 504 приложение с командами программного интерфейса приложения (API) системы ICamera загружается на портативное устройство для выполнения. Например, приложение может загружаться на устройство через сеть 108 беспроводной передачи данных. Приложение может выполняться немедленно или быть сохраняемым в запоминающем устройстве и выполняться в более позднее время.At block 504, an application with ICamera system application program interface (API) commands are downloaded to a portable device for execution. For example, an application may be downloaded to a device via a wireless data network 108. An application may be executed immediately or be stored in a storage device and executed at a later time.

В блоке 506 приложение выполняется и приписывает значение объекту системы ICamera. Например, приложение выполняется в среде прогона программы, действующей на устройстве. Во время выполнения приложение приписывает значения объекту системы ICamera так, что оно может управлять ресурсами камеры устройства.At block 506, the application is executed and assigns a value to an object of the ICamera system. For example, an application runs in a run environment of a program running on a device. At run time, the application assigns values to an ICamera system object so that it can control the device’s camera resources.

В блоке 508 приложение регистрирует функцию уведомления, если это требуется для принятых асинхронных событий от системы ICamera. Например, выбранные события камеры могут переключать уведомление приложению.At block 508, the application registers a notification function if it is required for received asynchronous events from the ICamera system. For example, selected camera events may trigger notification to the application.

В блоке 510 структура данных носителя создается и инициализируется на основе ресурса камеры и/или требуемых характеристик кодирования для носителя. Например, в одном варианте осуществления тип данных носителя определяется на основе расширения файла, содержания файла и кодирования файла.At block 510, a media data structure is created and initialized based on the camera resource and / or the required encoding characteristics for the medium. For example, in one embodiment, the data type of the medium is determined based on the file extension, file content, and file encoding.

В блоке 512 приложение выдает команды программного интерфейса приложения (API) системы ICamera системе ICamera, которая, в свою очередь, работает так, чтобы управлять ресурсом камеры на портативном устройстве. Например, приложение может выдавать команды для выполнения любой из функций, описанных в конечном автомате 400, для управления работой ресурса камеры. Таким образом, приложение может получать кадры, видеоизображения, или управлять параметрами камеры вне зависимости от типа ресурса камеры, доступного на устройстве. В результате система камеры работает так, чтобы устранить любые потенциальные проблемы, связанные с совместимостью между ресурсом камеры устройства и приложением.In block 512, the application issues the ICamera application program interface (API) commands to the ICamera system, which, in turn, operates to manage the camera resource on the portable device. For example, an application may issue commands to perform any of the functions described in state machine 400 to control the operation of a camera resource. Thus, the application can receive frames, video images, or control camera settings, regardless of the type of camera resource available on the device. As a result, the camera system works to eliminate any potential compatibility issues between the camera resource of the device and the application.

В блоке 514 после того, как приложение завершило выполнение функций камеры, система ICamera больше не требуется и она выключается.In block 514, after the application has completed the camera functions, the ICamera system is no longer required and it turns off.

Следует отметить, что способ 500 представляет собой только один вариант осуществления и что возможно вносить изменения, дополнения, удаления и/или переустановки шагов способа без отступления от объема правовой охраны описанных вариантов осуществления.It should be noted that the method 500 represents only one embodiment and that it is possible to make changes, additions, deletions and / or reinstallation of the steps of the method without departing from the scope of legal protection of the described embodiments.

Пример осуществленияImplementation example

Ниже приводится пример осуществления, чтобы проиллюстрировать, как в одном варианте осуществления приписывается значение объекту системы ICamera и ресурс камеры управляется посредством приложения, загружаемого в портативное устройство. Этот пример включает в себя ссылки на соответствующие блоки в способе 500, представленном на Фиг.5, и предполагается, что среда прогона программы, используемая портативным устройством, представляет собой среду BREW. Пример «САрр» представляет собой глобальную структуру апплета BREW.The following is an exemplary embodiment to illustrate how, in one embodiment, the value is attributed to an object of the ICamera system and the camera resource is controlled by an application downloaded to a portable device. This example includes references to corresponding blocks in the method 500 of FIG. 5, and it is assumed that the program run environment used by the portable device is a BREW environment. The Carr example is the global structure of the BREW applet.

static void App_CameraPreview(CApp * pme)static void App_CameraPreview (CApp * pme)

{{

int nRet;int nRet;

AEEMediaData md;AEEMediaData md;

//создают структуру данных носителя (Фиг.5 - блок 510)// create the data structure of the media (Figure 5 - block 510)

md.clsData = MMD_FILE_NAME;md.clsData = MMD_FILE_NAME;

md.pData = (void *)"album/snapshot.jpg";md.pData = (void *) "album / snapshot.jpg";

md.dwSize = 0;md.dwSize = 0;

//Активируют систему ICamera и приводят в состояние готовности (Ready) (Фиг.5 - блок 508)// Activate the ICamera system and bring it to the Ready state (Figure 5 - block 508)

nRet = ISHELL_CreateInstance(pme->a.pIShell, AEECLSID_CAMERA, &pme->m_pICamera);nRet = ISHELL_CreateInstance (pme-> a.pIShell, AEECLSID_CAMERA, & pme-> m_pICamera);

//Если успешно, то регистрируют App_CameraNotify() как регистрируемый обратный вызов для событий системы ICamera (Фиг.5 - блок 508)// If successful, register App_CameraNotify () as a registered callback for ICamera system events (Figure 5 - block 508)

if (SUCCESS != nRet)if (SUCCESS! = nRet)

DisplayErrorDlg(pme, IDS_ERR_CREATECAMERA);DisplayErrorDlg (pme, IDS_ERR_CREATECAMERA);

else if (SUCCESS != ICAMERA_RegisterNotify(pme->m_pICamera, App_CameraNotify, pme))else if (SUCCESS! = ICAMERA_RegisterNotify (pme-> m_pICamera, App_CameraNotify, pme))

DisplayErrorDlg(pme,IDS_ERR_REGISTERNOTIFY);DisplayErrorDlg (pme, IDS_ERR_REGISTERNOTIFY);

//Начинают предварительный просмотр (Фиг.5 - блок 512)// Start the preview (Figure 5 - block 512)

else if (SUCCESS != ICAMERA_Preview(pme->m_pIMedia)) DisplayErrorDlg(pme, IDS_ERR_PLAY);else if (SUCCESS! = ICAMERA_Preview (pme-> m_pIMedia)) DisplayErrorDlg (pme, IDS_ERR_PLAY);

Множественные ресурсы камерыMultiple Camera Resources

В одном варианте осуществления система ICamera работает для обеспечения возможности того, что приложение будет управлять множественными ресурсами камеры на единичном устройстве. Например, устройство может включать в себя камеру с низким разрешением для получения неподвижных изображений и камеру с высоким разрешением для получения видеоклипов. В этом варианте осуществления могут приписываться значения объекта для двух вариантов системы ICamera, чтобы обеспечить возможность того, что приложение будет управлять двумя ресурсами камеры. Например, один программный интерфейс приложения (API) системы ICamera используется приложением, чтобы управлять камерой низкого разрешения, а второй программный интерфейс приложения (API) системы ICamera используется приложением, чтобы управлять камерой высокого разрешения. Например, одна камера может использоваться для видеотелефонии, а вторая камера - как цифровой преобразователь(DSC)/записывающая видеокамера.In one embodiment, the ICamera system works to enable the application to manage multiple camera resources on a single device. For example, a device may include a low resolution camera for capturing still images and a high resolution camera for receiving video clips. In this embodiment, object values for the two ICamera system variants can be attributed to allow the application to manage two camera resources. For example, one ICamera system application programming interface (API) is used by an application to control a low resolution camera, and a second ICamera system application programming interface (API) is used by an application to control a high resolution camera. For example, one camera can be used for video telephony, and the second camera as a digital converter (DSC) / recording video camera.

Для ясности описания чертежи, представляющие работу двух или более систем ICamera на устройстве, не приводятся. Однако, поскольку каждая система ICamera работает, как здесь описывается, такие чертежи были бы избыточными и ненужными. Во время работы приложение приписывает значения объекта на первом и втором вариантах системы ICamera, тем самым активируя первый и второй программные интерфейса приложения (API) системы ICamera. Приложение после этого выполняет команды, связанные с любым программным интерфейсом приложения (API) для управления соответствующим ресурсом камеры. Таким образом, варианты осуществления системы ICamera могут использоваться для обеспечения возможности того, что приложение будет управлять фактически любым числом ресурсов камеры на устройстве.For clarity of description, drawings representing the operation of two or more ICamera systems on a device are not provided. However, since each ICamera system operates as described here, such drawings would be redundant and unnecessary. During operation, the application ascribes the values of the object to the first and second variants of the ICamera system, thereby activating the first and second application programming interfaces (APIs) of the ICamera system. The application then executes commands associated with any application programming interface (API) to manage the corresponding camera resource. Thus, embodiments of the ICamera system can be used to enable the application to manage virtually any number of camera resources on the device.

В одном или более вариантах осуществления была описана система камеры, включающая в себя способы и устройство, которая работает так, чтобы обеспечить возможность приложению управлять одним или более ресурсами камеры на портативном устройстве с ограниченными ресурсами, имеющем встроенный контроллер. Соответственно, в то время как один или более вариантов осуществления способов и устройства были проиллюстрированы и описаны здесь, значимым является то, что различные изменения могут вноситься в варианты осуществления без отступления от их духа или существенных характеристик. Следовательно, предполагается, что приведенные здесь варианты осуществления являются иллюстративными, но не ограничивающими объема правовой охраны изобретения, которое определено нижеследующей формулой изобретения.In one or more embodiments, a camera system has been described including methods and a device that operates to enable an application to manage one or more camera resources on a portable resource-limited device having an integrated controller. Accordingly, while one or more embodiments of the methods and devices have been illustrated and described herein, it is significant that various changes can be made to the embodiments without departing from their spirit or essential characteristics. Therefore, it is intended that the embodiments provided herein are illustrative, but not limiting, of the scope of the legal protection of the invention as defined by the following claims.

Claims (20)

1. Способ приведения в действие системы камеры для обеспечения возможности того, что приложение управляет ресурсом камеры, способным выполнять функции камеры, в портативном устройстве, причем этот способ заключается в том, что:
активируют систему камеры, при этом система камеры способна работать так, чтобы управлять ресурсом камеры;
устанавливают сопряжение системы камеры с одним или более собственных модулей, которые подключаются к ресурсу камеры;
обеспечивают программный интерфейс приложения (API) для принятия системой камеры команд от приложения;
принимают системой камеры команду от приложения через программный интерфейс приложения (API), при этом команда идентифицирует функцию камеры, которая должна выполняться;
управляют посредством системы камеры одним или более собственными модулями, основываясь на команде;
управляют посредством одного или более собственных модулей, основываясь на команде, ресурсом камеры и
выполняют ресурсом камеры функцию камеры, идентифицированную посредством команды.
1. A method of actuating a camera system to enable an application to manage a camera resource capable of performing camera functions in a portable device, the method comprising:
activate the camera system, while the camera system is able to work so as to control the camera resource;
pairing the camera system with one or more proprietary modules that connect to the camera resource;
provide an application programming interface (API) for accepting commands from the application by the camera system;
receiving a command from the application by the camera system through the application program interface (API), the command identifying the camera function to be performed;
controlling through the camera system one or more native modules based on a command;
controlled by one or more proprietary modules based on a command, a camera resource, and
the camera resource identified by the command is performed by the camera resource.
2. Способ согласно п.1, который также заключается в том, что генерируют структуру данных носителя, чтобы сохранять данные, полученные от ресурса камеры.2. The method according to claim 1, which also consists in generating a data structure of the medium in order to store data received from the camera resource. 3. Способ согласно п.1, в котором шаг выполнения функции камеры заключается в том, что:
обеспечивают конечный автомат, который идентифицирует функции, связанные с ресурсом камеры; и
управляют конечным автоматом на основе команды выполнения функции камеры.
3. The method according to claim 1, in which the step of performing the function of the camera is that:
provide a state machine that identifies functions associated with a camera resource; and
control a state machine based on a command to execute a camera function.
4. Способ согласно п.1, в котором портативное устройство содержит второй ресурс камеры, и способ заключается в том, что:
активируют вторую систему камеры, при этом вторая система камеры способна работать так, чтобы управлять вторым ресурсом камеры;
обеспечивают второй программный интерфейс приложения (API) для принятия команд от приложения;
принимают вторую команду от приложения через второй программный интерфейс приложения (API), при этом вторая команда идентифицирует функцию камеры, которая должна выполняться вторым ресурсом камеры; и выполняют функцию камеры, идентифицированную посредством второй команды.
4. The method according to claim 1, in which the portable device contains a second camera resource, and the method consists in the fact that:
activate the second camera system, while the second camera system is able to work so as to control the second resource of the camera;
provide a second application programming interface (API) for accepting commands from the application;
receive the second command from the application through the second application programming interface (API), while the second command identifies the camera function that must be performed by the second camera resource; and perform a camera function identified by the second command.
5. Способ согласно п.1, в котором портативное устройство представляет собой беспроводное устройство.5. The method according to claim 1, wherein the portable device is a wireless device. 6. Устройство для приведения в действие системы камеры так, чтобы обеспечить возможность того, что приложение управляет ресурсом камеры, способным выполнять функции камеры, в портативном устройстве, причем это устройство содержит:
средство для активирования системы камеры, при этом система камеры способна работать так, чтобы управлять ресурсом камеры;
причем средство для активирования содержит средство для установления сопряжения системы камеры с одним или более собственных модулей, которые подключаются к ресурсу камеры;
средство для обеспечения программного интерфейса приложения (API) для принятия системой камеры команд от приложения;
средство для приема системой камеры команды от приложения через программный интерфейс приложения (API), при этом команда идентифицирует функцию камеры, которая должна выполняться;
средство для управления посредством системы камеры одним или более собственными модулями, основываясь на команде;
средство для управления посредством одного или более собственных модулей, основываясь на команде, ресурсом камеры и
средство для выполнения ресурсом камеры функции камеры, идентифицированной посредством команды.
6. A device for actuating a camera system so as to enable the application to manage a camera resource capable of performing camera functions in a portable device, the device comprising:
means for activating the camera system, while the camera system is able to work so as to control the camera resource;
moreover, the means for activating contains means for establishing a pairing of the camera system with one or more of its own modules that are connected to the camera resource;
means for providing an application programming interface (API) for receiving commands from an application by the camera system;
means for receiving a command from the application by the camera system through the application program interface (API), the command identifying a camera function to be performed;
means for controlling, through the camera system, one or more native modules based on a command;
means for controlling through one or more proprietary modules based on a command, a camera resource, and
means for the camera resource to perform the camera function identified by the command.
7. Устройство согласно п.6, которое также содержит средство для генерирования структуры данных носителя, чтобы сохранять данные, полученные от ресурса камеры.7. The device according to claim 6, which also contains means for generating a data structure of the medium to store data received from the camera resource. 8. Устройство согласно п.6, в котором средство для выполнения функции камеры содержит:
средство для обеспечения конечного автомата, который идентифицирует функции, связанные с ресурсом камеры; и
средство для управления конечным автоматом на основе команды выполнения функции камеры.
8. The device according to claim 6, in which the means for performing the function of the camera contains:
means for providing a state machine that identifies functions associated with a camera resource; and
means for controlling a state machine based on a camera function command.
9. Устройство согласно п.6, в котором портативное устройство содержит второй ресурс камеры, и это устройство содержит:
средство для активирования второй системы камеры, при этом вторая система камеры способна работать так, чтобы управлять вторым ресурсом камеры;
средство для обеспечения второго программного интерфейса приложения (API) для принятия команд от приложения;
средство для приема второй команды от приложения через второй программный интерфейс приложения (API), при этом вторая команда идентифицирует функцию камеры, которая должна выполняться посредством второго ресурса камеры; и
средство для выполнения функции камеры, идентифицированной посредством второй команды.
9. The device according to claim 6, in which the portable device contains a second camera resource, and this device contains:
means for activating a second camera system, wherein the second camera system is capable of operating to control a second camera resource;
means for providing a second application programming interface (API) for receiving instructions from the application;
means for receiving a second command from the application through the second application program interface (API), wherein the second command identifies a camera function to be performed by the second camera resource; and
means for performing a camera function identified by a second command.
10. Устройство согласно п.6, в котором портативное устройство представляет собой беспроводное устройство.10. The device according to claim 6, in which the portable device is a wireless device. 11. Компьютерно-читаемый носитель, содержащий команды, которые при выполнении их посредством процессора в портативном устройстве работают так, чтобы обеспечивать систему камеры, которая обеспечивает возможность того, что приложение управляет ресурсом камеры, способным выполнять функции камеры, в портативном устройстве, причем этот компьютерно-читаемый носитель содержит:
команды для активирования системы камеры, при этом система камеры способна работать так, чтобы управлять ресурсом камеры;
причем команды для активирования содержат команды для установления сопряжения системы камеры с одним или более собственными модулями, которые подключаются к ресурсу камеры;
команды для обеспечения программного интерфейса приложения (API) для принятия системой камеры команд программного интерфейса приложения (API) от приложения;
команды для приема системой камеры команды программного интерфейса приложения (API) от приложения через программный интерфейс приложения (API), при этом команда программного интерфейса приложения (API) идентифицирует функцию камеры, которая должна выполняться;
команды для управления посредством системы камеры одним или более собственными модулями, основываясь на команде;
команды для управления посредством одного или более собственных модулей, основываясь на команде, ресурсом камеры и
команды для выполнения ресурсом камеры функции камеры, идентифицированной посредством команды программного интерфейса приложения (API).
11. A computer-readable medium comprising instructions that, when executed by a processor in a portable device, operate to provide a camera system that enables the application to manage a camera resource capable of performing camera functions in a portable device, the computer -readable media contains:
commands to activate the camera system, while the camera system is able to work so as to control the camera resource;
moreover, the activation commands contain commands for pairing the camera system with one or more of its own modules that are connected to the camera resource;
instructions for providing an application program interface (API) for receiving by a camera system an application program interface (API) commands from an application;
commands for the camera system to receive the application program interface (API) commands from the application through the application program interface (API), wherein the application program interface (API) command identifies the camera function to be executed;
commands for controlling through the camera system one or more native modules based on the command;
commands for controlling through one or more proprietary modules based on the command, camera resource, and
commands for the camera resource to perform the camera function identified by the application program interface (API) command.
12. Компьютерно-читаемый носитель согласно п.11, который также содержит команды для генерирования структуры данных носителя для сохранения данных, полученных от ресурса камеры.12. A computer-readable medium according to claim 11, which also contains instructions for generating a data structure of the medium for storing data received from the camera resource. 13. Компьютерно-читаемый носитель согласно п.11, в котором команды для выполнения содержат:
команды для обеспечения конечного автомата, который идентифицирует функции, связанные с ресурсом камеры; и
команды для управления конечным автоматом на основе команды программного интерфейса приложения (API) для выполнения функции камеры.
13. A computer-readable medium according to claim 11, wherein the instructions for execution comprise:
commands for providing a state machine that identifies functions associated with a camera resource; and
commands to control the state machine based on the command of the application program interface (API) to perform the camera function.
14. Компьютерно-читаемый носитель согласно п.11, в котором портативное устройство содержит второй ресурс камеры и компьютерно-читаемый носитель содержит:
команды для активирования второй системы камеры, при этом вторая система камеры способна работать так, чтобы управлять вторым ресурсом камеры;
команды для обеспечения второго программного интерфейса приложения (API) для принятия команд программного интерфейса приложения (API) от приложения;
команды для приема второй команды программного интерфейса приложения (API) от приложения через второй программный интерфейс приложения (API), при этом вторая команда программного интерфейса приложения (API) идентифицирует функцию камеры, которая должна выполняться посредством второго ресурса камеры; и
команды для выполнения функции камеры, идентифицированной посредством второй команды программного интерфейса приложения (API).
14. A computer-readable medium according to claim 11, wherein the portable device comprises a second camera resource and the computer-readable medium comprises:
instructions for activating the second camera system, wherein the second camera system is capable of operating to control the second camera resource;
instructions for providing a second application program interface (API) for receiving instructions of an application program interface (API) from the application;
instructions for receiving a second command of an application program interface (API) from an application through a second application program interface (API), wherein a second application program interface (API) command identifies a camera function to be performed by a second camera resource; and
instructions for performing a camera function identified by a second application program interface (API) command.
15. Компьютерно-читаемый носитель согласно п.11, в котором портативное устройство представляет собой беспроводное устройство.15. The computer-readable medium according to claim 11, in which the portable device is a wireless device. 16. Устройство для приведения в действие системы камеры так, чтобы обеспечить возможность того, что приложение управляет ресурсом камеры, способным выполнять функции камеры, в портативном устройстве, причем это устройство содержит:
логическую схему для активирования системы камеры, при этом система камеры способна работать так, чтобы управлять ресурсом камеры;
причем логическая схема для активирования содержит логическую схему для установления сопряжения системы камеры с одним или более собственными модулями, которые подключаются к ресурсу камеры;
логическую схему для обеспечения программного интерфейса приложения (API) для принятия системой камеры команд от приложения;
логическую схему для приема системой камеры команды от приложения через программный интерфейс приложения (API), при этом команда идентифицирует функцию камеры, которая должна выполняться;
логическую схему для управления посредством системы камеры одним или более собственными модулями, основываясь на команде;
логическую схему для управления посредством одного или более собственных модулей, основываясь на команде, ресурсом камеры; и
логическую схему для выполнения ресурсом камеры функции камеры, идентифицированной посредством команды.
16. A device for actuating a camera system so as to enable the application to manage a camera resource capable of performing camera functions in a portable device, the device comprising:
a logic circuit for activating the camera system, while the camera system is able to operate in such a way as to control the camera resource;
moreover, the logic circuit for activation contains a logic circuit for establishing a pairing of the camera system with one or more of its own modules that are connected to the camera resource;
logic to provide the application programming interface (API) for the camera system to receive commands from the application;
a logic diagram for receiving a command from the application by the camera system through the application program interface (API), the command identifying the camera function to be performed;
a logic circuit for controlling, by means of a camera system, one or more native modules based on a command;
a logic circuit for controlling by one or more proprietary modules, based on a command, a camera resource; and
a logic circuit for the camera resource to perform the camera function identified by the command.
17. Устройство согласно п.16, которое также содержит логическую схему для генерирования структуры данных носителя для сохранения данных, полученных от ресурса камеры.17. The device according to clause 16, which also contains a logic circuit for generating a data structure of the medium for storing data received from the camera resource. 18. Устройство согласно п.16, в котором логическая схема для выполнения функции камеры содержит:
логическую схему для обеспечения конечного автомата, который идентифицирует функции, связанные с ресурсом камеры; и логическую схему для управления конечным автоматом на основе команды для выполнения функции камеры.
18. The device according to clause 16, in which the logic circuit for performing the function of the camera contains:
logic to provide a state machine that identifies functions associated with a camera resource; and logic for controlling a state machine based on a command to perform a camera function.
19. Устройство согласно п.16, в котором портативное устройство содержит второй ресурс камеры и устройство содержит:
логическую схему для активирования второй системы камеры, при этом вторая система камеры способна работать так, чтобы управлять вторым ресурсом камеры;
логическую схему для обеспечения второго программного интерфейса приложения (API) для принятия команд от приложения;
логическую схему для приема второй команды от приложения через второй программный интерфейс приложения (API), при этом вторая команда идентифицирует функцию камеры, которая должна выполняться посредством второго ресурса камеры; и
логическую схему для выполнения функции камеры, идентифицированной посредством второй команды.
19. The device according to clause 16, in which the portable device contains a second camera resource and the device contains:
a logic circuit for activating a second camera system, wherein the second camera system is capable of operating to control a second camera resource;
logic to provide a second application programming interface (API) for accepting instructions from the application;
a logic circuit for receiving a second command from an application through a second application program interface (API), wherein the second command identifies a camera function to be performed by a second camera resource; and
logic to perform a camera function identified by a second command.
20. Устройство согласно п.16, в котором портативное устройство представляет собой беспроводное устройство. 20. The device according to clause 16, in which the portable device is a wireless device.
RU2005136654/09A 2003-04-25 2004-04-26 System for control of chamber resource in portable device RU2352977C2 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US46553303P 2003-04-25 2003-04-25
US60/465,533 2003-04-25
US10/453,091 2003-06-02
US10/453,091 US20040083015A1 (en) 2002-06-04 2003-06-02 System for multimedia rendering in a portable device

Publications (2)

Publication Number Publication Date
RU2005136654A RU2005136654A (en) 2006-03-20
RU2352977C2 true RU2352977C2 (en) 2009-04-20

Family

ID=34138431

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2005136654/09A RU2352977C2 (en) 2003-04-25 2004-04-26 System for control of chamber resource in portable device

Country Status (14)

Country Link
EP (1) EP1618459A4 (en)
JP (1) JP2006524973A (en)
KR (1) KR20060023954A (en)
AR (1) AR044097A1 (en)
AU (1) AU2004264194A1 (en)
BR (1) BRPI0409657A (en)
CA (1) CA2520272A1 (en)
CL (1) CL2004000876A1 (en)
IL (1) IL170770A0 (en)
MX (1) MXPA05011436A (en)
PE (1) PE20050216A1 (en)
RU (1) RU2352977C2 (en)
TW (1) TW200502839A (en)
WO (1) WO2005015340A2 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100628771B1 (en) 2005-06-21 2006-10-02 엘지전자 주식회사 How to load preload application on mobile communication terminal using Brew platform
US20090150817A1 (en) * 2007-12-06 2009-06-11 Ati Technologies Ulc Method and Apparatus Utilizing Profiles to Reduce Software Complexity
CN103942225B (en) * 2013-01-23 2018-06-08 阿里巴巴集团控股有限公司 A kind of resource transfer method, client and the system of mixed type applications client
US9215411B2 (en) * 2014-02-03 2015-12-15 Google Inc. Enhancing video conferences
JP6358063B2 (en) 2014-12-02 2018-07-18 富士通株式会社 Request transmission method, information processing apparatus, and program
JP6447297B2 (en) 2015-03-26 2019-01-09 富士通株式会社 Communication method, information processing apparatus, and program
US10212326B2 (en) 2016-11-18 2019-02-19 Microsoft Technology Licensing, Llc Notifications for control sharing of camera resources

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6069648A (en) * 1997-08-22 2000-05-30 Hitachi, Ltd. Information communication terminal device
RU2169437C1 (en) * 1998-12-29 2001-06-20 Свисском Мобиле Аг Procedure to gain access to objects for users of telecommunication network
US6256059B1 (en) * 1999-01-07 2001-07-03 Intel Corporation Automatic transfer of image information between imaging device and host system
US6373507B1 (en) * 1998-09-14 2002-04-16 Microsoft Corporation Computer-implemented image acquistion system
US6400471B1 (en) * 1999-02-11 2002-06-04 Flashpoint Technology, Inc. Flexible architecture for image processing

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998017052A1 (en) * 1996-09-30 1998-04-23 Flashpoint Technology, Inc. A method and system for expanding the media types supported in a digital camera
JP2000023021A (en) * 1998-06-30 2000-01-21 Sony Corp Information processor, method and providing medium
JP3546784B2 (en) * 1999-12-14 2004-07-28 日本電気株式会社 Mobile device
US6891893B2 (en) * 2000-04-21 2005-05-10 Microsoft Corp. Extensible multimedia application program interface and related methods

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6069648A (en) * 1997-08-22 2000-05-30 Hitachi, Ltd. Information communication terminal device
US6373507B1 (en) * 1998-09-14 2002-04-16 Microsoft Corporation Computer-implemented image acquistion system
RU2169437C1 (en) * 1998-12-29 2001-06-20 Свисском Мобиле Аг Procedure to gain access to objects for users of telecommunication network
US6256059B1 (en) * 1999-01-07 2001-07-03 Intel Corporation Automatic transfer of image information between imaging device and host system
US6400471B1 (en) * 1999-02-11 2002-06-04 Flashpoint Technology, Inc. Flexible architecture for image processing

Also Published As

Publication number Publication date
PE20050216A1 (en) 2005-04-23
CA2520272A1 (en) 2005-02-17
IL170770A0 (en) 2009-02-11
EP1618459A4 (en) 2007-08-08
WO2005015340A3 (en) 2006-12-28
AR044097A1 (en) 2005-08-24
WO2005015340B1 (en) 2007-03-01
EP1618459A2 (en) 2006-01-25
JP2006524973A (en) 2006-11-02
CL2004000876A1 (en) 2005-03-28
MXPA05011436A (en) 2005-12-12
AU2004264194A1 (en) 2005-02-17
RU2005136654A (en) 2006-03-20
KR20060023954A (en) 2006-03-15
WO2005015340A2 (en) 2005-02-17
TW200502839A (en) 2005-01-16
BRPI0409657A (en) 2006-04-18

Similar Documents

Publication Publication Date Title
US20040212687A1 (en) System for controlling a camera resource in a portable device
US20040083015A1 (en) System for multimedia rendering in a portable device
JP2010288301A (en) System for multimedia rendering in portable device
KR100890236B1 (en) A method for capturing video data by utilizing a camera cell phone as a camera of a computer
CN104281478B (en) The method and device of more new application
CN110865837B (en) Method and terminal for system upgrade
US8010669B2 (en) Method, apparatus and computer program product for enabling dual mode communication
CN117278850A (en) Photography method and electronic equipment
CN111259441A (en) Device control method, device, storage medium and electronic device
RU2352977C2 (en) System for control of chamber resource in portable device
RU2316907C2 (en) System for reproduction of multimedia in portable device
CN116700601B (en) Memory optimization methods, equipment and storage media
US7164857B2 (en) Communication terminal and program
CN101094366A (en) Method and apparatus for setting playlist for content files in mobile terminal
US20100153588A1 (en) Computer executable program for managing medias
HK1101795A (en) System for controlling a camera resource in a portable device
KR20090011150A (en) Application installation system and method, and mobile communication terminal used therein
CN118474528B (en) Camera resource management method and related equipment
EP4550106A1 (en) Distributed data management method, electronic device and system
CN118574000A (en) Method for controlling camera to display preview image and electronic equipment
CN118075125A (en) Node management method, electronic equipment and medium
CN116193249A (en) Camera module operation method and device, computer readable medium and electronic device
WO2023160208A1 (en) Image deletion operation notification method, device, and storage medium
HK1075521B (en) Method and system for multimedia rendering in a portable device
KR20080015290A (en) Portable terminal capable of displaying a thumbnail and a method of displaying a thumbnail thereof

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20110427