Mercurial > repos > blastem
diff mediaplayer.c @ 2376:1c09f5be285b
Very basic UI for media player
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Fri, 17 Nov 2023 01:05:32 -0800 |
parents | 02c04196c2da |
children | 30e59954eab9 |
line wrap: on
line diff
--- a/mediaplayer.c Fri Nov 17 00:30:46 2023 -0800 +++ b/mediaplayer.c Fri Nov 17 01:05:32 2023 -0800 @@ -21,11 +21,6 @@ MEDIA_UNKNOWN }; -enum { - STATE_PLAY, - STATE_PAUSED -}; - uint32_t cycles_to_samples(uint32_t clock_rate, uint32_t cycles) { return ((uint64_t)cycles) * ((uint64_t)44100) / ((uint64_t)clock_rate); @@ -464,6 +459,7 @@ if (sample_size > player->media->size || player->current_offset > player->media->size - sample_size) { player->current_offset = player->wave->format_header.size + offsetof(wave_header, audio_format); player->state = STATE_PAUSED; + player->playback_time = 0; return; } if (player->wave->bits_per_sample == 16) { @@ -498,6 +494,7 @@ render_put_stereo_sample(player->audio, samples[0], samples[1]); } else { player->state = STATE_PAUSED; + player->playback_time = 0; return; } } @@ -654,6 +651,7 @@ switch (player->state) { case STATE_PLAY: + player->playback_time++; switch(player->media_type) { case AUDIO_VGM: