US Pat. No. 9,270,563

APPARATUS AND METHOD FOR CONTENT PLAYBACK UTILIZING CROWD SOURCED STATISTICS

Roku, Inc., Saratoga, CA...

1. A system, comprising:
a processor; and
a memory connected to the processor to store instructions executed by the processor to:
retrieve playback statistics from a plurality of different network connected content players,
perform an evaluation of the playback statistics,
establish a playback configuration for individual instances of content based upon the evaluation of the playback statistics,
receive, from a first network connected content player of the plurality of different network connected content players, a
request to select a playback configuration corresponding to a specified instance of the content, the selected playback configuration
including an aggregate of the playback statistics, and

transfer the selected playback configuration corresponding to the specified instance of the content to the first network connected
player.

US Pat. No. 9,206,493

METHOD FOR LEACHING COPPER OXIDE, REPLACING SULFURIC ACID WITH A NON-POLLUTING ORGANIC LEACHING AGENT

PROKUMET SPA, Santiago (...

1. A hydrometallurgical process for leaching copper oxide ore comprising the steps of:
a) impregnating ground copper oxide ore with a leaching agent that consists of an aqueous solution composed of tricarboxylic
acid (C6H8O7) and water (H2O), wherein the acidity of the aqueous solution is between a pH value of 1.0 and 5.0;

b) forming leaching piles with the impregnated ore and irrigating the leaching piles with the leaching agent to obtain copper
citrate; and

c) electro-depositing the copper citrate by pouring the copper citrate into electro-deposition pools which contain anodes
and cathodes fed with a continuous voltage varying between 0.1 and 7.0 Volts at a current density varying between 5.0 and
300.0 amperes per square meter.

US Pat. No. 9,185,446

METHOD AND APPARATUS FOR AUTOMATIC SECOND SCREEN ENGAGEMENT

Roku, Inc., Saratoga, CA...

1. A method, comprising:
delivering, to a client device, content for display on a television;
detecting a selection of the content displayed on the television;
analyzing the selection to identify a first component and a second component of associated content;
determining a suitability of the first component for presentation on either a personal display device or the television and
determining a suitability of the second component for presentation on either the personal display device or the television;
and

delivering, based upon determining the suitability of the first and second components for presentation, the first component
to the personal display device and the second component to the client device for display on the television.

US Pat. No. 9,131,260

STREAMING MEDIA SYSTEM

Roku, Inc., Saratoga, CA...

1. A streaming media system, comprising:
a streaming media device configured to be directly coupled to the a television, the streaming media comprises:
a printed circuit board hosting components configured for streaming media from the internet, wherein the components include
an interface module to provide a graphical user interface for display on the television to coordinate access to the streaming
media from the internet,

a connector formed on the printed circuit board, wherein the connector is adapted for a direct physical engagement with externally
accessible matching leads of the television such that the streaming media device is directly coupled onto the television,
wherein the connector and printed circuit board are configured to receive power from the television, and

a housing enclosing the printed circuit board and a portion of the connector, wherein an entirety of the housing is configured
to fit in a rear input/output bay of the television; and

a remote control capable of controlling the streaming media device and the television, wherein the remote control supplies
input to the graphical user interface displayed on the television to coordinate access to the streaming media from the internet,
such that the streaming media from the internet is displayed on the television.

US Pat. No. 9,848,231

MULTI-INTERFACE STREAMING MEDIA SYSTEM

Roku, Inc., Los Gatos, C...

1. A media device, comprising:
a board comprising at least one component configured to access streamed data, the at least one component comprising a processor;
an audio/visual connector operatively coupled to the board, wherein the audio/visual connector is configured to connect to
a connector of a display device and operate with a first audio/visual interface having sufficient power to fully operate the
media device and a second audio/visual interface having insufficient power to fully operate the media device;

a power connector operatively coupled to the board, wherein the power connector selectively receives power based on a detected
audio/visual interface utilization of the first and the second audio/visual interfaces;

a power cord removably coupled to the power connector and configured to deliver power to the power connector; and
a visual indicator to provide at least one indicia indicating a connection state between the media device and the connector
of the display device.

US Pat. No. 9,137,578

METHOD AND APPARATUS FOR SHARING CONTENT

Roku, Inc., Saratoga, CA...

1. A method, comprising:
supplying a video stream to a primary display device;
receiving an information request, wherein the information request solicits information associated with content of the video
stream on the primary display device; and

in response to receiving the information request, supplying to a secondary display device a plurality of tag data relating
to the video stream, wherein the tag data comprises a plurality of different tag sources and different tag types, tag timestamps,
and tag content data, wherein the plurality of tag data are visually and concurrently indicated on a single progress bar of
the video stream being displayed on the secondary display device, and whereby the tag content data is displayed on the display
screen of the secondary display device when one of the plurality of tag types is selected.

US Pat. No. 9,479,813

METHOD AND APPARATUS FOR AUTOMATIC SECOND SCREEN ENGAGEMENT

ROKU, INC., Saratoga, CA...

1. A method, comprising:
receiving a selection of content from a personal display device operated by a user;
detecting, based on the receiving, the selection of content to be displayed by either the personal display device or a television;
analyzing the selection to identify a component of associated content;
determining whether the component is suitable for display on the television or the personal display device; and
causing the component of associated content to be displayed on the personal display device or the television based on the
determining.

US Pat. No. 9,473,940

AUTHENTICATING A BROWSER-LESS DATA STREAMING DEVICE TO A NETWORK WITH AN EXTERNAL BROWSER

ROKU, INC., Saratoga, CA...

1. A data streaming device, comprising:
one or more memories; and
one or more processors communicatively coupled to the one or more memories and configured to:
establish a connection with a computing device that includes a data input and transmission interface;
query, by the data streaming device, a default resource on a network prior to using a browser on the computing device for
authentication;

receive a response from the default resource responsive to the query;
compare the received response to a previously stored response, wherein a match between the received response and the stored
response indicates connectivity between the data streaming device and the network, and a mismatch indicates that authentication
is required for connectivity between the data streaming device and the network;

provide, using the browser of the computing device, authentication information required to authenticate the data streaming
device and enable the data streaming device to obtain access to the network responsive to determination of the mismatch, wherein
successful authentication enables the data streaming device to stream content over the network.

US Pat. No. 9,243,434

FRICTION HINGE FOR A CONSOLE BOX LID

Moriroku Technology Compa...

1. A hinge structure of a storage container comprising:
a storage box having an opening for putting goods in said storage box and taking goods out of said storage box;
a lid adapted to close at least a part of said opening;
a hinge shaft rotatably connecting said lid to said storage box so that said lid can open and close at least a part of said
opening;

a brake shaft having a rotational axis that is coaxial with said hinge shaft, and said brake shaft being adapted to rotate
about said rotational axis together with said lid;

a braking device comprising a brake plate to generate a stable friction force in cooperation with an end face of said brake
shaft, so that said stable friction force provides said brake shaft with rotational resistance to retain said lid at any position
where said lid stops rotating around said hinge shaft;

wherein said storage box and said lid each have a bearing member that comprises a bearing portion to support said hinge shaft
rotatably, a side surface of said bearing member of said lid being arranged to abut on a side surface of said bearing member
of said storage box so as to open and close said lid smoothly, said lid having a connecting member with which said brake shaft
is engaged so that said lid and said brake shaft integrally rotate around said rotational axis when said lid rotates around
said hinge shaft, said storage box having another bearing member, a side surface of said connecting member of said lid being
arranged to abut on a side surface of said another bearing member so as to open and close said lid smoothly; and

wherein said braking device is arranged beside said end face of said brake shaft, said brake plate extending in a direction
intersecting said rotational axis, said brake plate being arranged along said end face of said brake shaft and secured with
respect to said storage box, said braking device further comprising a friction plate disposed between said brake plate and
said end face of said brake plate, a support shaft integrally formed on said end face of said brake shaft projecting along
said rotational axis with said friction plate and said brake plate engaged with said support shaft, a swaged portion formed
at the end of said support shaft with a spring plate and a washer pressed between said swaged portion and said brake plate
so that said friction plate is pressed against said end face and said brake plate.

US Pat. No. 9,286,854

MULTI-INTERFACE STREAMING MEDIA SYSTEM

Roku, Inc., Saratoga, CA...

