Coder Social home page Coder Social logo

Virtual Playing Orchestra bugs about sfizz HOT 19 CLOSED

sfztools avatar sfztools commented on May 16, 2024
Virtual Playing Orchestra bugs

from sfizz.

Comments (19)

paulfd avatar paulfd commented on May 16, 2024 2

Thanks, this is indeed great news :)

Yes, the crossfade calculation are not dynamic right now and they're only checked when the note start. After reading around, this is indeed not what's expected so I'll look into it!

from sfizz.

paulfd avatar paulfd commented on May 16, 2024 2

Memory corruption could well be one reason for part of these problems, especially if it happens with freewheeling. For now its appearance feels extremely random for me, and I haven't yet managed to point out precisely what could be happening. I will investigate the session and try to reproduce as much as I can, but feel free to start a new issue for these too.

Thanks for looking and stress testing all of these! 🙂

from sfizz.

michaelwillis avatar michaelwillis commented on May 16, 2024 1

I just gave sfizz+vpo a more thorough test. From what I can tell, SFizz now performs the VPO instruments as well as LinuxSampler does, which is great news.

There is one minor bug that I also found in LinuxSampler: The instruments with cross-faded dynamics don't work. I think the problem is that VPO has those instruments set up such that the mod wheel (CC1) controls both volume and cross-fading multiple samples. See this page for more details about the cross-fading feature: http://virtualplaying.com/dynamic-cross-faded-brass/

Edit: To clarify, when I tried to test cross-fading, I adjusted the mod-wheel controller while playing a sustained note. The volume adjusted accordingly, but the cross fade didn't happen.

from sfizz.

michaelwillis avatar michaelwillis commented on May 16, 2024 1

@paulfd I made a "stress test" of sorts, using an old project that I made a while back previously using LinuxSampler. I found that with dozens of instances of sfizz, I get all kinds of snap crackle pop in the output, on both my Mac and my Linux machine. I don't think that they are xruns, since DSP load remains fairly reasonable. I even get them when I export my Ardour session to an audio file, which shouldn't ever xrun since it doesn't have to be realtime.

If it helps, here's my Ardour session:
https://www.dropbox.com/s/njkppe16evuus3h/Pumpernickel%20and%20Periwinkle.zip?dl=0

The requirements are sfizz, dragonfly reverb, virtual playing orchestra extracted at /opt/, and the Little Lizard Piano similarly extracted at /opt/ (and in actuality, if you can't find the little lizard piano, the bugs still reproduce without it).

I'm guessing that there is some kind of memory corruption problem, since I experienced similar bugs while developing Dragonfly Reverb. In fact, I initially thought that some old bugs in Dragonfly were back with a vengeance, but I was able to reproduce the bug even after deleting my reverb busses.

from sfizz.

paulfd avatar paulfd commented on May 16, 2024 1

Not very good, especially for such a session. This is a good stress test :) The strangest thing is that my desktop (which is a much better machine) can reproduce the errors and they seem to originate from the background file loader, so at least I have one place where I can see the issues.

I will try to get to the bottom of this if work allows in the weekend !

from sfizz.

paulfd avatar paulfd commented on May 16, 2024 1

I pinpointed alot of possible issues and solved them (hopefully). On my machines your session plays well now, if you're willing to give a try to the latest HEAD !

from sfizz.

paulfd avatar paulfd commented on May 16, 2024

Thanks for the report I will try these!

from sfizz.

michaelwillis avatar michaelwillis commented on May 16, 2024

To clarify, when I say "crash", I mean it caused Ardour to quit with a segfault. Thanks for taking a look!

from sfizz.

paulfd avatar paulfd commented on May 16, 2024

Hi Michael, I looked into it a bit and pushed in some changes (try e.g. 3608b31). Not guaranteeing that this whole sfz bank is perfect but it should be a bit better. I'll leave this open, don't hesitate to post back all the weird behavior you see so I can track it down 😃

from sfizz.

michaelwillis avatar michaelwillis commented on May 16, 2024

Hey @paulfd, thanks for taking a look at this. I'll build the latest and let you know how it goes. Admittedly, VPO is a large and very elaborate collection of virtual instruments, so I'll likely find some other weirdness here and there. I'll report more thorough results as I work on overhauling my orchestra template to use sfizz.

from sfizz.

alcomposer avatar alcomposer commented on May 16, 2024

@michaelwillis There are a series of bugs known on the Sfizz Discord as '40db', mainly as at times Sfizz can output the maximum output in Ardour etc.

This issue can be accompanied by:

  • 40db bursts
  • crackles & pops
  • Sfizz only playing back the pre-cache part of a note (at this point only I have experienced this phenomenon)

I would suggest to start a new issue for these bugs.

If you can also check, I find that I can make Sfizz act strange (as above) if I stop Ardour's audio engine, and restart. Also try changing the buffer size when restarting.

from sfizz.

michaelwillis avatar michaelwillis commented on May 16, 2024

@alcomposer There's a Discord? I'll have to jump in.

@paulfd What's freewheeling? When you say that this appears very random, do you mean specifically in my Ardour session, or generally the 40db issue that @alcomposer mentioned?

from sfizz.

paulfd avatar paulfd commented on May 16, 2024

Freewheeling is rendering, i.e. not synchronized on periodic callbacks. I tried your session on my laptop with an address-sanitizer build and it worked without glitches (with Ardour 6) but I will continue to investigate!

This 40db issue seems random indeed, not specifically your session.

from sfizz.

michaelwillis avatar michaelwillis commented on May 16, 2024

Oh! So freewheeling is what I was describing as "not realtime". It's good to hear that you got it to render without issues using the address sanitizer build, which at least indicates that it should work once the bugs are fixed. Just curious, how well does that build perform for realtime?

from sfizz.

michaelwillis avatar michaelwillis commented on May 16, 2024

Thanks @paulfd! I'll see what I can do about creating a much more simple Ardour session that reproduces this, it might be easier to identify the bug(s) than with a big bruiser session like this one.

from sfizz.

michaelwillis avatar michaelwillis commented on May 16, 2024

@paulfd Great work! I tried it again briefly and didn't experience any corruption issues. I'll try to give it a more thorough test over the next few days.

from sfizz.

michaelwillis avatar michaelwillis commented on May 16, 2024

@alcomposer @paulfd How do I get into the Discord channel? (I'm a total noob at Discord).

from sfizz.

redtide avatar redtide commented on May 16, 2024

https://discord.gg/3ArE9Mw here, there is also a #sfztools IRC channel on freenode

from sfizz.

michaelwillis avatar michaelwillis commented on May 16, 2024

I'm closing this because VPO is now mostly usable with sfizz.

from sfizz.

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.