IP Library Granted Patent US 12,726,642
Granted Patent B2
US 12,726,642 · App. 18/392,409 · Granted Sep 1, 2026

Method and system for high throughput live and offline multimedia transcoding

Inventor: Frédéric Giasson (Canton-de-Hatley, CA)
Assignee: CORESEE, INC.
H04N19/40H04N19/177
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,726,642
App. No.
18/392,409
Granted
Sep 1, 2026
Kind
B2
Abstract

A versatile high-throughput multimedia transcoding station, serving a plurality of multimedia sources, employs transcoding resources including a pool of decoders, a pool of signal-adaptors, and a pool of encoders operating concurrently to realize low-latency transcoding of high-flow-rate multimedia streams. A multimedia stream contains a video stream organized into source groups-of-pictures (GOPs). Upon receiving a transcoding request indicating characteristics of a source multimedia stream and desired characteristics of a destination multimedia stream, an orchestrator rapidly allocates a resource for each GOP and coordinates activation of a content-processing assembly which encompasses the transcoding resources and means for distributing each GOP to compatible resources. The orchestrator assembly monitors progress of GOPs' processing and, when needed under high workload fluctuation, instructs a multimedia source to pause transmission. Each of the decoders, signal adaptors, and encoders comprises a respective hardware processor coupled to a memory device storing software instructions and a buffer holding intermediate data.

Claims (67)

1 . A transcoding station for multimedia transcoding comprising:

a network interface for receiving from a multimedia source a transcoding request and a multimedia stream comprising a video stream organized into source groups-of-pictures (GOPs), said transcoding request indicating a first standard according to which said multimedia stream is formed and a second standard according to which an encoded stream is to be formed;

a pool of decoders for concurrently decoding different GOPs, according to said first standard, to produce respective decoded GOPs;

a pool of signal-adaptors for concurrently processing different decoded GOPs to produce respective adapted GOPs; and

a pool of encoders for concurrently encoding different adapted GOPs to produce respective encoded GOPs according to said second standard;

an orchestrator assembly configured to:

assign each source GOP to an available decoder, each decoded GOP to an available signal adaptor, and each adapted GOP to an available encoder;

track counts of source GOPs, decoded GOPs, and adapted GOPs waiting for assignment to respective decoders, signal-adaptors, and encoders, respectively;

subject to a determination that any of the counts exceeds a respective prescribed threshold, instruct the multimedia source, through the network interface, to pause transmission of said multimedia stream;

subject to a determination that none of the counts exceeds a corresponding prescribed threshold while transmission of the multimedia stream is paused, instruct the multimedia source, through the network interface, to resume transmission of said multimedia stream; and

a content-processing assembly, configured to provide said each source GOP access to said available decoder, said each decoded GOP access to said available signal adaptor, and said each adapted GOP access to said available encoder.

2 . The transcoding station of claim 1 further comprising an output-collating module, coupled to said network interface, configured to arrange successive encoded GOPs in the order of corresponding source GOPs.

3 . The transcoding station of claim 1 wherein each decoder of said pool of decoders, each signal adaptor of said pool of signal adaptors, and each encoder of said pool of encoders comprises a respective hardware processor coupled to a memory device storing software instructions, and a buffer holding intermediate data.

4 . The transcoding station of claim 1 wherein said orchestrator assembly is further configured to:

upon receiving said transcoding request from said multimedia source:

determine availability time based on current occupancy of each of said pool of decoders, said pool of signal adaptors, and said pool of encoders; and

communicate said availability time to said multimedia source through said network interface.

5 . The transcoding station of claim 1 wherein said content-processing assembly comprises:

a first content-access unit coupled to said network interface and said pool of decoders;

a second content-access unit coupled to said pool of decoders and said pool of signal-adaptors;

a third content-access unit coupled to said pool of signal-adaptors and said pool of encoders; and

a fourth content-access unit, comprising a collating module, coupled to said pool of encoders and said network interface.

6 . The transcoding station of claim 5 wherein said orchestrator assembly comprises an orchestrator core coupled to a set of controllers comprising:

a first controller, coupled to said first content-access unit and said pool of decoders;

a second controller, coupled to said second content-access unit and said pool of signal adaptors; and

a third controller coupled to said third content-access unit and said pool of encoders.

7 . The transcoding station of claim 1 wherein said network interface is further configured to:

affix a GOP identifier to said each source GOP of said multimedia stream; and

send the source GOP identifiers and corresponding metadata to said orchestrator assembly and to said content-processing assembly.

8 . The transcoding station of claim 5 wherein said orchestrator assembly is further configured to:

queue an identifier of said each source GOP;

upon locating said available decoder, instruct said content-processing assembly to process content of said each source GOP;

queue an identifier of said each decoded GOP;

upon locating said available signal adaptor, instruct said content-processing assembly to process content of said each decoded GOP;

queue an identifier of said each adapted GOP;

upon locating said available encoder, instruct said content-processing assembly to process content of said each adapted GOP.

9 . The transcoding station of claim 1 wherein:

said pool of decoders comprises a first number of clusters of respective distinct decoders;

said pool of signal-adaptors comprises a second number of clusters of respective distinct signal-adaptors;

said pool of encoders comprises a third number of clusters of respective distinct encoders;

and

based on information within said transcoding request:

said available decoder is selected from a compatible cluster of said first number of clusters;

said available signal-adaptor is selected from a compatible cluster of said second number of clusters; and

said available encoder is selected from a compatible cluster of said third number of clusters.

10 . A method of multimedia transcoding comprising:

receiving, at a network interface, from a multimedia source, a transcoding request and a multimedia stream comprising a video stream organized into source groups-of-pictures (GOPs) and corresponding metadata, said transcoding request indicating a first standard according to which said multimedia stream is formed and a second standard according to which an encoded stream is to be formed;

and

performing, using a hardware orchestrator assembly and a content-processing assembly, processes of:

supplying said source GOPs to a pool of decoding workers, with multiple decoding workers concurrently decoding different GOPs, according to said first standard, to produce respective decoded GOPs;

supplying said respective decoded GOPs to a pool of signal-adaptation workers, with multiple signal-adaptation workers concurrently processing different decoded GOPs to produce respective adapted GOPs;

supplying said respective adapted GOPs to a pool of encoding workers with multiple encoding workers concurrently encoding different adapted GOPs to produce respective encoded GOPs according to said second standard;

continually tracking a first count of GOPs waiting for processing at said pool of decoding workers, a second count of decoded GOPs waiting for processing at said pool of signal-adaptation workers, and a third count of adapted GOPs waiting for processing at said pool of encoding workers;

subject to a determination that any of said first count, second count, or third count exceeds a respective prescribed threshold, instructing the multimedia source, through the network interface, to pause transmission of said multimedia stream; and

subject to a determination that none of said first count, second count, and third count exceeds a corresponding prescribed threshold while transmission of the multimedia stream is paused, instructing the multimedia source, through the network interface, to resume transmission of said multimedia stream.

11 . The method of claim 10 further comprising said network interface performing processes of:

affixing a GOP identifier to each source GOP of said multimedia stream; and

sending GOP identifiers to said orchestrator assembly and to said content-processing assembly.

12 . The method of claim 10 further comprising:

segmenting said pool of decoding workers into a first number of distinct clusters of decoding workers;

segmenting said pool of signal-adaptation workers into a second number of distinct clusters of signal-adaptation workers; and

segmenting said pool of encoding workers into a third number of distinct clusters of encoding workers; and

based on information within said transcoding request:

selecting said multiple decoding workers from a respective cluster of decoding workers;

selecting said multiple signal-adaptation workers from a respective cluster of signal-adaptation workers; and

selecting said multiple encoding workers from a respective cluster of encoding workers.

13 . The method of claim 10 further comprising said orchestrator assembly arranging successive encoded GOPs, of said respective encoded GOPs, according to an order of corresponding source GOPs of said multimedia stream.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 13, 2026
From: 3649954 CANADA INC.
To: CORESEE, INC.
Reel/Frame 075255/0821 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 9, 2024
From: GIASSON, FRÉDÉRIC
To: 3649954 CANADA INC.
Reel/Frame 066709/0527 →
Continuity (2)
Provisional Application 63434448 · Dec 21, 2022
Related Publication 20240214590A1 · Jun 27, 2024
References Cited (23)
US 9609317B1 · Kizhepat et al. · 2017 [cited by applicant]
US 9787986B2 · Dunphy · 2017 [cited by applicant]
US 10003626B2 · Kim et al. · 2018 [cited by applicant]
US 10027997B2 · Mutton · 2018 [cited by applicant]
US 10165310B2 · Sievers et al. · 2018 [cited by applicant]
US 10218826B2 · Eswaran et al. · 2019 [cited by applicant]
US 10298969B2 · Bayoumi et al. · 2019 [cited by applicant]
US 10356448B2 · Ducloux et al. · 2019 [cited by applicant]
US 10595059B2 · Mutton · 2020 [cited by applicant]
US 10951925B2 · Reitmeyer et al. · 2021 [cited by applicant]
US 11184627B2 · Zhang et al. · 2021 [cited by applicant]
US 11363262B1 · Pang et al. · 2022 [cited by applicant]
US 11405661B2 · Reitmeyer et al. · 2022 [cited by applicant]
US 11528516B2 · Park et al. · 2022 [cited by applicant]
US 11638033B2 · Braness et al. · 2023 [cited by applicant]
US 11716480B2 · Leontaris et al. · 2023 [cited by applicant]
US 11743478B2 · Rao · 2023 [cited by applicant]
US 11825136B2 · Yan · 2023 [cited by applicant]
US 11849112B2 · Naletov et al. · 2023 [cited by applicant]
US 20200322659A1 · Park · 2020 [cited by examiner]
US 20210344733A1 · Tweedale · 2021 [cited by examiner]
US 20240163464A1 · Miller · 2024 [cited by examiner]
US 20240323383A1 · Giasson · 2024 [cited by examiner]