1. A streaming media device, comprising:
a board hosting components configured to access streamed data;
an audio/visual connector linked to the board, wherein the audio/visual connector is adapted for physical connection to a
connector of a display device such that the streaming media device is coupled onto the connector of the display device, wherein
the audio/visual connector is adapted to operate with a first audio/visual interface having sufficient power to fully operate
the printed circuit board and a second audio/visual interface having insufficient power to fully operate the printed circuit
board;

a power connector linked to the printed circuit board, wherein the power connector selectively receives power based on the
audio/visual connector utilizing one of the first audio/visual interface and the second audio/visual interface;

a power cord that is removably coupled to the power connector and configured to deliver power to the power connector through
an external power source;

a visual indicator to provide indicia of physical connection state between the streaming media device and the connector of
the display device; and

a processor coupled to the board and configured to:
detect whether the first audio/visual interface or second audio/visual interface is being utilized through the audio/visual
connector; and

determine power requirements based on the detected audio/visual interface being utilized through the audio/visual connector.

US Pat. No. 10,088,946

COORDINATE DETECTION DEVICE HAVING LOOPED DRIVE LINES AND DETECTION LINES

XIROKU, INC., Ibaraki (J...

1. A coordinate detection device that detects an indicated position coordinate of an indicator, comprising:a plurality of drive lines that are arranged in parallel along one of X- and Y-coordinate axes;
a plurality of detection lines that are arranged in parallel along the other one of the X- and Y-coordinate axes;
a drive circuit that is connected to one ends of the drive lines and inputs a predetermined drive voltage to the drive lines to drive the drive lines;
a detection circuit that is connected to one ends of the detection lines, detects a signal from the detection lines, and calculates indicated position coordinates of the indicator;
a drive line selection section that includes a drive line loop unit that includes a diode connected to the other ends of the drive lines and a drive line bias unit bringing the drive line to a predetermined bias potential and functions so as to selectively put two drive lines into a looped state from an opened state and a drive line connection unit that is connected to the drive circuit so as to allow a current to flow in the looped drive line;
a detection line selection section that includes a detection line loop unit that includes a diode connected to the other ends of the detection lines and a detection line bias unit bringing the detection line to a predetermined bias potential and functions so as to selectively put two detection lines into a looped state from an opened state and a detection line connection unit that is connected to the detection circuit so as to detect a current flowing in the looped detection line or a potential difference; and
a control section that controls the drive line selection section and the detection line selection section so as to sequentially connect a predetermined drive line and a predetermined detection line to the drive circuit and the detection circuit, respectively, the control section controlling the drive line bias unit and the drive line selection section as well as the detection line bias unit and the detection line selection section so as to put the drive lines and the detection lines into the looped state when the indicator is detected by an electromagnetic induction type, and the control section controlling the drive line bias unit and the drive line selection section as well as the detection line bias unit and the detection line selection section so as to put the drive lines and the detection lines into the opened state or so as to put the drive lines into the looped state and the detection lines into the opened state when the indicator is detected by an electrostatic capacitance type.

US Pat. No. 9,420,338

APPARATUS AND METHOD FOR PROVIDING POWER ON AND POWER OFF FOR A DISPLAY DEVICE

Roku, Inc., Saratoga, CA...

1. A method of displaying images, comprising:
receiving, at a client device, streamed content from one of a plurality of content providers via a communications network,
wherein the client device is coupled to and configured to communicate with each of the plurality of content providers;

displaying visual images corresponding to the received streamed the received content on a display device;
receiving a power off signal to power off the display device;
stopping the streamed content in response to receiving the power off signal to power off the display device;
creating a bookmark indicating a current location of play of the streamed content after receiving the power off signal; and
displaying a home screen on the display device with a visual representation of an alternative content selection and a channel
selection for a user defined period of time.

US Pat. No. 9,363,575

METHOD AND APPARATUS FOR VIEWING INSTANT REPLAY

ROKU, INC., Saratoga, CA...

1. A method, comprising:
receiving, from a content server, streamed internet content at a client device for presentation on a display, wherein the
client device is a streaming media player;

receiving public tag information and private tag information from an information server, wherein the public tag information
includes closed captioning content corresponding to at least a portion of the streamed internet content at the client device,
wherein the streamed internet content and the corresponding closed captioning content are different streams of data that are
simultaneously buffered at the client device, and wherein the private tag information includes comments of a first user, that
are only viewable by designated second users;

initially playing a portion of a video stream through the client device including the corresponding private tag information
and without the corresponding closed captioning information, wherein the closed captioning information corresponds to the
portion of the video stream and is stored in a buffer of the client device for a pre-determined time duration;

receiving a request to replay the portion of the video stream through the client device after initially playing the portion
of the video stream through the client device without the closed captioning information;

retrieving the closed captioning information from the buffer based on the request;
synchronizing the portion of the video stream to be replayed with a corresponding portion of the closed captioning information
based on a common clock; and

displaying the closed captioning information through the client device based on the request while simultaneously replaying
the portion of the video stream, wherein upon completion of the replaying of the portion of the video stream, the closed captioning
information is no longer displayed while the video stream continues to play.

US Pat. No. 9,544,654

STREAMING MEDIA SYSTEM

Roku, Inc., Los Gatos, C...

1. A streaming media system, comprising:
a streaming media device configured to be coupled to a television, the streaming media device comprising:
a printed circuit board hosting components configured for streaming media from at least the internet, wherein the components
include an interface module to provide a graphical user interface for display on at least the television to enable access
to the streaming media from the internet,

the printed circuit board comprising a connector, wherein the connector is adapted for physical engagement with externally
accessible matching leads of the television such that the streaming media device is coupled to the television, and

a housing enclosing the printed circuit board and at least a portion of the connector, wherein the housing is configured to
fit in a rear input/output bay of the television; and

a remote control capable of controlling the streaming media device and the television, wherein the remote control supplies
input to the graphical user interface displayed on the television to control access to the streaming media from the internet,
such that the streaming media from the internet is displayed on the television.

US Pat. No. 9,044,758

METHOD FOR PRODUCING FINE POWDER AND THE FINE POWDER PRODUCED BY THE SAME

Moriroku Chemicals Compan...

1. A method for producing fine powder, comprising the steps of:
suspending two or more kinds of original materials in liquefied inert gas that is used as disperse medium to form a slurry,
and putting grinding medium in said slurry, and then stirring said slurry to pulverize said original materials into submicron
sized and/or nano-sized particles, wherein said grinding medium consists entirely of dry ice beads so that said original materials
are pulverized by said dry ice beads in said liquefied inert gas;

sublimating said dry ice beads from said slurry; and
vaporizing said liquefied inert gas from said slurry to recover a mixture of said two or more kinds of original materials
having improved solubility and/or degree of homogeneous mixing.

US Pat. No. 9,288,547

METHOD AND APPARATUS FOR CHANNEL PRIORITIZATION

Roku, Inc., Saratoga, CA...

1. A system, comprising:
a platform server configured for coupling to a client device via a network, wherein the platform server is configured to:
determine a maximum number of applications based on the client device, wherein each application allows content associated
with a corresponding channel to be streamed through the client device;

select a plurality of targeted channels up to the maximum number of applications from a plurality of available channels; and
designate at least one of the plurality of targeted channels to form a preloaded application, wherein the preloaded application
is configured to run as a background process on the client device prior to content associated with the at least one designated
channel being streamed through the client device.

US Pat. No. 9,866,904

INTERACTION RECOGNITION OF A TELEVISION CONTENT INTERACTION DEVICE

ROKU, INC., Los Gatos, C...

1. A method, comprising:
receiving, by at least one processor; a set of interaction data comprising selections of a plurality of different buttons
within a specified time period, from a receiver configured to receive the interaction data;

comparing the received interaction data against stored interaction data, wherein the set of interaction data corresponds to
a modification of content corresponding to the received interaction data;

selecting the content modification based on the comparison; and
modifying, by at least one processor, content streamed to the receiver according to the selected content modification.

US Pat. No. 9,601,006

UNIVERSAL REMOTE CONTROL WITH AUTOMATIC STATE SYNCHRONIZATION

Roku, Inc., Los Gatos, C...

8. A system, comprising:
a transceiver configured to:
send, via a first communications link, a state change to the remote-controlled device based at least in part on a first device
command sent to the remote-controlled device, wherein the state change represents a resulting state of the remote-controlled
device after performance of the first device command;

receive, via the first communications link, a confirmation message from the remote-controlled device in response to the sending
the state change;

a memory configured to store a command set for the remote-controlled device and a state configuration for the remote-controlled
device;

at least one processor coupled to the memory and configured to:
generate the first device command to control the remote-controlled device based at least in part on a user input; and
program the state configuration for the remote-controlled device based at least in part on the received confirmation message;
and

a transmitter configured to:
send, via a second communications link, the first device command to the remote-controlled device for performance by the remote-controlled
device; and

send, via the second communications link, a second device command for controlling the remote-controlled device based at least
in part on the programming.

US Pat. No. 9,807,462

APPARATUS AND METHOD FOR AGGREGATING MEDIA CONTENT

ROKU, INC., Los Gatos, C...

1. A content processor, comprising:
a processor; and
a media module executed by the processor and configured to:
supply to a media device a template including a first criterion and a second criterion, wherein at least the first criterion
and the second criterion specify how to organize aggregated on-demand media content presented by the media device,

receive a customization criterion, wherein the customization criterion is provided using the template at the media device,
and wherein the customization criterion includes the first criterion and the second criterion specifying that the aggregated
on-demand media content is organized by provider and content category, respectively, or specifying that the aggregated on-demand
media content is organized by the content category and the provider, respectively,

organize the aggregated on-demand media content in a non-temporal format according to the first criterion before organizing
the aggregated on-demand media content in the non-temporal format according to the second criterion,

supply, to the media device, a first interface comprising the organized aggregated on-demand media content in the non-temporal
format that concurrently displays a set of instances of the first criterion and instances of the second criterion associated
with at least one instance of the first criterion,

receive a selection of a displayed instance, wherein the selected displayed instance is an instance of the first criterion
or an instance of the second criterion, and

supply, to the media device, a second interface comprising the organized aggregated on-demand media content in the non-temporal
format that concurrently displays the selected displayed instance and instances of the first or second criterion associated
with the selected display instance.

US Pat. No. 9,788,111

AUDIO DEVICE WITH AUTOMATIC FAN CONTROL BASED ON A VOLUME LEVEL OF AUDIO CONTENT

Roku, Inc., Los Gatos, C...

1. A computer implemented method for maintaining a temperature of an audio device within certain parameters during playback
of audio content in a manner that decreases or eliminates audio interference, comprising:
receiving a data stream comprising the audio content for playback;
determining a volume level at a time portion of the audio content from crowd sourced metadata associated with the data stream,
wherein the crowd sourced metadata comprises a timeline of volume information generated by a second audio device; and

adjusting a power state of a cooling device during playback of the audio content by comparing the volume level at the time
portion of the audio content to a threshold value, wherein the cooling device maintains the temperature of the audio device.

US Pat. No. 9,613,586

PROVIDING A REPRESENTATION FOR A DEVICE CONNECTED TO A DISPLAY DEVICE

ROKU, Inc., Los Gatos, C...

1. A computer implemented method, comprising:
recognizing, by at least one processor, a new device connected to a display device;
collecting, by the at least one processor, device fingerprint information from the new device;
requesting, by the at least one processor, device class representation information determined based on the device fingerprint
information;

receiving, by the at least one processor, the device class representation information from a server via a network connection,
wherein the device class representation information includes a suggested device class name and an associated reliability indicia;
and

presenting, by the at least one processor, the suggested device class name and the associated reliability indicia on a display,
wherein the reliability indicia is a normalized value determined based on one or more reliability factors.

US Pat. No. 9,783,131

DECORATED MOLDED ARTICLE

MORIROKU TECHNOLOGY COMPA...

1. A decorated molded article, comprising;
a resin substrate molded of a synthetic resin material; and
a decorative sheet provided with a decoration and applied to an obverse side of the resin substrate,
the resin substrate including a substrate body, a first wall rising from a reverse side of the substrate body, a second wall
rising from the reverse side of the substrate body and arranged in orthogonal relation to the first wall, and a corner portion
formed at a merging point between the first wall and the second wall,

the corner portion being an entirely rounded corner portion,
the rounded corner portion extending from the substrate body and having a distal end face at a distal end thereof,
the distal end face having a width determined by an outer curved line and an inner curved line,
the inner curved line having a central portion curved to approach the outer curved line,
the width of the distal end face of the rounded corner portion being smaller than a width of a distal end face formed at a
distal end of the first wall extending from the substrate body.

US Pat. No. 9,749,700

AUTOMATIC DISPLAY OF CLOSED CAPTIONING INFORMATION

ROKU, INC., Los Gatos, C...

1. A method, comprising:
accessing, by a processor, user behavior information for a program, wherein the user behavior information indicates when a
plurality of users made closed captioning requests during one or more previous playbacks of the program, wherein the closed
captioning requests include both on-requests and corresponding off-requests;

determining, based on the user behavior information, that multiple closed captioning requests overlap during a portion of
the program;

calculating a start time indicating when to begin display of closed captioning information for the overlapping portion based
on one or more of the on-requests associated with the overlapping portion;

calculating an end time indicating when to end the display of closed captioning information for the overlapping portion based
on one or more of the off-requests associated with the overlapping portion;

receiving, by the processor, a request for the program from a user device; and
providing, by the processor and responsive to the request, the program including the start time and the end time corresponding
to the overlapping portion, wherein during a playback of the program at the user device, the closed captioning information
is automatically displayed between the start time and the end time.

US Pat. No. 10,091,581

AUDIO PREFERENCES FOR MEDIA CONTENT PLAYERS

Roku, Inc., Los Gatos, C...

1. A method for creating a desired audio effect, comprising:causing a plurality of speakers to simultaneously play test signals configured to be received by a remote control device, wherein at least one of the test signals differs from at least one other of the test signals;
receiving recorded frequency responses of the speakers from the remote control device resulting from the playing of the test signals;
creating one or more filters to match an audio profile selected by a user, wherein at least some of the filters are based on at least distances from the speakers to the remote control device, wherein the remote control device is configured to enable wireless control of a media content device that provides content for playback using the speakers;
applying the filters to the recorded frequency responses to obtain filtered transformations of the speakers; and
applying the filtered transformations at the speakers to thereby achieve the selected audio profile.

US Pat. No. 10,110,847

PROGRAM IMAGE CREATION METHOD AND APPARATUS OF THE SAME

4COLORS INC., Yokohama-s...

1. A program image creation method that creates a program image based on input voice input information, image selection information, avatar selection information, decoration selection information, and interactive selection information, the program image creation method comprising:an image processing step of setting a description image based on the image selection information, the description image appears in the created program image;
a voice processing step of synchronizing a voice from the voice input information with the created program image;
an avatar processing step of combining an avatar that is set based on the avatar selection information with the description image, the avatar appearing in a predetermined location of the description image within the created program image;
a decoration processing step of combining a decoration material that is set based on the decoration selection information with the description image, the decoration material appearing in the created program image;
an interactive processing step of setting two or more hyperlinks based on the interactive selection information, the two or more hyperlinks appearing in the created program image and the two or more hyperlinks are selectable, wherein the the two or more hyperlinks are in the form of first and second selectable buttons separate from the avatar, wherein the first selectable button is associated with a first auxiliary screen and the second selectable button is associated with a second auxiliary screen, wherein the description image includes a background portion and a foreground portion, the foreground portion being overlaid on the background portion, wherein the first and second selectable buttons are displayed in the foreground portion, and when the first selectable button is selected, the foreground portion displaying the second selectable button is replaced by the first auxiliary screen, when the second selectable button is selected, the foreground portion displaying the first selectable button is replaced by the second auxiliary screen, and the background portion of the description image is unchanged; and
displaying the created program image on a display device, the created program image including a reproduction player displayed at a bottom of the description image.

US Pat. No. 9,875,002

METHOD AND APPARATUS FOR CONTENT BROWSING AND SELECTION

Roku, Inc., Los Gatos, C...

1. A method implemented by a computer, comprising:
aggregating, at a server, content listings and corresponding descriptive data for on-demand content associated with a plurality
of content sources, wherein the corresponding descriptive data includes viewing data, paid subscription information, and tagging
data associated with a user, wherein each of the plurality of content sources separately stores and manages the on-demand
content associated with the content source, and wherein the server stores a respective network address for each of the plurality
of content sources;

analyzing, at the server, the aggregated content listings and corresponding descriptive data to generate a plurality of options
associated with the on-demand content, wherein the plurality of options are generated at least based on the viewing data,
the paid subscription information, and the tagging data associated with the user, wherein the on-demand content associated
with the plurality of options are prioritized based on the paid subscription information, and wherein the plurality of options
include a featured content option;

creating, at the server, a first interface panel including the plurality of options associated with the on-demand content,
a screen title located above the plurality of options, and a preview of the on-demand content associated with one of the plurality
of options, the preview of on-demand content located to the right of the plurality of options;

sending the first interface panel to a client device associated with the user for presentation on an associated first display,
wherein the client device is a streaming media player coupled to a separate input device having a second display;

displaying the plurality of options of the first interface panel, the screen title, and the preview of the on-demand content
on the associated first display;

displaying the plurality of options of the first interface panel on the second display;
receiving, at the server, a first selection from the plurality of options;
creating, at the server, a second interface panel including a plurality of content based on the first selection and a left
panel indicator enabling access to the plurality of options of the first interface panel, wherein the plurality of content
is from at least two of the plurality of content sources, and wherein the respective network addresses for the at least two
of the plurality of content sources are embedded in the second interface panel;

sending the second interface panel to the client device for presentation on the associated first display;
displaying the plurality of content of the second interface panel on the associated first display, wherein the first interface
panel is replaced by the second interface panel on the associated first display; and

displaying additional information associated with the plurality of content of the second interface panel on the second display.

US Pat. No. 9,865,225

PROVIDING A REPRESENTATION FOR A DEVICE CONNECTED TO A DISPLAY DEVICE

Roku, Inc., Los Gatos, C...

1. A display device, comprising:
a memory; and
at least one processor coupled to the memory and configured to:
recognize a device connected to the display device,
collect device fingerprint information from the device connected to the display device,
request device class representation information corresponding to the device fingerprint information from a server, wherein
the request includes the device fingerprint information,

receive the device class representation information from the server, wherein the device class representation information includes
a suggested device class name associated with the connected device, wherein the received device class representation information
is generated based on at least crowd sourced representation information, and wherein the crowd sourced representation information
includes an aggregate of device class representation information for the connected device that were sent to the server.

US Pat. No. 9,723,258

ORIENTATION ADJUSTMENT FOR CASTING VIDEOS

Roku, Inc., Saratoga, CA...

1. A method, comprising:
receiving, by a computing device, a video and a reference frame, wherein the video includes a video frame and wherein the
reference frame has a reference frame orientation;

applying, by the computing device, an orientation adjustment to the video frame;
requesting, by the computing device, a transcoder within the computing device to transcode the video frame based on the orientation
adjustment to generate a transcoded frame;

converting, by the computing device, the transcoded frame into a converted frame having a converted frame orientation and
a format comparable to the reference frame;

comparing, by the computing device, the converted frame with the reference frame to determine that the converted frame orientation
is the same as the reference frame orientation; and

in response to determining that the converted frame orientation is the same as the reference frame orientation, using, by
the computing device, the applied orientation adjustment when transcoding visual content with the transcoder to generate a
corresponding transcoded visual content that casts on a display device in an orientation matching that of the visual content.

US Pat. No. 9,621,989

AUDIO DEVICE WITH AUTOMATIC FAN CONTROL BASED ON A VOLUME LEVEL OF AUDIO CONTENT

Roku, Inc., Los Gatos, C...

1. A computer implemented method for maintaining a temperature of an audio device within certain parameters during playback
of audio content in a manner that decreases or eliminates audio interference, comprising:
receiving a data stream comprising the audio content for playback;
determining a volume level at a time portion of the audio content from crowd sourced metadata associated with the data stream,
wherein multiple users generate the crowd sourced metadata prior to playback of the audio content by indicating the volume
level at the time portion of the audio content; and

adjusting a power state of a cooling device during playback of the audio content by comparing the volume level at the time
portion of the audio content to a threshold value, wherein the cooling device maintains the temperature of the audio device.

US Pat. No. 10,048,936

AUDIO COMMAND INTERFACE FOR A MULTIMEDIA DEVICE

Roku, Inc., Los Gatos, C...

1. A method, comprising:receiving, by a wireless network interface of a multimedia device, a digitized audio sequence from a wireless network interface of a control device, the digitized audio sequence associated with a display command for controlling a display device, wherein the display command includes a uniform resource indicator (URI) which is received from a web application operated by the control device and the URI was converted into the digitized audio sequence by the control device, wherein receiving the URI comprises:
receiving the digitized audio sequence played by a speaker of the control device, wherein the speaker is caused, by the control device, to play a sound represented by the digitized audio sequence;
converting, by the multimedia device, the digitized audio sequence into an audio signature that corresponds to the digitized audio sequence;
performing, by the multimedia device, a search of a storage module on the multimedia device using the audio signature;
in response to the search failing to locate the audio signature in the storage module:
sending, by the multimedia device, the audio signature to a platform server; and
receiving the display command from the platform server;
retrieving the display command from the storage module in response to the search locating the audio signature in the storage module;
receiving, by the wireless network interface of the multimedia device, content information based on the URI included in the display command, wherein the content information indicates media content; and
causing, by the multimedia device, the display device to display the media content based on the display command.

US Pat. No. 9,805,033

POPULATION OF CUSTOMIZED CHANNELS

ROKU, INC., Los Gatos, C...

1. A system, comprising:
a client device including a processor implemented in hardware, the client device configured to detect a channel request through
an input device distinct from the client device and communicatively coupled to the client device, wherein the channel request
includes identification of a channel associated with video content of a third party content provider, wherein the third party
content provider is one of a plurality of distinct third party content providers that provide video content via the channel
accessible by the client device; and

a platform server communicatively coupled to the client device, comprising:
an authentication module configured to detect a login or authentication action, wherein the login or authentication action
is associated with at least the client device and a user account, and wherein the user account includes an account profile
that stores user settings and paid content subscription information for the user account; and

a match module configured to:
match the channel request and the account profile with an existing customized channel;
generate a new customized channel associated with the account profile when a match is not found; and
modify the customized channel according to at least the account profile to make at least the user settings and the paid content
subscription information of the account profile available within the customized channel,

wherein the user settings and the paid content subscription information of the account profile are used to modify a presentation
of the video content of the third party content provider within the customized channel and to prioritize the video content
of the third party content provider within the customized channel.

US Pat. No. 9,794,883

WIRELESS STREAMING SYSTEM WITH LOW POWER MODE AND ASSOCIATED REMOTE CONTROL

Roku, Inc., Los Gatos, C...

1. A wireless streaming system, comprising:
a wireless network interface configured to receive streaming content from a wireless router; and
a wireless interface chip connected to the wireless network interface, wherein the wireless interface chip is configured to:
enter a sleep mode by invoking a wireless interface chip off state;
periodically invoke a wireless interface chip on state;
receive a wake packet during the wireless interface chip on state; and
exit the sleep mode in response to receiving a wake packet during the wireless interface chip on state.

US Pat. No. 9,794,150

APPARATUS AND METHOD FOR CONTENT PLAYBACK UTILIZING CROWD SOURCED STATISTICS

ROKU, INC., Los Gatos, C...

1. A server, comprising:
a processor; and
a memory connected to the processor to store instructions executed by the processor to:
collect playback statistics from at least one of a plurality of devices, wherein the playback statistics comprise audio attributes
or video attributes of playback of specified content;

perform an evaluation of the playback statistics;
establish a playback configuration for the specified content based upon the evaluation of the playback statistics;
receive, from a first device of the plurality of devices, a request for the playback configuration for the specified content;
and

transfer the playback configuration for the specified content to the first device.

US Pat. No. 9,705,947

METHOD AND APPARATUS FOR CUSTOMIZED PROVISIONING OF ON-LINE APPLICATION CHANNELS

Roku, Inc., Los Gatos, C...

1. A method, comprising:
receiving a hardware identifier associated with a streaming player at a server, wherein the streaming player is configured
to receive on-demand services for display on a communicatively coupled video display;

determining streaming player attributes based at least in part on the hardware identifier, wherein the streaming player attributes
comprise a hardware or software configuration of the streaming player;

determining demographic data based at least in part on the hardware identifier, wherein the demographic data is associated
with a user of the streaming player;

receiving criteria from a provider of available content, wherein the criteria specifies streaming player attributes and demographic
data associated with providing the available content to the streaming player;

selecting content for the user of the streaming player from the available content based at least in part on the determined
streaming player attributes and the determined demographic data at least partially satisfying the criteria; and

providing information associated with the selected content to the streaming player.

US Pat. No. 9,643,868

METHOD FOR TREATING ANIMAL WASTE

EnviroKure, Inc., Philad...

1. A method for producing a liquid fertilizer from animal waste, the method comprising:
a) adjusting moisture content and pH of the animal waste to produce an animal waste slurry comprising between about 40 wt
% and about 95 wt % moisture and a pH between about 6 and about 7;

b) allowing components of the animal waste slurry to remain in contact for between about 30 minutes and about 5 hours;
c) reducing particle size of solids in the animal waste slurry;
d) separating the animal waste slurry into a substantially liquid component and a substantially solid component; and
e) subjecting the substantially liquid component to one or more processing steps comprising (1) aging the substantially liquid
component to facilitate breakdown of solids remaining in the substantially liquid component (2) removing part or all of solids
remaining in the substantially liquid component, and/or (3) reducing particle size of solids remaining in the substantially
liquid component, thereby producing the liquid fertilizer;

wherein steps a) through e) are conducted within a pH range of about 6 to about 7.

US Pat. No. 9,667,630

AUTHENTICATING A BROWSER-LESS DATA STREAMING DEVICE TO A NETWORK WITH AN EXTERNAL BROWSER

ROKU, INC., Saratoga, CA...

1. A method comprising:
receiving, from a computing device, a plurality of packets comprising authentication information for gaining access to a local
network;

determining that a header of the plurality of packets includes a media access control (MAC) address of the computing device;
replacing the MAC address of the computing device with a MAC address of a data streaming device in the header;
providing the authentication information comprising the MAC address of the data streaming device to a server; and
receiving, from the server, an authentication for the data streaming device to access the local network.

US Pat. No. 9,994,493

