Gast
#5128480
Hallo, kennt sich hier jemand mit dem Helix Mp3-decoder aus? Ich möchte auf einem STM32F7 Discovery einen MP3 Datenstrom (webradio) in wave umwandeln und dann ausgeben. Ich habe als Vorlage die Version http://vedder.se/2012/07/play-mp3-on-the-stm32f4-discovery/ verwendet. In dieser Datei ist eine mp3_data.c, in welcher ein MP3 Daten array ist. Nun habe ich versucht, die Funktionen im Beispielprojekt BSP-Audio-Play für die Ausgabe so zu belassen wie sie sind. Wie kann ich dann das MP3 Array umwandlen, um dieses an die BSP_Audio_Out Funktion zu geben? Im wesentlichen passiert dies doch alles in dieser Funktion, oder? /*********************************************************************** *************** * Function: MP3Decode * * Description: decode one frame of MP3 data * * Inputs: valid MP3 decoder instance pointer (HMP3Decoder) * double pointer to buffer of MP3 data (containing headers + mainData) * number of valid bytes remaining in inbuf * pointer to outbuf, big enough to hold one frame of decoded PCM samples * flag indicating whether MP3 data is normal MPEG format (useSize = 0) * or reformatted as "self-contained" frames (useSize = 1) * * Outputs: PCM data in outbuf, interleaved LRLRLR... if stereo * number of output samples = nGrans nGranSamps nChans * updated inbuf pointer, updated bytesLeft * * Return: error code, defined in mp3dec.h (0 means no error, < 0 means error) * * Notes: switching useSize on and off between frames in the same stream * is not supported (bit reservoir is not maintained if useSize on) ************************************************************************ **************/ int MP3Decode(HMP3Decoder hMP3Decoder, unsigned char **inbuf, int *bytesLeft, short *outbuf, int useSize) Problem, die Funktion hängt sich an einer mir unbekannten stelle auf. Aber von der Logik her könte ich dann den "outbuf" pointer als die Startadresse der abzuspielenden Wave Datei betrachten? Liebe Grüße!