Git Product home page Git Product logo

Comments (9)

sjaehn avatar sjaehn commented on July 21, 2024 1

Thanks for reporting. After a while of playing around I observed a similar (or the same?) bug and I analyzed the dump. I found "old" (from a stopped previous run) midi messages sticking in front of the midi event queue and these messages block all new messages. I will look how to fix it.

from bschaffl.

sjaehn avatar sjaehn commented on July 21, 2024

I can reproduce this problem with Ardour 5.12. It looks like the same problem as described by myself in issue #1 . If the NOTE_OFF for the first note is scheduled shortly after the NOTE_ON for the second note and both notes have the same pitch you will hear (almost) nothing (= "dropped notes"). This shouldn't happen if the notes have different pitches.

I will do a dump to confirm it. If this overlap comes from the input, a "smart quantization" algorithm (see README.md#TODO's) should fix it. If it only appears on the output side (I'm afraid) then it's a bug.

from bschaffl.

sjaehn avatar sjaehn commented on July 21, 2024

It was a bug. Fixed in f5cf026 . Also added MIDI scheduler dump to stderr.

from bschaffl.

magnetophon avatar magnetophon commented on July 21, 2024

That's better; with the default settings, it bypasses.
When I change the swing slider I get a swing pattern, but also periods of silence, and sometimes I need to start and stop Ardour to get sound back.

from bschaffl.

sjaehn avatar sjaehn commented on July 21, 2024

That's better; with the default settings, it bypasses.

What do you mean with "bypasses"? You should hear the origial 1/16 note pattern. If you don't hear anything or if you hear something else then it's a bug.

When I change the swing slider I get a swing pattern, but also periods of silence...

I'll try to reproduce it.

from bschaffl.

magnetophon avatar magnetophon commented on July 21, 2024

What do you mean with "bypasses"?

Sorry, that was unclear. Yes, it passes trough the midi unchanged, as it should.

from bschaffl.

sjaehn avatar sjaehn commented on July 21, 2024

Quick fix in 94ad289 . This fix will kill all "old" scheduled midi messages from the queue. I hope this will fix the problem you described.

For the future I have look for a smarter solution. Otherwise other ideas, like MIDI filtering and smart quantization (fitting NOTE_OFF to the end of a step and NOTE_ON to the start of a step) will not work.

from bschaffl.

magnetophon avatar magnetophon commented on July 21, 2024

Yes, it works!
This thing is even more fun to play with then I imagined when I asked for it.
Thank you so much!

It indeed look like you need to look for a smarter solution, as there are some timing bugs remaining.
For example the first bar of a song plays unchanged for me.

from bschaffl.

sjaehn avatar sjaehn commented on July 21, 2024

You reported the "first bar bug" to be solved in #3 . Thanks.

Smart quantization is now introduced in c2eec87 . This means that NOTE_ON signals can now be mapped to (the amp of) the just starting step whereas NOTE_OFF signal can be mapped to the ending step by definition of a range. The edge problem is solved.

Still TODO: classic quantization (re-positioning of not exactly placed MIDI signals.

from bschaffl.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.