I want to create a basic convolutional autoencoder in Keras (tensorflow, python) for use on audio (MP3, WAV, etc.) files.
Basically, here's what I'm doing:
1) convert an mp3 into an array
def mp3_to_array(original_mp3):
blah blah blah
return original_array
2) run array through autoencoder, output a similar (but lossy, because of the autoencoder operations) array
def autoencoder(original_array):
autoencoder stuff
return new_array
3) convert an array into an mp3
def array_to_mp3(new_array):
halb halb halb
return new_mp3
I know that Mel Spectrograms and Mel-frequency cepstral coefficients (mfcc's) are commonly used in classification systems. As far as I know, I can't use these, because they can't be converted back to mp3's without significant loss.
Is there an array-based, lossless * (or nearly lossless), representational conversion method that's suitable for use in a convolutional neural network, to convert an mp3 to array, and vice versa?
EDIT: Specifically, I'm asking about steps 1 and 3. I'm aware step 2 will be inherently lossy.
Thanks in advance!