PROCESS FOR MANUFACTURING LIQUID AND SOLID ORGANIC FERTILIZER FROM ANIMAL MANURE

EnviroKure Incorporated, ...

11. A liquid fertilizer composition for application to plants and soils, comprising an autothermal thermophilic aerobic bioreaction product from a liquid fraction of poultry manure, wherein the liquid fraction is maintained at a pH between about 5.5 and about 7.

US Pat. No. 9,996,311

EFFICIENT COMMUNICATION INTERFACE FOR CASTING INTERACTIVELY CONTROLLED VISUAL CONTENT

ROKU, INC., Los Gatos, C...

1. A method, comprising:sending, by a computing device, visual content displayed on a first display screen of the computing device to a multimedia device for displaying on a second display screen;
receiving, by the computing device, an instruction that visually manipulates how the visual content is displayed on the first display screen;
generating, by the computing device, a command representative of the instruction, wherein the command specifies a positional relationship between the center of the first display screen and the visual content displayed on the first display screen, wherein the positional relationship includes at least one of a horizontal translation and a vertical translation of the panned visual content, wherein the horizontal translation is a normalized horizontal distance between the center of the first display screen and a vertical edge of the panned visual content on the first display screen, and wherein the vertical translation is a normalized vertical distance between the center of the first display screen and a horizontal edge of the panned visual content on the first display screen; and
sending, by the computing device, the command to the multimedia device that causes the second display screen to display the visual content according to the positional relationship.

