Patent classifications
H04L65/70
Devices and system for transmitting and receiving compressed bitstream via wireless stream and handling transmission error
The disclosure relates to a device for transmitting a data stream and a device for receiving a data stream. Disclosed is a device for transmitting a data stream including: an encoder configured to generate a compressed bitstream by encoding input media, generate additional information about the compressed bitstream, and generate a data stream (DS) including the additional information and the compressed bitstream, wherein the additional information includes at least one class information indicating an importance of the compressed bitstream, and a DS transmitter configured to generate a packet by packing the data stream, transmit a plurality of packets including the generated packet to a reception device, and retransmit at least some of the plurality of packets due to transmission error, wherein the retransmitted packets are identified based on at least corresponding class information.
Generating a stitched data stream
Systems and methods provide for receiving a request for an alternate data stream of a plurality of individual data streams than an active data stream currently being displayed on a computing device, during display on the computing device of a stitched data steam comprising the plurality of individual data streams associated with a common audio timeline. The systems and methods further providing for determining a subset of the plurality of individual data streams of the stitched data stream associated with a time period of the active data stream in the common audio timeline, selecting the alternate data stream from the subset of the plurality of individual data streams, and providing the alternate data stream to the computing device, wherein the display of the active data stream on the computing device transitions to the alternate data stream on the computing device in the common audio timeline.
Generating a stitched data stream
Systems and methods provide for receiving a request for an alternate data stream of a plurality of individual data streams than an active data stream currently being displayed on a computing device, during display on the computing device of a stitched data steam comprising the plurality of individual data streams associated with a common audio timeline. The systems and methods further providing for determining a subset of the plurality of individual data streams of the stitched data stream associated with a time period of the active data stream in the common audio timeline, selecting the alternate data stream from the subset of the plurality of individual data streams, and providing the alternate data stream to the computing device, wherein the display of the active data stream on the computing device transitions to the alternate data stream on the computing device in the common audio timeline.
Sliced encoding and decoding for remote rendering
Disclosed herein are related to a device and a method of remotely rendering an image. In one approach, a device divides an image of an artificial reality space into a plurality of slices. In one approach, the device encodes a first slice of the plurality of slices. In one approach, the device encodes a portion of a second slice of the plurality of slices, while the device encodes a portion of the first slice. In one approach, the device transmits the encoded first slice of the plurality of slices to a head wearable display. In one approach, the device transmits the encoded second slice of the plurality of slices to the head wearable display, while the device transmits a portion of the encoded first slice to the head wearable display.
Sliced encoding and decoding for remote rendering
Disclosed herein are related to a device and a method of remotely rendering an image. In one approach, a device divides an image of an artificial reality space into a plurality of slices. In one approach, the device encodes a first slice of the plurality of slices. In one approach, the device encodes a portion of a second slice of the plurality of slices, while the device encodes a portion of the first slice. In one approach, the device transmits the encoded first slice of the plurality of slices to a head wearable display. In one approach, the device transmits the encoded second slice of the plurality of slices to the head wearable display, while the device transmits a portion of the encoded first slice to the head wearable display.
Segment quality-guided adaptive stream creation
Embodiments provide for improved stream generation. A target average bitrate (TAB) segment is generated by encoding a first segment, of a plurality of segments in a video, using a first maximum average bitrate (MAB) of a plurality of MABs specified in an encoding ladder. An intermediate average bitrate (IAB) segment is generated by encoding the first segment using a first intermediate bitrate, wherein the first intermediate bitrate is lower than the first MAB. Upon receiving a request for the first segment at the first MAB, the IAB segment is output based at least in part on determining that a first quality score of the IAB segment is within a predefined tolerance of a second quality score of the TAB segment.
Segment quality-guided adaptive stream creation
Embodiments provide for improved stream generation. A target average bitrate (TAB) segment is generated by encoding a first segment, of a plurality of segments in a video, using a first maximum average bitrate (MAB) of a plurality of MABs specified in an encoding ladder. An intermediate average bitrate (IAB) segment is generated by encoding the first segment using a first intermediate bitrate, wherein the first intermediate bitrate is lower than the first MAB. Upon receiving a request for the first segment at the first MAB, the IAB segment is output based at least in part on determining that a first quality score of the IAB segment is within a predefined tolerance of a second quality score of the TAB segment.
SERVER-BASED BROWSER SYSTEM
A server-based browser system provides a server-based browser and a client system browser. The client browser reports the position of a user click on its display screen, hotspot ID, or URL to the server-side browser which retrieves a Document Object Model (DOM) model and view tree for the client and finds the location on the Web page that the user clicked on using the coordinates or hotspot ID received from the client. If there is a script associated with the location, it is executed and the resulting page location is requested from the appropriate server. If there is a URL associated with the location, it is requested from the appropriate server. The response Web page HTML definition is parsed and a DOM tree model is created which is used to create a view tree model. The server-side browser retrieves a style sheet, layout algorithms, and device constraints for the client device and lays out the view model using them onto a virtual page and determines the visual content. Textual and positional information are highly compressed and formatted into a stream and sent to the client browser which decodes the stream and displays the page to the user using the textual and positional information.
PERSONALIZED CONTENT
A media switch enables a terminal to access content by receiving a content request from a terminal for a first piece of content to be distributed over a cable system, identifying.sup., a personal channel within resources available in the cable system to distribute the first piece of content to the terminal, transmitting access information to the terminal to enable the terminal to access the first piece of content through the personal channel, and interfacing with a cable headend to provide the first piece of content on the personal channel.
Just-in-Time Distributed Video Cache
A video optimizer receives a request to optimize a source file and stream the optimized file. The request may be accompanied by a key uniquely identifying the original source file to be optimized and an optimized version of the source file to stream to the client. The key uniquely identifies the source video file as it exists on an origin server to prevent transmission of modified source video and the optimized version of the source file by optimization parameters to ensure compatibility with the user device. The video optimizer queries a cache database in response to the received request, which contains references keys and locations of optimized source files among local caches in a cluster of video optimizers. The cache database responds indicates whether a matching optimized version of the source file exists in a local cache of a given video optimizer in the cluster.