摘要:
Disclosed are methods and apparatuses for seeking within audiovisual files. A seeking engine is implemented to efficiently locate target video frames without having to laboriously decode and index each and every video frame in an audiovisual file. Further, a seeking engine is capable of frame accurately determining the number of frames in a video file by identifying the last GOP header in the video file, and then identifying a last video frame in the file. The last video frame in the file is identified by reading each video frame's picture header (i.e., within the last GOP) and determining which picture header produces a larger temporal reference number. The video frame having the largest temporal number is therefore the last video frame in the video file. In addition, the seeking engine is capable of associating an identified video frame with a closest audio frame to complete an audio-to-video seek.
摘要:
Disclosed is a method for copying a segment from an audiovisual file having a multiplicity of audio frames and a multiplicity of video frames. In a first step, a mark-in location in a video file is selected to correspond to a first video frame in the segment such that the first video frame has an associated start time. Next, a mark-out location in the video file is selected to correspond to a last video frame in the segment, and the last video frame having an associated end time. Once the mark-in video frame is selected, a first audio frame having a first audio frame start time that is at least as early as the first video frame start time is designated as an initial audio frame. A second audio frame having a second audio frame start time that is at least as late as the last video frame end time is designated as the last audio frame. The audiovisual file is copied to include a video portion extending from the first video frame to the last video frame and an audio portion extending from the initial audio frame to the last audio frame. In this manner, the audio portion of the segment may preferably be longer than the video portion of the copied segment.
摘要:
Disclosed is a method for clipping a segment from a video file having a multiplicity of video frames. Preferably, at least some of the frames in the video file are encoded as predicted frames. The method includes selecting a mark-in location in the video file that defines the beginning of the clipped segment. A mark-out location defining the end of the clipped segment is also selected in the video file. Once the mark-in and mark-out locations are selected, the method decodes a first frame associated with one of the mark-in location and the mark-out location. The first frame is preferably a predictive frame that has an associated first format. The first frame is then re-encoded into a second format and stored. The method then proceeds to create a clipped segment that includes the re-encoded first frame.
摘要:
Disclosed is a stitcher implemented to join segments of video glue generated during a first pass of an editing engine. Preferably, the generated glue segments are implemented at the beginning and at the end of a clipped video segment. In the second processing pass, any glue segments generated in the first pass may be stitched to any un-processed portion of the clipped segment. Once any glue segments and unprocessed portions are stitched in a time ordered sequence, the stitched segment is output to a application.
摘要:
A method for copying a segment from a video file having a multiplicity of video frames, where at least some of the frames are encoded as predicted frames. The method includes the steps of selecting a mark-in location in the video file such that the mark-in location defines the beginning of the copied segment. Once the mark-in location is selected, each of the frames positioned between the mark-in location and a final group frame associated with a group of frames that includes the mark-in location are decoded. Each decoded frame will have an associated first format. The decoded frames are then re-encoded into an associated second format such that the re-encoded second format of at least one of the decoded frames is different than its associated first format. The re-encoded frames are then stored. The method then generates a copied segment that includes at least the re-encoded frames.
摘要:
Disclosed are methods and apparatuses for stitching a first and second audiovisual segment together. By way of example, each audiovisual segment has a multiplicity of audio frames including a first audio frame, a second audio frame that sequentially follows the first audio frame and a last audio frame. The audiovisual segment further includes a multiplicity of video frames having a first video frame and a last video frame. The method includes the step of aligning an initial audio frame in the first audiovisual segment with the first video frame in the first audiovisual segment. The first audio frame from the first audiovisual segment is designated as the initial audio frame when a tab error associated with the first audio frame from the first audiovisual segment is less than about half a frame. On the other hand, the second audio frame from the first audiovisual segment is designated as the initial audio frame when a tab error associated with the first audio frame from the first audiovisual segment is greater than half a frame. Stitching the first and second audiovisual segments together.
摘要:
Switching a client from unicasting back to multicasting involves simultaneously providing the digital video content to the client via unicasting and multicasting until the client has buffered duplicate frames (i.e., frames that contain the same digital video content). Once the client has buffered duplicate frames, the client can transition from playing out of a buffer that holds frames received via unicasting to playing out of a buffer that holds frames received via multicasting without skipping a frame. Once the transition back to multicasting is complete, unicasting is terminated and any frames remaining in the unicast buffer are flushed.
摘要:
Techniques are provided to perform seamless or non-seamless ad insertion using a low-complexity process. Delay is introduced into a transport stream to prevent decoder buffer overflow. Delay buildup in the transport stream is reduced by removing pre-identified redundant or near redundant frames. Pre-identification of frames for removal reduces the processing required at the splice points, while maintaining a minimum overall delay in the transport stream.
摘要:
Switching a client from unicasting back to multicasting involves accumulating enough digital video content at the client to bridge the time it takes to transition from receiving the digital video content via unicasting to receiving the digital video content via multicasting. Digital video content is accumulated at the client by temporarily increasing the stream rate of the unicast stream above the playout rate. While the digital video content is being streamed at the increased rate, the amount of digital video content stored in the client's stream buffer grows. The stream rate is held at the increased rate until the client accumulates enough frames in its buffer to be able to bridge the time it takes to transition from receiving the digital video content via unicasting to receiving the digital video content via multicasting.
摘要:
A technique for providing program restart functionality in a digital video network involves receiving requests from different end-user devices to restart a program and servicing the program restart requests from the different end-user devices via a single broadcast stream. In an embodiment, program restart requests that are received within an established time interval, referred to as an aggregation interval, are serviced by the same broadcast stream. Additionally, during the aggregation interval and before the program restart begins, personalized content can be provided to the end-user devices via, for example, unicasting. Once the aggregation interval is over, all of the unicast streams are switched over to the same broadcast stream and the program broadcast is restarted. In an embodiment, a switch buffer is provided just before the restarted broadcast stream in order to ensure a smooth transition from each of the multiple unicast streams to the restarted broadcast stream.