US Pat. No. 9,967,634

CROWD SOURCED DYNAMIC GENERATION OF TRICK MODE DATA

ROKU, INC., Los Gatos, C...

1. A computer-implemented method, comprising:transmitting at least a portion of media content to a first media device configured to identify a plurality of key frames within the at least a portion of the media content;
receiving the plurality of key frames from the first media device;
generating trick mode data for the media content based on at least the received plurality of key frames, wherein the generated trick mode data includes at least one image frame that corresponds to at least one key frame from the media content; and
transmitting the at least a portion of the media content and at least a portion of the generated trick mode data to a second media device configured to perform trick mode operations on the at least a portion of the media content using the generated trick mode data.

US Pat. No. 9,688,584

PROCESS FOR MANUFACTURING LIQUID AND SOLID ORGANIC FERTILIZER FROM ANIMAL WASTE

EnviroKure, Incorporated,...

1. A process for manufacturing an organic fertilizer product from animal waste, the process comprising:
a. adjusting moisture content of the animal waste to at least about 75 wt % to produce an animal waste composition;
b. adjusting the pH of the animal waste composition to between about 6 and about 7 to produce a stabilized animal waste composition;
c. aerating the stabilized animal waste composition;
d. separating a solid component and a liquid component of the stabilized animal waste composition; and
e. subjecting the separated liquid component and, optionally, the separated solid component to at least one further processing
step to produce at least one organic fertilizer;

wherein the stabilized animal waste composition, and/or the separated liquid component is subjected to an autothermal thermophilic
aerobic bioreaction that comprises maintaining the stabilized animal waste composition and/or the separated liquid component
under aerobic condition and at a temperature suitable for the growth of thermophilic bacteria for a period of time; and

wherein the animal waste composition and the separated liquid component of the stabilized animal waste composition are maintained
at a pH of between about 6 and about 7 throughout the process.

US Pat. No. 9,693,003

APPARATUS AND METHOD FOR TIMER-BASED CONTROL OF AUDIOVISUAL OUTPUT DEVICES

Roku, Inc., Los Gatos, C...

1. A method for effecting gradual timer-based deactivation of a controllable audiovisual output device, comprising:
detecting at a controller device a connectivity and a capability of the controllable audiovisual output device;
detecting at the controller device a characteristic of a source material for the controllable audiovisual output device;
initiating a timer at the controller device based at least in part on the detected characteristic;
calculating at the controller device a period of time for deactivation based at least in part on the characteristic of the
source material and a current time of the timer, wherein the period of time for deactivation is greater than one second; and

in response to the calculating, transmitting a command based at least in part on the connectivity and the capability of the
controllable audiovisual output device to the controllable audiovisual output device to decrease a sound volume and decrease
a display brightness generated by the controllable audiovisual output device over the period of time for deactivation.

US Pat. No. 10,032,192

AUTOMATIC LOCALIZATION OF ADVERTISEMENTS

ROKU, INC., Los Gatos, C...

1. A method in an upstream source comprising:automatically identifying, by a pattern recognition component, a type of pattern in a video program, the type of pattern comprising an object or a blank space in the video program;
in response to identifying the type of pattern, generating a tag for identifying a location of the identified object or blank space in one or more images of the video program, the identified object or blank space being movable from one image to a next image in the video program;
receiving, by a transmission engine of the upstream source, a transmission signal comprising the video program, including the tag
identifying, by an identification engine of the upstream source, a non-local advertisement in a portion of the video program for modification by comparing the tag in the transmission signal with stored attributes, of one or more advertisers, associated with the identified object or blank space;
determining, by a retrieval engine of the upstream source, that localized advertisement data corresponds to the non-local advertisement identified in the portion of the video program;
in response to the determining that the localized advertisement data corresponds to the non-local advertisement identified in the portion of the video program, triggering retrieval of the localized advertisement data that corresponds to the non-local advertisement;
determining, using content recognition applied to an image of the non-local advertisement based on the tag, a location within the image of the non-local advertisement where the retrieved localized advertisement is to be inserted;
generating, using one or more processors of the upstream source, an altered transmission signal, the generating comprising:
graphically inserting the retrieved localized advertisement data into the image of the non-local advertisement at the determined location based on the tag, wherein the inserting is performed after a delay after the non-local advertisement bas begun, and
removing the graphically inserted localized advertisement data from the determined location within the image of the non-local advertisement; and
transmitting, by the transmission engine of the upstream source, the altered transmission signal that includes the localized advertisement data graphically inserted into the non-local advertisement to a user electronic device.

US Pat. No. 10,021,341

ORIENTATION ADJUSTMENT FOR CASTING VIDEOS

Roku, Inc., Los Gatos, C...

