US2015113104A1PendingUtilityA1
Method and system for live streaming video with dynamic rate adaptation
Est. expiryMar 19, 2029(~2.7 yrs left)· nominal 20-yr term from priority
H04L 65/608H04L 65/607H04L 65/752H04N 21/64322H04N 21/6437H04N 21/44209H04N 21/8456H04L 65/65H04N 21/631H04L 65/765H04L 65/70H04N 21/6125H04L 67/02H04L 65/611H04N 21/6373
51
PatentIndex Score
0
Cited by
0
References
0
Claims
Abstract
A live streaming system/method provides cross platform live streaming capabilities to mobile devices. A file format compatible with legacy HTTP infrastructure is used to deliver media over a persistent connection. Legacy client media players can dynamically change the encoded rate of the media delivered over a persistent connection. Standard HTTP servers may be used without modification, leveraging standard media players embedded in mobile devices for seamless media delivery over wireless networks with high bandwidth fluctuations.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A live streaming system for distributing live streaming data to client devices, comprising:
a processor for executing a live stream recorder and segmenter, wherein the live stream recorder accepts a live media stream and a configuration file; a memory for storing output of the live stream recorder and segmenter; and instructions executable by the processor for:
recording the live streaming data;
dynamically transcoding the live streaming data into a plurality of encodings;
packing the plurality of encodings in a plurality of file formats each having formatted data;
writing the formatted data out in segments;
transferring the segments to a storage device accessible to a server; and
delivering the segments to the client devices sequentially for live media playback.
2 . A live streaming system according to claim 1 , wherein the live streaming data includes audio and/or video data.
3 . A live streaming system according to claim 1 , wherein the live stream data is transcoded into different formats for different types of client devices.
4 . A live streaming system according to claim 3 , further comprising transcoding each file format into different bit rates.
5 . A live streaming system according to claim 3 , further comprising adding custom frame headers to transcoded frames.
6 . A live streaming system according to claim 5 , wherein the custom frame headers include audio/video track information for each frame.
7 . A live streaming system according to claim 5 , wherein the custom frame headers include frame length information.
8 . A live streaming system according to claim 5 , wherein the custom frame headers include RTP packet headers.
9 . A live streaming system according to claim 1 , wherein each of the segments is of a predetermined fixed duration being an integral number of seconds.
10 . A live streaming system according to claim 1 , wherein at least some of the segments are of variable durations each being a respective integral numbers of seconds.
11 . A live streaming system according to claim 1 , wherein the segments are encrypted before being transferred to the storage device.
12 . A live streaming system according to claim 1 , wherein the storage device is local to the segmenter.
13 . A live streaming system according to claim 1 , wherein the storage device is remote from the segmenter.
14 . A live streaming system according to claim 1 , wherein the storage device is accessible to an HTTP server, and wherein the segments are delivered to the client devices using the HTTP protocol.
15 . A live streaming system according to claim 1 , wherein a multiplicity of metadata associated with the live streaming data is created and stored in a database and made available to the client devices, and wherein previously stored segments of video can be searched using the metadata stored in the database.
16 . A method for distributing live streaming data to client devices, comprising:
recording the live streaming data; dynamically transcoding the live streaming data into a plurality of encodings; packing the plurality of encodings in a plurality of file formats each having formatted data; writing the formatted data out in segments; transferring the segments to a storage device accessible to a server; and delivering the segments to the client devices sequentially for live media playback.
17 . A method according to claim 16 , wherein the live streaming data includes audio and/or video data.
18 . A method according to claim 16 , wherein the live stream data is transcoded into different formats for different types of client devices.
19 . A method according to claim 18 , further comprising transcoding each file format into different bit rates.
20 . A method according to claim 18 , further comprising adding custom frame headers to transcoded frames.
21 . A method according to claim 20 , wherein the custom frame headers include audio/video track information for each frame.
22 . A method according to claim 20 , wherein the custom frame headers include frame length information.
23 . A method according to claim 20 , wherein the custom frame headers include RTP packet headers.
24 . A method according to claim 16 , wherein each of the segments is of a predetermined fixed duration being an integral number of seconds.
25 . A method according to claim 16 , wherein at least some of the segments are of variable durations each being a respective integral numbers of seconds.
26 . A method according to claim 16 , wherein the segments are encrypted before being transferred to the storage device.
27 . A method according to claim 16 , wherein the storage device is local to a segmenter which performs the writing of the formatted data in segments.
28 . A method according to claim 16 , wherein the storage device is remote from a segmenter which performs the writing of the formatted data in segments.
29 . A method according to claim 16 , wherein the storage device is accessible to an HTTP server, and wherein the segments are delivered to the client devices using the HTTP protocol.
30 . A method according to claim 16 , wherein a multiplicity of metadata associated with the live streaming data is created and stored in a database and made available to the client devices, and wherein previously stored segments of video can be searched using the metadata stored in the database.
31 . An apparatus, comprising:
a processor for executing a live stream recorder and segmenter, wherein the recorder accepts a live media stream and a configuration file; a memory for storing output of the live stream recorder and segmenter; and instructions executable by the processor for: recording the live media stream; transcoding the recorded stream into a plurality of encodings as defined by the configuration file; storing the encoded data in segments; encrypting the plurality of resultant segments as defined by the configuration file; and storing the transcoded and encrypted segments in the memory.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.