Modify ↓
#212 closed bug (fixed)After a soundtest YAM can't quit.
Description
After doing a soundtest in YAMs config YAM can't quit.
Step by step to reproduce:
Note: I think it only happen if you click very fast while the first
A possible solution for that is to disable the button after the
BTW: Maybe it's not a fault of YAM but here the first sound file is
Used Version: YAM 2.7-dev [OS3/m68k] (15.09.2010) Attachments (1)Change History (8)Changed 3 years ago by opiopicomment:1 Changed 3 years ago by opiopi
I forget to mention:
Maybe disabling the button is not the solution? comment:2 Changed 3 years ago by thboeckel
comment:3 Changed 3 years ago by thboeckel
I must add that disabling the play button is not possible, because it would not be enabled afterwards as the playback might take an arbitrary long time and the main thread cannot get any specific feedback when the playback has finished.
Additionally, and that's even worse, there are many 3rd party implementations of sound.datatype and each of them handles the playback in a different way. Some use a per object playback task, some others seem to use one global task only. The latter is not able to signal the finished playback if a second sample is to be played in the meantime. Although the playback finishes correctly that initiating task is not woken up. This is now worked around by the abort signal, but the truth is that this sound.datatype is simply broken and there is no way for YAM to tell working and broken versions apart.
I did not yet check how all this works with OS4, but I know that OS4's sound.datatype definitely uses a per object playback task and hence should not suffer from this issue. comment:4 Changed 3 years ago by thboeckel
I just verified that playing a sample multiple times in parallel is absolutely no problem on AmigaOS4. So this is a bug of the specific sound.datatype used on AmigaOS3.
You might want to try this one http://aminet.net/util/dtype/soundDT41.lha
According to the source it uses one playback task per object and hence there should be no interference. I will try tomorrow on my OS3/WinUAE setup.
I also had some thoughts about disabling the play button. This would only work for synchronous playback. I'll see what I can do about that. But asynchronous playback in a thread is something I won't drop again. Playing a sound after receiving some mails should not halt any other action. That's why the threads are necessary. comment:5 follow-up: ↓ 6 Changed 3 years ago by opiopi
Playing a sample multiple times in parallel is here also no problem.
If the left channel is still playing and i click the test button
I don't know if it's YAMs fault to play the sound only on the left
I just try your suggested Datatype and with them i can play only one
So i switch back to my old (new) sound.Datatype. The Version i use is: comment:6 in reply to: ↑ 5 Changed 3 years ago by thboeckel
Replying to opiopi:
Ok, that's good to know.
It is up to sound.datatype to decide how mono samples will be played. YAM does in no way instruct sound.datatype to use either left or right channels only.
Maybe Play16 converts mono samples to "pseudo" stereo by playing the same sound on the left and the right channel instead of the first free channel only. comment:7 Changed 17 months ago by damato
Note: See
TracTickets for help on using
tickets. | This list contains all users that will be notified about changes made to this ticket. These roles will be notified: Reporter, Owner, Subscriber
| ||||||||||||||||||||||||||||



The YAM Warning Requester