| Summary: | [PATCH] Flac and ogg - Support User Play Count Selection When Looping | ||
|---|---|---|---|
| Product: | SDL_mixer | Reporter: | Michael Day <mikeguy42> |
| Component: | misc | Assignee: | Ryan C. Gordon <icculus> |
| Status: | RESOLVED FIXED | QA Contact: | Sam Lantinga <slouken> |
| Severity: | normal | ||
| Priority: | P2 | CC: | admin, sezeroz |
| Version: | 2.0.4 | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
| Attachments: |
Patch - music_flac.c and music.ogg.c - add support for play count when looping
Sample looping file A short demo of patched result, recorded on the video |
||
Vitaly: This touches your patched code too, I think. So review/test. Gonna to check out the thing... I have tested this patch, and it fixes the bug! When the file is looping, and when is limited loops count set, the tail should be played after all loops were passed to finalize the song. So, now there are playing fine! Created attachment 4069 [details]
Sample looping file
A short sample file to verify the looping
Created attachment 4070 [details]
A short demo of patched result, recorded on the video
Here you'll see the seek bar. The blue area is the loop range.
I did next tests:
- forever looping
- play single time
- loop twice
- loop trice
Patch applied: http://hg.libsdl.org/SDL_mixer/rev/4f9f5e59419a Thanks. |
Created attachment 4068 [details] Patch - music_flac.c and music.ogg.c - add support for play count when looping When looping using loop points specified by LOOP* metadata tags, the looping logic should be affected by the user-specified play count value. The patch here applies uniform looping logic to both music_ogg.c and music_flac.c. Also, when the play count is 1, we want to play the audio file straight through without any looping. (This is not currently how the looping logic behaves.)