System and method for controlling video and/or audio streams in a web browser

US9986010B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9986010-B2
Application numberUS-201514869707-A
CountryUS
Kind codeB2
Filing dateSep 29, 2015
Priority dateSep 29, 2015
Publication dateMay 29, 2018
Grant dateMay 29, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A system and method for controlling video and/or audio streams between a client and server over a communications channel is disclosed that utilizes an application layer streaming communications protocol that includes features of current pull and push style application layer streaming protocols. Using the streaming protocol, client applications on user devices such as web browsers send request messages for streams, where the request messages specify a variable number of data packets of the streams for the server to send. Each of the data packets include one or more frames, or frame data, of the streams. The streaming server then “pushes” the requested number of data packets of the streams, and the client application can adjust the number of data packets for the server to send in subsequent stream request messages to optimize the bandwidth of the communications channel.

First claim

Opening claim text (preview).

What is claimed is: 1. A video streaming system, comprising: a streaming server that transmits a bundle of data packets of one or more video and/or audio streams over a communications channel in response to stream request messages for each of the streams; and a client application that sends the stream request messages, wherein each of the stream request messages includes a bundle size of the bundle of data packets of each stream for the streaming server to transmit. 2. The system of claim 1 , wherein the client application optionally adjusts the bundle size in the stream request messages in response to determining an available bandwidth of the communications channel. 3. The system of claim 1 , wherein the client application determines an available bandwidth of the communications channel by determining a response time for the client application to receive the bundle of data packets of a stream transmitted by the streaming server. 4. The system of claim 1 , wherein the streaming server is a network video recorder. 5. The system of claim 1 , wherein the client application executes in a web browser of a user device. 6. The system of claim 1 , wherein the communications channel utilizes Real-time Transport (RTP) to reduce fragmentation of the stream request messages sent by the client application and the data packets of the streams transmitted by the streaming server. 7. The system of claim 1 , wherein the streaming server transmits the bundle of data packets of the one or more video and/or audio streams over the communications channel via a push mechanism. 8. The system of claim 1 , wherein the client application sends a message for the streaming server to adjust a transcode resolution of frame data of the data packets of a subsequent bundle, in response to the client application determining an available bandwidth of the communications channel and determining a transcode resolution of frame data of the data packets of a received bundle. 9. The system of claim 1 , wherein the client application sends a message for the streaming server to adjust a transcode resolution of frame data of the data packets of a subsequent bundle, in response to the client application determining an available bandwidth of the communications channel and in response to user viewing preferences. 10. The system of claim 1 , wherein the streaming server culls frame data from the data packets of the transmitted bundle to optimize bandwidth of the communications channel. 11. A video streaming method, comprising: transmitting a bundle of data packets of one or more video and/or audio streams over a communications channel in response to stream request messages for each of the streams; and based on receipt of the bundle of data packets at a client application, updating a size of the bundle specified in subsequent stream request messages. 12. The method of claim 11 , wherein each of the stream request messages includes the bundle size of the bundle of data packets of each stream for a streaming server to transmit. 13. The method of claim 11 , further comprising adjusting the bundle size in the stream request messages in response to determining an available bandwidth of the communications channel. 14. The method of claim 11 , further comprising determining an available bandwidth of the communications channel by determining a response time to receive the bundle of data packets. 15. The method of claim 11 , wherein the data packets are sent by a network video recorder. 16. The method of claim 11 , wherein the stream request messages are sent by the client application executing in a web browser of a user device. 17. The method of claim 11 , wherein the communications channel utilizes Real-time Transport (RTP) to reduce fragmentation of the stream request messages sent by a client application and/or the data packets of the streams transmitted by a streaming server. 18. The method of claim 11 , further comprising sending a message to adjust a transcode resolution of frame data of the data packets of a subsequent bundle, in response to determining an available bandwidth of the communications channel and determining a transcode resolution of frame data of the data packets of a received bundle. 19. The method of claim 11 , further comprising sending a message to adjust a transcode resolution of frame data of the data packets of a subsequent bundle, in response to user viewing preferences and in response to determining an available bandwidth of the communications channel. 20. The method of claim 11 , further comprising culling frame data from the data packets of the transmitted bundle to optimize bandwidth of the communications channel.

Assignees

Inventors

Classifications

  • H04L65/608Primary

    Electricity · mapped topic

  • H04L65/80Primary

    Responding to QoS · CPC title

  • Electricity · mapped topic

  • H04L65/65Primary

    Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP] · CPC title

  • at the source  (reformatting of additional data in video distribution servers H04N21/2355) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9986010B2 cover?
A system and method for controlling video and/or audio streams between a client and server over a communications channel is disclosed that utilizes an application layer streaming communications protocol that includes features of current pull and push style application layer streaming protocols. Using the streaming protocol, client applications on user devices such as web browsers send request m…
Who is the assignee on this patent?
Sensormatic Electronics Llc
What technology area does this patent fall under?
Primary CPC classification H04L65/608. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue May 29 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).