Process for supplying video-on-demand and other requested programs and services from a headend
First Claim
1. A process for supplying video-on-demand programs to a plurality of customers over a shared hybrid fiber coaxial cable transmission medium (hereafter HFC) of a cable TV system, comprising the steps:
- receiving one or more input streams of MPEG or other compressed video data in packets from one or more video servers;
receiving one or more requests for video-on-demand programs transmitted by said customers over an upstream logical channel on said HFC;
mapping said one or more requests to one or more program identifier codes, and sending messages to one or more video servers telling them which video-on-demand data files to output, and using said program identifier codes to cull out compressed video packets of at least requested video-on-demand programs;
determining the customer from which each upstream request came;
determining how many programs and/or services each customer requested from the same customer premises;
looking up the number of tuners each customer has in his cable modem or gateway;
determining which logical channels and subchannels are available to send requested programs and/or services;
comparing the number of requested programs and/or services from each customer premises to the number of tuners in that customer'"'"'s cable modem or gateway;
step for culling out packets bearing data of said components of all requested video programs and/or other services from streams of packets output by servers in response to requests sent thereto, and attempting to organize and transmit packets bearing data of all components of the programs and/or services requested by a customer on a number of channels that matches the number of tuners said customer has in his or her cable modem or gateway;
sending one or more downstream messages to said customers telling them which logical channels and subchannels upon which they can find their requested video-on-demand program(s) or other requested services.
5 Assignments
0 Petitions
Accused Products
Abstract
A system for providing video-on-demand service, broadband internet access and other broadband services over T-carrier systems including a pull multiplexer cherrypicker at the head end is disclosed. The pull multiplexer receives upstream requests and cull out MPEG or other compressed video packets, IP packets and other data packet types to satisfy the requests or to send pushed programming downstream. The downstream can be DSL or HFC. Each customer has a cable modem, DSL modem or a gateway which interfaces multiple signal sources to a LAN to which settop decoders, digital phones, personal computers, digital FAX machines, video cameras, digital VCRs etc. can be attached. Each gateway can coupled the LAN to a DSL line or HFC through a cable modem or a satellite dish through a satellite transceiver. A PSTN and conventional TV antenna interface is also provided.
-
Citations
10 Claims
-
1. A process for supplying video-on-demand programs to a plurality of customers over a shared hybrid fiber coaxial cable transmission medium (hereafter HFC) of a cable TV system, comprising the steps:
-
receiving one or more input streams of MPEG or other compressed video data in packets from one or more video servers;
receiving one or more requests for video-on-demand programs transmitted by said customers over an upstream logical channel on said HFC;
mapping said one or more requests to one or more program identifier codes, and sending messages to one or more video servers telling them which video-on-demand data files to output, and using said program identifier codes to cull out compressed video packets of at least requested video-on-demand programs;
determining the customer from which each upstream request came;
determining how many programs and/or services each customer requested from the same customer premises;
looking up the number of tuners each customer has in his cable modem or gateway;
determining which logical channels and subchannels are available to send requested programs and/or services;
comparing the number of requested programs and/or services from each customer premises to the number of tuners in that customer'"'"'s cable modem or gateway;
step for culling out packets bearing data of said components of all requested video programs and/or other services from streams of packets output by servers in response to requests sent thereto, and attempting to organize and transmit packets bearing data of all components of the programs and/or services requested by a customer on a number of channels that matches the number of tuners said customer has in his or her cable modem or gateway;
sending one or more downstream messages to said customers telling them which logical channels and subchannels upon which they can find their requested video-on-demand program(s) or other requested services. - View Dependent Claims (2, 3, 4)
-
-
5. A process for supplying video-on-demand programs to a plurality of customers over a shared transmission medium, comprising the steps:
-
receiving one or more input streams of MPEG or other compressed video data in packets from one or more video servers;
receiving one or more input streams of internet protocol format packets from one or more WAN servers or gateways or routers coupled to a wide area network;
receiving one or more input streams of data from a T-carrier interface circuit;
receiving one or more requests for video-on-demand programs and/or services encoded in data provided by said one or more WAN servers or gateways or routers or said T-carrier interface circuits, said one or more requests transmitted by said customers over an upstream logical channel on said transmission medium;
mapping said one or more requests to one or more program identifier codes, P packet address information or other packet identifying information, and using said program identifier codes for requested video-on-demand programs to send messages to one or more video servers telling them which video-on-demand data files to output, and using said program identifier codes and/or P packet address information or other packet identifying information to cull out compressed video packets of at least requested video-on-demand program(s) and/or service(s);
determining the customer from which each upstream request came;
determining how many programs and/or services each customer requested from the same customer premises;
looking up the number of tuners each customer has in his cable modem or gateway;
determining which logical channels and subchannels are available to send requested programs and/or services;
comparing the number of requested programs and/or services from each customer premises to the number of tuners in that customer'"'"'s cable modem or gateway;
step for culling out packets bearing data of said components of all requested video programs and/or other services from streams of packets output by servers in response to requests sent thereto, and attempting to organize and transmit packets bearing data of all components of the programs and/or services requested by a customer on a number of channels that matches the number of tuners said customer has in his or her cable modem or gateway;
sending downstream messages to said customers telling them which logical channels and subchannels upon which they can find their requested video-on-demand program(s) and/or services; and
receiving upstream internet protocol format and/or other format upstream data packets and routing them to the appropriate WAN server, gateway or router or said T-carrier interface circuitry. - View Dependent Claims (6, 7, 8)
-
-
9. A head end cherrypicker apparatus comprising:
-
an upstream gateway for receiving upstream requests for video-on-demand programs and/or broadcast video programs and/or data services and sending messages to one or more servers that can supply the requested video-on-demand program(s) and/or data service(s);
a plurality of external inputs for receiving MPEG packets and Internet Protocol (P) packets from servers which supply said video-on-demand programs broadcast video programs and/or data services;
a plurality of cherrypicker culling switches each having a plurality of inputs and an output;
a plurality of distribution means, each coupled to some or all of said external inputs so as to receive MPEG packets and/or P packets on said external inputs to which said distribution means is coupled, for supplying said MPEG packets and/or P packets to inputs of said plurality of cherrypicker culling switches;
a plurality of recoding circuits, each having an input coupled to an output of a cherrypicker culling switch, and each having an output;
a plurality of downstream transmitters, each having an input coupled to an output of a recoding circuit to receive data to be transmitted downstream;
control means for receiving request data from said upstream gateway indicating said video program(s) and/or service(s) each customer has requested and for using said request data to generate control signals to said cherrypicker culling switches to control the culling process each switch performs, and for determining how many programs and/or service each customer has requested and how many tuners each customer has in his or her set top decoder or gateway and for determining which logical channels and subchannels are available for transmission of requested programs and/or services to each customer and for generating control signals to said recoding circuits to control recompression of data of requested programs and/or services into the available bandwidth and for generating control signals to said downstream transmitters to control which packets output from said recoding circuits are transmitted on which logical channels and subchannels, and for causing said transmitters to send downstream messages to a set top decoder or gateway of each customer who requested video programs and/or services indicating on which logical channels and subchannels said requested video programs and/or services can be found.
-
-
10. A head end cherrypicker apparatus comprising:
-
an upstream gateway for receiving upstream requests for video-on-demand programs and/or data services and sending messages to one or more servers that can supply the requested program(s) and/or service(s);
a plurality of external inputs for receiving MPEG packets and Internet Protocol (P) packets from servers which supply said video-on-demand programs and/or data services;
a plurality of cherrypicker culling switches having a plurality of inputs and an output;
a plurality of distribution means, each coupled to some or all of said external inputs, for receiving MPEG packets and packets on said external inputs to which said distribution means is coupled, and for supplying said packets to inputs of said plurality of cherrypicker culling switches to which said distribution means is coupled;
a plurality of recoding circuits, each having an input coupled to an output of a cherrypicker culling switch, and each having an output;
a plurality of downstream transmitters, each having an input to receive data from an output of one of said recoding circuits to be transmitted downstream and each having an output for coupling to a downstream transmission medium;
control means for receiving request data from said upstream gateway indicating said program(s) and/or service(s) each customer has requested and for using said request data to generate control signals to said cherrypicker culling switches to control the culling process each switch performs, and for determining how many programs and/or service each customer has requested and how many tuners each customer has in his or her set top decoder or gateway and for determining which logical channels and subchannels are available for transmission of requested programs and/or services to each customer and for determining if enough subchannels on an appropriate number of logical channels can be made available to deliver requested video programs and/or data services to a customer by moving and/or combining data on subchannels already in use by other customers, and for generating control signals to said recoding circuits to control decompression and recompression of data of requested programs and/or services into the available bandwidth, and for packetizing recompressed data received from said recoding circuits and sending each packet to an appropriate downstream transmitter, and for generating control signals to said downstream transmitters to control which packets are transmitted on which logical channels and subchannels, and for causing said transmitters to send downstream messages to a set top decoder or gateway of each customer who requested programs and/or services indicating on which logical channels and subchannels said requested programs and/or services can be found.
-
Specification