-
Notifications
You must be signed in to change notification settings - Fork 16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Sound buffer issue and possble lag? #3
Comments
What OS are you using? I just noticed that this problem is especially problematic on Windows. Since all development is done on Linux it can be weeks or even months between each time I check the windows build. My first guess is that we for some reason get buffer underruns in the audio output driver when multiple tones are played at the same time. This problem might have been there all the time and just become more noticeable now with longer tones due to the volume envelopes that was just added. I will have a look at it and see if I can figure out a solution. |
Hello! im using windows, its my main daily driver system, would there need to be a separate dev build going for window's? wish I could help on that occasion, but yes, on window's audio start's to lag badly, I'm open we can discuss further on discord, the issue at hand. a good bunch of the instruments are also out of tune, but you are getting that fixed to? |
I'm pretty sure we won't need any separate build environment for Windows. I also think I have the information I need to work on this particular issue, so I'll give an update when I have figured out something. |
thats great to hear on the issue being worked about, did you know somebody on here has worked on some sound canvas screen simulation? |
Also here's an recording from a native windows 10 machine I did not to long ago, performance is a bit choppy in some place's |
I'm not an expert, but for me it is already fantastic that this emulator is able to emit sounds (considering that until now nobody has ever worked in a Roland SC-55 emulator) and, according to my ears, I'm sure they are still missing all effects like reverb and chorus and who knows how much other stuff, in addition to the wrong "tone" of many instruments (I don't know the technical name). As already said, it is comforting that someone is working on it and maybe in a few years we will finally have an accurate and fully functional emulator. Thanks @skjelten |
It seems to be a problem when building 32bit executable (msys2, i686-w64-mingw32) while with the 64bit build (x86_64-w64-mingw32) the problem is not present. edit: clarification; the problem being popping sound. The "lag" is still present, though to my ear it sounds like imprecise timing so maybe the timer method needs to be different on Windows etc. |
Try Duke Nukem 3D midis and you'll hear the pops even with the 64-bit build. However, I think the emulator is still incomplete, the project is very recent, so it seems obvious to me that there are problems... we could probably define it as an alpha. |
Ok. But the build architecture still has significant impact on my end. With Roland SC demo midis they go from very prominent to unnoticeable.
Of course. I'm not complaining, only trying to provide extra information to help diagnose the problems 😃 |
I think your talking about the old post, in its latest update the synth works really well, even with duke nukem 3d midi's, the popping is gone as well. |
It is strange because it seems to me that no changes have been made since yesterday. Placebo effect? 😅 There are these forums for any discussions: |
it was my soft synth player which had changed to default midi player for some reason, lol. |
Hi, could you guys test the latest code update for whether you still have issues with crackle and pop in the audio? I have not been able to figure out how to recover in windows when you have a buffer underrun situation, but I did find two memory bugs that gave wrong sample data. If you now can play MIDI files correctly also in windows, we'll just close this issue for now. |
Hello, i''l get to the code testing when i can eventually, will post further when gotten it compiled. |
Its definitely an improvement over the previous compile,, it doesn't struggle playing some midi's now it had trouble playing a while back, now the instruments just out of tune, it just needs the echo and chrous, then should be complete. but I get this note limit error on the prompt line, I'm guessing that's a issue going to be fixed eventually. |
I think the 64bit build is now as functional as can be assumed in this stage. The 32bit build no longer does the popping and crackling, but a complex song will make it stutter and lag. |
Thanks @skjelten, I haven't had the chance to test the new build on Windows yet, I will do it as soon as possible. I tested it on Debian 11, no crackle or pop here (as before). I would recommend you test this emulator with Duke Nukem 3D midis, as they are quite complex and I have noticed that some songs push the polyphony of the original SC-55 to the limit: Duke3D_MIDI.zip. For example
@ThatRetroGuy, I'm neither an expert nor a programmer or musician, but I don't think it's that simple. I noticed, thanks to this emulator, how much the SC-55 processes the samples of the instruments contained in the ROM. I have absolutely no idea what the SC-55 does to make those instruments sound right, but without any processing, you notice how bad they can sound, and this I think is not just the lack of the reverb or chorus effect. |
Im not saying its reverb or chorus that's gonna do the job, I noticed how strange it makes the fretless bass sound, but I'm sure there gets figured a progress out. |
The problem of crackles and pops seems solved on Windows, I happened to hear pops but only in some instruments that have a completely unbalanced volume and are probably "cropped" (in fact EmuSC displays |
Three weeks ago I finally managed to improve the WIN32 audio output (see 1bcbec9) so that if we get a buffer underrun situation, EmuSC will automatically recover as soon as it manages to feed enough audio data again. The other issue of EmuSC limiting the number of simultaneous sounds (polyphony) is related to the TVA (volume) envelopes being too long. When sounds stay too long in sustain / release phase you quickly end up with too many simultaneous sounds for MIDI files that pushes the maximum polyphony of the SC55. The fix here is to correctly calculate to TVA envelope times for each phase, but that is harder than it sounds like 🙂 |
The software work's great in the start and seems alright, but if there come's multiple instruments's, it will eventually crackle and pop in the audio, is that being worked on? it could be a memory issue in likely plausible cause.
I know somebody on discord who would gladly aid with a real sc 55.
The text was updated successfully, but these errors were encountered: