#pragma once
#include "decoder.h"
#include "SDL/SDL.h"
#include "libmad/mad.h"

struct decodermp3 : decoder{
    private:
    inline int64_t scale( mad_fixed_t in );
    static enum mad_flow mp3output(void *data, struct mad_header const *header, struct mad_pcm *pcm);
    static enum mad_flow mp3input(void *data, struct mad_stream *stream);
    static enum mad_flow mp3error(void *data, struct mad_stream *stream, struct mad_frame *frame);
    struct mad_decoder mydecoder;

    public:
    struct info{
    };

    virtual void decode( );
    decodermp3( decoder::info a );
    ~decodermp3( );


};
