Audio file processing to reduce latencies in play start times for cloud served audio files
Methods, systems, and computer programs are presented for managing audio files of a user to reduce latencies in play start times on local devices. The audio files are stored on cloud storage managed by a server. One method includes processing a plurality of audio files associated with a user, where the processing is configured to create audio snippet files from each of the plurality of audio files. The audio snippet files representing a beginning part of each of the plurality of audio files. The method also includes transmitting the audio snippet files to a client device and detecting a request from the client to begin playing a first audio file from the plurality of audio files of the user. The first audio file being stored on the cloud storage managed by the server.
1. A method for transmitting an audio file, comprising:
producing, by a processor and from a first audio file, a second audio file, the second audio file representing a beginning portion of the first audio file, bit rate of the second audio file being a function of a count of first audio files in a library of a user of a client device;
transmitting, from the processor to the client device, the second audio file;
detecting, at the processor and from the client device, a signal indicating a selection of the first audio file; and
transmitting, from the processor and in response to the signal, at least a remaining portion of the first audio file to the client device.
2. The method of claim 1 , wherein the detecting occurs after the second audio file has been transmitted to the client device.
3. The method of claim 1 , wherein the first audio file is stored on a cloud storage server.
4. The method of claim 1 , wherein the remaining portion of the first audio file has an identified transition start point, the identified transition start point being a time in the first audio file that corresponds to an end time of the second audio file.
5. The method of claim 1 , wherein the transmitting the second audio file occurs during a synchronization procedure with the client device.
6. The method of claim 1 , wherein the second audio file has a set size, the set size adjustable in response to a network speed performance parameter of the client device.
7. The method of claim 1 , wherein the signal includes an identification of the first audio file and an identification of a playlist associated with the first audio file.
8. The method of claim 7 , wherein the transmitting the at least the remaining portion of the first audio file includes transmitting an additional audio file of the playlist.
9. The method of claim 1 , wherein the transmitting the at least the remaining portion of the first audio file includes transmitting a portion of the first audio file that corresponds to the second audio file.
10. A non-transitory computer-readable medium storing computer code for controlling a processor to cause the processor to transmit an audio file, the computer code including instructions to cause the processor to:
produce, from a first audio file, a second audio file, the second audio file representing a beginning portion of the first audio file, bit rate of the second audio file being a function of a count of first audio files in a library of a user of a client device;
transmit, to the client device, the second audio file;
detect, from the client device, a signal indicating a selection of the first audio file; and
transmit, in response to the signal, at least a remaining portion of the first audio file to the client device.
11. An apparatus for playing an audio file, comprising:
a processor configured to receive, from a server, a first audio file, the first audio file representing a beginning portion of a second audio file, to play the first audio file, to transmit, to the server, a first signal indicating a selection of the second audio file, to receive, from the at least a remaining portion of the second audio file, and to play the at least the remaining portion of the second audio file, a bit rate of the second audio file being a function of a count of first audio files in a library of a user of the apparatus; and
a memory configured to store the first audio file and the at least the remaining portion of the second audio file.
12. The apparatus of claim 11 , wherein the remaining portion of the second audio file has an identified transition start point, the identified transition start point being a time in the second audio file that corresponds to an end time of the first audio file.
13. The apparatus of claim 11 , wherein the processor is configured to receive the first audio file during a synchronizing procedure with the server.
14. The apparatus of claim 11 , wherein the processor is further configured to transmit, to the server, a second signal, the second signal including a network speed performance parameter of the apparatus, the network speed performance parameter usable by the server to adjust a set size of the first audio file.
15. The apparatus of claim 11 , wherein the first signal includes an identification of the second audio file and an identification of a playlist associated with the second audio file.
16. The apparatus of claim 15 , wherein the processor is further configured to receive an additional audio file of the playlist.
17. The apparatus of claim 11 , wherein the processor is further configured to receive the at least the remaining portion of the second audio file by receiving a portion of the second audio file that corresponds to the first audio file.
18. The apparatus of claim 11 , wherein the processor is configured to receive the at least the remaining portion of the second audio file during a background download operation.
19. The apparatus of claim 11 , wherein the processor is configured to complete reception of the at least the remaining portion of the second audio file before completion of a play of the first audio file.
20. The apparatus of claim 11 , wherein the processor is configured to receive the first audio file in response to at least one of a setup of an account for audio files, a change in the account, or a change in content of audio files associated with the account.