US20090165067A1 - Device Method and System for Providing a Media Stream - Google Patents

Device Method and System for Providing a Media Stream Download PDF

Info

Publication number
US20090165067A1
US20090165067A1 US12/143,944 US14394408A US2009165067A1 US 20090165067 A1 US20090165067 A1 US 20090165067A1 US 14394408 A US14394408 A US 14394408A US 2009165067 A1 US2009165067 A1 US 2009165067A1
Authority
US
United States
Prior art keywords
media stream
key frame
media
generator
packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US12/143,944
Inventor
Leon Bruckman
Gal Mor
David Zelig
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orckit Corrigent Ltd
Original Assignee
Orckit Corrigent Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Orckit Corrigent Ltd filed Critical Orckit Corrigent Ltd
Priority to US12/143,944 priority Critical patent/US20090165067A1/en
Assigned to CORRIGENT SYSTEMS LTD. reassignment CORRIGENT SYSTEMS LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MOR, GAL, ZELIG, DAVID, BRUCKMAN, LEON
Publication of US20090165067A1 publication Critical patent/US20090165067A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
    • H04N21/4383Accessing a communication channel
    • H04N21/4384Accessing a communication channel involving operations to reduce the access time, e.g. fast-tuning for reducing channel switching latency
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/64Addressing
    • H04N21/6405Multicasting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/64Addressing
    • H04N21/6408Unicasting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/812Monomedia components thereof involving advertisement data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2668Creating a channel for a dedicated end-user group, e.g. insertion of targeted commercials based on end-user profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/30Resource management for broadcast services

Definitions

  • This application relates generally to the field of multimedia digital communication. More specifically, the present invention relates to a method, system and device for providing a media stream to a subscriber or client appliance.
  • IPTV Internet Protocol Television
  • a general definition of IPTV is television content that, instead of being delivered through traditional broadcast and cable formats, is received by the viewer through the technologies used for computer networks.
  • IPTV is often provided in conjunction with Video on Demand and may be bundled with Internet services such as Web access and Voice over IP (“VoIP”).
  • VoIP Voice over IP
  • the commercial bundling of IPTV, VoIP and Internet access is referred to as “Triple Play” service (adding mobility is called “Quadruple Play”).
  • IPTV is typically supplied by a service provider using a closed network infrastructure. This closed network approach is in competition with the delivery of TV content over the public Internet, called Internet Television. In businesses, IPTV may be used to deliver television content over corporate LANs.
  • IP/TV internet video product
  • IP/TV was an MBONE compatible Windows and Unix based application that moved single and multi-source audio/video traffic, ranging from low to DVD quality, using both unicast and IP multicast RTP/RTCP.
  • the software was written primarily by Steve Casner, Karl Auerbach, and Cha Chee Kuan.
  • Precept was acquired by Cisco Systems in 1998. Cisco retains the “IP/TV” trademark.
  • IPTV IP Television
  • IPTV IP Television
  • IPTV uses a two-way digital broadcast signal sent through a switched telephone or cable network by way of a broadband connection and a set-top box programmed with software (much like a cable or DSS box) that can handle viewer requests to access to many available media sources.
  • FIG. 1 shows an exemplary IPTV distribution network architecture, starting from a “Headend” on the left side of the figure, and culminating with a viewer set-top boxes (“STB”) and other media presentation appliances on the right side of the figure.
  • STB viewer set-top boxes
  • California based UTStarcom, Inc. and Tennessee based Worley Consulting are two companies offering end-to-end networking infrastructure for IPTV-based services.
  • IPTV covers both live TV (multicasting) as well as stored video (Video on Demand VOD).
  • the playback of IPTV requires either a personal computer or a set-top box connected to a TV.
  • Video content is typically compressed using either a MPEG-2 or a MPEG-4 codec and then sent in an MPEG transport stream delivered via IP Multicast in case of live TV or via IP Unicast in case of Video on Demand.
  • IP Multicast is a method in which information can be sent to multiple computers at the same time.
  • the newly released (MPEG-4) H.264 codec is increasingly used to replace the older MPEG-2 codec.
  • IPTV IP-based Multicast stream
  • IGMP version 2 For connecting to a multicast stream (TV channel) and for changing from one multicast stream to another multicast stream (TV channel change).
  • VOD Video on Demand
  • RTSP Real Time Streaming Protocol
  • IPTV traditional TV distribution technologies such as terrestrial, satellite and cable.
  • cable can be upgraded to two-way capability and can thus also carry IPTV.
  • Network Personal Video Recording is a consumer service where real-time broadcast television is captured in the network on a server allowing the end user to access the recorded programs on the schedule of their choice, rather than being tied to the broadcast schedule.
  • the NPVR system provides time-shifted viewing of broadcast programs, allowing subscribers to record and watch programs at their convenience, without the requirement of a truly personal PVR device. It could be compared as a “PVR that is built into the network”—however that would be slightly misleading unless the word “Personal” is, of course, changed to “Public” for this context.
  • the IP-based video distribution platform offers significant advantages over traditional distribution platform, including the ability to integrate television with other IP-based services like high speed Internet access and VoIP.
  • a switched IP network also allows for the delivery of significantly more content and functionality.
  • a typical TV or satellite network using broadcast video technology, all the content constantly flows downstream to each customer, and the customer switches the content at the set-top box. The customer can select from as many choices as the telecomms, cable or satellite company can stuff into the “pipe” flowing into the home.
  • a switched IP network works differently. Content remains in the network, and only the content the customer selects is sent into the customer's home. That frees up bandwidth, and the customer's choice is less restricted by the size of the “pipe” into the home.
  • IPTV requires real-time data transmission and uses the Internet Protocol, it is sensitive to packet loss and delays if the IPTV connection is not fast enough or picture break-up or loss if the streamed data is unreliable. This latter problem has proved particularly troublesome when attempting to stream IPTV across wireless links. Improvements in wireless technology are now starting to provide equipment to solve the problem.
  • the venerable set-top box on its way out in the cable world, made resurgence in IPTV systems.
  • the box connects to the home DSL line and is responsible for reassembling the packets into a coherent video stream and then decoding the contents.
  • Computers could do the same job, but most people still don't have an always-on PC sitting beside the TV, so the box has made a comeback.
  • the video stream is broken up into IP packets and dumped into the telco's core network, which is a massive IP network that handles all sorts of other traffic (data, voice, etc.) in addition to the video.
  • the video streams are received by a local office, which is adapted to deliver the video streams to the end users. (i.e. subscriber media presentation appliances).
  • the local office may add local content (such as TV stations, advertising, and video on demand) to the received video streams.
  • the local office is also adapted to house and operate the IPTV middleware.
  • the middleware software stack handles user authentication, billing, channel change requests, VoD requests, and “last mile” distribution/routing/switching of the content bearing data streams.
  • Channels in the lineup are multicast from the national headend to local offices over a high capacity data work.
  • local loop e.g. local DSL loop.
  • Cable systems can may be able to do so (since their bandwidth for a neighborhood can be 4.5 Gbps), even the newest ADSL2+ technology tops out at around 25 Mbps (and this speed drops quickly as distance from the DSLAM [DSL Access Multiplier] grows).
  • Bandwidth on the local loop (also known as “last mile”) is growing, and in some metro areas is considerably higher than 25 Mbps, but for now, most local IPTV offices overcome the problem of limited bandwidth on the local loop by multicasting a selected channel to some or all of the set-top boxes which have selected the given channel. That is, when a user changes the channel on their set-top box, the box does not “tune” a channel like a cable system. (There is in fact no such thing as “tuning” anymore—the box is simply an IP receiver.) What happens instead is that the box switches channels by using the IP Group Membership Protocol (IGMP) to join a new multicast group. When the local office receives this request, it checks whether the user is authorized to view the new channel. Upon receiving authorization, the local office directs the routers to add that particular user to the channel's distribution list. In this way, only signals that are currently being watched are actually being sent from the local office to the DSLAM and on to the user.
  • IGMP IP Group Membership Protocol
  • the present problem with multicasting content to the user's IP based media presentation device is two fold: (1) Channel zapping time-delay, and (2) Individual ad placement restrictions.
  • Channel zapping time is mainly concerned with broadcast channels, which are typically delivered on the network as IP multicast streams in IPTV networks, where each IP multicast represents a specific channel.
  • the use of multicast across the network is very efficient, as the traffic is sent only once up to the network edge, and only duplicated on a per-customer service in the last access device (DSLAM, PON OLT, Access switch, etc.).
  • IDR pictures may be up to 5 seconds distant, meaning that when a user is requesting a new channel, even if the network reacts very fast to the IGMP request, if the STB starts to get the stream right after the current MPEG-2 GOP/H.264 video sequence start (the I-frame/IDR picture) it must wait up to 5 seconds until it can display the picture on the screen.
  • STB Set Top Box
  • Targeted Ad (commercial) insertion is also a big challenge in IPTV networks.
  • Current ad insertion methods rely on a centralized ad insertion server in the main distribution hubs of the networks. This implies that for multicast streams, the commercials are placed based on large geographic areas, without per-user granularity, or per region. If per-user ad insertion is needed, that the multicast traffic must become unicast traffic and would create bandwidth explosion on the network.
  • IPTV IPTV
  • the present invention is a method device and system for Internet Protocol (“IP”) based streaming of media content (e.g. audio, video and multimedia) to a media presentation appliance (e.g. IPTV set-top box or computer).
  • IP Internet Protocol
  • a media stream generator adapted to derive one or more media streams from an IP based source media stream bearing content (e.g. data representing video frames such as MPEG video frames).
  • the media stream generator may derive one or more media streams by: (1) deriving one or a set of uni-cast or multicast IP based media streams from the single source media stream, (2) readdressing the destination IP address(s) on some or all of the derived media streams, and/or (3) inserting into and/or replacing frames in the source media stream with data representing one or more image frames into the derived media stream.
  • frames inserted in-between and/or replacing frames in the source media stream may: (1) represent new content inserted into the source media stream, and/or (2) be one or more frames derived from the frames within the source media stream.
  • the media stream generator may insert a key frame into the media stream and/or replace a non-key frame (e.g. an MPEG delta frame) with a key frame (e.g. an MPEG Intra frame or I-frame), such that the derived media stream may include more key frames than originally present in the source media stream.
  • a non-key frame e.g. an MPEG delta frame
  • a key frame e.g. an MPEG Intra frame or I-frame
  • the media stream generator may include or be functionally associated with a key frame generator, which key frame generator may be part of, or functionally associated with, a key frame inserter.
  • the key-frame generator may include a decoding module adapted to continuously decode frames of the source media stream into a data set representing a complete image frame, which complete image frame data set may be stored in a cyclic or running buffer.
  • the decoding module may also be adapted to store metadata associated with the source media steam on the cyclical or running buffer, or on another functionally associated buffer.
  • the frame generator may also include a key frame encoder adapted to encode the complete image frame data stored in the cyclic/running buffer into a key frame suitable for insertion at an insertion point on the source media stream.
  • the key frame encoder may either continuously encode a running set of key frames, encoding a new key frame each time the complete image frame data set is updated in the buffer, or, according to further embodiments of the present invention, the key frame generator may only encode a key frame upon receiving a signal indicating an instruction to insert a key frame into the source media stream.
  • the encoder may encode a key frame using one of several different compression factors, where higher compression factors result in lower quality and lower bandwidth key frames. It should be understood by one of ordinary skill in the art that any technique or technology, known today or to be derived in the future, for generating or encoding a key frame from a received media stream (packetized MPEG stream) or for transcoding a delta frame into a key frame (e.g.
  • I-Frame is applicable to the present invention.
  • the Hands - On Guide to Streaminq Media, Second Edition: an Introduction to Delivering On - Demand Media by Joe Follansbee teaches a variety of encoding and transcoding algorithms and techniques and is hereby incorporated by reference in its entirety.
  • a media stream may be derived from a source media stream by inserting into the source media stream an encoded key frame, at an insertion point within the source media stream, either by replacing a delta frame or by inserting the encoded key frame between two delta frames.
  • a key frame inserter including or functionally associated with a key frame generator may, may insert one or more key frames into a source media stream, such that the delta frame following the inserted key frame may by be decoded and rendered into a complete image frame.
  • the key frame inserter may or may not include a de-packetizor or de-packetizing module.
  • the key frame inserter may not require a de-packetizing module.
  • the key frame inserter may include a de-packetizer.
  • the inserter may or may not include a packetizing module or packetizor.
  • the key frame inserter may not require a packetizor or packetizing module.
  • the key frame inserter may simply pass an encoded key frame to the generator's packet processor, optionally with an indicator of an insertion point, and the processor may edit the corresponding payload data of the packet into which the key frame is to be inserted, either replacing a delta frame with the key frame or inserting the key frame between two delta frames.
  • the key frame inserter may include a frame replacement/insertion module.
  • the frame replacement/insertion module may receive: (1) the source media stream frame data from a depacketizer, and (2) a corresponding encoded key frame from a key frame generator, which key frame generator generated the key frame based on the same source media stream data receiver by the frame replacement/insertion module.
  • the replacement/insertion module may either replace a delta frame with the encoded key frame or insert the encoded key frame between two delta frames, and may pass the modified set of media stream frames to a packetizor or packetizing module.
  • the packetizor/packetizing module receive the new set of frames, and may also receive packet metadata relating to the packet from which the media stream frame data used to generate the key frame was extracted (i.e. the packet into which the key frame is being inserted). Accordingly, the packetizor/packetizing module may generate a media stream packet including the encoded key frame, which packet may replace the original source media stream packet into which the key frame is to be inserted.
  • the media stream generator may include a packet replacing module adapted to replace a source media stream packet with a corresponding generated/derived packet produced by a key frame inserter, which key frame inserter may include a: (1) key frame generator, (2) frame replacement/insertion module, and (3) packetizing module.
  • an IP based media stream generator may receive: (1) one or a set of a source packetized uni-cast media streams (e.g. addressed to the distribution node or to an IP address associated with the distribution node), (2) one or a set of source packetized multicast media streams addressed to IP addresses associated with the distribution node (e.g. the distribution node IP address or the IP addresses of the node's distribution clients), or (3) a combination of uni-cast and multicast packetized media streams, as described above.
  • the media stream generator(s) may include packet processing circuitry (e.g. packet processor) adapted to replicate a source packetized media stream into multiple uni-cast or multicast packetized media streams, and to individually address the packetized media streams, so as to facilitate retransmission of the received packetized streams to appropriate distribution node clients.
  • the distribution node may also include a communication module adapted to receive from one or a set of client media presentation appliances requests for specific packetized media streams.
  • Authorized requests for a given media stream e.g. Channel 5
  • the media stream generator(s) may accordingly add the requesting appliance's identifier (e.g. IP address) to the destination address field of packets generated or derived for retransmission to clients from or the source media stream associated with the given channel.
  • the node controller receiving a request from a client media presentation appliance for a given channel associated with a specific packetized source media stream, may cause a key frame to be inserted into a media stream generated or otherwise derived from the specific source media stream, either before or shortly after the client media presentation appliance's identifier is added to an addressing field of the generated/derived media stream.
  • the insertion of a key frame is intended to mitigate the time between the appliance receiving the media stream and being able to render a full image frame of the content within the media stream.
  • the node controller or functionally equivalent node portion, may trigger a key frame inserter to insert a key from into the relevant media stream substantially immediately upon receiving a request.
  • the controller may wait a delay or hysteresis period between receiving a request for a given channel and triggering a key frame insertion into the relevant transmitted media stream. During this delay/hysteresis period, the controller may await and receive further requests for the same given channel from additional client appliances, thereby facilitating the insertion of one key frame to mitigate zapping time for several client appliances requesting the given channel. According to yet further embodiments of the present invention, the controller may only trigger a key frame insertion for a given request if the time interval between the request and the next key frame expected in the source media stream associated with the requested channel is greater than a predefined threshold/limit.
  • the controller determines that the next key frame is expected in the source media stream within the predefined limit of time (e.g. 0.5 seconds), it may not trigger a key frame insertion in response to the request.
  • the predefined limit of time e.g. 0.5 seconds
  • the node controller may monitor, track, calculate or otherwise estimate/determine the bandwidth of a given packetized media stream transmitted to presentation devices/appliances and may regulate the compression factor utilized by the encoder in the key frame generator in direct relation with the bandwidth. For example, if multiple key frames are inserted into the media stream over some relatively short period of time (e.g. 3 key frames over 5 seconds), and as a result of the insertions the media stream's bandwidth has increased to a value above some predetermined media stream bandwidth target value (because key frames contain more data than delta frames), the controller may signal the key frame generator to encode the next key frame to be inserted (after the next zapping request) to use a higher compression factor (i.e.
  • the controller may instruct the key frame generator to use a lower compression factor (i.e. higher quality and higher bandwidth key frame) than previously used.
  • the node controller may regulate transmitted media stream bandwidth to maintain a predefined target bandwidth using a mixed replacement/insertion policy. If the bandwidth of a given stream is approaching or exceeding the target bandwidth, the next time a key is to be added, the controller may cause the key frame to replace a corresponding delta frame. Conversely, if the media stream bandwidth is significantly lower than a target bandwidth, the controller may cause a generated key frame to be inserted between two delta frames.
  • FIG. 1 shows an exemplary IPTV distribution network architecture, starting from a “Headend” on the left side of the figure, and culminating with a viewer set-top boxes (“STB”) and other media presentation appliances on the right side of the figure in accordance with the prior art;
  • STB viewer set-top boxes
  • FIG. 2 shows a conceptual block diagram of an IP packet based media distribution node adapted to receive source media stream(s) and to generate/derive one or more multicast and/or unicast media stream(s) in accordance with some embodiments of the present invention
  • FIG. 3 shows a flowchart including the steps of an exemplary method of operating a media stream distribution node according to some embodiments of the present invention
  • FIGS. 4A-4C show conceptual block diagrams of three separate embodiments of a key frame insertion portions of a IP packet based media distribution nodes according to some embodiments of the present invention
  • FIG. 5 shows a flowchart including the steps of an exemplary method of generating and inserting a key frame into a source media stream according to some embodiments of the present invention
  • FIG. 6 shows a symbolic block diagram of a further embodiment of an IP based media stream distribution node according to some embodiments of the present invention, including a multi-delay tap architecture adapted to facilitate multiple media stream distribution sub-groups based on a single source media stream; and
  • FIG. 7 shows a symbolic block diagram of a further embodiment of an IP based media stream distribution node according to some embodiments of the present invention, including a media stream generator adapted to generate/derive multiple uni-cast and multicast media streams from each of a set of source media streams, and further including a switch adapted to connect either one of the source media streams or one of the derived steams to a media presentation appliance/device.
  • a media stream generator adapted to generate/derive multiple uni-cast and multicast media streams from each of a set of source media streams
  • a switch adapted to connect either one of the source media streams or one of the derived steams to a media presentation appliance/device.
  • Embodiments of the present invention may include apparatuses for performing the operations herein.
  • This apparatus may be specially constructed for the desired purposes, or it may comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer.
  • a computer program may be stored in a computer readable storage medium, such as, but is not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs) electrically programmable read-only memories (EPROMs), electrically erasable and programmable read only memories (EEPROMs), magnetic or optical cards, or any other type of media suitable for storing electronic instructions, and capable of being coupled to a computer system bus.
  • the present invention is a method device and system for Internet Protocol (“IP”) based streaming of media content (e.g. audio, video and multimedia) to a media presentation appliance (e.g. IPTV set-top box or computer).
  • IP Internet Protocol
  • a media stream generator adapted to derive one or more media streams from an IP based source media stream bearing content (e.g. data representing video frames such as MPEG video frames).
  • the media stream generator may derive one or more media streams by: (1) deriving one or a set of uni-cast or multicast IP based media streams from the single source media stream, (2) readdressing the destination IP address(s) on some or all of the derived media streams, and/or (3) inserting into and/or replacing frames in the source media stream with data representing one or more image frames into the derived media stream.
  • frames inserted in-between and/or replacing frames in the source media stream may: (1) represent new content inserted into the source media stream, and/or (2) be one or more frames derived from the frames within the source media stream.
  • the media stream generator may insert a key frame into the media stream and/or replace a non-key frame (e.g. an MPEG delta frame) with a key frame (e.g. an MPEG Intra frame or I-frame), such that the derived media stream may include more key frames than originally present in the source media stream.
  • a non-key frame e.g. an MPEG delta frame
  • a key frame e.g. an MPEG Intra frame or I-frame
  • the media stream generator may include or be functionally associated with a key frame generator, which key frame generator may be part of, or functionally associated with, a key frame inserter.
  • the key-frame generator may include a decoding module adapted to continuously decode frames of the source media stream into a data set representing a complete image frame, which complete image frame data set may be stored in a cyclic or running buffer.
  • the decoding module may also be adapted to store metadata associated with the source media steam on the cyclical or running buffer, or on another functionally associated buffer.
  • the frame generator may also include a key frame encoder adapted to encode the complete image frame data stored in the cyclic/running buffer into a key frame suitable for insertion at an insertion point on the source media stream.
  • the key frame encoder may either continuously encode a running set of key frames, encoding a new key frame each time the complete image frame data set is updated in the buffer, or, according to further embodiments of the present invention, the key frame generator may only encode a key frame upon receiving a signal indicating an instruction to insert a key frame into the source media stream.
  • the encoder may encode a key frame using one of several different compression factors, where higher compression factors result in lower quality and lower bandwidth key frames. It should be understood by one of ordinary skill in the art that any technique or technology, known today or to be derived in the future, for generating or encoding a key frame from a received media stream (packetized MPEG stream) or for transcoding a delta frame into a key frame (e.g.
  • I-Frame is applicable to the present invention.
  • the Hands-On Guide to Streaming Media, Second Edition: an Introduction to Delivering On-Demand Media by Joe Follansbee teaches a variety of encoding and transcoding algorithms and techniques and is hereby incorporated by reference in its entirety.
  • a media stream may be derived from a source media stream by inserting into the source media stream an encoded key frame, at an insertion point within the source media stream, either by replacing a delta frame or by inserting the encoded key frame between two delta frames.
  • a key frame inserter including or functionally associated with a key frame generator may, may insert one or more key frames into a source media stream, such that the delta frame following the inserted key frame may by be decoded and rendered into a complete image frame.
  • the key frame inserter may or may not include a de-packetizor or de-packetizing module.
  • the key frame inserter may not require a de-packetizing module.
  • the key frame inserter may include a de-packetizer.
  • the inserter may or may not include a packetizing module or packetizor.
  • the key frame inserter may not require a packetizor or packetizing module.
  • the key frame inserter may simply pass an encoded key frame to the generator's packet processor, optionally with an indicator of an insertion point, and the processor may edit the corresponding payload data of the packet into which the key frame is to be inserted, either replacing a delta frame with the key frame or inserting the key frame between two delta frames.
  • the key frame inserter may include a frame replacement/insertion module.
  • the frame replacement/insertion module may receive: (1) the source media stream frame data from a depacketizer, and (2) a corresponding encoded key frame from a key frame generator, which key frame generator generated the key frame based on the same source media stream data receiver by the frame replacement/insertion module.
  • the replacement/insertion module may either replace a delta frame with the encoded key frame or insert the encoded key frame between two delta frames, and may pass the modified set of media stream frames to a packetizor or packetizing module.
  • the packetizor/packetizing module receive the new set of frames, and may also receive packet metadata relating to the packet from which the media stream frame data used to generate the key frame was extracted (i.e. the packet into which the key frame is being inserted). Accordingly, the packetizor/packetizing module may generate a media stream packet including the encoded key frame, which packet may replace the original source media stream packet into which the key frame is to be inserted.
  • the media stream generator may include a packet replacing module adapted to replace a source media stream packet with a corresponding generated/derived packet produced by a key frame inserter, which key frame inserter may include a: (1) key frame generator, (2) frame replacement/insertion module, and (3) packetizing module.
  • an IP based media stream generator may receive: (1) one or a set of a source packetized uni-cast media streams (e.g. addressed to the distribution node or to an IP address associated with the distribution node), (2) one or a set of source packetized multicast media streams addressed to IP addresses associated with the distribution node (e.g. the distribution node IP address or the IP addresses of the node's distribution clients), or (3) a combination of uni-cast and multicast packetized media streams, as described above.
  • the media stream generator(s) may include packet processing circuitry (e.g. packet processor) adapted to replicate a source packetized media stream into multiple uni-cast or multicast packetized media streams, and to individually address the packetized media streams, so as to facilitate retransmission of the received packetized streams to appropriate distribution node clients.
  • the distribution node may also include a communication module adapted to receive from one or a set of client media presentation appliances requests for specific packetized media streams.
  • Authorized requests for a given media stream e.g. Channel 5
  • the media stream generator(s) may accordingly add the requesting appliance's identifier (e.g. IP address) to the destination address field of packets generated or derived for retransmission to clients from or the source media stream associated with the given channel.
  • the node controller receiving a request from a client media presentation appliance for a given channel associated with a specific packetized source media stream, may cause a key frame to be inserted into a media stream generated or otherwise derived from the specific source media stream, either before or shortly after the client media presentation appliance's identifier is added to an addressing field of the generated/derived media stream.
  • the insertion of a key frame is intended to mitigate the time between the appliance receiving the media stream and being able to render a full image frame of the content within the media stream.
  • the node controller or functionally equivalent node portion, may trigger a key frame inserter to insert a key from into the relevant media stream substantially immediately upon receiving a request.
  • the controller may wait a delay or hysteresis period between receiving a request for a given channel and triggering a key frame insertion into the relevant transmitted media stream. During this delay/hysteresis period, the controller may await and receive further requests for the same given channel from additional client appliances, thereby facilitating the insertion of one key frame to mitigate zapping time for several client appliances requesting the given channel. According to yet further embodiments of the present invention, the controller may only trigger a key frame insertion for a given request if the time interval between the request and the next key frame expected in the source media stream associated with the requested channel is greater than a predefined threshold/limit.
  • the controller determines that the next key frame is expected in the source media stream within the predefined limit of time (e.g. 0.5 seconds), it may not trigger a key frame insertion in response to the request.
  • the predefined limit of time e.g. 0.5 seconds
  • the node controller may monitor, track, calculate or otherwise estimate/determine the bandwidth of a given packetized media stream transmitted to presentation devices/appliances and may regulate the compression factor utilized by the encoder in the key frame generator in direct relation with the bandwidth. For example, if multiple key frames are inserted into the media stream over some relatively short period of time (e.g. 3 key frames over 5 seconds), and as a result of the insertions the media stream's bandwidth has increased to a value above some predetermined media stream bandwidth target value (because key frames contain more data than delta frames), the controller may signal the key frame generator to encode the next key frame to be inserted (after the next zapping request) to use a higher compression factor (i.e.
  • the controller may instruct the key frame generator to use a lower compression factor (i.e. higher quality and higher bandwidth key frame) than previously used.
  • the node controller may regulate transmitted media stream bandwidth to maintain a predefined target bandwidth using a mixed replacement/insertion policy. If the bandwidth of a given stream is approaching or exceeding the target bandwidth, the next time a key is to be added, the controller may cause the key frame to replace a corresponding delta frame. Conversely, if the media stream bandwidth is significantly lower than a target bandwidth, the controller may cause a generated key frame to be inserted between two delta frames.
  • FIG. 2 there is shown a conceptual block diagram of an IP packet based media distribution node adapted to receive source media stream(s) and to generate/derive one or more multicast and/or unicast media stream(s) in accordance with some embodiments of the present invention.
  • the operation of the distribution node may be described in conjunction with FIG. 3 , which shows a flowchart including the steps of an exemplary method of operating a media stream distribution node according to some embodiments of the present invention.
  • a media stream generator may receive source media steam (Step 3000 ).
  • the media stream generator may generate/derive one or more uni-cast or multicast media streams, each of which is addressed to different one or set of media presentation appliances.
  • the IP address of an appliance requesting (step 3100 ) the content of a specific source media stream (e.g. channel 10) may be added to the header of a media stream generated/derived from the requested source stream. (step 3400 ).
  • a key frame generator may also generate and the media stream generator may insert a key frame into the relevant generated/derived stream in response to the request (steps 3200 and 3300 ).
  • FIGS. 4A-4C show conceptual block diagrams of three separate embodiments of key frame insertion portions of IP packet based media distribution nodes according to some embodiments of the present invention.
  • the description of the embodiments shown in FIGS. 4A-4C may be understood in view of FIG. 5 , which shows a flowchart including the steps of an exemplary method of generating and inserting a key frame into a source media stream according to some embodiments of the present invention.
  • the basic steps of generating a key frame may include: (1) receiving the source media stream; (2) decoding an image frame data set from the source media stream; (3) maintaining a running (cyclical buffer) image frame data set based on the decided source media stream (steps 4000 and 4100 ); and (4) either continuously encoding a key frame based on the running image frame data set, or encoding a key frame upon receiving a signal to encode from a controller (step 4200 ).
  • 5 also includes the step of either inserting the key frame in between two delta frames or replacing a delta frame with a corresponding key frame (at an insertion point) upon receiving a signal from a controller, which controller may trigger key frame generation and/or insertion and/or replacement in response to a request from a media presentation appliance/device to receive content associated with the source media stream.
  • the key frame generator may include a decoder adapted to convert the media stream frames into complete image frame data sets, and a running image frame buffer (e.g. cyclic buffer) adapted to store a running copy of image frame data sets.
  • a key frame encoder may encode a complete image frame data set in the buffer into a key frame, either continuously, or in response to a signal from a controller. According to some embodiments of the present invention, the controller may also instruct the encoder as to which of compression factor to use in encoding the key frame.
  • a frame replacement/insertion module may receive the de-packetized media stream frames from the de-packetizer along with an encoded key frame from the encoder and may either: (1) replace an frame of the source media stream with the encoded key frame, or (2) insert the encoded key frame between two frames of the source media stream.
  • a packetizer packetizing module
  • a packet replacing module may replace in the media stream the packet used to generate the key frame with the new packet.
  • FIG. 4B there is shown an embodiment similar to the one in FIG. 4A , but with the key frame insertion replacement being performed by a packet processor adapted to read, process and edit packet payload data.
  • the embodiment shown in FIG. 4C includes a packet processor adapted to provide the key frame generator payload data (i.e. media stream frames) directly, without the need for an additional de-packetizing module.
  • a bandwidth monitoring module functionally associated with the controller, there enabling the controller to determine which encoding and insertion policy may be required for a given key frame.
  • FIG. 6 there is shown a symbolic block diagram of a further embodiment of an IP based media stream distribution node according to some embodiments of the present invention, including a multi-delay tap architecture adapted to facilitate multiple media stream distribution sub-groups based on a single source media stream.
  • FIG. 7 there is shown a symbolic block diagram of a further embodiment of an IP based media stream distribution node according to some embodiments of the present invention, including a media stream generator adapted to generate/derive multiple uni-cast and multicast media streams from each of a set of source media streams, and further including a switch adapted to connect either one of the source media streams or one of the derived steams to a media presentation appliance/device.
  • a media stream generator adapted to generate/derive multiple uni-cast and multicast media streams from each of a set of source media streams
  • a switch adapted to connect either one of the source media streams or one of the derived steams to a media presentation appliance/device.

Abstract

There is provided a method device and system for providing packetized streaming media content (e.g. audio, video and multimedia) to an IP based media presentation appliance (e.g. set-top box). According to some embodiments of the present invention, there may be provided a media stream generator adapted to generate or otherwise derive from a source media a second media stream including more key frames (e.g. MPEG I-Frames) than present in the source media stream.

Description

    RELATED APPLICATIONS
  • This application claims priority from the following U.S. Provisional Patent Applications:
  • 1. “Efficient IPTV System for Metro Networks”
      • Application No. 60/999,242 Filing Date: Oct. 16, 2007.
  • 2. “A Device, Method and System for Media Packet Distribution”
      • Application No. 61/045,005 Filing Date: Apr. 15, 2008.
    FIELD OF THE INVENTION
  • This application relates generally to the field of multimedia digital communication. More specifically, the present invention relates to a method, system and device for providing a media stream to a subscriber or client appliance.
  • BACKGROUND
  • IPTV (Internet Protocol Television) is a system where a digital television service is delivered by using Internet Protocol over a network infrastructure, which may include delivery by a broadband connection. A general definition of IPTV is television content that, instead of being delivered through traditional broadcast and cable formats, is received by the viewer through the technologies used for computer networks.
  • For residential users, IPTV is often provided in conjunction with Video on Demand and may be bundled with Internet services such as Web access and Voice over IP (“VoIP”). The commercial bundling of IPTV, VoIP and Internet access is referred to as “Triple Play” service (adding mobility is called “Quadruple Play”). IPTV is typically supplied by a service provider using a closed network infrastructure. This closed network approach is in competition with the delivery of TV content over the public Internet, called Internet Television. In businesses, IPTV may be used to deliver television content over corporate LANs.
  • In 1994, ABC's World News Now was the first television show to be broadcast over the Internet, using the CU-SeeMe videoconferencing software. The term IPTV first appeared in 1995 with the founding of Precept Software by Judith Estrin and Bill Carrico. Precept designed and built an internet video product named “IP/TV”. IP/TV was an MBONE compatible Windows and Unix based application that moved single and multi-source audio/video traffic, ranging from low to DVD quality, using both unicast and IP multicast RTP/RTCP. The software was written primarily by Steve Casner, Karl Auerbach, and Cha Chee Kuan. Precept was acquired by Cisco Systems in 1998. Cisco retains the “IP/TV” trademark.
  • Internet radio company AudioNet started the first continuous live webcasts with content from WFAA-TV in January, 1998 and KCTU-LP on Jan. 10, 1998. Kingston Communications, a regional telecommunications operator in UK, launched KIT (Kingston Interactive Television), an IPTV over DSL broadband interactive TV service in September 1999 after conducting various TV and VoD trials. The operator added additional VoD service in October 2001 with Yes TV, a provider of VoD content. Kingston was one of the first companies in the world to introduce IPTV and IP VOD over ADSL.
  • In the past, this technology has been restricted by low broadband penetration. In the coming years, however, residential IPTV is expected to grow at a brisk pace as broadband was made available to more than 200 million households worldwide in the year 2005, projected to grow to 400 million by the year 2010. Many of the world's major telecommunications providers are exploring IPTV as a new revenue opportunity from their existing markets and as a defensive measure against encroachment from more conventional Cable Television services. In the mean time, there are thousands of IPTV installations within schools, corporations, and other institutions that do not require the use of wide area connectivity.
  • It is important to note that historically there have been many different definitions of “IPTV” including elementary streams over IP networks, transport streams over IP networks and a number of proprietary systems. Although (in Mid 2007) it is premature to say that there is a full consensus of exactly what IPTV should mean, there is no doubt that the most widely used definition today is for single or multiple program transport streams which are sourced by the same network operator that owns or directly controls the “Final Mile” to the consumer's premises. This control over delivery enables a guaranteed quality of service, and also allows the service provider to offer an enhanced user experience such as better program guide, interactive services etc.
  • In 2006, AT&T launched its U-Verse IPTV service. Comprised of a national head end and regional video serving offices, AT&T offered over 300 channels in 11 cities with more to be added in 2007 and beyond. While using IP protocols, AT&T has built a private IP network exclusively for video transport. IPTV uses a two-way digital broadcast signal sent through a switched telephone or cable network by way of a broadband connection and a set-top box programmed with software (much like a cable or DSS box) that can handle viewer requests to access to many available media sources.
  • FIG. 1 shows an exemplary IPTV distribution network architecture, starting from a “Headend” on the left side of the figure, and culminating with a viewer set-top boxes (“STB”) and other media presentation appliances on the right side of the figure. Currently, California based UTStarcom, Inc. and Tennessee based Worley Consulting are two companies offering end-to-end networking infrastructure for IPTV-based services.
  • IPTV covers both live TV (multicasting) as well as stored video (Video on Demand VOD). The playback of IPTV requires either a personal computer or a set-top box connected to a TV. Video content is typically compressed using either a MPEG-2 or a MPEG-4 codec and then sent in an MPEG transport stream delivered via IP Multicast in case of live TV or via IP Unicast in case of Video on Demand. IP Multicast is a method in which information can be sent to multiple computers at the same time. The newly released (MPEG-4) H.264 codec is increasingly used to replace the older MPEG-2 codec.
  • In standards-based IPTV systems, the primary underlying protocols used for Live TV is using IGMP version 2 for connecting to a multicast stream (TV channel) and for changing from one multicast stream to another multicast stream (TV channel change). Video on Demand (“VOD”) generally use the Real Time Streaming Protocol (RTSP). Currently, the only alternatives to IPTV are traditional TV distribution technologies such as terrestrial, satellite and cable. However, cable can be upgraded to two-way capability and can thus also carry IPTV.
  • Network Personal Video Recording is a consumer service where real-time broadcast television is captured in the network on a server allowing the end user to access the recorded programs on the schedule of their choice, rather than being tied to the broadcast schedule. The NPVR system provides time-shifted viewing of broadcast programs, allowing subscribers to record and watch programs at their convenience, without the requirement of a truly personal PVR device. It could be compared as a “PVR that is built into the network”—however that would be slightly misleading unless the word “Personal” is, of course, changed to “Public” for this context.
  • The IP-based video distribution platform offers significant advantages over traditional distribution platform, including the ability to integrate television with other IP-based services like high speed Internet access and VoIP. A switched IP network also allows for the delivery of significantly more content and functionality. In a typical TV or satellite network, using broadcast video technology, all the content constantly flows downstream to each customer, and the customer switches the content at the set-top box. The customer can select from as many choices as the telecomms, cable or satellite company can stuff into the “pipe” flowing into the home. A switched IP network works differently. Content remains in the network, and only the content the customer selects is sent into the customer's home. That frees up bandwidth, and the customer's choice is less restricted by the size of the “pipe” into the home.
  • Because IPTV requires real-time data transmission and uses the Internet Protocol, it is sensitive to packet loss and delays if the IPTV connection is not fast enough or picture break-up or loss if the streamed data is unreliable. This latter problem has proved particularly troublesome when attempting to stream IPTV across wireless links. Improvements in wireless technology are now starting to provide equipment to solve the problem.
  • The venerable set-top box, on its way out in the cable world, made resurgence in IPTV systems. The box connects to the home DSL line and is responsible for reassembling the packets into a coherent video stream and then decoding the contents. Computers could do the same job, but most people still don't have an always-on PC sitting beside the TV, so the box has made a comeback.
  • As shown in FIG. 1, most video enters the system at the telco's national headend, where network feeds are pulled from satellites and encoded if necessary (often in MPEG-2, though H.264 and Windows Media are also possibilities). The video stream is broken up into IP packets and dumped into the telco's core network, which is a massive IP network that handles all sorts of other traffic (data, voice, etc.) in addition to the video. The video streams are received by a local office, which is adapted to deliver the video streams to the end users. (i.e. subscriber media presentation appliances). The local office may add local content (such as TV stations, advertising, and video on demand) to the received video streams. The local office is also adapted to house and operate the IPTV middleware. The middleware software stack handles user authentication, billing, channel change requests, VoD requests, and “last mile” distribution/routing/switching of the content bearing data streams.
  • Channels in the lineup are multicast from the national headend to local offices over a high capacity data work. There is usually a bottleneck in delivering content from the local offices to the subscriber residence due to the usually low capacity local loop (e.g. local DSL loop). Although Cable systems can may be able to do so (since their bandwidth for a neighborhood can be 4.5 Gbps), even the newest ADSL2+ technology tops out at around 25 Mbps (and this speed drops quickly as distance from the DSLAM [DSL Access Multiplier] grows).
  • Bandwidth on the local loop (also known as “last mile”) is growing, and in some metro areas is considerably higher than 25 Mbps, but for now, most local IPTV offices overcome the problem of limited bandwidth on the local loop by multicasting a selected channel to some or all of the set-top boxes which have selected the given channel. That is, when a user changes the channel on their set-top box, the box does not “tune” a channel like a cable system. (There is in fact no such thing as “tuning” anymore—the box is simply an IP receiver.) What happens instead is that the box switches channels by using the IP Group Membership Protocol (IGMP) to join a new multicast group. When the local office receives this request, it checks whether the user is authorized to view the new channel. Upon receiving authorization, the local office directs the routers to add that particular user to the channel's distribution list. In this way, only signals that are currently being watched are actually being sent from the local office to the DSLAM and on to the user.
  • The present problem with multicasting content to the user's IP based media presentation device (e.g. STB) is two fold: (1) Channel zapping time-delay, and (2) Individual ad placement restrictions. Channel zapping time is mainly concerned with broadcast channels, which are typically delivered on the network as IP multicast streams in IPTV networks, where each IP multicast represents a specific channel. The use of multicast across the network is very efficient, as the traffic is sent only once up to the network edge, and only duplicated on a per-customer service in the last access device (DSLAM, PON OLT, Access switch, etc.). However, there are number of sources creating long channel zapping time-delays, but most of the zapping time in a well-engineered network is caused by waiting in the Set Top Box (STB) for the next available I-frame in the MPEG-2 stream (i.e. the size of the MPEG-2 GOP (group of pictures) in seconds), or IDR picture on the H.264 stream. In H.264 for example, IDR pictures may be up to 5 seconds distant, meaning that when a user is requesting a new channel, even if the network reacts very fast to the IGMP request, if the STB starts to get the stream right after the current MPEG-2 GOP/H.264 video sequence start (the I-frame/IDR picture) it must wait up to 5 seconds until it can display the picture on the screen.
  • Targeted Ad (commercial) insertion is also a big challenge in IPTV networks. Current ad insertion methods rely on a centralized ad insertion server in the main distribution hubs of the networks. This implies that for multicast streams, the commercials are placed based on large geographic areas, without per-user granularity, or per region. If per-user ad insertion is needed, that the multicast traffic must become unicast traffic and would create bandwidth explosion on the network.
  • Thus, there is a need in the field of IPTV for improved methods, systems and devices for distributing content to user media presentation devices.
  • SUMMARY OF THE INVENTION
  • The present invention is a method device and system for Internet Protocol (“IP”) based streaming of media content (e.g. audio, video and multimedia) to a media presentation appliance (e.g. IPTV set-top box or computer). According to some embodiments of the present invention, there may be provided a media stream generator adapted to derive one or more media streams from an IP based source media stream bearing content (e.g. data representing video frames such as MPEG video frames). The media stream generator may derive one or more media streams by: (1) deriving one or a set of uni-cast or multicast IP based media streams from the single source media stream, (2) readdressing the destination IP address(s) on some or all of the derived media streams, and/or (3) inserting into and/or replacing frames in the source media stream with data representing one or more image frames into the derived media stream.
  • According to some embodiments of the present invention, frames inserted in-between and/or replacing frames in the source media stream may: (1) represent new content inserted into the source media stream, and/or (2) be one or more frames derived from the frames within the source media stream. According to some embodiments of the present invention, the media stream generator may insert a key frame into the media stream and/or replace a non-key frame (e.g. an MPEG delta frame) with a key frame (e.g. an MPEG Intra frame or I-frame), such that the derived media stream may include more key frames than originally present in the source media stream.
  • According to some embodiments of the present invention, the media stream generator may include or be functionally associated with a key frame generator, which key frame generator may be part of, or functionally associated with, a key frame inserter. According to some embodiments of the present inventions, the key-frame generator may include a decoding module adapted to continuously decode frames of the source media stream into a data set representing a complete image frame, which complete image frame data set may be stored in a cyclic or running buffer. The decoding module may also be adapted to store metadata associated with the source media steam on the cyclical or running buffer, or on another functionally associated buffer. According to some embodiments of the present invention, the frame generator may also include a key frame encoder adapted to encode the complete image frame data stored in the cyclic/running buffer into a key frame suitable for insertion at an insertion point on the source media stream.
  • The key frame encoder may either continuously encode a running set of key frames, encoding a new key frame each time the complete image frame data set is updated in the buffer, or, according to further embodiments of the present invention, the key frame generator may only encode a key frame upon receiving a signal indicating an instruction to insert a key frame into the source media stream. The encoder may encode a key frame using one of several different compression factors, where higher compression factors result in lower quality and lower bandwidth key frames. It should be understood by one of ordinary skill in the art that any technique or technology, known today or to be derived in the future, for generating or encoding a key frame from a received media stream (packetized MPEG stream) or for transcoding a delta frame into a key frame (e.g. I-Frame) is applicable to the present invention. The Hands-On Guide to Streaminq Media, Second Edition: an Introduction to Delivering On-Demand Media by Joe Follansbee teaches a variety of encoding and transcoding algorithms and techniques and is hereby incorporated by reference in its entirety.
  • According to some embodiments of the present invention, a media stream may be derived from a source media stream by inserting into the source media stream an encoded key frame, at an insertion point within the source media stream, either by replacing a delta frame or by inserting the encoded key frame between two delta frames. A key frame inserter, including or functionally associated with a key frame generator may, may insert one or more key frames into a source media stream, such that the delta frame following the inserted key frame may by be decoded and rendered into a complete image frame. Depending upon the specific architecture and operation of the media stream generator with which the key frame inserter is integrated or otherwise associated, the key frame inserter may or may not include a de-packetizor or de-packetizing module. According to embodiments of the present invention where the media stream generator is adapted to de-packetize the source media stream, or otherwise extract from the source packets' payload the source media stream frame data, and to provide the source media stream frame data to the key frame generator, the key frame inserter may not require a de-packetizing module. According to embodiments of the present invention where the media stream generator is not adapted to de-packetize or otherwise extract media stream frames from the packetized source media stream, the key frame inserter may include a de-packetizer.
  • According to embodiments of the present invention, depending on whether the media stream generator includes a packet processing portion or packet processor adapted to edit payload data within a packet of the packetized source media stream, the inserter may or may not include a packetizing module or packetizor. For example, if the media stream generator is adapted to edit payload data within a packet of the packetized source media stream, the key frame inserter may not require a packetizor or packetizing module. In this scenario, the key frame inserter may simply pass an encoded key frame to the generator's packet processor, optionally with an indicator of an insertion point, and the processor may edit the corresponding payload data of the packet into which the key frame is to be inserted, either replacing a delta frame with the key frame or inserting the key frame between two delta frames.
  • According to embodiments of the present invention where the media stream generator does not include a portion (e.g. packet processor) adapted to edit packetized source media stream payload data (i.e. media stream frame data), the key frame inserter may include a frame replacement/insertion module. The frame replacement/insertion module may receive: (1) the source media stream frame data from a depacketizer, and (2) a corresponding encoded key frame from a key frame generator, which key frame generator generated the key frame based on the same source media stream data receiver by the frame replacement/insertion module. The replacement/insertion module may either replace a delta frame with the encoded key frame or insert the encoded key frame between two delta frames, and may pass the modified set of media stream frames to a packetizor or packetizing module. The packetizor/packetizing module receive the new set of frames, and may also receive packet metadata relating to the packet from which the media stream frame data used to generate the key frame was extracted (i.e. the packet into which the key frame is being inserted). Accordingly, the packetizor/packetizing module may generate a media stream packet including the encoded key frame, which packet may replace the original source media stream packet into which the key frame is to be inserted. According to this embodiment of the present invention, the media stream generator may include a packet replacing module adapted to replace a source media stream packet with a corresponding generated/derived packet produced by a key frame inserter, which key frame inserter may include a: (1) key frame generator, (2) frame replacement/insertion module, and (3) packetizing module.
  • According to some embodiments of the present invention, as part of an IPTV media distribution node, an IP based media stream generator, or set of media stream generators, may receive: (1) one or a set of a source packetized uni-cast media streams (e.g. addressed to the distribution node or to an IP address associated with the distribution node), (2) one or a set of source packetized multicast media streams addressed to IP addresses associated with the distribution node (e.g. the distribution node IP address or the IP addresses of the node's distribution clients), or (3) a combination of uni-cast and multicast packetized media streams, as described above. The media stream generator(s) may include packet processing circuitry (e.g. packet processor) adapted to replicate a source packetized media stream into multiple uni-cast or multicast packetized media streams, and to individually address the packetized media streams, so as to facilitate retransmission of the received packetized streams to appropriate distribution node clients.
  • The distribution node may also include a communication module adapted to receive from one or a set of client media presentation appliances requests for specific packetized media streams. Authorized requests for a given media stream (e.g. Channel 5) may cause the addresses of the requesting IP based media presentation appliance to be added to a distribution group list associated with the given media stream (i.e. Channel 5). The media stream generator(s) may accordingly add the requesting appliance's identifier (e.g. IP address) to the destination address field of packets generated or derived for retransmission to clients from or the source media stream associated with the given channel.
  • The node controller, receiving a request from a client media presentation appliance for a given channel associated with a specific packetized source media stream, may cause a key frame to be inserted into a media stream generated or otherwise derived from the specific source media stream, either before or shortly after the client media presentation appliance's identifier is added to an addressing field of the generated/derived media stream. The insertion of a key frame is intended to mitigate the time between the appliance receiving the media stream and being able to render a full image frame of the content within the media stream. According to some embodiments of the present invention, the node controller, or functionally equivalent node portion, may trigger a key frame inserter to insert a key from into the relevant media stream substantially immediately upon receiving a request. According to further embodiments of the present invention, the controller may wait a delay or hysteresis period between receiving a request for a given channel and triggering a key frame insertion into the relevant transmitted media stream. During this delay/hysteresis period, the controller may await and receive further requests for the same given channel from additional client appliances, thereby facilitating the insertion of one key frame to mitigate zapping time for several client appliances requesting the given channel. According to yet further embodiments of the present invention, the controller may only trigger a key frame insertion for a given request if the time interval between the request and the next key frame expected in the source media stream associated with the requested channel is greater than a predefined threshold/limit. If the controller determines that the next key frame is expected in the source media stream within the predefined limit of time (e.g. 0.5 seconds), it may not trigger a key frame insertion in response to the request. It should be clear to one of skill in the communication arts that any combination of the above listed insertion criteria, or any other insertion criteria/policy suited to balance the tradeoff between mitigating zapping time (i.e. time between channel request and image frame rendering) and mitigating bandwidth, may be applicable to the present invention.
  • According to some embodiments of the present invention, the node controller, or another portion of the system, may monitor, track, calculate or otherwise estimate/determine the bandwidth of a given packetized media stream transmitted to presentation devices/appliances and may regulate the compression factor utilized by the encoder in the key frame generator in direct relation with the bandwidth. For example, if multiple key frames are inserted into the media stream over some relatively short period of time (e.g. 3 key frames over 5 seconds), and as a result of the insertions the media stream's bandwidth has increased to a value above some predetermined media stream bandwidth target value (because key frames contain more data than delta frames), the controller may signal the key frame generator to encode the next key frame to be inserted (after the next zapping request) to use a higher compression factor (i.e. lower quality and lower bandwidth key frame) than used for the previous key frames. Conversely, if the media stream bandwidth is lower than a predefined target bandwidth, the controller may instruct the key frame generator to use a lower compression factor (i.e. higher quality and higher bandwidth key frame) than previously used.
  • According to further embodiments of the present invention, the node controller may regulate transmitted media stream bandwidth to maintain a predefined target bandwidth using a mixed replacement/insertion policy. If the bandwidth of a given stream is approaching or exceeding the target bandwidth, the next time a key is to be added, the controller may cause the key frame to replace a corresponding delta frame. Conversely, if the media stream bandwidth is significantly lower than a target bandwidth, the controller may cause a generated key frame to be inserted between two delta frames.
  • Although many of the novel features and techniques described herein were described in the context of an IP based media distribution network, it should be clear to one of skill in the art of communication that various novel features and techniques described herein find equal application in non-IP based media generation and distribution devices and systems.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The subject matter regarded as the invention is particularly pointed out and distinctly claimed in the concluding portion of the specification. The invention, however, both as to organization and method of operation, together with objects, features, and advantages thereof, may best be understood by reference to the following detailed description when read with the accompanying drawings in which:
  • FIG. 1 shows an exemplary IPTV distribution network architecture, starting from a “Headend” on the left side of the figure, and culminating with a viewer set-top boxes (“STB”) and other media presentation appliances on the right side of the figure in accordance with the prior art;
  • FIG. 2 shows a conceptual block diagram of an IP packet based media distribution node adapted to receive source media stream(s) and to generate/derive one or more multicast and/or unicast media stream(s) in accordance with some embodiments of the present invention;
  • FIG. 3 shows a flowchart including the steps of an exemplary method of operating a media stream distribution node according to some embodiments of the present invention;
  • FIGS. 4A-4C show conceptual block diagrams of three separate embodiments of a key frame insertion portions of a IP packet based media distribution nodes according to some embodiments of the present invention;
  • FIG. 5 shows a flowchart including the steps of an exemplary method of generating and inserting a key frame into a source media stream according to some embodiments of the present invention;
  • FIG. 6 shows a symbolic block diagram of a further embodiment of an IP based media stream distribution node according to some embodiments of the present invention, including a multi-delay tap architecture adapted to facilitate multiple media stream distribution sub-groups based on a single source media stream; and
  • FIG. 7 shows a symbolic block diagram of a further embodiment of an IP based media stream distribution node according to some embodiments of the present invention, including a media stream generator adapted to generate/derive multiple uni-cast and multicast media streams from each of a set of source media streams, and further including a switch adapted to connect either one of the source media streams or one of the derived steams to a media presentation appliance/device.
  • It will be appreciated that for simplicity and clarity of illustration, elements shown in the figures have not necessarily been drawn to scale. For example, the dimensions of some of the elements may be exaggerated relative to other elements for clarity. Further, where considered appropriate, reference numerals may be repeated among the figures to indicate corresponding or analogous elements.
  • DETAILED DESCRIPTION
  • In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the invention. However, it will be understood by those skilled in the art that the present invention may be practiced without these specific details. In other instances, well-known methods, procedures, components and circuits have not been described in detail so as not to obscure the present invention.
  • Unless specifically stated otherwise, as apparent from the following discussions, it is appreciated that throughout the specification discussions utilizing terms such as “processing”, “computing”, “calculating”, “determining”, or the like, refer to the action and/or processes of a computer or computing system, or similar electronic computing device, that manipulate and/or transform data represented as physical, such as electronic, quantities within the computing system's registers and/or memories into other data similarly represented as physical quantities within the computing system's memories, registers or other such information storage, transmission or display devices.
  • Embodiments of the present invention may include apparatuses for performing the operations herein. This apparatus may be specially constructed for the desired purposes, or it may comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but is not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs) electrically programmable read-only memories (EPROMs), electrically erasable and programmable read only memories (EEPROMs), magnetic or optical cards, or any other type of media suitable for storing electronic instructions, and capable of being coupled to a computer system bus.
  • The processes and displays presented herein are not inherently related to any particular computer or other apparatus. Various general purpose systems may be used with programs in accordance with the teachings herein, or it may prove convenient to construct a more specialized apparatus to perform the desired method. The desired structure for a variety of these systems will appear from the description below. In addition, embodiments of the present invention are not described with reference to any particular programming language. It will be appreciated that a variety of programming languages may be used to implement the teachings of the inventions as described herein.
  • The present invention is a method device and system for Internet Protocol (“IP”) based streaming of media content (e.g. audio, video and multimedia) to a media presentation appliance (e.g. IPTV set-top box or computer). According to some embodiments of the present invention, there may be provided a media stream generator adapted to derive one or more media streams from an IP based source media stream bearing content (e.g. data representing video frames such as MPEG video frames). The media stream generator may derive one or more media streams by: (1) deriving one or a set of uni-cast or multicast IP based media streams from the single source media stream, (2) readdressing the destination IP address(s) on some or all of the derived media streams, and/or (3) inserting into and/or replacing frames in the source media stream with data representing one or more image frames into the derived media stream.
  • According to some embodiments of the present invention, frames inserted in-between and/or replacing frames in the source media stream may: (1) represent new content inserted into the source media stream, and/or (2) be one or more frames derived from the frames within the source media stream. According to some embodiments of the present invention, the media stream generator may insert a key frame into the media stream and/or replace a non-key frame (e.g. an MPEG delta frame) with a key frame (e.g. an MPEG Intra frame or I-frame), such that the derived media stream may include more key frames than originally present in the source media stream.
  • According to some embodiments of the present invention, the media stream generator may include or be functionally associated with a key frame generator, which key frame generator may be part of, or functionally associated with, a key frame inserter. According to some embodiments of the present inventions, the key-frame generator may include a decoding module adapted to continuously decode frames of the source media stream into a data set representing a complete image frame, which complete image frame data set may be stored in a cyclic or running buffer. The decoding module may also be adapted to store metadata associated with the source media steam on the cyclical or running buffer, or on another functionally associated buffer. According to some embodiments of the present invention, the frame generator may also include a key frame encoder adapted to encode the complete image frame data stored in the cyclic/running buffer into a key frame suitable for insertion at an insertion point on the source media stream.
  • The key frame encoder may either continuously encode a running set of key frames, encoding a new key frame each time the complete image frame data set is updated in the buffer, or, according to further embodiments of the present invention, the key frame generator may only encode a key frame upon receiving a signal indicating an instruction to insert a key frame into the source media stream. The encoder may encode a key frame using one of several different compression factors, where higher compression factors result in lower quality and lower bandwidth key frames. It should be understood by one of ordinary skill in the art that any technique or technology, known today or to be derived in the future, for generating or encoding a key frame from a received media stream (packetized MPEG stream) or for transcoding a delta frame into a key frame (e.g. I-Frame) is applicable to the present invention. The Hands-On Guide to Streaming Media, Second Edition: an Introduction to Delivering On-Demand Media by Joe Follansbee teaches a variety of encoding and transcoding algorithms and techniques and is hereby incorporated by reference in its entirety.
  • According to some embodiments of the present invention, a media stream may be derived from a source media stream by inserting into the source media stream an encoded key frame, at an insertion point within the source media stream, either by replacing a delta frame or by inserting the encoded key frame between two delta frames. A key frame inserter, including or functionally associated with a key frame generator may, may insert one or more key frames into a source media stream, such that the delta frame following the inserted key frame may by be decoded and rendered into a complete image frame. Depending upon the specific architecture and operation of the media stream generator with which the key frame inserter is integrated or otherwise associated, the key frame inserter may or may not include a de-packetizor or de-packetizing module. According to embodiments of the present invention where the media stream generator is adapted to de-packetize the source media stream, or otherwise extract from the source packets' payload the source media stream frame data, and to provide the source media stream frame data to the key frame generator, the key frame inserter may not require a de-packetizing module. According to embodiments of the present invention where the media stream generator is not adapted to de-packetize or otherwise extract media stream frames from the packetized source media stream, the key frame inserter may include a de-packetizer.
  • According to embodiments of the present invention, depending on whether the media stream generator includes a packet processing portion or packet processor adapted to edit payload data within a packet of the packetized source media stream, the inserter may or may not include a packetizing module or packetizor. For example, if the media stream generator is adapted to edit payload data within a packet of the packetized source media stream, the key frame inserter may not require a packetizor or packetizing module. In this scenario, the key frame inserter may simply pass an encoded key frame to the generator's packet processor, optionally with an indicator of an insertion point, and the processor may edit the corresponding payload data of the packet into which the key frame is to be inserted, either replacing a delta frame with the key frame or inserting the key frame between two delta frames.
  • According to embodiments of the present invention where the media stream generator does not include a portion (e.g. packet processor) adapted to edit packetized source media stream payload data (i.e. media stream frame data), the key frame inserter may include a frame replacement/insertion module. The frame replacement/insertion module may receive: (1) the source media stream frame data from a depacketizer, and (2) a corresponding encoded key frame from a key frame generator, which key frame generator generated the key frame based on the same source media stream data receiver by the frame replacement/insertion module. The replacement/insertion module may either replace a delta frame with the encoded key frame or insert the encoded key frame between two delta frames, and may pass the modified set of media stream frames to a packetizor or packetizing module. The packetizor/packetizing module receive the new set of frames, and may also receive packet metadata relating to the packet from which the media stream frame data used to generate the key frame was extracted (i.e. the packet into which the key frame is being inserted). Accordingly, the packetizor/packetizing module may generate a media stream packet including the encoded key frame, which packet may replace the original source media stream packet into which the key frame is to be inserted. According to this embodiment of the present invention, the media stream generator may include a packet replacing module adapted to replace a source media stream packet with a corresponding generated/derived packet produced by a key frame inserter, which key frame inserter may include a: (1) key frame generator, (2) frame replacement/insertion module, and (3) packetizing module.
  • According to some embodiments of the present invention, as part of an IPTV media distribution node, an IP based media stream generator, or set of media stream generators, may receive: (1) one or a set of a source packetized uni-cast media streams (e.g. addressed to the distribution node or to an IP address associated with the distribution node), (2) one or a set of source packetized multicast media streams addressed to IP addresses associated with the distribution node (e.g. the distribution node IP address or the IP addresses of the node's distribution clients), or (3) a combination of uni-cast and multicast packetized media streams, as described above. The media stream generator(s) may include packet processing circuitry (e.g. packet processor) adapted to replicate a source packetized media stream into multiple uni-cast or multicast packetized media streams, and to individually address the packetized media streams, so as to facilitate retransmission of the received packetized streams to appropriate distribution node clients.
  • The distribution node may also include a communication module adapted to receive from one or a set of client media presentation appliances requests for specific packetized media streams. Authorized requests for a given media stream (e.g. Channel 5) may cause the addresses of the requesting IP based media presentation appliance to be added to a distribution group list associated with the given media stream (i.e. Channel 5). The media stream generator(s) may accordingly add the requesting appliance's identifier (e.g. IP address) to the destination address field of packets generated or derived for retransmission to clients from or the source media stream associated with the given channel.
  • The node controller, receiving a request from a client media presentation appliance for a given channel associated with a specific packetized source media stream, may cause a key frame to be inserted into a media stream generated or otherwise derived from the specific source media stream, either before or shortly after the client media presentation appliance's identifier is added to an addressing field of the generated/derived media stream. The insertion of a key frame is intended to mitigate the time between the appliance receiving the media stream and being able to render a full image frame of the content within the media stream. According to some embodiments of the present invention, the node controller, or functionally equivalent node portion, may trigger a key frame inserter to insert a key from into the relevant media stream substantially immediately upon receiving a request. According to further embodiments of the present invention, the controller may wait a delay or hysteresis period between receiving a request for a given channel and triggering a key frame insertion into the relevant transmitted media stream. During this delay/hysteresis period, the controller may await and receive further requests for the same given channel from additional client appliances, thereby facilitating the insertion of one key frame to mitigate zapping time for several client appliances requesting the given channel. According to yet further embodiments of the present invention, the controller may only trigger a key frame insertion for a given request if the time interval between the request and the next key frame expected in the source media stream associated with the requested channel is greater than a predefined threshold/limit. If the controller determines that the next key frame is expected in the source media stream within the predefined limit of time (e.g. 0.5 seconds), it may not trigger a key frame insertion in response to the request. It should be clear to one of skill in the communication arts that any combination of the above listed insertion criteria, or any other insertion criteria/policy suited to balance the tradeoff between mitigating zapping time (i.e. time between channel request and image frame rendering) and mitigating bandwidth, may be applicable to the present invention.
  • According to some embodiments of the present invention, the node controller, or another portion of the system, may monitor, track, calculate or otherwise estimate/determine the bandwidth of a given packetized media stream transmitted to presentation devices/appliances and may regulate the compression factor utilized by the encoder in the key frame generator in direct relation with the bandwidth. For example, if multiple key frames are inserted into the media stream over some relatively short period of time (e.g. 3 key frames over 5 seconds), and as a result of the insertions the media stream's bandwidth has increased to a value above some predetermined media stream bandwidth target value (because key frames contain more data than delta frames), the controller may signal the key frame generator to encode the next key frame to be inserted (after the next zapping request) to use a higher compression factor (i.e. lower quality and lower bandwidth key frame) than used for the previous key frames. Conversely, if the media stream bandwidth is lower than a predefined target bandwidth, the controller may instruct the key frame generator to use a lower compression factor (i.e. higher quality and higher bandwidth key frame) than previously used.
  • According to further embodiments of the present invention, the node controller may regulate transmitted media stream bandwidth to maintain a predefined target bandwidth using a mixed replacement/insertion policy. If the bandwidth of a given stream is approaching or exceeding the target bandwidth, the next time a key is to be added, the controller may cause the key frame to replace a corresponding delta frame. Conversely, if the media stream bandwidth is significantly lower than a target bandwidth, the controller may cause a generated key frame to be inserted between two delta frames.
  • Although many of the novel features and techniques described herein were described in the context of an IP based media distribution network, it should be clear to one of skill in the art of communication that various novel features and techniques described herein find equal application in non-IP based media generation and distribution devices and systems.
  • Turning now to FIG. 2, there is shown a conceptual block diagram of an IP packet based media distribution node adapted to receive source media stream(s) and to generate/derive one or more multicast and/or unicast media stream(s) in accordance with some embodiments of the present invention. The operation of the distribution node may be described in conjunction with FIG. 3, which shows a flowchart including the steps of an exemplary method of operating a media stream distribution node according to some embodiments of the present invention. A media stream generator may receive source media steam (Step 3000). The media stream generator may generate/derive one or more uni-cast or multicast media streams, each of which is addressed to different one or set of media presentation appliances. The IP address of an appliance requesting (step 3100) the content of a specific source media stream (e.g. channel 10) may be added to the header of a media stream generated/derived from the requested source stream. (step 3400). According to some embodiments of the present invention, a key frame generator may also generate and the media stream generator may insert a key frame into the relevant generated/derived stream in response to the request (steps 3200 and 3300).
  • FIGS. 4A-4C show conceptual block diagrams of three separate embodiments of key frame insertion portions of IP packet based media distribution nodes according to some embodiments of the present invention. The description of the embodiments shown in FIGS. 4A-4C may be understood in view of FIG. 5, which shows a flowchart including the steps of an exemplary method of generating and inserting a key frame into a source media stream according to some embodiments of the present invention. The basic steps of generating a key frame may include: (1) receiving the source media stream; (2) decoding an image frame data set from the source media stream; (3) maintaining a running (cyclical buffer) image frame data set based on the decided source media stream (steps 4000 and 4100); and (4) either continuously encoding a key frame based on the running image frame data set, or encoding a key frame upon receiving a signal to encode from a controller (step 4200). FIG. 5 also includes the step of either inserting the key frame in between two delta frames or replacing a delta frame with a corresponding key frame (at an insertion point) upon receiving a signal from a controller, which controller may trigger key frame generation and/or insertion and/or replacement in response to a request from a media presentation appliance/device to receive content associated with the source media stream.
  • Turning back to FIG. 4A, there is shown an embodiment of the present invention, including a de-packetizer (de-packetize module) adapted to de-packetize the received source media stream and to provide the media stream data (i.e. frames) to a key frame generator. The key frame generator may include a decoder adapted to convert the media stream frames into complete image frame data sets, and a running image frame buffer (e.g. cyclic buffer) adapted to store a running copy of image frame data sets. A key frame encoder may encode a complete image frame data set in the buffer into a key frame, either continuously, or in response to a signal from a controller. According to some embodiments of the present invention, the controller may also instruct the encoder as to which of compression factor to use in encoding the key frame.
  • According to embodiments corresponding to FIG. 4A, a frame replacement/insertion module may receive the de-packetized media stream frames from the de-packetizer along with an encoded key frame from the encoder and may either: (1) replace an frame of the source media stream with the encoded key frame, or (2) insert the encoded key frame between two frames of the source media stream. A packetizer (packetizing module) may receive the new set of media stream frames and may packetize the set using metadata received from the de-packetizer, thereby generating a new packet corresponding to the packet which was de-packetized used to generate the key frame. A packet replacing module may replace in the media stream the packet used to generate the key frame with the new packet.
  • Turning to FIG. 4B, there is shown an embodiment similar to the one in FIG. 4A, but with the key frame insertion replacement being performed by a packet processor adapted to read, process and edit packet payload data.
  • The embodiment shown in FIG. 4C includes a packet processor adapted to provide the key frame generator payload data (i.e. media stream frames) directly, without the need for an additional de-packetizing module. There is also shown in FIG. 4C a bandwidth monitoring module functionally associated with the controller, there enabling the controller to determine which encoding and insertion policy may be required for a given key frame.
  • Turning now to FIG. 6, there is shown a symbolic block diagram of a further embodiment of an IP based media stream distribution node according to some embodiments of the present invention, including a multi-delay tap architecture adapted to facilitate multiple media stream distribution sub-groups based on a single source media stream.
  • Turning now to FIG. 7, there is shown a symbolic block diagram of a further embodiment of an IP based media stream distribution node according to some embodiments of the present invention, including a media stream generator adapted to generate/derive multiple uni-cast and multicast media streams from each of a set of source media streams, and further including a switch adapted to connect either one of the source media streams or one of the derived steams to a media presentation appliance/device.
  • It should be clear to one of skill in the art that any novel feature, or combination features, shown as part of any of the above described embodiments may be applicable to another one of the described embodiments. While certain features of the invention have been illustrated and described herein, many modifications, substitutions, changes, and equivalents will now occur to those skilled in the art. It is, therefore, to be understood that the appended claims are intended to cover all such modifications and changes as fall within the true spirit of the invention.

Claims (15)

1. A device for deriving a second media stream from a first media stream comprising:
a key frame generator.
2. The device according to claim 1, wherein said media streams are packetized media streams and wherein said device further comprises a packet processor.
3. The device according to claim 2, wherein said packet processor is adapted to extract frame data from said first media stream and to provide the frame data to said key frame generator.
4. The device according to claim 3, wherein said packet processor is adapted to derive the second media stream by inserting a key frame generated by said key frame generator into a packet of the first media stream.
5. The device according to claim 2, further comprising a de-packetizing module adapted to extract frame data from the first media stream and to provide the extracted frame data to said key frame generator.
6. The device according to claim 5, wherein packet processor is adapted to derive the second media stream by inserting a key frame generated by said key frame generator into a packet of the first media stream.
7. The device according to claim 1, wherein said key frame generator continuously generates key frames based on the first media stream.
8. The device according to claim 1, wherein said key frame generator is adapted to generate a key frame based on the first media stream in response to a signal from a node controller.
9. The device according to claim 8, wherein said key frame generator is adapted to encode a key frame using a compression factor indicated by said node controller.
10. The device according to claim 8, wherein said media streams are packetized media streams and wherein said device further comprises a packet processor adapted to insert a client appliance identifier of a client requesting a channel associated with the media streams into an addressing field of the second media stream.
11. The device according to claim 10, wherein said packet processor is adapted to derive the second media stream from the first media stream by inserting a key frame generated by said key frame generator into a packet of the first media stream substantially concurrently with receiving a request from the client for the channel associated with the media streams.
12. A method for deriving a second media stream from a first media stream comprising:
generating a key frame based on the first media stream.
13. The method according to claim 12, wherein the media streams are packetized media streams and further including de-packetizing the first media stream.
14. The method according to claim 13, wherein de-packetized media frame data from the first media stream used to generate the key frame.
15. The method according to claim 13, further comprising inserting the key frame into a packet of the first media stream.
US12/143,944 2007-10-16 2008-06-23 Device Method and System for Providing a Media Stream Abandoned US20090165067A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/143,944 US20090165067A1 (en) 2007-10-16 2008-06-23 Device Method and System for Providing a Media Stream

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US99924207P 2007-10-16 2007-10-16
US4500508P 2008-04-15 2008-04-15
US12/143,944 US20090165067A1 (en) 2007-10-16 2008-06-23 Device Method and System for Providing a Media Stream

Publications (1)

Publication Number Publication Date
US20090165067A1 true US20090165067A1 (en) 2009-06-25

Family

ID=40567890

Family Applications (2)

Application Number Title Priority Date Filing Date
US12/143,944 Abandoned US20090165067A1 (en) 2007-10-16 2008-06-23 Device Method and System for Providing a Media Stream
US12/738,080 Active 2030-02-09 US9185151B2 (en) 2007-10-16 2008-10-22 Device, method and system for media packet distribution

Family Applications After (1)

Application Number Title Priority Date Filing Date
US12/738,080 Active 2030-02-09 US9185151B2 (en) 2007-10-16 2008-10-22 Device, method and system for media packet distribution

Country Status (3)

Country Link
US (2) US20090165067A1 (en)
EP (1) EP2212757A4 (en)
WO (1) WO2009050714A2 (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100162378A1 (en) * 2008-12-18 2010-06-24 Thusitha Jayawardena Methods and apparatus to enhance security in residential networks
US20110222687A1 (en) * 2008-08-13 2011-09-15 Gvbb Holdings S.A.R.L. Apparatus and method for encrypting image data, and decrypting the encrypted image data, and image data distribution system
US20120158918A1 (en) * 2008-05-07 2012-06-21 Chalk Media Service Corp. Method for enabling bandwidth management for mobile content delivery
US20120163290A1 (en) * 2010-12-28 2012-06-28 Broadcom Corporation Internet protocol low noise block front end architecture
US20130080486A1 (en) * 2011-09-22 2013-03-28 General Instrument Corporation Discovery of metadata for multimedia content stream traffic on a network
US20130185450A1 (en) * 2012-01-12 2013-07-18 Comcast Cable Communications, Llc Methods and systems for content control
US20130182557A1 (en) * 2010-06-30 2013-07-18 Huawei Technologies Co., Ltd. Method, apparatus and system for obtaining key information during fast channel switching
US20130347047A1 (en) * 2012-06-25 2013-12-26 Panasonic Corporation Content reproduction device, content reproduction system, and content reproduction method
US20180035174A1 (en) * 2016-08-01 2018-02-01 Iheartmedia Management Services, Inc. Media substitution triggered by broadcast watermark
US10375452B2 (en) * 2015-04-14 2019-08-06 Time Warner Cable Enterprises Llc Apparatus and methods for thumbnail generation
US10515115B2 (en) * 2017-03-03 2019-12-24 Proactive Cctv System and method for closed-circuit television file archival and compression
US10652594B2 (en) 2016-07-07 2020-05-12 Time Warner Cable Enterprises Llc Apparatus and methods for presentation of key frames in encrypted content
CN114598925A (en) * 2022-03-18 2022-06-07 脸萌有限公司 Video editing method, device, equipment and storage medium
US11800171B2 (en) 2014-03-19 2023-10-24 Time Warner Cable Enterprises Llc Apparatus and methods for recording a media stream

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011079965A1 (en) * 2010-01-04 2011-07-07 Telefonaktiebolaget L M Ericsson (Publ) Method and node in an internet protocol television (iptv) network
US8549583B2 (en) * 2010-06-22 2013-10-01 Echostar Broadcasting Corporation Apparatus, systems and methods for media content delivery
US9369723B2 (en) * 2011-07-14 2016-06-14 Comcast Cable Communications, Llc Preserving image quality in temporally compressed video streams
US10027995B2 (en) * 2016-01-21 2018-07-17 Treepodia Ltd. System and method for generating media content in evolutionary manner
FR3054765B1 (en) * 2016-07-28 2019-08-23 Bouygues Telecom METHOD FOR READING EQUIPMENT OF MULTIMEDIA CONTENT WITH TARGET DELAY IN RELATION TO DIRECT LESS THAN MAXIMUM DELAY GIVES
CN115174991B (en) * 2022-06-28 2023-11-24 Vidaa国际控股(荷兰)公司 Display equipment and video playing method

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060064716A1 (en) * 2000-07-24 2006-03-23 Vivcom, Inc. Techniques for navigating multiple video streams
US20070071239A1 (en) * 2005-09-26 2007-03-29 Microsoft Corporation Implementation of media-protection policies
US20070258586A1 (en) * 2006-04-28 2007-11-08 Chien-Chung Huang Personal video recorder having dynamic security functions and method thereof
US20080022084A1 (en) * 2006-07-21 2008-01-24 Sbc Knowledge Vertures, L.P. System and method for securing a network
US20080235722A1 (en) * 2007-03-20 2008-09-25 Baugher Mark J Customized Advertisement Splicing In Encrypted Entertainment Sources
US20080310496A1 (en) * 2007-06-12 2008-12-18 Microsoft Corporation Real-Time Key Frame Generation

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7500258B1 (en) * 1999-05-10 2009-03-03 Prime Research Alliance E., Inc. Advertisement subgroups for digital streams
US8392952B2 (en) * 2002-05-03 2013-03-05 Time Warner Cable Enterprises Llc Programming content processing and management system and method
US7562375B2 (en) * 2003-10-10 2009-07-14 Microsoft Corporation Fast channel change
US8291448B2 (en) * 2004-09-15 2012-10-16 Nokia Corporation Providing zapping streams to broadcast receivers
US20060075449A1 (en) 2004-09-24 2006-04-06 Cisco Technology, Inc. Distributed architecture for digital program insertion in video streams delivered over packet networks
US20070008969A1 (en) * 2005-07-05 2007-01-11 Elstermann Erik J Apparatuses and methods for delivering data stream content to consumer devices
US8135040B2 (en) * 2005-11-30 2012-03-13 Microsoft Corporation Accelerated channel change
US8627390B2 (en) * 2006-02-01 2014-01-07 Arris Solutions, Inc. Method and device for providing programs to multiple end user devices
US7793329B2 (en) 2006-02-06 2010-09-07 Kasenna, Inc. Method and system for reducing switching delays between digital video feeds using multicast slotted transmission technique
US8218654B2 (en) * 2006-03-08 2012-07-10 Cisco Technology, Inc. Method for reducing channel change startup delays for multicast digital video streams

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060064716A1 (en) * 2000-07-24 2006-03-23 Vivcom, Inc. Techniques for navigating multiple video streams
US20070071239A1 (en) * 2005-09-26 2007-03-29 Microsoft Corporation Implementation of media-protection policies
US20070258586A1 (en) * 2006-04-28 2007-11-08 Chien-Chung Huang Personal video recorder having dynamic security functions and method thereof
US20080022084A1 (en) * 2006-07-21 2008-01-24 Sbc Knowledge Vertures, L.P. System and method for securing a network
US20080235722A1 (en) * 2007-03-20 2008-09-25 Baugher Mark J Customized Advertisement Splicing In Encrypted Entertainment Sources
US20080310496A1 (en) * 2007-06-12 2008-12-18 Microsoft Corporation Real-Time Key Frame Generation

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120158918A1 (en) * 2008-05-07 2012-06-21 Chalk Media Service Corp. Method for enabling bandwidth management for mobile content delivery
US8843597B2 (en) * 2008-05-07 2014-09-23 Blackberry Limited Method for enabling bandwidth management for mobile content delivery
US8630419B2 (en) * 2008-08-13 2014-01-14 Gvbb Holdings S.A.R.L. Apparatus and method for encrypting image data, and decrypting the encrypted image data, and image data distribution system
US20110222687A1 (en) * 2008-08-13 2011-09-15 Gvbb Holdings S.A.R.L. Apparatus and method for encrypting image data, and decrypting the encrypted image data, and image data distribution system
US20100162378A1 (en) * 2008-12-18 2010-06-24 Thusitha Jayawardena Methods and apparatus to enhance security in residential networks
US8844018B2 (en) * 2008-12-18 2014-09-23 At&T Intellectual Property I, L.P. Methods and apparatus to enhance security in residential networks
US8995463B2 (en) * 2010-06-30 2015-03-31 Huawei Technologies Co., Ltd. Method, apparatus and system for obtaining key information during fast channel switching
US20130182557A1 (en) * 2010-06-30 2013-07-18 Huawei Technologies Co., Ltd. Method, apparatus and system for obtaining key information during fast channel switching
US20120163290A1 (en) * 2010-12-28 2012-06-28 Broadcom Corporation Internet protocol low noise block front end architecture
US10038493B2 (en) * 2010-12-28 2018-07-31 Avago Technologies General Ip (Singapore) Pte. Ltd Internet protocol low noise block front end architecture
US20130080486A1 (en) * 2011-09-22 2013-03-28 General Instrument Corporation Discovery of metadata for multimedia content stream traffic on a network
US10743052B2 (en) 2012-01-12 2020-08-11 Comcast Cable Communications, Llc Methods and systems for content control
US9363540B2 (en) * 2012-01-12 2016-06-07 Comcast Cable Communications, Llc Methods and systems for content control
US11451849B2 (en) 2012-01-12 2022-09-20 Comcast Cable Communications, Llc Methods and systems for content control
US20130185450A1 (en) * 2012-01-12 2013-07-18 Comcast Cable Communications, Llc Methods and systems for content control
US8850502B2 (en) * 2012-06-25 2014-09-30 Panasonic Corporation Content reproduction device, content reproduction system, and content reproduction method
US20130347047A1 (en) * 2012-06-25 2013-12-26 Panasonic Corporation Content reproduction device, content reproduction system, and content reproduction method
US11800171B2 (en) 2014-03-19 2023-10-24 Time Warner Cable Enterprises Llc Apparatus and methods for recording a media stream
US11310567B2 (en) 2015-04-14 2022-04-19 Time Warner Cable Enterprises Llc Apparatus and methods for thumbnail generation
US10375452B2 (en) * 2015-04-14 2019-08-06 Time Warner Cable Enterprises Llc Apparatus and methods for thumbnail generation
US10652594B2 (en) 2016-07-07 2020-05-12 Time Warner Cable Enterprises Llc Apparatus and methods for presentation of key frames in encrypted content
US11457253B2 (en) 2016-07-07 2022-09-27 Time Warner Cable Enterprises Llc Apparatus and methods for presentation of key frames in encrypted content
US11659256B2 (en) 2016-08-01 2023-05-23 Iheartmedia Management Services, Inc. Media substitution task based on broadcast watermark
US10932011B2 (en) * 2016-08-01 2021-02-23 Iheartmedia Management Services, Inc. Media substitution triggered by broadcast watermark
US20180035174A1 (en) * 2016-08-01 2018-02-01 Iheartmedia Management Services, Inc. Media substitution triggered by broadcast watermark
US10515115B2 (en) * 2017-03-03 2019-12-24 Proactive Cctv System and method for closed-circuit television file archival and compression
CN114598925A (en) * 2022-03-18 2022-06-07 脸萌有限公司 Video editing method, device, equipment and storage medium

Also Published As

Publication number Publication date
US9185151B2 (en) 2015-11-10
WO2009050714A3 (en) 2010-03-11
EP2212757A4 (en) 2013-03-20
EP2212757A2 (en) 2010-08-04
WO2009050714A2 (en) 2009-04-23
US20110083146A1 (en) 2011-04-07

Similar Documents

Publication Publication Date Title
US20090165067A1 (en) Device Method and System for Providing a Media Stream
KR101377952B1 (en) Method for transmitting a broadcasting signal, method for receiveing a broadcasting signal and apparatus for the same
EP1842337B1 (en) Multicast distribution of streaming multimedia content
KR101356502B1 (en) Method for transmitting a broadcasting signal, method for receiveing a broadcasting signal and apparatus for the same
US20060075449A1 (en) Distributed architecture for digital program insertion in video streams delivered over packet networks
JP2010541384A (en) Unicast delivery of multimedia content
Fuchs et al. Optimizing channel change time in IPTV applications
WO2008000114A1 (en) Method for interfusing conference television system with iptv system and apparatus thereof
KR100859095B1 (en) IPTV service system for providing distance learning contents and method thereof
KR100860464B1 (en) IPTV service system for providing news contents, method for transmitting news contents, method for receiving news contents, and recording medium includeing program for requesting and receiving news contents
Bing 3D and HD broadband video networking
KR100906981B1 (en) Method of reducing ch changing delay using buffering server in iptv system
Punchihewa et al. Tutorial on IPTV and its latest developments
KR100836470B1 (en) Iptv system for providing sports relay broadcasting service and method thereof
Škrbic et al. A unicast-based IPTV service control
CN101188740A (en) Multicast method for living broadcast network TV
KR20090019094A (en) Morning call service system and method for providing personal custom contents
KR20090009352A (en) Method and system for providing time-shifted broadcasting service
WO2008095314A1 (en) System and method for distributed and dynamic transcoding
Bhuvaneshwari et al. IPTV—The next generation television
KR20100084284A (en) Method for recoding adaptive broadcast data and broadcast receiver
Iano et al. How to architect an IPTV system
KR20070104754A (en) Preview enabled digital broadcasting system and method using ip network
Rugova et al. Traffic load and cost analysis for different IPTV architectures
van der Merwe et al. A Network Based Replay Portal: Service Scenarios, Architecture and Implementation

Legal Events

Date Code Title Description
AS Assignment

Owner name: CORRIGENT SYSTEMS LTD.,ISRAEL

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BRUCKMAN, LEON;MOR, GAL;ZELIG, DAVID;SIGNING DATES FROM 20080903 TO 20080907;REEL/FRAME:022186/0537

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION