IP Library Granted Patent US 11,503,285
Granted Patent B2
US 11,503,285 · App. 17/345,676 · Granted Nov 15, 2022

Encoding digital videos using controllers of data storage devices

Inventor: Ramanathan Muthiah (Bangalore, IN)
Assignee: Western Digital Technologies, Inc.
H04N19/115H04N19/423H04N19/65
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 11,503,285
App. No.
17/345,676
Granted
Nov 15, 2022
Kind
B2
Abstract

In some embodiments, an apparatus includes a memory configured to store data and a controller coupled to the memory. The controller is configured to receive, from a computing device coupled to the apparatus, one or more frames of a digital video. The controller is also configured to analyze one or more components of the memory. The controller is further configured to determine a set of states for the one or more components of the memory based on the analysis of the one or more components of the memory. The controller is further configured to determine a first encoding rate for the digital video from a plurality of encoding rates based on the set of states for the one or more components of the memory. The controller is further configured to encode the digital video based on the first encoding rate and to store the encoded digital video in the memory.

Claims (53)

1. An apparatus, comprising:

a memory configured to store data; and

a controller coupled to the memory, the controller configured to:

receive a digital video;

receive, from a computing device coupled to the apparatus, client data indicating a set of client devices that are communicatively coupled to the computing device;

determine a first encoding rate for the digital video from a plurality of encoding rates based on the client data;

encode the digital video based on the first encoding rate to generate an encoded digital video; and

store the encoded digital video in the memory.

2. The apparatus of claim 1 , wherein the controller is further configured to:

determine a first codec for the digital video from a plurality of codecs based on the client data; and

encode the digital video further based on the first codec.

3. The apparatus of claim 1 , wherein the client data further indicates one or more of:

a set of types for the set of client devices;

a set of resolutions for the set of client devices; and

a set of playback parameters for the set of client devices.

4. The apparatus of claim 1 , wherein the controller is further configured to:

perform a set of machine learning operations on the digital video prior to encoding the digital video; and

determine a set of inferences based on the set of machine learning operations.

5. The apparatus of claim 4 , wherein to store the encoded digital video in the memory, the controller is further configured to:

identify first error correction scheme from a plurality of error correction schemes based on the set of inferences; and

store the encoded digital video based on the first error correction scheme.

6. The apparatus of claim 1 , wherein to store the encoded digital video in the memory, the controller is further configured to:

determine a set of flash programming parameters based on the client data; and

store the encoded digital video in the memory based on the set of flash programming parameters.

7. The apparatus of claim 1 , wherein the apparatus comprises a data storage device for the computing device.

8. A method comprising:

performing the following in a data storage device comprising a memory:

receiving, from a computing device, information about a set of devices that are in communication with the computing device;

determining an encoding rate for digital data based on the information;

encoding the digital data based on the determined encoding rate to generate encoded digital data; and

storing the encoded digital data in the memory.

9. The method of claim 8 , wherein the digital data comprises digital video.

10. The method of claim 9 , further comprising:

determining a first codec for the digital video from a plurality of codecs based on the information; and

encoding the digital video further based on the first codec.

11. The method of claim 8 , wherein the information further indicates a set of types for the set of devices.

12. The method of claim 8 , wherein the information further indicates a set of resolutions for the set of devices.

13. The method of claim 8 , wherein the information further indicates a set of playback parameters for the set of devices.

14. The method of claim 8 , further comprising:

performing a set of machine learning operations on the digital data prior to encoding the digital data; and

determining a set of inferences based on the set of machine learning operations.

15. The method of claim 14 , further comprising identifying a first error correction scheme from a plurality of error correction schemes based on the set of inferences.

16. The method of claim 15 , further comprising storing the encoded digital data based on the first error correction scheme.

17. The method of claim 8 , further comprising determining a set of flash programming parameters based on the information data.

18. The method of claim 16 , further comprising storing the encoded digital video in the memory based on the set of flash programming parameters.

19. The method of claim 8 , wherein the digital data comprises digital audio.

20. An apparatus, comprising:

a memory;

means for receiving a digital video;

means for receiving, from a computing device coupled to the apparatus, client data indicating a set of client devices that are communicatively coupled to the computing device;

means for determining a first encoding rate for the digital video from a plurality of encoding rates based on the client data;

means for encoding the digital video based on the first encoding rate to means for generating an encoded digital video; and

means for storing the encoded digital video in the memory.

Assignments (10)
PARTIAL RELEASE OF SECURITY INTERESTS Recorded Apr 25, 2025
From: JPMORGAN CHASE BANK, N.A., AS AGENT
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 071382/0001 →
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
PATENT COLLATERAL AGREEMENT Recorded Aug 23, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 068762/0494 →
CHANGE OF NAME Recorded Jun 27, 2024
From: SANDISK TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067982/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067567/0682 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
RELEASE OF SECURITY INTEREST AT REEL 057651 FRAME 0296 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058981/0958 →
SECURITY INTEREST Recorded Sep 17, 2021
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 057651/0296 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 11, 2021
From: MUTHIAH, RAMANATHAN
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 056516/0596 →