CPC G06F 3/0659 (2013.01) [G06F 3/0604 (2013.01); G06F 3/0679 (2013.01); G06F 12/1009 (2013.01); G10L 19/167 (2013.01); H04L 65/70 (2022.05); G06F 2212/657 (2013.01)] | 20 Claims |
1. An external solid state data storage device comprising:
a non-volatile memory including NAND memory; and
one or more processors, individually or in combination, configured to:
receive a command from a host over a network to write data for a media file to the NAND memory, wherein the media file includes one or more frames, and each frame of the one or more frames includes a video frame and a plurality of audio frames associated with a plurality of languages;
decode the data for the media file to extract a first frame of the media file and determine a starting logical block address (LBA) for a video frame of the first frame and a starting LBA for each audio frame of a plurality of audio frames of the first frame;
write the first frame to the NAND memory; and
update a logical-to-physical (L2P) table in the external solid state data storage device, wherein the L2P table is configured to map LBAs and corresponding physical addresses in the NAND memory, to add the starting LBA and one or more corresponding physical addresses in the NAND memory for the video frame of the first frame and to add the starting LBA and one or more corresponding physical addresses in the NAND memory for each audio frame of the plurality of audio frames of the first frame, wherein the L2P table is further configured to enable the one or more processors, individually or in combination, upon request from the host for playback of the media file in a selected language, to access only the video frame of the first frame and an audio frame of the first frame in the selected language, out of the plurality of audio frames of the first frame, for loading into a buffer for transmission to the host, wherein the L2P table is further configured to enable the one or more processors, individually or in combination, to obtain data at frame level to extract individual components within a particular frame of the media file based on starting LBAs and corresponding physical addresses in the NAND memory for the individual components such that only an individual component within the frame can be obtained from the NAND memory and loaded into the buffer for transmission without obtaining data for the entire frame from the NAND memory, wherein the individual components of the frame include a video frame and an audio frame in the selected language, and wherein the one or more processors, individually or in combination, are configured to logically store the media file as a single file.
|