@@ -251,24 +251,36 @@ hal::HalBase::MicTestState_t HalEsp32::getHeadphoneMicRecordTestState()
251251/* -------------------------------------------------------------------------- */
252252/* Music play test */
253253/* -------------------------------------------------------------------------- */
254+ #if CONFIG_HAL_AUDIO_ENABLE_LONG_DEMO
254255extern const uint8_t canon_in_d_mp3_start[] asm (" _binary_canon_in_d_mp3_start" );
255256extern const uint8_t canon_in_d_mp3_end[] asm (" _binary_canon_in_d_mp3_end" );
257+ #endif
256258extern const uint8_t startup_sfx_mp3_start[] asm (" _binary_startup_sfx_mp3_start" );
257259extern const uint8_t startup_sfx_mp3_end[] asm (" _binary_startup_sfx_mp3_end" );
258260extern const uint8_t shutdown_sfx_mp3_start[] asm (" _binary_shutdown_sfx_mp3_start" );
259261extern const uint8_t shutdown_sfx_mp3_end[] asm (" _binary_shutdown_sfx_mp3_end" );
260262
261- enum Mp3PlayTarget_t {
263+ enum Mp3PlayTarget_t
264+ {
265+ #if CONFIG_HAL_AUDIO_ENABLE_LONG_DEMO
262266 MP3_PLAY_TARGET_CANON_IN_D,
267+ #endif
263268 MP3_PLAY_TARGET_STARTUP_SFX,
264269 MP3_PLAY_TARGET_SHUTDOWN_SFX,
265270};
266271
267- struct MusicTestData_t {
268- std::mutex mutex;
269- bool killSignal = false ;
270- hal::HalBase::MusicPlayState_t state = hal::HalBase::MUSIC_PLAY_IDLE;
271- Mp3PlayTarget_t target = MP3_PLAY_TARGET_CANON_IN_D;
272+ #if CONFIG_HAL_AUDIO_ENABLE_LONG_DEMO
273+ static constexpr Mp3PlayTarget_t kDefaultMusicTarget = MP3_PLAY_TARGET_CANON_IN_D;
274+ #else
275+ static constexpr Mp3PlayTarget_t kDefaultMusicTarget = MP3_PLAY_TARGET_STARTUP_SFX;
276+ #endif
277+
278+ struct MusicTestData_t
279+ {
280+ std::mutex mutex;
281+ bool killSignal = false ;
282+ hal::HalBase::MusicPlayState_t state = hal::HalBase::MUSIC_PLAY_IDLE;
283+ Mp3PlayTarget_t target = kDefaultMusicTarget ;
272284};
273285static MusicTestData_t _music_test_data;
274286
@@ -286,7 +298,8 @@ static void audio_player_callback(audio_player_cb_ctx_t* ctx)
286298 audio_player_state_t state = audio_player_get_state ();
287299 mclog::tagInfo (TAG, " audio state: {}" , (int )state);
288300
289- if (state == AUDIO_PLAYER_STATE_IDLE) {
301+ if (state == AUDIO_PLAYER_STATE_IDLE)
302+ {
290303 GetHAL ()->stopPlayMusicTest ();
291304 }
292305}
@@ -308,12 +321,15 @@ static void _music_play_task(void* param)
308321 audio_player_callback_register (audio_player_callback, NULL );
309322
310323 size_t mp3_size = 0 ;
311- FILE* fp = nullptr ;
312- switch (_music_test_data.target ) {
324+ FILE* fp = nullptr ;
325+ switch (_music_test_data.target )
326+ {
327+ #if CONFIG_HAL_AUDIO_ENABLE_LONG_DEMO
313328 case MP3_PLAY_TARGET_CANON_IN_D:
314329 mp3_size = (canon_in_d_mp3_end - canon_in_d_mp3_start) - 1 ;
315330 fp = fmemopen ((void *)canon_in_d_mp3_start, mp3_size, " rb" );
316331 break ;
332+ #endif
317333 case MP3_PLAY_TARGET_STARTUP_SFX:
318334 mp3_size = (startup_sfx_mp3_end - startup_sfx_mp3_start) - 1 ;
319335 fp = fmemopen ((void *)startup_sfx_mp3_start, mp3_size, " rb" );
@@ -325,7 +341,8 @@ static void _music_play_task(void* param)
325341 }
326342
327343 esp_err_t ret = audio_player_play (fp);
328- if (ret != ESP_OK) {
344+ if (ret != ESP_OK)
345+ {
329346 mclog::tagError (TAG, " audio play failed" );
330347 vTaskDelete (NULL );
331348 return ;
@@ -355,20 +372,23 @@ static void _music_play_task(void* param)
355372
356373void try_create_music_play_task (Mp3PlayTarget_t target)
357374{
358- if (_music_test_data.state == hal::HalBase::MUSIC_PLAY_IDLE) {
375+ if (_music_test_data.state == hal::HalBase::MUSIC_PLAY_IDLE)
376+ {
359377 _music_test_data.state = hal::HalBase::MUSIC_PLAY_PLAYING;
360378 _music_test_data.target = target;
361379 _music_test_data.killSignal = false ;
362380 xTaskCreate (_music_play_task, " music" , 3000 , nullptr , 5 , nullptr );
363- } else {
381+ }
382+ else
383+ {
364384 mclog::tagWarn (TAG, " music play is running" );
365385 }
366386}
367387
368388void HalEsp32::startPlayMusicTest ()
369389{
370390 std::lock_guard<std::mutex> lock (_music_test_data.mutex );
371- try_create_music_play_task (MP3_PLAY_TARGET_CANON_IN_D );
391+ try_create_music_play_task (kDefaultMusicTarget );
372392}
373393
374394hal::HalBase::MusicPlayState_t HalEsp32::getMusicPlayTestState ()
0 commit comments