throbber
Internet-Pad Operating System and Applications
`and Internet-Pad for Digital Output
`
`Cross-References to Related Applications
`
`[001] Th is application is a continuation of Patent Application No. 10/016,223 filed
`
`November 1, 2001 and claims benefit of Provisional Application No. 60/245, 101 filed
`
`November 1, 2000, the entire disclosure of which is hereby incorporated by reference
`
`herein for all purposes.
`
`Technical Field of Invention
`
`[002] Present invention relates to device synchronization and digital output and, in
`
`particular, to providing pervasive output for information apparatuses.
`
`Summary of the Invention
`
`[003] An
`
`information apparatus refers
`
`to both stationary computers and mobile
`
`computing devices (pervasive devices). Examples of information apparatuses include
`
`without limitation desktop computers, laptop computers, palmtop (hand-held) computers,
`
`personal digital assistants (PDAs), Internet-enabled cellular phones, smart phones,
`
`pagers, Internet appliances, e-books, digital pads, Web pads, and digital capturing
`
`devices (e.g., digital cameras and video cameras). An output device 140 may include a
`
`fax machine, printer, copier, image or video display device, projector, and an audio
`
`output device.
`
`[004] For simplicity and convenience, hereafter, the following description may refer to
`
`an output device as a printer and an output process as printing. However, it should be
`
`understood that the term printer and printing is used as a specific example to simplify
`
`description or may be one exemplary embodiment. The reference to printing used here
`
`is intended to be applied or extended to the larger scope and definition of output
`
`devices and should not be construed as restricting the scope and practice of present
`
`invention.
`
`[005] Fueled by ever-increasing bandwidth and processing power and ever-increasing
`
`numbers of wireless mobile devices and available software applications for pervasive
`
`devices, millions of users are or will be creating, downloading, and transmitting content
`
`and information using their pervasive computer devices. Unfortunately, the small display
`
`screen of a pervasive device may not provide a good viewing
`
`1
`
`ROKU EXH. 1008
`
`

`

`experience. As a result, there is a need to allow users to easily output
`
`content and information from their pervasive computing devices to any
`
`output device. People need to output directly and conveniently from their
`
`pervasive information apparatus, without depending on synchronizing
`
`with a stationary computer (e.g., desktop personal computer) for printing,
`
`as an example.
`
`[0005]
`
`To illustrate, an information worker at an airport receiving e-mail in
`
`his hand-held computer may want to walk up to a nearby printer or fax
`
`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 device. 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
`
`the Internet using his Internet enable wireless phone (information
`
`apparatus). In still another example, an individual who just finished a
`
`stock trade or performed an e-commerce transaction using his PDA
`
`(information apparatus) may want to print out a copy of his transaction
`
`confirmation, invoice or receipt. In yet another example, a user who
`
`takes a picture with a digital camera may want to easily print it out to a
`
`nearby printer.
`
`[0006]
`
`Conventionally, an output device (e.g., a printer) is connected to an
`
`information apparatus via a wired connection such as a cable line. A
`
`wireless connection is also possible by using, for example, radio
`
`communication or infrared communication. Regardless of whether the
`
`connection is wired or wireless, a user must first install in the information
`
`apparatus a printer driver corresponding to a particu!ar printer model and
`
`make. Using a device-dependent or specific driver, the information
`
`apparatus may process output content or a digital document into the
`
`printer input space. The printer input space corresponds to the type of
`
`input that a printer understands (herein referred to as print data). For
`
`example, the printer input space or print data may include a printer-
`
`2
`
`ROKU EXH. 1008
`
`

`

