Abstract:
Methods and systems for advertisement insertion into streaming media content are described. In one method, an advertisement insertion tool receives a first indication of a start time of where an advertisement is to be inserted into media content and a second indication comprising at least one of an end time of the advertisement or a duration of the advertisement. The advertisement insertion tool inspects a first original slice of the media content that contains the media content at the start time to locate a first preceding key frame at or prior to the start time and a last frame before the start time. The advertisement insertion tool creates a first new slice comprising the media content of the first original slice up to the start time. The first new slice comprises the first preceding key frame, the last frame and any intervening delta frames between the first preceding key frame and the last frame. The advertisement insertion tool inspects a second original slice of the media content that contains the media content at the end time to locate a second preceding key frame at or prior to the end time, a last frame corresponding to the media content at the end time, and a first frame after the end time. The advertisement insertion tool creates a subsequent key frame with the first frame and creates a second new slice comprising the subsequent key frame and the media content of the second original slice after the first frame until an end of the second original slice. The advertisement insertion tool stores the first new slice and second new slice at a content server for streaming the media content with the advertisement inserted to a media player executing on a client computing system.
Abstract:
Methods and systems for advertisement insertion into streaming media content are described. In one method, an advertisement insertion tool receives a first indication of a start time of an advertisement break to be inserted into a stream of slices of media content. The advertisement insertion tool identifies a first slice of the slices that encompasses the start time of the advertisement break. The first slice comprises video frames. The advertisement insertion tool truncates the first slice to contain the video frames up to the start time of the advertisement break. An advertisement can be inserted after the truncated first slice and before a next second slice in the stream.
Abstract:
Methods and systems for advertisement insertion into streaming media content are described. In one method, an advertisement insertion tool receives advertisement insertion input that identifies a start time in media content to insert an advertisement. In response to receiving the advertisement insertion input, the advertisement insertion tool inspects an original slice of the media content that contains the media content at the start time to locate a preceding key frame at or prior to the start time and a last frame before the start time. The advertisement insertion tool creates a first new slice comprising the media content of the original slice up to the start time. The first new slice comprises the preceding key frame, the last frame and any intervening delta frames between the preceding key frame and the last frame. The advertisement insertion tool creates a second new slice comprising the media content of the original slice at the start time, including creating a subsequent key frame of the media content at the start time. The advertisement insertion tool stores the first new slice and second new slice at a content server for streaming the media content with the advertisement inserted to a media player executing on a client computing system.
Abstract:
Methods and systems for adaptive streaming cost management are described. A processing device can request slices of media content for playback on a media player from a first media source using adaptive streaming. Delivery of the slices of media content to the media player can incur a first cost. The processing device can determine a performance of the adaptive streaming of the media content from the first media source. The processing device can request subsequent slices from a second media source over the network when the performance of the adaptive streaming meets or exceeds a performance threshold. Delivery of subsequent slices to the media player from the second media source can incur a second cost that is less than the first cost. The processing device can request the subsequent slices from the first media source when the performance of the adaptive streaming is not at or beyond the performance threshold.
Abstract:
Methods and systems for adaptive streaming cost management are described. A processing device can receive a request over a network from a media player executing on a client device to adaptively stream media content. The media content can include a plurality of media slices. The processing device can identify a geographical location of the client device from the request. The processing device can generate a media manifest file based on the geographical location of the client device. The media manifest file can indicate one or more media sources at which a copy of the plurality of media slices is geographically located and a cost associated with delivery of the plurality of media slices from the respective one of the one or more media sources. The processing device can transmit the media manifest file to the client device over the network.
Abstract:
A method and system for just-in-time (JIT) encoding of media content is described. The JIT encoder allows a server to create one or more slices of requested portions of the media content according to one of the available quality profiles when requested without previously creating and storing different copies of the media content at the different quality profiles.
Abstract:
Methods and systems for adaptive streaming cost management are described. A processing device can receive a request over a network from a media player executing on a client device to adaptively stream media content. The media content can include a plurality of media slices. The processing device can identify a geographical location of the client device from the request. The processing device can generate a media manifest file based on the geographical location of the client device. The media manifest file can indicate one or more media sources at which a copy of the plurality of media slices is geographically located and a cost associated with delivery of the plurality of media slices from the respective one of the one or more media sources. The processing device can transmit the media manifest file to the client device over the network.
Abstract:
Methods and systems for advertisement insertion into streaming media content are described. In one method, an advertisement insertion tool receives a first indication of a start time of an advertisement break to be inserted into a stream of slices of media content. The advertisement insertion tool identifies a first slice of the slices that encompasses the start time of the advertisement break. The first slice comprises video frames. The advertisement insertion tool truncates the first slice to contain the video frames up to the start time of the advertisement break. An advertisement can be inserted after the truncated first slice and before a next second slice in the stream.
Abstract:
Methods and systems for advertisement insertion into streaming media content are described. In one method, an advertisement insertion tool receives a first indication of a start time of where an advertisement is to be inserted into media content and a second indication comprising at least one of an end time of the advertisement or a duration of the advertisement. The advertisement insertion tool inspects a first original slice of the media content that contains the media content at the start time to locate a first key frame at or prior to the start time and creates a first new slice comprising the media content of the first original slice up to the start time. The advertisement insertion tool inspects a second original slice of the media content that contains the media content at the end time to locate a second key frame at or prior to the end time and creates a second new slice comprising the media content of the second original slice after the end time until an end of the second original slice.