1. A method, comprising:applying an orientation adjustment to a test frame of a test video to produce an orientation adjusted test frame;
applying a transcoder to the orientation adjusted test frame to produce a transcoded frame;
comparing an orientation of the transcoded frame to an orientation of a reference frame;
determining that the orientation of the transcoded frame matches the orientation of the reference frame based on the comparing; and
in response to determining that the orientation of the transcoded frame matches the orientation of the reference frame, associating the orientation adjustment with the transcoder.

US Pat. No. 9,894,400

PROFILE DRIVEN COMMUNICATION POLLING FOR REMOTE CONTROL

ROKU, INC., Los Gatos, C...

1. A computer-implemented method, comprising:
collecting, by a multimedia device, usage data, wherein the usage data identifies when the multimedia device is in-use during
different times of day;

determining usage probability of the multimedia device based on the usage data, wherein the usage probability includes probability
values that correspond to the different times of day;

generating a polling schedule for a remote control device based on the usage probability, wherein the polling schedule includes
different polling periods associated with the different times of day, each of the different polling periods indicate a time
period between polls for the remote control device, and the different polling periods are inversely correlated to the probability
values of the determined usage probability; and

transmitting, by the multimedia device, the polling schedule to the remote control device, whereby the polling schedule causes
the remote control device to conserve battery life of the remote control device by polling the multimedia device according
to the different polling periods included in the polling schedule.

US Pat. No. 9,764,771

COWL TOP GARNISH

MORIROKU TECHNOLOGY COMPA...

1. A cowl top garnish disposed behind a hood provided at a front part of a vehicle body, the cowl top garnish extending in
a width direction of a vehicle across an entire width of the vehicle, the cowl top garnish being configured to cover a front
lower end of a windshield panel,
the cowl top garnish comprising a protruding portion that protrudes upward, with a top thereof being situated at an upper
position when the vehicle body is viewed in a lateral cross-section,

the protruding portion including a front segment that is disposed in the width direction of the vehicle and extends from the
top in a lower forward direction, and a rear segment that extends from the top in a lower backward direction, the protruding
portion possessing flexibility that allows the front segment and the rear segment to spread when a load acts on the protruding
portion from above the top,

one of the front segment and the rear segment integrally having a projecting portion that projects toward the other of the
front segment and the rear segment, and

the other of the front segment and the rear segment integrally having a load receiving portion onto which the projecting portion
abuts and receives a load acting in a generally front-rear direction.

US Pat. No. 9,574,493

ELECTRICITY-GENERATING SYSTEM

Ichiroku Hayashi, Nagano...

1. An electricity-generating system comprising:
a carbonization apparatus for carbonizing a wooden source as a carbonization source to form coal as a carbonized product and
an exhaust gas;

a heat recovery steam generator for producing first steam through heat exchange between water and the exhaust gas from the
carbonization apparatus;

a carbonized fuel steam generator employing a carbonized product as a fuel, which employs, as a raw material, the coal in
part;

a mixing header for mixing the first steam and second steam produced by the carbonized fuel steam generator, which steams
are fed thereinto, to thereby discharge a steam mixture having a uniform pressure; and

an electricity-generating apparatus for generating electricity by means of the steam mixture discharged from the mixing header
as an actuating source.

US Pat. No. 9,936,263

CONTROLLING DISPLAY OF MEDIA CONTENT

Roku, Inc., Los Gatos, C...

1. A system comprising:at least one processor; and
a memory operatively coupled to the at least one processor, the processor configured to:
receive a selection of media content for playback;
present interstitial media content on a first device prior to playing the media content;
transmit an option to skip the interstitial media content to a second device, wherein the option to skip is associated with a first bid value inputted by a user;
receive a request to skip the interstitial media content from the second device, wherein the request to skip is based at least in part on the first bid value and a priority value associated with a type of the interstitial media content;
stop presentation of the interstitial media content on the first device based at least in part on the request to skip; and
present the selected media content on the first device.

US Pat. No. 10,122,781

SELECTION OF VIDEO SEGMENTS FOR ADAPTIVE STREAMING

Roku Inc., Los Gatos, CA...

1. An apparatus comprising:at least one processor; and
a memory operatively coupled to the at least one processor, the at least one processor configured to:
receive two or more variant segments, wherein the two or more variant segments include a first variant segment having a first bitrate and a second variant segment having a second bitrate for decoding and playback,
generate a first packetized elementary stream (PES) collection based on the first variant segment and a second PES collection based on the second variant segment,
determine a first in-tolerance splicing location between the first PES collection and the second PES collection based on at least a determination of whether a presentation timestamp (PTS) associated with the first PES collection is within a tolerance offset of a PTS associated with the second PES collection, and
splice the first PES collection and the second PES collection based on the first in-tolerance splicing location.

US Pat. No. 10,003,834

ENHANCED TRICK MODE TO ENABLE PRESENTATION OF INFORMATION RELATED TO CONTENT BEING STREAMED

Roku, Inc., Los Gatos, C...

1. An apparatus for displaying information associated with content for playback, while streaming and displaying the content on a display device, comprising:a memory comprising at least one database, the database comprising metadata relating to the content, the metadata comprising a trick mode index corresponding to trick mode images and entries of information associated with segments of the content, wherein:
the trick mode index comprises a plurality of pointers each referencing a corresponding segment of the content, and
each corresponding segment of the content corresponds to at least a corresponding entry of the trick mode index, a corresponding trick mode image of the trick mode images, and at least a corresponding entry of the information associated with its respective segment of content; and
at least one processor, communicatively coupled to the memory and configured to:
stream the content for playback and display on the display device;
receive a user request for a trick mode operation, wherein the user request is received while a point in the content is being presented at normal speed on the display device, during playback, wherein the point is encompassed within a displayed segment of the content;
implement the trick mode operation;
during implementation of the trick mode operation, receive command input requesting information associated with the displayed segment of the content encompassing the point;
retrieve, from the database, the corresponding entry of information associated with the displayed segment of the content encompassing the point, wherein the displayed segment is identified by accessing at least one pointer of the plurality of pointers in the trick mode index, and the information is retrieved from at least one entry of the corresponding information associated with the displayed segment via the trick mode index corresponding to the at least one pointer that points to the displayed segment; and
display the retrieved information on the display device.

US Pat. No. 10,114,661

SYSTEM AND METHOD FOR FAST STARTING AN APPLICATION

ROKU, INC., Los Gatos, C...

1. A method for fast starting an application in an operating system, the method comprising:starting a plurality of channel applications during a boot up sequence of the operating system;
placing a first channel application of the plurality of channel applications into a suspend mode after an initial time has passed, wherein the initial time allows the plurality of channel applications to finish the boot up sequence and load resources;
adding the first channel application to a suspended list of channel applications that have booted up, wherein a second channel application of the plurality of channel applications is not on the suspended list;
receiving an application programming interface (API) call from the first channel application on the suspended list;
preventing, by a processor, the API call from being executed based upon a determination that the first channel application from which the API call is received is on the suspended list, such that processing resources associated with an execution of the API call are made available for processing functions other than executing the API call from the first channel application on the suspended list based upon the prevention of the execution;
incrementing a block count indicating a number of times that the API call to the processor is determined to be received from the first channel application while on the suspended list;
terminating the first channel application based on the block count exceeding a certain level, wherein the terminating includes removing the first channel application from the suspended list;
receiving a search term;
identifying a group of channels based on the search term;
determining that a particular channel from the group of channels is associated with the second channel application that is not on the suspended list; and
starting the second channel application associated with the particular channel in a background mode prior to receiving a selection of the particular channel from a user.

US Pat. No. 10,057,654

SELECTION AND ALIGNMENT OF VIDEO SEGMENTS FOR ADAPTIVE STREAMING

Roku, Inc., Los Gatos, C...

1. An apparatus comprising:at least one processor; and
a memory operatively coupled to the at least one processor, the processor configured to:
receive one or more variant segments, the one or more variant segments including a first variant segment having a first bitrate and a second variant segment having a second bitrate for decoding and playback,
generate a first packetized elementary stream (PES) collection based on the first variant segment and a second PES collection based on the second variant segment,
store the first PES collection and the second PES collection in a processing buffer, and
determine a first out-of-tolerance splicing location and associated first out-of-tolerance offset between the first PES collection and the second PES collection based on at least a determination that a substantial match between a presentation timestamp (PTS) associated with the first PES collection and a PTS associated with the second PES collection within a tolerance offset cannot be identified.