`specific input format (e.g., image, graphics, file, data format), encoding,
`
`page description language, markup language, instructions, protocols or
`
`data that can be understood or used by a particular printer make and
`
`model.
`Print data may be proprietary or a published standard or a
`
`[0007]
`
`combination of the two. A printer input space or print data is therefore, in
`
`general, device dependent Different printer models may specify their
`
`own input, designed or adopted for optimal operation by the printer
`
`manufacturer according to a specification. Consequently, different
`
`printers usually require use of specific printer drivers for accurate
`
`printing. A device driver (printer driver in this example) may control,
`
`manage, communicate, and output print data to a printer. Sometimes,
`
`instead of using a printer or device driver, the device driving feature may
`be included as part of an application software. Thg application in this
`example may process the document and communicate directly with an
`
`output device without utilizing a device driver. Print data is an output
`
`data sent to a printer. However, the term print data used here is
`
`intended to be applied or extended to the larger scope and definition of
`
`output data which applies to any output devices including display,
`
`projection and audio devices, and this should not be construed as
`
`restricting the scope and practice of present invention.
`
`[0008]
`
`Installation of a printer driver or application may be accomplished
`
`by, for example, manual installation using a CD or floppy disk supplied
`
`by the printer manufacturer. Or alternatively, a user may be able to
`
`download that particular driver or application 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's sophistication level with computing devices and networks. Even
`with plug-and-play driver installation, the user is still required to execute
`
`a multi-step process for each printer. This installation and configuration
`
`process adds a degree of complexity and work to end-users who may
`
`3
`
`ROKU EXH. 1008
`
`

`

`otherwise spend their time doing other productive or enjoyable work.
`
`Moreover, many unsophisticated users may be discouraged from adding
`
`new peripherals (e.g., printers, scanners, etc.) to their home computers
`
`or networks to avoid the inconvenience of installation and configuration.
`
`Therefore, there ls a need to provide a way for a user to more
`
`conveniently or easily output digital content to an output device without
`
`the inconvenience of manually finding and installing new device drivers
`
`or printer drivers. Installation of printer drivers, if needed, should be
`
`more automatic and transparent to end-users.
`
`[0009]
`
`In addition, conventional printing methods may pose significantly
`
`higher challenges and difficulties for mobile device users than for home
`
`and office computer users: The requirement for pre-installation of a
`
`device-dependent driver is in conflict with the concept of mobile
`
`(peNasive) computing and output. For example, a mobile user may want
`
`to print e-mail, PowerPoint® presentation documents, web pages, or
`
`other documents in an airplane or at an airport, gas station, convenience
`
`store, kiosk, hotel, conference room, office, home, etc. It ls highly
`
`unlikely that the user would find at any of these locations a printer of the
`
`same make and model as is at the user's base station. Therefore, the
`
`user may have to install and configure a printer driver each time at each
`
`of these locations before printing. Alternatively, it is also not a viable
`
`option usually to pre-install all of the possible hundreds, or even
`
`thousands, of printer drivers available to the user's information
`
`apparatus. A mobile information device usually has limited memory and
`
`storage capacity. As a consequence, the user would currently be
`
`required to install and configure a printer driver each time at each such
`
`different location before printing. Moreover, the user may not want to be
`
`bothered with looking for a driver or downloading it and installing it just to
`
`print out one page of email at the airport. This is certainly an undesirable
`
`and discouraging process to promote peNasive or mobile computing.
`
`Therefore, a more convenient or automated printing solution is needed
`
`4
`
`ROKU EXH. 1008
`
`

`

`so that a user can simply walk up to a printer and easily print a digital
`
`document without having to install or pre-install a particular printer driver.
`
`[0010]
`
`Network printing may partially solve the above problem in a local
`
`area network (LAN). Network printing was first motivated to allow people
`
`to share printing resources within a network. Printers are often
`
`connected to the network using a network adapter or 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.
`
`[0011]
`
`The above configuration is often used in a local area network (LAN)
`
`such as in an office building. An office worker with a mobile or static
`
`computing device connected to this network may be able to send a 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 outside of the office building, or meaning outside of his wired or
`
`wireless network coverage, the office worker can no longer print to any
`
`printer he or she desires.
`
`[0012]
`
`In one instance, it has been 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 network, for example
`
`the Internet. But in reality, extending network printing to a big super(cid:173)
`
`network or the Internet is still unavailable.
`
`[0013]
`
`Nevertheless, one drawback of network printing may be higher
`
`cost. To connect the output devices and information apparatus to the
`
`same network, additional hardware or software may need to be installed.
`
`And therefore, the costs of output devices may be raised substantially.
`
`In addition to hardware and software costs there are also service
`
`5
`
`ROKU EXH. 1008
`
`

`

