Patent ID: 7562375

Claim:
A method for fast channel changing in a multicast video distribution architecture, the method comprising: buffering a multicast video stream segment at a server, the buffered multicast video stream segment including a first retained intra frame and a second retained intra frame, the first retained intra frame being before the second retained intra frame in the buffered multicast video stream segment; detecting a channel change request that indicates a requested channel, the channel change request being from a requesting device, the requested channel corresponding to the buffered multicast video stream segment; determining whether a first next decodable non-intra frame after the first retained intra frame is at least a joining time after a send point of the buffered multicast video stream segment; in response to detecting the channel change request, transmitting to the requesting device a retained intra frame and no dependent frames for the requested channel as a unicast communication for static display, wherein, if the first next decodable non-intra frame after the first retained intra frame is at least the joining time after the send point of the buffered multicast video stream segment, the transmitted retained intra frame is the first retained intra frame and the first next decodable non-intra frame after the first retained intra frame is a joining frame, and wherein if the first next decodable non-intra frame after the first retained intra frame is less than the joining time after the send point of the buffered multicast video stream segment, the transmitted retained intra frame is the second retained intra frame and a second next decodable non-intra frame after the second retained intra frame is the joining frame; and synchronizing a multicast joining operation to a multicast group corresponding to the requested channel, wherein synchronizing includes ensuring the joining frame is the oldest non-intra frame of the buffered multicast video stream segment received by the requesting device in response to the channel change request a first multicast frame after the multicast joining operation is the joining.