Methods and devices for dynamic adaptation of encoding bitrate for video streaming
AssigneeGoogle Inc.
InventorsGuangshuo Liu, Hilary Roache, Yifeng Huang, Siddarth Raghunathan
Life of this patent
Estimating the term…
Abstract
The various embodiments described herein include a method performed at a camera device. The method includes: encoding a first stream of images from the camera device with a first bitrate; transmitting the encoded first stream of images to a server system; determining, at the camera device, one or more transmission metrics for the transmitted first stream of images; based on the one or more transmission metrics, encoding a second stream of images from the camera device with a second bitrate distinct from the first bitrate; and transmitting the encoded second stream of images to the server system.
Claims20
A method, comprising:
- at a camera device having an image sensor, one or more processors, and memory storing one or more programs for execution by the one or more processors:
- encoding a first portion of a captured stream of images from the camera device with a first bitrate;
- transmitting the encoded first portion of the captured stream of images to a server system;
- determining, at the camera device, one or more transmission metrics for the transmitted first portion of the captured stream of images, the one or more transmission metrics including a buffer latency calculated at a video buffer of the camera device for the encoded first portion of the captured stream of images;
- based on the one or more transmission metrics, switching the first bitrate to a second bitrate distinct from the first bitrate and encoding a second portion of the captured stream of images from the camera device with the second bitrate;
- and
- transmitting the encoded second portion of the captured stream of images to the server system.
A camera device, comprising:
- an image sensor;
- and
- one or more controllers coupled to the image sensor, the one or more controllers configured to:
- encode a first portion of the captured stream of images from the camera device with a first bitrate;
- transmit the encoded first portion of the captured stream of images to a server system;
- determine, at the camera device, one or more transmission metrics for the transmitted first portion of the captured stream of images, the one or more transmission metrics including a buffer latency calculated at a video buffer of the camera device for the encoded first portion of the captured stream of images;
- based on the one or more transmission metrics, switching the first bitrate to a second bitrate distinct from the first bitrate and encoding a second portion of the captured stream of images from the camera device with the second bitrate;
- and
- transmit the encoded second portion of the captured stream of images to the server system.
A non-transitory computer-readable storage medium storing one or more programs, the one or more programs comprising instructions, which, when executed by a camera device with one or more controllers, cause the camera device to perform operations comprising:
- encoding a first portion of the captured stream of images from the camera device with a first bitrate;
- transmitting the encoded first portion of the captured stream of images to a server system;
- determining, at the camera device, one or more transmission metrics for the transmitted first portion of the captured stream of images, the one or more transmission metrics including a buffer latency calculated at a video buffer of the camera device for the encoded first portion of the captured stream of images;
- based on the one or more transmission metrics, switching the first bitrate to a second bitrate distinct from the first bitrate and encoding a second portion of the captured stream of images from the camera device with the second bitrate;
- and
- transmitting the encoded second portion of the captured stream of images to the server system.
Dependencies are inferred from the claim text.