`charges to maintain the connectivity to a large network such as the
`
`Internet. Furthermore, a large permanent network infrastructure would
`
`need to be built and made available to each location.
`
`[0014]
`
`In addition to costs, another drawback of network printing is
`
`reliability. Network printing requires perfect function in any part of the
`
`chain of network hardware, software and services. 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.
`
`[00151
`
`Finally, another drawback of network printing is the issue of
`
`security. A user does not feel secure if confidential documents or
`
`information must pass through the entire netvvork before reaching the
`
`printer immediately in front of him or her. There may be the fear that the
`
`confidential document could be intercepted, viewed, copied or stored
`
`within any segment of the connected network. There can also be the
`
`fear that the document could actually be printed to a different printer
`
`instead of the intended one. This problem may be caused by, for
`
`example, errors in directory service software, a software component that
`
`is not up-to-date or corrupted, inconsistent or incompatible software
`
`and/or hardware versions, or any combination of human, software,
`
`network, or hardware errors. There is also risk when downloading a
`
`software component {e.g., printer driver) from the network to an
`
`information apparatus. This software component maybe damaged,
`
`corrupted or carrying a malicious attack or virus or otherwise modified by
`hackers. A damaged software component can disrupt or corrupt the
`
`user's information apparatus. Finally, some internal corporate or local
`
`networks may reject unknown documents trying to reach their printers
`
`and other output devices protected within a firewall. It is therefore more
`
`desirable if the communication and exchange of information are done
`
`locally between users' information apparatus and the selected output
`
`device, all within the range of the users watchful, and inspecting eyes.
`
`6
`
`ROKU EXH. 1008
`
`

`

`[0016]
`
`Accordingly, the present invention provides a convenient method of
`
`digital printing in which a user need not pre-install a device-dependent
`
`printer driver on an information apparatus in order to print.
`
`[0017]
`
`This invention can provide an easy, friendly and convenient
`
`process for printing. Unlike conventional printing, a user need not
`
`manually install a printer driver from a CD, floppy disk, or download it
`
`somewhere from an existing static network. With the apparatus and
`
`process of present invention, all the software components, data, or
`
`printer drivers can be loaded to the information apparatus through easy
`
`and automatic synchronization process between the information
`
`apparatus and a printer having an output controller of present invention.
`
`As a result, a mobile user with an information apparatus equipped with
`
`an output manager of present invention can print pervasively virtually at
`
`any time, anywhere, to any printer.
`
`[0018]
`
`Furthermore, this invention can provide a convenient method
`
`allowing users to print to any printer with or without connection to a static
`
`permanent network for both the information apparatus and the output
`
`device. Through local communication and synchronization directly
`
`between the information apparatus and the output device, hardware and
`
`software installation for static network connectivity may not be
`
`necessary. Therefore printing costs may be reduced.
`
`[0019]
`
`In addition, this invention can provide a more reliable printing
`
`method than conventional remote network printing methods or
`
`processes. By communicating locally between an information apparatus
`
`and an output device, the printing process does not depend on the
`
`pertect function of each element of a network chain. This chain may
`
`include, for example, network connections, network servers, application
`
`servers, service providers and application providers. Therefore, the
`
`chance of a successful printing under present invention is greatly
`
`enhanced as processing and communication involves fewer elements.
`
`7
`
`ROKU EXH. 1008
`
`

`

`[0020]
`
`This invention can further provide a more secure printing process
`
`than conventional network printing processes and methods. Uploading
`
`or downloading data or software components such as a printer driver
`
`from an output device immediately 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., contaminated with a 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
`
`possibilities of the document being intercepted, viewed, copied, stored or
`
`finally printed on a wrong printer in conventional network printing.
`
`[0021]
`
`In accordance with present invention, an electronic system and
`
`method of peivasive output allow an information apparatus to output
`
`digital content conveniently to virtually any output device. The
`
`information apparatus may be equipped with a central processing unit,
`
`input/output control unit, storage unit, memory unit, and wired or wireless
`
`communication unit or adapters. The information apparatus preferably
`
`also includes output manager that may be implemented as application
`
`software, a client application, or device driver (printer driver in case of
`
`printer). The output manager may include management and control
`
`capabilities with hardware and software components including for
`
`example one or more communication chipsets residing in its host
`
`information apparatus.
`
`[0022]
`
`The output manager in the information apparatus may be capable
`
`of communicating with, managing and synchronizing data or software
`
`components with an output device equipped with an output controller of
`
`present invention. Examples of output devices include, without
`
`8
`
`ROKU EXH. 1008
`
`

