IP Library Patent Application 11149084
Patent Application
App. No. 11/149,084

Method and system for interoperable content player device engine

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
11/149,084
Abstract

System, device, method, and computer program and computer program products for providing communicating between devices having similar or dissimilar characteristics and facilitating seamless interoperability between them. Computer program software and methods of and systems and devices for sharing of content, applications, resources and control across similar and dissimilar permanently or intermittently connected electronic devices. Devices, systems, appliances, and the like communicating and/or interoperating within the framework provided. An interoperability engine or DartEngine provides software or procedures and/or hardware used to execute the instructions of Darts on a device and carry out their intended purpose. The interoperability engine or DartEngine and the device specific player or DartPlayer, in which it is encapsulated, provides a common execution and runtime environment which allows recruitment and renditioning to establish efficient teams of devices and spread their code, data and content as best to carry out the intended purpose of applications or Darts.

Claims (62)

1 . An interoperability engine which enables or assists devices to interoperate with each other, the engine comprising:

(1) means for loading, running, and carrying-out at least part of the intent of an interoperability software package having code and wherein at least part of the code is embedded in a sequence of instructions conforming to an interoperability instruction set;

(2) means for discovering other interoperability devices; and

(3) means for direct or indirect two-way communications with other interoperability devices.

2 . An interoperability engine as in claim 1 , wherein one or more of the following are true in any combination:

(1) the engine comprises a DartEngine;

(2) the interoperability software package comprises an interoperability software package or comprises a Dart conforming to the DartFormat; and

(3) the means to discover other interoperability devices is at least partially carried out using a recruitment procedure or a Dart recruitment procedure.

3 . An interoperability engine as in claim 1 , wherein the engine includes an event queue and carries out instructions to support the use of the event queue by interoperability application packages.

4 . An interoperability engine as in claim 1 , wherein the engine includes a computer program product for execution in a processor or logic circuit of the a device containing the engine.

5 . An interoperability engine as in claim 1 , wherein the engine includes a hardware processor implementing the engine within a device containing the engine.

6 . An interoperability engine as in claim 1 , wherein the engine includes a hardware processor implementing a portion of the engine within a device containing the engine and a computer program product for execution in the hardware processor of the a device containing the engine.

7 . An interoperability engine as in claim 6 , wherein a source code for the computer program and computer program product portion of the engine are segmented into a portable section which can be used without modification on all interoperable devices and a hardware abstraction layer which may need to differ for each different type of device.

8 . An interoperability engine as in claim 7 , wherein the hardware abstraction layer includes code providing access to one or more of the following device functions in any combination:

(a) memory allocation functions;

(b) sound rendering functions;

(c) power management functions;

(d) printing functions;

(e) display functions;

(f) media rendering and or playback and or transcoding functions;

(g) computation functions;

(h) storage functions;

(i) communications functions;

(j) device and or service discovery functions;

(k) profile information gathering functions about the capabilities, resources, content and or environment of the device;

(l) device configuration functions;

(m) device status functions; and

(n) any other functions or operations that can be performed by the native device hardware and software that can be exposed.

9 . A method for operating an interoperability engine which enables or assists a plurality of devices to interoperate with each other, the method comprising:

loading, running, and carrying-out at least part of the intent of an interoperability software package

having code and wherein at least part of the code is embedded in a sequence of instructions

conforming to an interoperability instruction set;

discovering other interoperability devices; and

directly or indirectly communicating with other interoperability devices.

10 . A method as in claim 9 , wherein one or more of the following are true in any combination:

(1) the engine comprises a DartEngine;

(2) the interoperability software package comprises an interoperability software package or comprises a Dart conforming to the DartFormat; and

(3) discovering of other interoperability devices is at least partially carried out using a recruitment procedure or a Dart recruitment procedure.

11 . A method as in claim 9 , wherein the method further comprises:

generating an event queue within the engine and executing computer code instructions to support the use of the event queue by the interoperability application package.

12 . A method as in claim 9 , wherein the method further comprises:

segmenting a source code into a portable section which can be used without modification on all interoperable devices and a hardware abstraction layer which may need to differ for each different type of device.

13 . A method as in claim 12 , wherein the hardware abstraction layer includes code providing access to and optionally executing one or more of the following device functions and/or procedures alone or in any combination:

(a) memory allocation functions and procedures;

(b) sound rendering functions and procedures;

(c) power management functions and procedures;

(d) printing functions and procedures;

(e) display functions and procedures;

(f) media rendering and or playback and or transcoding functions and procedures;

(g) computation functions and procedures;

(h) storage functions and procedures;

(i) communications functions and procedures;

(j) device and or service discovery functions and procedures;

(k) profile information gathering functions and procedures about the capabilities, resources, content and or environment of the device;

(l) device configuration functions and procedures;

(m) device status functions and procedures; and

(n) any other functions and procedures or operations that can be performed by a native device hardware and software that can be exposed.

14 . A computer program product for use in conjunction with a computer system or information appliance, the computer program product comprising a computer readable storage medium and a computer program mechanism embedded therein, the computer program mechanism comprising:

a program module that directs the computer system or information appliance to function in a specified manner for operating an interoperability engine which enables or assists a plurality of devices to interoperate with each other, the program module including instructions for:

loading, running, and carrying-out at least part of the intent of an interoperability software package having code and wherein at least part of the code is embedded in a sequence of instructions conforming to an interoperability instruction set;

discovering other interoperability devices; and

directly or indirectly communicating with other interoperability devices.

Assignments (3)
CHANGE OF NAME Recorded Jan 7, 2010
From: DARTDEVICES INTEROP CORPORATION
To: COVIA LABS, INC.
Reel/Frame 023750/0011 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 31, 2009
From: DARTDEVICES CORPORATION
To: DARTDEVICES INTEROP CORPORATION
Reel/Frame 022473/0861 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 25, 2006
From: ILLOWSKY, DANIEL; BERNSTEIN, BRUCE; MIRABELLA, RICHARD; PIEB, WOLFGANG; SIDNEY, RAYMOND; TIBERI, RICHARD; WENOCUR, MICHAEL
To: DARTDEVICES CORPORATION
Reel/Frame 017211/0765 →