Coordination of video stream timing in cloud-based video streaming system
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
H04N-007/173
H04N-021/2665
H04N-021/242
H04N-021/262
H04N-021/234
H04N-021/2365
출원번호
US-0708139
(2015-05-08)
등록번호
US-9686576
(2017-06-20)
발명자
/ 주소
VanAntwerp, Mark Daniel
출원인 / 주소
iStreamPlanet Co.
대리인 / 주소
Nicholson, De Vos, Webster & Elliott, LLP
인용정보
피인용 횟수 :
0인용 특허 :
30
초록▼
A method to coordinate video stream timing is disclosed. In one embodiment, a request is received at a streaming platform coordinator (SPC) to create a plurality of synchronized media workflows for video sources. Using the plurality of video sources as input, the SPC transmits a request from the SPC
A method to coordinate video stream timing is disclosed. In one embodiment, a request is received at a streaming platform coordinator (SPC) to create a plurality of synchronized media workflows for video sources. Using the plurality of video sources as input, the SPC transmits a request from the SPC to at least one video streaming platform to create the plurality of media workflows, which are assigned to a plurality of workers. The SPC causes the plurality of videos to be routed to the plurality of workers upon receiving the request to route them. The SPC then determines a set of timing offsets to synchronize the plurality of media workflows, and makes the set of timing offsets available to the plurality of workers so that the workers publish synchronized media outputs. A system to perform the method and a storage medium storing instructions to perform the method are disclosed too.
대표청구항▼
1. A method executed by an electronic device implementing a streaming platform coordinator (SPC) to coordinate processing of a plurality of video sources, originated from a plurality of video output devices to broadcast an event concurrently, the method comprising: receiving a request to create a pl
1. A method executed by an electronic device implementing a streaming platform coordinator (SPC) to coordinate processing of a plurality of video sources, originated from a plurality of video output devices to broadcast an event concurrently, the method comprising: receiving a request to create a plurality of media workflows, where each of the plurality of video sources correspond to a separate one of the plurality of media workflows, wherein the plurality of media workflows are to be synchronized;responsive to receiving the request at the SPC to create the plurality of media workflows, transmitting a request from the SPC to at least one video streaming platform to create the plurality of media workflows using the plurality of video sources as input, wherein the plurality of media workflows are assigned to a plurality of workers;receiving requests from the at least one video streaming platform to route the plurality of video sources to the plurality of workers;causing the plurality of video sources to be routed to the plurality of workers;determining a set of timing offsets to synchronize the plurality of media workflows, where each one of the plurality of media workflows has a separate timing offset in the set of timing offsets; andmaking the set of timing offsets available to the plurality of workers, wherein the plurality of workers apply the set of timing offsets so that output of the plurality of media workflows are synchronized, where the synchronized output has a matched timing correlated to a time of recording by each of the plurality of video sources. 2. The method of claim 1, wherein the request to create the plurality of media workflows using the plurality of video sources as input is to transmitted to at least two video streaming platforms that are located separately. 3. The method of claim 1, wherein determining the set of timing offsets to synchronize the plurality of media workflows comprising: receiving packets of the plurality of video sources;extracting explicit digital timing information embedded in the packets; andcalculating a timing offset for each media workflow based on the explicit digital timing information. 4. The method of claim 1, wherein determining the set of timing offsets to synchronize the plurality of media workflows comprises:receiving packets of the plurality of video sources;identifying a sequence of audiovisual test patterns in each of the plurality of video sources, wherein the sequence of test patterns is sent simultaneously in all of the plurality of video sources; andcalculating a timing offset for each media workflow based on when the sequence of test patterns is found in each of the plurality of video sources. 5. The method of claim 1, wherein determining the set of timing offsets to synchronize the plurality of media workflows comprises: making current timing offset information available to an external override system;receiving modified timing offset information for one or more media workflows back from the external override system; andretaining the modified timing offset information for any impacted media workflow. 6. The method of claim 1, wherein making the set of timing offsets available to the plurality of workers comprises: receiving a timing offset request from each of the plurality of workers; andtransmitting a response containing one timing offset for one requesting worker for each timing offset request. 7. The method of claim 1, wherein each of the plurality of video output devices is a video camera. 8. The method of claim 7, wherein each of the plurality of video sources is one view point of the event. 9. An electronic device to serve as a streaming platform coordinator (SPC) to coordinate processing of a plurality of video sources, originated from a plurality of video output devices to broadcast an event concurrently, the electronic device comprising: a processor and a non-transitory machine-readable storage medium coupled to the processor, the non-transitory machine-readable storage medium containing operations executable by the processor, wherein the electronic device is operative to: receive a request to create a plurality of media workflows, where each of for the plurality of video sources correspond to a separate one of the plurality of media workflows, wherein the plurality of media workflows are to be synchronized; responsive to receiving the request at the SPC to create the plurality of media workflows, transmit a request from the SPC to at least one video streaming platform to create the plurality of media workflows using the plurality of video sources as input, wherein the plurality of media workflows are assigned to a plurality of workers; receive requests from the at least one video streaming platform to route the plurality of video sources to the plurality of workers; cause the plurality of video sources to be routed to the plurality of workers; determine a set of timing offsets to synchronize the plurality of media workflows, where each one of the plurality of media workflows has a separate timing offset in the set of timing offsets; and make the set of timing offsets available to the plurality of workers, wherein the plurality of workers apply the set of timing offsets so that output of the plurality of media workflows are synchronized, where the synchronized output has a matched timing correlated to a time of recording by each of the plurality of video sources. 10. The electronic device of claim 9, wherein the determination of the set of timing offsets to synchronize the plurality of media workflows is for the electronic device to further operative to: receive packets of the plurality of video sources; extract explicit digital timing information embedded in the packets; and calculate a timing offset for each media workflow based on the explicit digital timing information. 11. The electronic device of claim 9, wherein the determination of the set of timing offsets to synchronize the plurality of media workflows is for the electronic device to further operative to: receive packets of the plurality of video sources; identify a sequence of audiovisual test patterns in each of the plurality of video sources, wherein the sequence of test patterns is sent simultaneously in all of the plurality of video sources; and calculate a timing offset for each media workflow based on when the sequence of test patterns is found in each of the plurality of video sources. 12. The electronic device of claim 9, wherein the determination of the set of timing offsets to synchronize the plurality of media workflows is for the electronic device to further operative to: make current timing offset information available to an external override system; receive modified timing offset information for one or more media workflows back from the external override system; and retain the modified timing offset information for any impacted media workflow. 13. The electronic device of claim 9, wherein to make the set of timing offsets available to the plurality of workers include the electronic device to further operative to: receive a timing offset request from each of the plurality of workers; and transmit a response containing one timing offset for one requesting worker for each timing offset request. 14. The electronic device of claim 9, wherein each of the plurality of video output devices is a video camera. 15. A non-transitory machine-readable storage medium having instructions stored therein, which when executed by a processor, cause the processor to perform operations in an electronic device implementing a streaming platform coordinator (SPC) to coordinate processing of a plurality of video sources, originated from a plurality of video output devices to broadcast an event concurrently, the operations comprising: receiving a request to create a plurality of media workflows, where each of for the plurality of video sources correspond to a separate one of the plurality of media workflows, wherein the plurality of media workflows are to be synchronized;responsive to receiving the request at the SPC to create the plurality of media workflows, transmitting a request from the SPC to at least one video streaming platform to create the plurality of media workflows using the plurality of video sources as input, wherein the plurality of media workflows are assigned to a plurality of workers;receiving requests from the at least one video streaming platform to route the plurality of video sources to the plurality of workers;causing the plurality of video sources to be routed to the plurality of workers;determining a set of timing offsets to synchronize the plurality of media workflows, where each one of the plurality of media workflows has a separate timing offset in the set of timing offsets; andmaking the set of timing offsets available to the plurality of workers, wherein the plurality of workers apply the set of timing offsets so that output of the plurality of media workflows are synchronized, where the synchronized output has a matched timing correlated to a time of recording by each of the plurality of video sources. 16. The storage medium of claim 15, wherein the request to create the plurality of media workflows using the plurality of video sources as input is to transmitted to at least two video streaming platforms that are located separately. 17. The storage medium of claim 15, wherein determining the set of timing offsets to synchronize the plurality of media workflows comprising: receiving packets of the plurality of video sources;extracting explicit digital timing information embedded in the packets; andcalculating a timing offset for each media workflow based on the explicit digital timing information. 18. The storage medium of claim 15, wherein determining the set of timing offsets to synchronize the plurality of media workflows comprises: receiving packets of the plurality of video sources;identifying a sequence of audiovisual test patterns in each of the plurality of video sources, wherein the sequence of test patterns is sent simultaneously in all of the plurality of video sources; andcalculating a timing offset for each media workflow based on when the sequence of test patterns is found in each of the plurality of video sources. 19. The storage medium of claim 15, wherein determining the set of timing offsets to synchronize the plurality of media workflows comprises: making current timing offset information available to an external override system;receiving modified timing offset information for one or more media workflows back from the external override system; andretaining the modified timing offset information for any impacted media workflow. 20. The storage medium of claim 15, wherein making the set of timing offsets available to the plurality of workers comprises: receiving a timing offset request from each of the plurality of workers; andtransmitting a response containing one timing offset for one requesting worker for each timing offset request.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (30)
Lee, Myung-Cheol; Choi, Hyun-Hwa; Lee, Hun-Soon; Kim, Byoung-Seob; Lee, Mi-Young, Apparatus and method for managing data stream distributed parallel processing service.
Goldszmidt German Sergio ; Willebeek-LeMair Marc Hubert ; Hon Kenneth Sau-yee,HKX, Client-based dynamic switching of streaming servers for fault-tolerance and load balancing.
Dave Bharat P. ; Jha Niraj K., Concurrent hardware-software co-synthesis of hard real-time aperiodic and periodic specifications of embedded system architectures.
Angela C. W. Lai ; James Peter Hoddie ; Howard E. Chartock ; Christopher V. Pirazzi ; Giovanni M. Agnoli ; Harry A. Chomsky ; Steve H. Chen ; Hitoshi Hokamura, Distributed on-demand media transcoding system and method.
Buco, Melissa Jane; Chaar, Jarir Kamel; Chang, Rong Nickle; Hunt, Guerney Douglass Holloway; Luan, Laura Zaihua; Ward, Christopher, Execution order management of multiple processes on a data processing system by assigning constrained resources to the processes based on resource requirements and business impacts.
Bonomi, Mauro; Fritsch, Jean-Georges; Sweeney, Patrick James; Osborne, Randolph; Morris, Jr., Charles Francis; Majors, Reed; Degrange, Francis Michel; Locke, Ian; Ng, Johnny C. Y.; Cao, Yousheng; Liu, Method and system for delivering media services and application over networks.
Beyer, Dirk; Wiener, Janet; Kelly, Terence, Method of dispatching tasks in multi-processor computing environment with dispatching rules and monitoring of system status.
Glover, Michael A.; Joseph, Michael Todd; Contavalli, Carlo; Krahnstoever, Nils Oliver; DeWeese, Thomas Edward; Schiller, Harold Jason, Multicast group ingestion.
Moote, Stanley R.; Delay, John L.; Bugir, Taras M., System and method for controlling content and delivery of internet protocol television (IPTV) services.
Kwatra, Vivek; Yagnik, Jay; Toshev, Alexander T.; Suryanarayan, Poonam, System and method for exploiting segment co-occurrence relationships to identify object location in images.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.