`

`limitation, printers, fax machines, copiers, image or video display
`
`devices, monitors, display screens, projectors, and audio output devices.
`
`[0023]
`
`The output controller may be a circuit board, card or software
`
`components residing in an output device. Alternatively, the output
`
`controller may be connected externally to an output device as an
`
`external component or "box." The output controller may be implemented
`
`with one or a combination of embedded processor, software, firmware,
`
`ASIC, DSP, FPGA, system on a chip, special chipsets, among others. In
`
`another embodiment, the functionality of the output controller may be
`
`provided by application software running on a PC, workstation or server
`
`connected externally to an output device.
`
`[0024]
`
`The output controller may include a processing unit,
`memory/storagG unit and communication adapter unit, among others.
`The storage or memory unit of the output controller may store device
`
`drivers, software components 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 language into print data
`
`or output data compatible with a specific output device. The output
`
`manager may manage the process of uploading data and or software
`
`components from an output controller to an information apparatus in
`
`order to, for example, enable the information apparatus to generate and
`
`transmit print data or output data accurately to the output device or the
`
`output controller.
`
`[0025]
`
`Output data (or print data in the case where the output device is a
`
`printer) may be 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. Furthermore, print data may use one or more
`
`9
`
`ROKU EXH. 1008
`
`

`

`open standards or one or more proprietary techniques and formats, or a
`
`combination. Output data (or print data for printers) refers to the
`
`electronic data sent from an information apparatus to the output device.
`
`[0026]
`
`One implementation of a digital content output process of this
`
`invention includes the following steps.
`
`1. A user requests to print a digital content from his/her information
`
`apparatus.
`
`2. The information apparatus detects available output devices by a
`
`discovery process.
`3. The information apparatus exchanges service information with output
`
`controllers associated with the available output devices in a service
`
`negotiation process. The user may then select one or more output
`
`devices based on the service information provided.
`
`4. The information apparatus communicates with output controller to
`
`identify and upload the necessary components to enable output to a
`
`specific output device as part of a synchronization process. The
`
`uploaded components or data may then be installed or configured in
`
`the information apparatus.
`
`5. The digital content intended for output is processed by one or more
`
`components to be compatible with the output device. The one or more
`
`components include the information apparatus with an output
`
`manager, an output controller and the output device.
`
`6. The printer engine or display engine or audio engine generates final
`
`output.
`
`[0027]
`
`In the output process of present invention, an output manager
`
`residing in the information apparatus may participate in, coordinate and
`
`manage the communication and exchange of information/components
`
`between its host information apparatus and output controllers.
`
`Brief Description of the Drawings
`
`[0028]
`
`Fig. 1 is a block diagram of an output system that can implement
`
`the process and apparatus of the present invention.
`
`10
`
`ROKU EXH. 1008
`
`

`

`[0029]
`
`Figs. 2A and 28 are block diagrams illustrating exemplary
`
`configurations of hardware components of wireless communication units.
`
`[0030]
`
`Fig. 3A-3C illustrates various configurations and implementations of
`
`output manager with respect to an information apparatus.
`
`[0031]
`
`Figs. 4A-4F illustrate various configurations and implementations of
`
`output controller with respect to a printer or output device.
`
`[0032]
`
`Fig.5 is a flow diagram of a pervasive output process of the present
`
`invention.
`
`[0033]
`
`Fig. 6 is a flow diagram of an exemplary implementation of service
`
`negotiation process optionally included in the output process of Fig. 5.
`
`[0034]
`
`Fig. 7 is a flow diagram of different possible configuration of print
`
`job process included in the output process of Fig. 5.
`Figs. BA-BG show a series of graphical user interfaces (GU ls)
`
`[0035]
`
`rendered at different times on a display screen of an information
`
`apparatus.
`
`[0036]
`
`Fig. 9A-9B is a block diagram of a conventional printing system or
`
`printer.
`
`[0037]
`
`Detailed Description of Preferred Embodiments
`
`[0038]
`
`FIG 1 is a block diagram illustrating exemplary components of an
`
`electronic communication system that may provide an operating
`
`environment for the present invention and includes an information
`
`apparatus 100, which is a computing device with processing capability.
`
`As illustrated in Fig. 1, examples of information apparatus 100 may
`
`include, but are not limited to, a desktop personal computer (PC), laptop
`
`computer, palmtop computer, handheld or mobile device, personal digital
`
`assistant (PDA), smart phone, screen phone, set-top box, e-book,
`
`Internet pad, digital camera, Internet appliance, pager, etc.
`
`[0039]
`
`Information apparatus 100 may contain components (not shown)
`
`such as a processing unit, a memory unit, a storage unit and an
`
`input/output control unit, as are known in the art. Information apparatus
`
`11
`
`ROKU EXH. 1008
`
`

