Example #1
0
void ModMp3::run()
{
	SDL_AudioSpec desired, obtained, hardwareSpec;
	
	// setting the audio format
	desired.freq = 22050;
	desired.format = AUDIO_S16;
	desired.channels = 2;
	desired.samples = 1024;
	desired.callback = playBuffer;
	desired.userdata = NULL;
	
	SDL_Init(SDL_INIT_AUDIO);
	SDL_OpenAudio(&desired, &obtained); hardwareSpec = obtained;
	
	// Initialize madxlib
	madx_init(out_buffer, &mxhouse);
	
	// open the files
	in_file = fopen( m_fileToPlay.toAscii().data(), "rb");
	out_file = fopen("/test.pcm", "wb");

	SDL_PauseAudio( 0 );	
	while ( (false == m_haveToStop) && (SDL_GetAudioStatus() == SDL_AUDIO_PLAYING) )
		SDL_Delay(1000);
	
	// clean-up
	madx_deinit( &mxhouse );
	
	fclose( in_file );
	fclose( out_file );

SDL_CloseAudio();
SDL_Quit();
}
Example #2
0
MP3Codec::~MP3Codec()
{
  DeInit();

  delete[] m_InputBuffer;
  m_InputBuffer = NULL;

  delete[] m_OutputBuffer;
  m_OutputBuffer = NULL;

  delete[] m_SeekOffset;
  m_SeekOffset = NULL;

  if (m_dll.IsLoaded())
    madx_deinit(&mxhouse);
}