HYBRID PROGRAM CHANGE FOR IP-ENABLED MULTIMEDIA DEVICES
Methods, systems, and apparatuses can be operable to facilitate program change operations on a multimedia device that can access both QAM video delivery and IP video delivery. A multimedia device can request content from multiple sources, choosing the first available source for a requesting media player. The multimedia device can shift from an IP unicast source to a QAM broadcast source seamlessly when both are available.
1 . A method comprising:
receiving a request for multimedia content;
requesting one or more fragments associated with the multimedia content initiating a process to receive the multimedia content through a QAM transmission; and
providing the multimedia content using the one or more fragments at least until the process to receive the multimedia content through the QAM transmission is complete.
2 . The method of claim 1 further comprising:
formatting the multimedia content of the one or more fragments to comply with a continuous streaming format.
3 . The method of claim 1 wherein:
the multimedia content is provided over an internet protocol connection from a multimedia content server.
4 . The method of claim 1 , further comprising:
completing the process of receiving the multimedia content through the QAM transmission;
determining a seamless cutover point between the content as received through the QAM transmission and the content as provided through the one or more fragments; and
switching the program stream source from the one or more fragments to the QAM transmission based at least in part on the seamless cutover determination.
5 . The method of claim 4 wherein determining a seamless cutover point comprises:
determining a ending timestamp for the current group of pictures playing from fragmented content;
determining starting timestamps for each group of pictures received from the QAM transmission; and,
selecting a seamless cutover point when said ending timestamp is within a set time limit of a starting timestamp.
6 . An apparatus, comprising:
one or more tuners configured to receive continuous streaming content from one or more QAM channels;
one or more interfaces configured to communicate with at least one multimedia server and to receive fragmented multimedia content;
a processor configured to:
control the one or more tuners,
request one or more fragments associated with the multimedia content, and
reformat fragments associated with the multimedia content into a continuous streaming format;
one or more interfaces configured to be used to:
receive a user request for multimedia content, and
output the requested multimedia content to a media player, wherein the content is taken from the one or more fragments; and
storage configured to buffer multimedia content from the one or more tuners at least until a seamless cutover is made from the fragmented content to the continuous streaming content.
7 . The method of claim 6 wherein the processor is further configured to:
request the one or more fragments from a multimedia content server over an internet protocol connection.
8 . The method of claim 6 , the processor further configured to:
determine a seamless cutover point between the content as received through the QAM transmission and the content as provided through the one or more fragments; and
switch the program stream source from the one or more fragments to the QAM transmission based at least in part on the seamless cutover determination.
9 . The method of claim 8 wherein the processor determining a seamless cutover point comprises:
determining a ending timestamp for the current group of pictures playing from fragmented content;
determining starting timestamps for each group of pictures received from the QAM transmission; and,
selecting a seamless cutover point when said ending timestamp is within a set time limit of a starting timestamp.
10 . One or more computer readable media having instructions operable to cause one or more processors to perform the operations comprising:
receiving a request to provide multimedia content comprising a first program;
identifying a first tuner that can access said first program;
directing said first tuner to access said first program;
identifying a video server that can provide at least a portion of said first program over an IP interface;
requesting from said video server at least a portion of said first program; and
outputting the said first program as requested from whichever source can first supply the content.
11 . The one or more computer-readable media of claim 10 , having instructions further operable to cause the one or more processors to perform the operations comprising:
formatting the video content received over an IP interface into a continuous streaming format.
12 . The one or more computer-readable media of claim 10 , having instructions further operable to cause the one or more processors to perform the operations comprising:
causing the video output to seamlessly transition from the IP video source to the tuner source if the IP video source was the first source to provide the desired content.