Methods, systems, and apparatuses for improved transmission of content
A computing device (e.g., an encoder, a content packager, and/or content server) may receive content (e.g., a live or time-shifted content transmission, video-on-demand content transmission, video, audio, games, data, etc.). The computing device may separate the received content into a plurality of content segments. The computing device may insert metadata into each of the content segments. The metadata may include a segment identifier. The segment identifier may identify the next sequential content segment of the plurality of content segments.
1 . A method comprising:
receiving, by a computing device, content;
separating the content into a plurality of content segments;
inserting, into an event message box of at least one content segment of the plurality of content segments, metadata comprising a segment identifier identifying a next sequential content segment of the plurality of content segments and at least one indicator of available bitrates for the next sequential content segment of the plurality of content segments; and
sending, to a user device requesting the content, the at least one content segment of the plurality of content segments comprising the metadata comprising the segment identifier identifying the next sequential content segment of the plurality of content segments and the indicator of the available bitrates.
2 . The method of claim 1 , wherein the metadata further comprises a plurality of available bitrates for receiving the next sequential content segment of the plurality of content segments.
3 . The method of claim 1 , wherein the segment identifier comprises a segment number.
4 . The method of claim 1 , wherein inserting the metadata comprises:
generating, for the at least one content segment of the plurality of content segments, the event message box; and
inserting the metadata into the event message box.
5 . The method of claim 1 , wherein the content comprises a live stream of content.
6 . The method of claim 1 , further comprising:
receiving a request for the content;
determining, based on the request, a most recent segment of the content; and
generating, based on the most recent segment of the content, a response.
7 . The method of claim 6 , further comprising:
receiving a second request for the content;
determining, based on the second request, a requested segment of the content; and
sending, to the user device, the requested segment of the content.
8 . The method of claim 1 , wherein separating the content into the plurality of content segments comprises assigning a unique identifier to the at least one content segment of the plurality of content segments, wherein the segment identifier comprises the unique identifier.
9 . The method of claim 1 , wherein separating the content into the plurality of content segments comprises separating a live stream of content into the plurality of content segments, wherein the at least one content segment of the plurality of content segments comprises a portion of the content.
10 . A method comprising:
receiving, by a computing device, content;
separating the content into a plurality of content segments;
inserting, into at least one content segment of the plurality of content segments, metadata comprising a segment identifier identifying a next sequential content segment of the plurality of content segments and at least one bitrate for receiving the next sequential content segment of the plurality of content segments; and
sending, to a user device requesting the content, the at least one content segment of the plurality of content segments comprising the metadata comprising the segment identifier identifying the next sequential content segment and the at least one bitrate for receiving the next sequential content segment of the plurality of content segments.
11 . The method of claim 10 , wherein the segment identifier comprises a segment number for the next sequential content segment of the plurality of content segments.
12 . The method of claim 10 , wherein inserting the metadata comprises:
generating, for the at least one content segment of the plurality of content segments, an event message box; and
inserting the metadata into the event message box.
13 . The method of claim 10 , wherein the content comprises a live stream of content.
14 . The method of claim 10 , further comprising:
determining, based on receiving a request for the content, a most recent segment of the content.
15 . The method of claim 14 , wherein the request comprises a segment number for the most recent segment of the content.
16 . The method of claim 10 , wherein separating the content into the plurality of content segments comprises assigning a segment number to the at least one content segment of the plurality of content segments.
17 . A method comprising:
receiving, by a user device, a first segment of content;
causing the first segment of the content to be displayed;
determining, by the user device and in an event message box associated with the first segment of the content, a segment identifier identifying a next sequential content segment of the content and at least one indicator of available bitrates for the next sequential content segment in metadata of the first segment of the content; and
sending, based on the metadata, a request for the next sequential content segment of the content at one of the available bitrates.
18 . The method of claim 17 , wherein determining the segment identifier identifying the next sequential content segment of the content in the metadata further comprises determining an address for the next sequential content segment of the content within the metadata of the first segment of the content.
19 . The method of claim 17 , wherein causing the first segment of the content to be displayed comprises one or more of displaying the first segment of the content on a display associated with the user device or sending the first segment of the content to a display device for displaying the first segment of the content.
20 . The method of claim 17 , wherein the segment identifier comprises a segment number.