US Pat. No. 10,343,953

PROCESS FOR MANUFACTURING LIQUID AND SOLID ORGANIC FERTILIZER FROM ANIMAL MANURE

EnviroKure, Incorporated,...

11. A liquid fertilizer composition for application to plants and soils, comprising an autothermal thermophilic aerobic bioreaction product from a liquid fraction of poultry manure, wherein the liquid fraction is maintained at a pH of about 5.5 or higher.

US Pat. No. 10,210,863

RECEPTION OF AUDIO COMMANDS

Roku, Inc., Los Gatos, C...

1. A method of controlling a media device and a display device using audio commands, comprising:detecting, at an audio responsive control device, a trigger word in audio from a source of audio commands;
determining, at the audio responsive control device, that a user is the source of audio commands based on the trigger word being associated with the audio responsive control device;
determining, at the audio responsive control device, a position of the display device;
de-enhancing, at the audio responsive control device, audio output by a speaker of the display device based on the position of the display device and the determination that the user is the source of audio commands;
determining, at the audio responsive control device, a position of the source of audio commands;
enhancing, at the audio responsive control device, the audio from the source of audio commands based on the determined position of the source of audio commands and the determination that the user is the source of audio commands;
identifying, at the audio responsive control device, a command in the enhanced audio from the source of audio commands; and
causing, at the audio responsive control device, at least one of the media device and the display device to operate according to the command.

US Pat. No. 10,127,371

USER IDENTIFICATION BASED ON THE MOTION OF A DEVICE

ROKU, INC., Los Gatos, C...

1. A computer implemented method, comprising:detecting a motion of a remote control;
determining that the motion is associated with a first user ID and a second user ID;
determining a timestamp associated with the motion;
comparing the timestamp of the motion to a first time period corresponding to usage of a user associated with the first user ID, and to a second time period corresponding to usage of a user associated with the second user ID, wherein the first time period at least partially differs from the second time period;
determining that the motion corresponds to the first user ID based on the timestamp being within the first time period;
requesting a confirmation that the determined first user ID corresponds to a user associated with the detected motion; and
providing access to a system based on at least the determined first user ID,
wherein at least the detecting, comparing, and providing are performed by one or more computer processors.

US Pat. No. 10,110,887

DISPLAY DIAGNOSTICS FOR ENHANCING PERFORMANCE OF DISPLAY DEVICES

ROKU, INC., Los Gatos, C...

8. A computer implemented method performed by a media device, the method comprising:receiving a user selection related to a display setting, wherein the display setting is associated with a resolution of a display device;
determining whether the user selection includes a high-dynamic range (HDR) selection or a non-HDR selection;
responsive to the user selection including the HDR selection:
performing a resolution capability test and an HDR capability test;
collecting, from the display device, first results in response to performing the resolution capability test and the HDR capability test;
after collecting the first results, receiving second results in response to performing a content protection capability test of the display device; and
generating updated test information based on the collected first and second results;
determining, based on the updated test information, a display setting recommendation, wherein the display setting recommendation comprises a second display setting associated with the display device; and
displaying the display setting recommendation on the display device.

US Pat. No. 10,334,326

ENHANCED PLAYBACK BAR

ROKU, INC., Los Gatos, C...

1. A media system, comprising:a display device comprising a graphical user interface (GUI) having a sticky playback bar, wherein the sticky playback bar includes a current playback time (CTI) and a plurality of scene change markers, wherein a stickiness of the playback bar is based on at least a speed of the CTI in the sticky playback bar, and a distance of the CTI to a closest scene change marker in the sticky playback bar, at a time a pause or stop command is received by a media device; and
the media device configured to:
receive an end command subsequent to a skip command that skips through a portion of content for display on the display device, wherein the end command stops an execution of the skip command;
determine a speed of the CTI corresponding to the skip command;
determine a threshold distance to a closest scene change marker of the plurality of scene change markers, wherein the threshold distance increases as the speed of the CTI corresponding to the skip command increases; and
determine whether a position within the portion of content corresponding to the end command is within the threshold distance,
wherein upon a determination that the position is within the threshold distance, playing the content from the closest scene change marker of the plurality of scene change markers, and
wherein upon a determination that the position is beyond the threshold distance, playing the content from the position.

US Pat. No. 10,237,686

TRACKING PROXIMITIES OF DEVICES AND/OR OBJECTS

Roku, Inc., Los Gatos, C...

1. A tracking device, comprising:at least one processor; and
a memory operatively coupled to the at least one processor, the at least one processor configured to:
determine whether a plurality of devices of a tethered segment are inside or outside a predefined area,
determine that a first device and a second device of the plurality of devices are inside the predefined area based at least on the determination of whether the plurality of devices are inside or outside the predefined area,
predict whether the first device will move outside the predefined area without the second device based at least on a determination that the first device has been moving for at least a minimum continuous movement period and a determination that the second device has not been moving for at least a minimum continuous non-movement period, wherein the determinations that the first device has been moving and the second device has not been moving indicate that the first device is predicted to move outside the predefined area without the second device, and
transmit at least one alert notification to at least one device based at least on the prediction that the first device will move outside the predefined area without the second device, wherein the at least one alert notification identifies the first device is predicted to move outside the predefined area.

US Pat. No. 10,229,058

PROVIDING ROLLING UPDATES OF DISTRIBUTED SYSTEMS WITH A SHARED CACHE

Roku, Inc., Los Gatos, C...

1. A system comprising:at least one processor; and
a memory operatively coupled to the at least one processor, the processor configured to:
receive, by a datastore access component, a platform update request to update data item information associated with a first version of a data item cached in a shared cache memory,
transmit, by the datastore access component, a cache update request to update the data item information of the first version of the data item cached in the shared cache memory, and
isolate, by a cache isolator component, the first version of the data item cached in the shared cache memory based on at least a collection of version specific identifiers and a version agnostic identifier associated with the data item.

US Pat. No. 10,231,008

SELF-ORGANIZING AUDIO SYNCHRONIZATION

ROKU, INC., Los Gatos, C...

1. A method for electing a session leader in a computer network of a plurality of separate devices in a computer network session for playback of audio and/or video from a source in a synchronized manner, wherein the session leader is one of the plurality of separate devices, wherein each of the plurality of separate devices in the computer network session are programmed to:join the computer network session;
announce the computer network session to the plurality of separate devices; and
detect that the session leader of the computer network session is not present;
based on detecting that the session leader is not present:
participate in an election to elect a new session leader among the plurality of separate devices present in the computer network session according to a predetermined leader election algorithm; and
take a role as the session leader based on the predetermined leader election algorithm;
transmit synchronization information to a first device of the plurality of separate devices at a first polling frequency; and
transmit the synchronization information to a second device of the plurality of separate devices at a second polling frequency, wherein the second polling frequency is different from the first polling frequency.

US Pat. No. 10,218,755

EXTENDED SELECTION AND ALIGNMENT OF VIDEO SEGMENTS FOR ADAPTIVE STREAMING

Roku, Inc., Los Gatos, C...

1. An apparatus comprising:at least one processor; and
a memory operatively coupled to the at least one processor, the processor configured to:
receive one or more variant segments for decoding and playback, the one or more variant segments including first and second variant segments having a first bitrate and a third variant segment having a second bitrate,
generate corresponding first, second, and third packetized elementary stream (PES) collections based on at least the first, second, and third variant segments,
store the generated first, second, and third PES collections in a processing buffer,
determine, based on at least a tolerance offset, a first out-of-tolerance splicing location and an associated first out-of-tolerance offset between the second PES collection and the third PES collection,
generate a corresponding fourth PES collection based on at least a received fourth variant segment having the second bitrate, and
determine, based on at least the tolerance offset, a second out-of-tolerance splicing location and an associated second out-of-tolerance offset between the second PES collection and the fourth PES collection.

US Pat. No. 10,219,030

MULTI-INTERFACE STREAMING MEDIA SYSTEM

Roku, Inc., Los Gatos, C...

1. A system, comprising:an audio/visual device; and
a media device for accessing streamed data and operatively coupled to the audio/visual device, wherein the media device is configured to
detect a type of audio/visual interface that is utilized by the media device via an audio/visual connector of the media device,
detect whether the media device is properly connected to an external power source via a power connector and a removable power cord, wherein the removable power cord is operatively coupled to the power connector, and
determine whether additional power is required to fully operate the media device based at least on the type of audio/visual interface that is utilized by the media device, wherein the type of audio/visual interface includes a first type of audio/visual interface capable of fully operating the media device without the additional power and a second type of audio/visual interface not capable of fully operating the media device without the additional power.

US Pat. No. 10,217,577

REMOTE CONTROL WITH CONFIGURABLE BUTTONS

Roku, Inc., Los Gatos, C...

1. An apparatus, comprising,at least one interchangeable panel having two or more fixed buttons in a predefined order, each fixed button having a receptacle interface on a first side, a unique user-perceivable label on a second side, and an RFID chip embedded therein, wherein the RFID chip is configured to correspond to the unique user-perceivable label of the fixed button;
a plurality of interchangeable buttons, each interchangeable button having a receptacle interface on a first side, a unique user-perceivable label on a second side, and an RFID chip embedded therein, the RFID chip configured to correspond to the unique user-perceivable label of the interchangeable button; and
a platform having a plurality of receptacles, each receptacle identically configured to receive the receptacle interface side of any of the interchangeable buttons and any of the two or more fixed buttons of the at least one interchangeable panel;
wherein the platform is configured to provide, for each receptacle having an interchangeable button or a fixed button inserted therein, an electrical signal based at least in part on the RFID chip embedded therein.

US Pat. No. 10,194,209

AUTOMATIC DISPLAY OF CLOSED CAPTIONING INFORMATION

ROKU, INC., Saratoga, CA...

1. A method, comprising:providing a program for display on a user device;
determining a plurality of closed captioning requests associated with the program, wherein the plurality of closed captioning requests were received from one or more other user devices to which the program was previously provided;
determining that the plurality of closed captioning requests exceed a first threshold, wherein the first threshold indicates a minimum number of user devices from which a closed captioning request was received;
determining a start time corresponding to the plurality of closed captioning requests;
determining an end time corresponding to the plurality of closed captioning requests; and
providing closed captioning corresponding to the program for display between the start time and the end time.

US Pat. No. 10,110,943

FLEXIBLE OUTPUT OF STREAMING MEDIA

ROKU, INC., Los Gatos, C...

1. A method, comprising:receiving, at a media server, media over a network;
streaming the received media to a display device that is configured to play the streamed media, wherein the streamed media includes a video component and an audio component;
determining that a command menu to adjust the video component and audio component is available via the display device;
receiving a command to begin streaming the video component to a mobile device;
responsive to the command, turning off the video component to the display device while the audio component of the display device remains on, and beginning the streaming of the video component and the audio component to the mobile device at a point in the video component corresponding to the turning off; and
determining that the command menu is accessible via the mobile device after the video component to the display device is turned off, wherein the command menu includes output settings that indicate to which one or more devices the video component and audio component can be streamed.

US Pat. No. 10,368,121

SYSTEM AND METHOD FOR COLLECTING DATA

ROKU, INC., Los Gatos, C...

1. A method for collecting viewing data comprising:running, on a client device in an open development environment, a third-party channel application located in a first sandboxed virtual operating environment on a first layer of an operating system of a user device, wherein the third-party channel application comprises channel metadata not available from outside the third-party channel application;
receiving an application interface (API) call, from the third-party channel application, for a graphic rendering module located in a second sandboxed virtual operating environment on a second layer of the operating system, wherein the graphic rendering module is a non-playback module, wherein the second layer is an application layer below the first layer, and wherein the second sandboxed virtual operating environment is configured to prevent direct access from the third-party channel application located in the first sandboxed virtual operating environment on the first layer of the operating system of the user device;
performing passive data collection on the client device, wherein the passive data collection comprises intercepting, between the third-party channel application and the graphic rendering module, the channel metadata sent from the third-party channel application to the graphic rendering module;
determining identifying information of a content based on the intercepted channel metadata;
generating an entertainment profile for a user by associating the identifying information with a user profile of the user device; and
storing the determined identifying information of the content; the entertainment profile for the user, and a relation of the determined identifying information of the content to the entertainment profile for the user.

US Pat. No. 10,349,131

TIMER-BASED CONTROL OF AUDIOVISUAL OUTPUT DEVICES

Roku, Inc., Los Gatos, C...

1. A method for effecting gradual timer-based deactivation of a controllable audiovisual output device, comprising:detecting at a controller device a connectivity and a capability of the controllable audiovisual output device;
initiating a timer at the controller device;
calculating at the controller device a period of time for deactivation based at least in part on a time segment of a source material and a current time of the timer, wherein the period of time for deactivation is greater than one second; and
in response to the calculating, transmitting a command based at least in part on the connectivity and the capability of the controllable audiovisual output device to the controllable audiovisual output device to decrease a sound volume or a display brightness generated by the controllable audiovisual output device over the period of time for deactivation.

US Pat. No. 10,261,999

SEARCHING MULTIMEDIA BASED ON TRIGGER EVENTS

ROKU, INC., Los Gatos, C...

1. A method for searching content, comprising:receiving at least one keyword from a client device;
performing, by a local processor, a first search for content on one or more content servers using the at least one keyword;
sending a first search result of the first search to a user device for display;
automatically storing, in a memory communicatively coupled to the local processor, the first search including the at least one keyword;
automatically performing, by the local processor, a subsequent search of the stored first search using at least the stored at least one keyword upon detection of a trigger event, wherein the trigger event comprises an access of a particular content channel by the user device, wherein at least one of the stored keywords is associated with the particular content channel; and
automatically sending a subsequent search result of the subsequent search to the user device for display, wherein the subsequent search results comprise content associated with the trigger event, wherein at least some of the content associated with the trigger event was created prior to occurrence of the trigger event.

US Pat. No. 10,369,741

METHOD FOR MANUFACTURING HOLLOW MOLDED ARTICLE AND APPARATUS FOR MOLDING HOLLOW MOLDED ARTICLE

MORIROKU TECHNOLOGY COMPA...

5. A method for manufacturing a hollow molded article, the method comprising:superimposing a first resin sheet having a through-hole and a second resin sheet;
disposing the first resin sheet and the second resin sheet between a first molding die and a second molding die to partially join the first resin sheet and the second resin sheet, each of the first molding die and the second molding die having (a) a pressing surface for partially holding the first resin sheet and the second resin sheet, (b) a molding surface for forming a concave section with respect to the pressing surface, and (c) a plurality of suction holes provided on the molding surface, the first molding die further having a convex section which partially projects in comparison with the pressing surface of the first molding die, the convex section having (a) a top surface, (b) a first side surface and (c) a second side surface, the first side surface and the second side surface being arranged separated from each other in a first direction and both extending in at least a second direction that intersects with the first direction, the top surface being arranged extending in the first direction between the first side surface and the second side surface; and
performing vacuum-molding of the first resin sheet and the second resin sheet by the first molding die and the second molding die, and supplying gas to a space formed between the first resin sheet and the second resin sheet via the through-hole of the first resin sheet, wherein
partially joining the first resin sheet and the second resin sheet comprises pushing the first resin sheet and the second resin sheet to the concave section of the second molding die by the convex section, a seal section having (i) a first portion extending along the top surface of the convex section, (ii) a second portion extending along the first side surface of the convex section and (iii) a third portion extending along the second side surface of the convex section.

US Pat. No. 9,473,940

AUTHENTICATING A BROWSER-LESS DATA STREAMING DEVICE TO A NETWORK WITH AN EXTERNAL BROWSER

ROKU, INC., Saratoga, CA...

1. A data streaming device, comprising:
one or more memories; and
one or more processors communicatively coupled to the one or more memories and configured to:
establish a connection with a computing device that includes a data input and transmission interface;
query, by the data streaming device, a default resource on a network prior to using a browser on the computing device for
authentication;

receive a response from the default resource responsive to the query;
compare the received response to a previously stored response, wherein a match between the received response and the stored
response indicates connectivity between the data streaming device and the network, and a mismatch indicates that authentication
is required for connectivity between the data streaming device and the network;

provide, using the browser of the computing device, authentication information required to authenticate the data streaming
device and enable the data streaming device to obtain access to the network responsive to determination of the mismatch, wherein
successful authentication enables the data streaming device to stream content over the network.