VOGONS

Common searches


Search results

Display options

Re: Munt Reloaded - Development

Are you interested in patches for improving ABI compatibility in the C++ interface? I know it's more difficult to do in C++ compared to C, but I was thinking of introducing a d-pointer (aka "Pimpl idiom") and remove all private members from the headers. The exported classes would then only have …

Re: How do I feed mt32emu with data?

I added a check for a non-empty queue in isActive() and did a pull request. When all events have been sent to the synth, clients will send note-off and sustain pedal release events. In that case, isn't the synth guaranteed to arrive at silence when all reverb has finished?

Re: How do I feed mt32emu with data?

Whether the synth has finished its work or not is not an implementation detail. It's vital information that right now has to be inferred by other, indirect means (sample counting.) Maybe the name makes it sound like an implementation detail. Maybe think of hasMoreToRender() or hasFinished() or atEos …

Re: How do I feed mt32emu with data?

I'm not sure what you mean. Here's how it looks: Parse the MIDI file and fill the source queue. Send MIDI events from the source queue to the synth until the synth's queue is full. Render N amount of samples (N depends on our audio buffer; usually 4kb, but can be quite smaller in a low-latency setup …

Re: How do I feed mt32emu with data?

Yes, but it's easier to just check if the Synth is done with the queue. Unless of course there's a reason to make it more complicated :-/ Convenience in the API should be a good thing? I mean, you're using Qt, you know already how helpful convenience functions can be compared to having to do every …

Re: How do I feed mt32emu with data?

I got it working, finally. But, not a moment too soon, next problem came up. How to detect the end of a track. I see that the Qt app does some overly complicated stuff to find out when to stop rendering. Would it be possible to add a new member function: bool Synth::queueIsEmpty() const; This should …

Re: How do I feed mt32emu with data?

Moreover, there are other weird things with libsmf, e.g. here . Just curious, whether you use the actual v.1.3 or that one patched v.1.2 from smf2wav. I used both the bundled one that comes with Munt, as well as the latest from upstream Git. Same issue. I'm not a MIDI guru so I can't tell whether …

Re: How do I feed mt32emu with data?

I now tried libsmf to parse the MIDI file, and I'm able to get playback :-) However, there's some severe glitches with many of my MIDI files. I tried the smf2wav on its own, and it also produces the exact same glitches. Weirdly, the GUI player works fine :neutral: An example MIDI file that triggers …

The C interface lacks MIDI receiver user data

I tried using the C interface, but it's not very useful right now. The various callbacks of mt32emu_midi_receiver_i have no user data argument (void*), so they have no way of knowing where to send the data they get (like which mt32emu_context to use.) All of these functions should have an extra " …

Page 27 of 29