IP Library Granted Patent US 12,021,911
Granted Patent B2
US 12,021,911 · App. 17/453,618 · Granted Jun 25, 2024

Managing encoder updates

Inventors: Eric Woodruff (Beaverton, OR); Ryan Paul Hegar (Happy Valley, OR); Khawaja Salman Shams (Portland, OR)
Assignee: Amazon Technologies, Inc.
H04L65/70H04L7/0008H04L67/148H04N21/4402H04N21/8547H04L67/02
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,021,911
App. No.
17/453,618
Granted
Jun 25, 2024
Kind
B2
Abstract

A video packaging and origination service can include one or more encoder components that receive content for encoding and transmitting to requesting entities. During the operation of the encoder components, a management service associated with the video packaging and origination service can receive information related to updates or modifications to the encoder components. Responsive to the information, the management service can instantiate and configure an updated encoder. Once the updated encoder component is instantiated and configured, both the updated and target encoder components receive content for streaming, encode content and generating encoding content. Additionally, the updated encoder component can initiate a notification to the target encoder component that a handover will be occurring and begin a negotiation process identifying a handover event. Based on the negotiated handover event, the target encoder component can illustratively cease operation upon evaluation and detection of the handover event.

Claims (42)

1. A system to manage encoder components comprising:

one or more computing devices associated with a first encoder component, wherein the first encoder component is configured to:

generate first encoded output;

receive notification of an update from a second encoder component;

transmit first synchronization information to the second encoder component, the first synchronization information used to identify a handover event; and

responsive to a determined handover event, designate the first encoded output to have a lower priority than second encoded output of the second encoder component; and

one or more computing devices associated with the second encoder component, wherein the second encoder component is configured to:

generate the second encoded output at a same time as the first encoder component, wherein the second encoded output is substantially the same as the first encoded output;

transmit second synchronization information to the first encoder component, wherein the transmitted first and second synchronization information defines criteria for determining the handover event; and

responsive to the determined handover event, generate the second encoded output at a higher priority than the first encoded output;

wherein the first and second encoder components identify the handover event based on the first and second transmitted synchronization information.

2. The system of claim 1 , wherein the second encoder component initiates a negotiation to identify the handover event.

3. The system of claim 1 , wherein the first and second synchronization information includes at least one of timestamp information, time code, and sequence number.

4. The system of claim 1 , wherein one of the first and second encoder components determines the handover event.

5. The system of claim 1 , wherein the handover event corresponds to a frame number in the first or second encoded output or a time associated with streaming.

6. The system of claim 1 , wherein the first encoder component is further configured to cease transmission of the first encoded output responsive to the lower priority designation.

7. A computer-implemented method to deliver content, the method comprising:

obtaining, at a target encoder component, notification from an updated encoder component;

obtaining, at the target encoder component, content for encoding at the target encoder component;

generating, at the target encoder component, first encoded output based on the obtained content;

identifying, by the target encoder component, handover event criteria based on exchanged synchronization information between the target encoder component and the updated encoder component, wherein the target encoder component and the updated encoder identify a handover event based on the exchanged synchronization information;

determining the handover event has occurred;

designating, by the target encoder component, the first encoded output of the target encoder component to have a lower priority than a second encoded output of the upgraded encoder component; and

generating, by the target encoder component, the first encoded output at a lower priority than the second encoded output of the updated encoder component, wherein the second encoded output of the updated encoder component is substantially the same as the first encoded output of the target encoder component.

8. The computer-implemented method of claim 7 , wherein the target encoder component includes at least one of a physical computing device or virtual instantiation of an encoder component.

9. The computer-implemented method of claim 7 , wherein the target encoder component includes a logical encoder component corresponding to a virtual network.

10. The computer-implemented method of claim 7 further comprising receiving information regarding updates to the target encoder component at the updated encoder component.

11. The computer-implemented method of claim 10 , wherein receiving information regarding updates to the target encoder component at the updated encoder component includes receiving executable code.

12. The computer-implemented method of claim 10 , wherein the updates to the target encoder component include an identification of configuration information.

13. The computer-implemented method of claim 7 further comprising ceasing transmission of the first encoded output from the target encoder component responsive to the lower priority designation of the first encoded output of the target encoder component.

14. The computer-implemented method of claim 7 , wherein the handover event corresponds to a frame number in the first encoded output of the target encoder component, a frame number in the second encoded output of the updated encoder component, or a time associated with streaming.

15. A computer-implemented method to deliver content, the method comprising:

obtaining notification at a first encoder component from a second encoder component;

exchanging synchronization information between the first and second encoder components, wherein the first and second encoder components negotiate to identify a handover event based on the synchronization information;

determining the handover event has occurred;

designating, by the first encoder component, first encoded output of the first encoder component to have a lower priority than second encoded output of the second encoder component, wherein the second encoded output of the second encoder component is substantially the same as the first encoded output of the first encoder component; and

generating, by the first encoder component, the first encoded output at a lower priority than the second encoded output of the second encoder component.

16. The computer-implemented method of claim 15 , wherein the notification includes handover criteria.

17. The computer-implemented method of claim 15 , wherein the handover event is based on identification of a frame number in the first encoded output of the first encoder component.

18. The computer-implemented method of claim 15 , wherein the first and second encoder components encode content according to a same one or more encoding profiles corresponding to content streams being provided to requesting entities.

19. The computer-implemented method of claim 18 , wherein the handover event is based on identification of a timestamp associated with the content streams.

20. The computer-implemented method of claim 15 further comprising generating, by the first encoder component, a notification regarding the determination of the handover event and a confirmation of a change in operation.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 8, 2024
From: WOODRUFF, ERIC; HEGAR, RYAN PAUL; SHAMS, KHAWAJA SALMAN
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 067037/0976 →
Continuity (2)
Continuation 15841138 · Dec 13, 2017
Related Publication 20220060530A1 · Feb 24, 2022
Cited By (1)
US 12,395,539