`

`100 may also contain an interface (not shown) for interactions with users.
`The interface may be implemented in software or hardware or a
`
`combination. Examples of such an interface include, without limitation, a
`
`mouse, a keyboard, a touch-sensitive or non-touch-sensitive screen, one
`or more push buttons, soft keys, a stylus, a speaker, a microphone, etc.
`An information apparatus 100 may be a dedicated single task
`
`[0040]
`
`device (e.g. email terminal, web terminal, e-book, etc) or a general(cid:173)
`
`purpose computing device with multiple features and functions. These
`
`multiple functions and features may be implemented by one or more
`
`software applications (e.g., applications 302, Fig. 3) installed in the
`
`information apparatus100, which may or may not include an operating
`system. A digital camera 112 equipped with processing capability and
`
`feature sets of the present invention is also an example of an information
`
`apparatus 100.
`
`[0041]
`
`Some information apparatuses 100 (e.g., dedicated devices) may
`
`be pre-configured by manufacturers with fixed functionalities and
`
`features. Other information apparatuses 100 may allow users to install
`
`additional hardware components and application software (e.g.,
`
`applications 302, Fig. 3) to expand or change functionality. Examples of
`
`functionalities and applications of information apparatuses 100 may
`
`include, for example, e-mail, messaging, voice communication, web
`
`browsing, image acquisition, text processing, graphics applications,
`
`document or image editing, and output functionalities, among others.
`
`[0042]
`
`Functionalities and feature sets of an information apparatus 100
`
`may be implemented in software or hardware or a combination of both.
`
`When features are implemented in software, this software may be
`
`installed by the manufacturer or 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
`
`combinations of applications and feature sets may also be implemented
`
`in hardware or in silicon. Some functionality or feature se1s may be
`
`12
`
`ROKU EXH. 1008
`
`

`

`implemented in special chip sets and may include one or more or
`
`combinations of, for example, application-specific integrated circuits
`
`(ASICs), field programmable gate arrays {FPGAs), digital signal
`
`processors (DSPs), systems on a chip, firmwares, etc.
`
`[0043]
`
`Information apparatus 100 may or may not contain an operating
`
`system. In an implementation having an operating system, the operating
`
`system may provide a variety of application programming interfaces
`
`(APls) or object models (e.g., APls 300, Fig. 3) for software applications
`
`to intertace and communicate with device drivers. Device drivers in an
`
`information apparatus 100 control and communicate with peripheral
`
`devices such as printers, copiers, fax machines, display monitors,
`screens, etc. Several different applications can share a common device
`
`driver through the use of APls or interfaces or object models provided by
`
`an operating system, as described below with reference to Fig. 3A.
`
`In
`
`implementations having no operating system or an operating system that
`
`does not support or provide a device driver API, each application may
`
`have to implement its own device driver or its own output and
`
`communication capability, as described below with reference to Figs. 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/or communication capability.
`
`[0044]
`
`In one implementation, information apparatus 100 includes an
`
`output manager 308 {Figs. 3A-3C), which is typically implemented in
`
`software. Output manager 308 may be implemented or included in a
`
`client application, or as a stand-alone application, or as part of another
`
`application software 302B (Fig. 3B), or in the form of a device driver
`
`(e.g., a printer driver, in case of a printer being the output device), which
`
`may be invoked, shared and used by one or more application software
`
`programs 302 (Figs. 3A-3C).
`
`[0045]
`
`One task for output manager 308 is to manage and coordinate
`
`communication between information apparatus 100 and one or more
`
`13
`
`ROKU EXH. 1008
`
`

`

`output controllers 120. Output manager 308 may, for example,
`
`implement an open-standard or a proprietary communication protocol to
`
`directly or indirectly interact with, manage, or utilize functionalities
`
`provided by hardware components residing in a host information
`
`apparatus 100. Such hardware components may include, for example, a
`
`processing unit, a memory unit and communication chipsets (not shown).
`
`Output manager 308 may include one or more of the following features
`
`and functionalities:
`
`• Output manager 308 may communicate and interact with one or more
`
`software applications 302 included in a host information apparatus100
`
`to provide pervasive output capability or feature to those software
`
`applications 302. The type of information passed from the software
`
`applications 302 to the output manager 308 may be, for example, a
`
`digital document or digital content data that needs output. In some
`
`instances, application software 302 may invoke or launch the output
`
`manager 308 as a separate application (as shown in Fig. 3C) or as an
`
`integrated part of the application software (as shown in Fig. 3B).
`
`Examples of possible communication and management between
`
`output manager 308 and application software 302 may include, among
`
`others, messages, objects models, instances, procedural calls,
`
`program invocation and APls, which may or may not be provided by an
`
`operatlng system.
`
`• Output manager 308 may manage and maintain wired or wireless
`
`communications with output controller 120. Output manager 308 may
`
`interact with functionalities implemented by hardware components of
`
`its host information apparatus 100. As an example, the output
`
`manager 308 may manage and interact with the communication unit in
`
`the information apparatus 100. Figs. 2A and 2B show an example of
`
`communication units using wireless adapters, as described below in
`
`greater detail. A user may interact with the output manager 308
`
`14
`
`ROKU EXH. 1008
`
`

`

`through a user interface provided by output manager 308 through the
`host information apparatus 100.
`
`• Output manager 308 may help discover available output devices 140,
`
`verify communication connections, identify devices available or
`
`compatible for service, or send or broadcast service requests to one or
`
`more devices.
`
`• Output manager 308 may communicate with output controller 120 to
`
`identify necessary software components, data, or any other device
`
`dependent information or parameters, if any, that need to be uploaded
`
`from the output controller 120 to the host information apparatus 100 to
`
`enable pervasive output. Software components may be, for examplel
`
`a device driver, an application, a special code or algorithm, an
`
`executable object or device dependent data, parameter, information,
`
`etc.
`
`• Output manager 308 may coordinate with output controller 120 to
`
`upload the necessary components or data from the output controller
`
`120 to its host information apparatus 100 so that the user can output
`
`digital content pervasively to that output controller 120 or its associated
`
`output device 140.
`
`• Output manager 308 may perform raster image processing operations
`
`(e.g. rasterization, color management, half-toning operations) or
`
`convert digital content from its original format into print data compatible
`
`for input to a specific output controller 120 or output device 140. The
`
`digital content may be created, stored or received by the information
`
`apparatus 100. For example, an output manager 308 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.
`
`15
`
`ROKU EXH. 1008
`
`

`

`• Output manager 308 may coordinate or manage the communication
`
`between a host information apparatus 100 and output controller 120 to
`
`send or transmit the print data to the output controller 120.
`
`[0046] Output controller 120
`[0047]
`
`An output controller 120 may be implemented as software or
`
`hardware and may be connected to or integrated within an output device
`
`140. Output controllers 120H illustrate hardware implementations in the
`
`form of a circuit board or card that is installed or integrated into an output
`
`device 140, such as a printer, copiers, fax machine, display screen
`
`among others. In another configuration (not shown), output controller
`
`120 may be implemented as a software application or component that is
`
`installed or integrated into an output device 140. Output controller 120G
`
`illustrates a hardware implementation in the form of an external
`
`component or "box" that is separately connected to one or more output
`
`devices 140.
`
`[0048]
`
`Whether externally connected to or internally installed in output
`
`device 140, output controller 120 may be implemented with hardware,
`

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket