`
`A-)pl<J) ii
`
`Please type a plus sign(+) inside this box - - . EE]
`
`PTO/SB/16 (8-00)
`Approved for use through10/31/2002 0MB 0651-0032
`US Patent and Trademark Office; US DEPARTMENT OF COMMERCE
`Under the Paperwork Reducnon Act of 1995, no persons are required to respond to a collectIon of information unless 11 displays a vand 0MB control number
`
`PROVISIONAL APPL/CATION FOR PA TENT COVER SHEET
`This is a request for filing a PROVISIONAL APPLICATION FOR PATENT under 37 CFR 1.53(c).
`
`Given Name (first and middle [if any])
`
`Family Name or Surname
`
`Residence
`(Citv and either State or ForeiQn Country)
`
`INVENTOR(S}
`
`l;{/i I l 1'(}-Wl
`
`Ho
`
`CJ'\~j
`
`\I iMtlO uver, WA
`
`-
`3.
`
`~
`
`~I
`
`~ Additional inventors ara being named an the _J___ separately numbered sheets attached hereto
`TITLE OF THE INVENTION (280 characters maxi
`t-flt2tiioc{, ¥tJCU'O..i1AS CU'\-d s3~tewi for clev.-ce-"'to-ofe.vi'ce '>Jnchr-on12A1:,-o-n ()..,f1.ci
`perVMtl/(2. d1!Ji'f-o,l vcd-p.d
`CORRESPONDENCE ADDRESS
`
`Direct all correspondence to:
`
`D Customer Number I
`
`OR
`~ Firm or
`
`Individual Name
`
`Address
`
`I
`
`(cid:141)
`
`Place Customer Number
`Bar Code Label here
`
`Type Customer Number here
`IJ)i'I I 10M°'
`c..,he-vn•i
`(-1-o
`LGqoo S& ::>h-tlt Pr.
`
`.1tq4-
`
`Address
`
`City
`Country
`
`I ZIP I q8683
`I
`I State
`()/fl
`V tt11tticweY
`I
`ITeleohone lf3tS01.253 '1388 I Fax
`ClruK
`ENCLOSED APPLICATION PARTS {check all that ann/vl
`D CD(s), Number
`I Lj.4,
`!
`~ Specification Number of Pages
`I
`0 Other (specify')
`~ Drawing(s)
`I
`Application Data Sheet. See 37 CFR 1.76
`
`Number of Sheets
`
`10
`
`I
`I
`IPost'~d Rece1p-t I
`
`(cid:143)
`
`METHOD OF PAYMENT OF FILING FEES FOR THIS PROVISIONAL APPLICATION FOR PATENT
`00
`[X]
`
`Applicant claims small entity status. See 37 CFR 1.27.
`A check or money order is enclosed to cover the filing fees
`
`D
`The invention was made by an agency of the United States Government or under a contract with an agency of the
`United Slates Government
`I)(! No.
`Yes, the name of the U S. Government agency and the Government contract number are·
`-
`
`(cid:143) The Commissioner is hereby authorized to charge filing
`
`fees or credit any overpayment to Deposit Account Number:
`Payment by credit card. Form PTO-2038 is attached.
`
`I
`
`FILING FEE
`AMOUNT/$}
`
`75. 0;::'-
`
`I
`
`(cid:143)
`
`Respectfully submitted.
`
`I
`
`SIGNATURE
`
`TELEPHONE
`
`Date I 11 i I
`/4h/hfAIM ~ REGISTRATIONNO.
`iA,/)j IJ kJ ilYI Ho CAo.nil-
`TYPED or PRINTED NAME
`. l
`O
`(360)2.S-3-93/.f
`f~ X¢t'lp¢,!fy
`USE ONLY FOR FILING A PROVISIONAL APPL/CAT/ON FOR PATENT
`This collection of Information is required by 37 CFR 1.51. The information is used by the public to me (and by the PTO to process) a
`provisional application. Confidentiality is governed by 35 U.S.C. 122 and 37 CFR 1.14. This collection is estimated to take 8 hours to
`complete, including gathering, preparing, and submitting the complete provisional application to the PTO Time will vary depending upon
`the individual case. Any comments on !he amount of time you require lo complete lhlS form and/or suggestions far reducing this burden,
`should be sent to the Chief Information Officer, U.S. Patent and Trademark Office, U.S. Department of Commerce, Washington, D.C.
`20231. DO NOT SEND FEES OR COMPLETED FORMS TO THIS ADDRESS. SEND TO: Box Provisional Application, Assistant
`Commissioner for Patents, Washington, D.C. 20231.
`
`I oo \
`
`(if appropriate)
`Docket Number:
`
`_
`
`1
`
`ROKU EXH. 1004
`
`
`
`PROVISIONAL APPL/CATION COVER SHEET
`Additional Page
`
`PTOISB/16 (8-00)
`Approved for use through 10/31/2002. 0MB 0651-0032
`US Patent and Trademark Office; US DEPARTMENT OF COMMERCE
`Under the Paperwork Reduction Act of 1995, no persons are required to resoonct to a collection of information unless It dIsolavs a valid 0MB control number
`inside this box (cid:157)
`
`I
`I
`Docket Number f LX 9;f (/ <P r/ If
`INVENTOR(S}/APPLICANT(S)
`
`I Type a plus sign(+) I
`
`t
`
`Given Name /first and middle [if anv]l
`
`Family or Surname
`
`Residence
`ICitv and either State or Foreion Countn,\
`
`Number _J__ of _L __
`
`WARNING: Information on this form may become public. Credit card information should not
`be included on this form. Provide credit card information and authorization on PTO-2038.
`
`ROKU EXH. 1004
`
`
`
`EK692265657US
`
`Method, apparatus and system for device-to-device synchronization and
`pervasive digital output
`Inventor: William Ho Chang and Ying Liu
`
`5
`
`Field of invention
`Present invention relates to device synchronization and digital output. More
`
`particularly, it relates to an apparatus, process and method where an information
`
`apparatus can pervasively output to any output device at any time, anywhere
`
`conveniently.
`
`10
`
`Background
`An Information apparatus refers to both stationary computers and mobile computing
`
`devices (pervasive devices). Examples of information apparatus without limitation
`
`include desktops, laptop, palmtop (hand-held computer), personal digital assistant
`
`15
`
`(PDA); Internet enabled cellular phones, smart phones, pagers, digital capturing device
`
`(e.g. digital camera and video cameras), Internet appliances, e-books and digital pads.
`
`An output device may include fax machines, printers, copiers, image and/or video
`
`display devices, and audio output devices. For simplicity, hereafter we may refer to an
`
`output device as a printer or output as printing. However, it should be understood that
`
`20
`
`the term printer and printing used in the discussion of present invention refers to an
`
`extent to the large scope of output devices.
`
`Fueled by the ever increasing bandwidth, processing power, wireless internet and
`
`available software applications for pervasive devices, millions if not billions of users are
`
`25
`
`creating, downloading, and transmitting content and information with their pervasive
`
`computing devices or information apparatus. As a result, there is a need to allow users
`
`to easily output content and information from their pervasive computing devices
`
`(information apparatus) to any output device. People need to output directly and
`
`conveniently from pervasive information apparatus, without depending for example on
`
`30
`
`synchronization between pervasive computing devices with a stationary PC for printing.
`
`As an example, an information worker at an airport, receiving Email in his hand-held
`
`computer (information apparatus) may want to walk up to a nearby printer or fax
`
`William H. Chang
`16900 SE 26th Driver, #94
`Vancouver, WA 98683
`
`1
`
`Docket No.: FLX00P0004
`Express Mail No.: EK692265657US
`Deposited November 1, 2000
`
`ROKU EXH. 1004
`
`
`
`machine to have his e-mail printed. In addition, the mobile worker may also want to print
`
`a copy of his to do list, appointment book, business card, and his flight schedule from
`
`his mobile devices. As another example, a traveler stopping at a convenience store,
`
`gas station, or kiosks may want to print out a copy of the map he just downloaded from
`
`5
`
`the Internet using his Internet enable wireless phone (information apparatus). Yet
`
`another example, an individual who just finished a stock trade or performed an e(cid:173)
`
`commerce transaction using his PDA (information apparatus) may want to print out a
`
`copy of his transaction confirmation, invoice or receipt.
`
`10
`
`Conventionally, output device (e.g. printer} is connected to information apparatus via
`wired connection such as through a cable line. A wireless connection is also possible
`
`by using, for example, radio communication or infrared communication. Regardless of
`
`wired or wireless connection, a user must first install in his/her information apparatus a
`
`printer driver corresponding to that particular printer model and make. Using a device
`dependent driver, the user's information apparatus may process digital content (digital
`
`15
`
`document or image) into the printer's input space. Printer's input space corresponds to
`
`the type of input that a printer understands. For example, printer's input space may
`
`include printer specific input format and encoding, page description language, markup
`language, instructions, protocols or data that can be understood or used by a particular
`printer make and model. Printer's input space is therefore, in general, device
`
`20
`
`dependent. Different printer model may specify its own input, designed or adopted for
`
`optimal operation by the printer manufacturer. Consequently, different printer usually
`
`requires using its own specific printer driver for accurate printing on a particular printer.
`
`A device driver (printer driver in this example) is used to control, manage,
`
`25
`
`communicate, and output to a printer. Sometimes the device driving feature is included
`
`as part of an application software.
`
`Installing a printer driver or an application can be accomplished by, for example,
`
`installing manually using CD or floppy disk supplied by the printer manufacturer. Or
`
`30
`
`alternatively, a user may be able to download that particular driver from a network. For
`
`a home or office user, this installation process may take anywhere from several minutes
`
`to several hours depending on the type of driver and user sophistication level with
`
`computer devices and networks. Even with plug and play driver installation, it still
`
`William H. Chang
`16900 SE 261h Driver, #94
`Vancouver, WA 98683
`
`2
`
`Docket No.: FLX00P0004
`Express Mail No.: EK692265657US
`Deposited November 1, 2000
`
`ROKU EXH. 1004
`
`
`
`required the user to execute multiple step process for each printer. Nevertheless, this
`
`installation and configuration process is adding undoubtedly a degree of complexity and
`work to the end-user that may otherwise be spending this time doing other productive or
`
`enjoyable work. Moreover, many unsophisticated users may be discouraged from
`
`5
`
`adding new peripherals (e.g. printers, scanners) to his home computer or network to
`
`avoid the hassle of installation and configuration. Therefore, there is a need to provide
`
`a more user-friendly method where installation of printer drivers is more transparent to
`
`the end-user.
`
`10
`
`Moreover, Conventional printing method may pose significant higher challenge and
`
`difficulty for mobile device users than for home and office users. The requirement for
`
`pre-installation of device-dependent driver is in conflict with the concept of pervasive
`
`computing and printing. For example, a mobile user may want to print his e-mail,
`
`PowerPoint, web page, or other document at airport, in airplane, gas station, convenient
`
`15
`
`store, kiosk, hotel, conference room, office, and home. It is likely that the user finds at
`
`each of these locations printer of different make and model. It is usually not a viable
`
`option to pre-install all possible (hundreds if not thousands of) printer drivers in the
`
`user's information apparatus. Therefore, the user may have to install and configure a
`
`printer driver each time at each of these locations before printing. This is certainly an
`undesirable and discouraging process to promote pervasive computing. Therefore,
`
`20
`
`there's a need for a method that allows user to simply walk up to any printer, press a
`
`few buttons and receive his/her printouts.
`
`The following example illustrates some of the problems that mobile users may
`
`25
`
`encounter under conventional printing paradigm. With hundreds of, if not thousands of,
`
`different printer models/make available in market, the chance is quite high that a mobile
`user finds different printers at different locations. A mobile user wanting to print only
`
`one page of his e-mail, walking up to a printer in an airport is unlikely to have the driver
`
`for that particular printer model preinstalled. Moreover, the user does not want to be
`
`30
`
`bothered with looking for a driver or downloading it and installing it just to print out one
`
`page of email at the airport. Therefore, a more convenient printing solution is needed
`
`so that a user can simply walk up to a printer and easily print his/her digital document
`without having to worry about installing or pre-installing particular printer drivers.
`
`William H. Chang
`16900 SE 26th Driver, #94
`Vancouver, WA 98683
`
`3
`
`Docket No.: FLX00P0004
`Express Mail No.: EK692265657US
`Deposited November 1, 2000
`
`ROKU EXH. 1004
`
`
`
`Network printing may partially solve the above problem in a local area network (LAN).
`
`Network printing was first motivated to allow people sharing printing resources within a
`
`network. Printers are often connected to the network using a network adapter or
`
`5
`
`network card. Print servers may be used to manage print jobs (such as spooling).
`
`Different clients may send print jobs to the print server for queuing, prioritizing and
`
`managing. The driver of each networked printer may be stored in the network (for
`
`example, in an application server) and available for clients to download.
`
`10
`
`The above configuration is often used in a local area network (LAN) such as in an office
`
`building. An office worker with mobile or static computing device connected to this
`
`network may be able to send print job to any printer that is connected to the same
`
`network. He either has the necessary printer drivers pre-installed in his device or he
`
`can download a driver from the LAN before printing to a particular printer. But once
`
`15
`
`outside of the office building, or outside of his wired and/or wireless network coverage,
`
`the office worker can no longer print to any printers he/she desires.
`
`In one instance, some has argued that the idea of local network printing can be further
`
`extended to the Internet as the larger and public network. In an ideal situation, every
`printer and every computing device (information apparatus) is connected to the same
`
`20
`
`network, for example the Internet. But in reality, extending network printing to the
`
`Internet is still unavailable at the time of current writing. Whether one day such a large
`
`connected network is designed and implemented is left for analysts to forecast and
`
`debate and is outside the scope of present invention.
`
`25
`
`Nevertheless, one drawback of network printing may be higher cost. To connect the
`output device and information apparatus to the same network, additional hardware
`
`and/or software may need to be installed. And therefore, the costs of output device
`
`may be raised substantially. In addition of hardware and software costs there is also
`
`30
`
`service charges to maintain the connectivity to a large network such as the Internet.
`
`In addition of costs, another drawback of network printing is reliability. Network printing
`
`requires perfect function in any part of the involving chain of network hardware,
`
`William H. Chang
`16900 SE 26th Driver, #94
`Vancouver, WA 98683
`
`4
`
`Docket No.: FLX00P0004
`Express Mail No.: EK692265657US
`Deposited November 1, 2000
`
`ROKU EXH. 1004
`
`
`
`software and service. If any component of the link is down or not fully functional, for any
`
`reason, printing service may be unavailable, interrupted or result in inaccuracies.
`
`Finally, another drawback of network printing is the issue of security. User does not
`
`5
`
`feel secure if his/her confidential documents or information has to travel through the
`
`entire network before reaching the printer just in front of him/her. There may be the fear
`
`that his/her confidential document is intercepted, viewed, copied or stored within any
`
`segment of the connected network. And then there is the fear that when the document
`
`is finally printed, it may be printed to a different printer instead of the one intended. This
`
`10
`
`problem may be caused by, for example, errors in directory service software, not up-to(cid:173)
`
`date or corrupted software component, inconsistent or incompatible version etc. There
`
`is also risk when downloading a software component (e.g. printer driver) from the
`
`network to information apparatus. This software component maybe damaged, corrupted
`
`or carrying malicious attacks or viruses or otherwise tempered by hackers. A damaged
`
`15
`
`software component can disrupt or corrupt the user's information apparatus. It is
`therefore more desirable if the communication and exchange of information are done
`
`locally between users' information apparatus and the output device, all within the range
`
`of the users watchful, and inspecting eyes.
`
`20
`
`Objects
`
`It is therefore the object of present invention to provide a convenient method of digital
`
`printing where a user does not need to have to pre-installed device-dependent printer
`
`driver in his/her information apparatus in order to print.
`
`25
`
`Another object of present invention is to provide easy, friendly and convenient process
`
`for printing. Unlike conventional printing, a user do not need to manually install a printer
`
`driver from a CD, floppy disk, or download it somewhere from a network. With the
`
`apparatus and process of present invention, all the software components, data, and/or
`
`printer driver can be loaded to the information apparatus through easy and automatic
`
`30
`
`synchronization process between the information apparatus and a printer (equipped
`
`with output controller of present invention) as needed. As a result, a mobile user with
`
`information apparatus (equipped with the client software or output manager of present
`
`invention) can print any time, anywhere, to any printers.
`
`William H. Chang
`16900 SE 26th Driver, #94
`Vancouver, WA 98683
`
`Docket No.: FLX00P0004
`Express Mail No.: EK692265657US
`Deposited November 1, 2000
`
`ROKU EXH. 1004
`
`
`
`It is still another object of present invention to provide a convenient method allowing
`
`users to print to any printer with or without connection to a static network. Through
`
`local communication and synchronization between information apparatus and output
`
`5
`
`device, hardware and software installation for static network connectivity may not be
`
`necessary. Therefore printing cost may be reduced.
`
`It is still another object of present invention to provide more reliable printing method
`
`than remote network printing. By communicating locally between information apparatus
`
`10
`
`and output device, the printing process does not depend on the perfect function of
`
`network chain. This chain may include, for example, network connection, network
`
`server, application server, service provider and/or application provider. Therefore, under
`
`present invention, the chance of successful printing is greatly enhanced.
`
`15
`
`It is finally another object of present invention to provide a more secure printing
`
`process. Uploading or downloading data and/or software component such as a printer
`
`driver from an output device right in front of user provides a more secure feeling than
`
`dealing with components from a remote location in the network. Components stored in
`
`a large network may be perceived to have more exposure to tampering (e.g.
`
`20
`
`contaminated with virus). An erroneous module or component in the network caused by
`
`a human or software or hardware error may also disrupt the function of the information
`
`apparatus. Furthermore, sending a confidential digital document or print data directly to
`
`the printer in front of user provides a more secure feeling than if the document is routed
`
`through a large network with a plurality of users and servers. There are greater
`
`25
`
`possibilities of the document being intercepted, viewed, copied, stored or finally printed
`
`on a wrong printer in conventional network printing.
`
`Summary of invention
`An electronic system and ·method of pervasive output allowing an information apparatus
`
`30
`
`to output digital content conveniently to any output device is disclosed. The information
`
`apparatus may be equipped with central processing unit, input/output control unit,
`
`storage unit, memory unit, and wired or wireless communication unit or adapters. The
`
`information apparatus preferably also contains output manager of present invention.
`
`William H. Chang
`16900 SE 26th Driver, #94
`Vancouver, WA 98683
`
`6
`
`Docket No.: FLX00P0004
`Express Mail No.: EK692265657US
`Deposited November 1, 2000
`
`ROKU EXH. 1004
`
`
`
`The output manager may be implemented as application software, client application, or
`
`device driver. The output manager may contain management and control capabilities
`
`with hardware and software components including for example a plurality of
`
`communication chipsets residing in its host information apparatus. . Output manager in
`
`5
`
`the information apparatus may be capable of communicating, managing and
`
`synchronizing data and/or software components with an output device equipped with an
`
`output controller of present invention. An output device includes, for example, printer,
`
`fax machine, copiers, image or video display, projectors, and audio output devices.
`
`10
`
`The output controller of present invention may be a board, card and/or software
`
`components residing in output device. Alternatively, the output controller may be
`
`connected externally to an output device as an external box. The output controller may
`
`be implemented with one or combination of embedded processor, software, firmware,
`
`ASIC, DSP, special chipsets among others. It is still another embodiment where
`
`15
`
`functionality of output controller is provided by application software running on a PC,
`
`workstation or server connected externally to an output device.
`
`The output controller may contain processing unit, memory/storage unit and
`
`:.~
`
`communication adapter unit among others. The storage or memory unit of the output
`
`20
`
`controller may store device driver, software components and/or objects encapsulating
`
`device dependent data, algorithms, and code. Device dependent data may be, for
`
`example, parameters and information about the output device and output controller.
`
`Software components and objects may encapsulate for example code or executables of
`
`algorithms necessary for converting or encoding an image or document description or
`
`25
`
`language into print data compatible with a specific output device. Output manager of
`present invention may manage the process of uploading data and or software
`
`components from an output controller to host information apparatus in order to, for
`
`example, enable the information apparatus to generate and transmit print data
`
`accurately to the output device or the output controller.
`
`30
`
`Print data may be a specific data, instructions, page description language, markup
`
`language, graphics and or image file format among others. Print data may also be
`
`encoded or compressed with one or more compression or encoding techniques.
`
`William H. Chang
`16900 SE 26th Driver, #94
`Vancouver, WA 98683
`
`7
`
`Docket No.: FLX00P0004
`Express Mail No.: EK692265657US
`Deposited November 1, 2000
`
`ROKU EXH. 1004
`
`
`
`Furthermore, print data may use one or more open standard and or one or more
`
`proprietary techniques and formats or combination.
`
`The proposed digital content output process comprises of the following steps.
`
`5
`
`1. User Requests to print a digital content from his/her information apparatus
`
`2. Discovery process - Information apparatus may detect available output devices.
`
`3. Service negotiation -Information apparatus exchanges service information with
`
`output controllers associated with the available output devices. The user may
`
`then select one or more output devices based on the service information
`
`10
`
`provided.
`
`4. Synchronization - Information apparatus communicates with output controller to
`
`identify and upload the necessary components to enable output to a specific
`
`output device. The uploaded components or data may be then installed and
`
`configured in the information apparatus.
`
`15
`
`5. Process digital document -The digital content intended for output is processed by
`
`one or more components of the electronic system of present invention. The
`
`electronic system comprises of information apparatus (including output
`
`manager), output controller and output device.
`
`6. Final output - Printer engine or display engine or audio engine generates final
`
`20
`
`output.
`
`In the output process of present invention, the output manager residing in information
`
`apparatus may participate, coordinate and manage the communication and exchange of
`
`information/components between its host information apparatus and output controllers.
`
`25
`
`Detailed description
`FIG 1 is a block diagram illustrating exemplary components of an electronic
`
`communication system that may implement the present invention.
`
`30
`
`Information apparatus 100
`An information apparatus is a computing device with processing capability. Examples of
`
`information apparatus may include but not limited to desktop PC, laptop, palmtop, PDA,
`
`smart phone, screen phone, set-top boxes, e-book, Internet pad, digital cameras,
`
`William H. Chang
`16900 SE 26th Driver, #94
`Vancouver, WA 98683
`
`Docket No.: FLX00P0004
`Express Mail No.: EK692265657US
`Deposited November 1, 2000
`
`ROKU EXH. 1004
`
`
`
`Internet appliances, pager etc.
`
`Information apparatus may contain components such as processing unit, memory unit,
`
`storage unit, input/output control unit, and adapter unit among others. Information
`
`5
`
`apparatus may also contain an interface, which interacts with users. The interface may
`
`be implemented in software or hardware or combination. Examples of such interface
`
`may include, without limitation, mouse, keyboard, touch-sensitive or non-touch-sensitive
`
`screen, push button, soft key, stylus etc.
`
`10 An information apparatus may be a dedicated single task device (e.g. email terminal,
`
`web terminal, e-book, etc) or a computing device with multiple features and functions.
`
`Multiple functions and features may be implemented by a plurality of software
`
`applications installed in the information apparatus with or without an operating system.
`
`A digital camera equipped with processing capability and feature set of present invention
`
`15
`
`such as output manager is also a qualified information apparatus for present invention.
`
`Some information apparatus (e.g. dedicated devices) may be pre-configured by
`
`manufacturers with fixed functionalities and features. Other information apparatus may
`
`allow users to install additional hardware components and application software to
`
`20
`
`expand its functionality. Examples of functionalities and applications of information
`
`apparatus may include, for example, e-mail, messaging, voice communication, web
`
`browsing, image acquisition, text processing, graphics, and document or image output
`
`among others.
`
`25
`
`Functionalities and feature sets of an information apparatus may be implemented in
`software or hardware or combination of both. When features are implemented in
`
`software, this software may be installed by manufacturer or after market by users.
`
`Application software may be implemented using embedded software running on
`
`embedded processors or it may run on a specific operating system. Some or all or
`
`30
`
`combination of applications and feature sets may also be implemented in hardware or in
`
`silicon. Some functionality or feature sets may be implemented in special chip sets and
`
`may include one or more or combination of, for example, ASIC, FPGA, DSP, system on
`
`a chip, firmware among others.
`
`William H. Chang
`16900 SE 26th Driver, #94
`Vancouver, WA 98683
`
`Docket No.: FLX00P0004
`Express Mail No.: EK692265657US
`Deposited November 1, 2000
`
`ROKU EXH. 1004
`
`
`
`Information apparatus may or may not contain an operating system. In the case where
`
`there's an operating system, the operating system may provide a variety of APl's or
`
`object models for software applications to interface and communicate with device
`
`5
`
`drivers. The device drivers control and communicate with peripheral devices such as
`
`printers among others. Several applications can share a common device driver through
`
`the use of API or interfaces or object models provided by an operating system. FIG 3A
`
`later illustrates such configuration. In the case where there is no operating system or the
`
`operating system does not support or provide device driver API, each application may
`
`10
`
`have to implement its own device driver or its own output and communication capability,
`
`as shown later in FIG 3B and 3C. For example, to output a digital document to a printer,
`
`each application may have to implement its own printer specific driving, processing and
`
`communication capability.
`
`15
`
`For operation of present invention, an information apparatus is preferred to contain an
`
`output manager. The output manager is typically implemented in software. The output
`
`manager may be a client application, or stand-alone application, or as part of another
`
`application software, or in the form of device driver, which may be invoked, shared and
`
`used by a plurality of application software. One of the tasks of output manager is to
`
`20 manage and coordinate communication between information apparatus and output
`
`controller(s) in the output process of present invention. The output manager may for
`
`example implement open-standard or proprietary communication protocol to directly or
`
`indirectly interact, manage, and utilize functionalities provided by hardware components
`
`residing in its host information apparatus. Such components may include, for example,
`
`25
`
`processing unit, memory unit and communication chipsets. Output manager may include
`
`one or more of the following features and functionalities:
`
`• Output manager may communicate and interact with software applications
`
`contained in the host information apparatus to provide pervasive output capability
`
`or feature to those software applications. The type of information passed from
`
`30
`
`software applications to the output manager may be, for example, the digital
`
`document data or content that needs to output. In some instances, application
`
`software may invoke or launch the output manager as a separate application or
`
`as an integrated part of the application software. Examples of possible
`
`William H. Chang
`16900 SE 26th Driver, #94
`Vancouver, WA 98683
`
`/o
`
`Docket No.: FLX00P0004
`Express Mail No.: EK692265657US
`Deposited November 1, 2000
`
`ROKU EXH. 1004
`
`
`
`communication and management between output manager and application
`
`software may include, among others, messages, objects models, instances,
`
`procedural calls, program invocation and APls, which may or may not be
`
`provided by an operating system.
`
`5
`
`• Output manager may manage and maintain wired or wireless communications
`
`with output controller. The output manager may interact with functionalities
`
`implemented by hardware components of its host information apparatus. A user
`
`may interact with the output manager through a user interface provided by the
`
`output manager or its host information apparatus.
`
`10
`
`• Output manager may help discover available output devices, verify
`
`communication connections, identify devices available or compatible for service,
`
`send or broadcast service requests to one or more devices.
`
`• Output manager may communicate with output controller to identify necessary
`
`software components, data, and/or other device dependent information or
`
`parameters, if any, that need to be uploaded from the output controller to the host
`information apparatus to enable pervasive output. Software components may
`
`be, for example, a device driver, an application, a special code or algorithm, an
`
`executable object or device dependent data among others.
`
`15
`
`• Output manager may coordinate with output controller to upload the necessary
`
`20
`
`components or data from the output controller to its host information apparatus to
`
`enable pervasive output to that output controller or associated output device.
`
`• Output manager may perform raster image processing or convert digital content
`
`(the content may be created, stored or received by information apparatus) from
`
`an application in its original format into print data compatible for input to a
`
`25
`
`specific output controller or output device. For example, an output manager may
`
`convert digital document information from a certain format or language into a
`
`specific print data or intermediate format or language such as Postscript, PCL,
`EMF, XML, TIFF, JPEG, RTL among others for output.
`• Output manager may coordinate or manage the communication between its host
`
`30
`
`information apparatus and output controller to send or transmit the print data to
`
`the output controller.
`
`William H. Chang
`16900 SE 26th Driver, #94
`Vancouver, WA 98683
`
`I I
`
`Docket No.: FLX00P0004
`Express Mail No.: EK692