#338 add threaded read/write for coll to avoid xruns

feature
open
nobody
externals (63)
5
2015-03-29
2010-09-28
No

Xruns occur when coll tries to read/write large files, particularly when Pd is running more complex patches. Following proposed solution does read/write in a separate thread to avoid generating xruns and outputs bang on load using clock_delay to make it sync properly with the main thread.

Discussion

  • Ivica Ico Bukvic

    cleaned-up patch using diff -u against externals/miXed/cyclone/hammer/coll.c found in pd-extended 0.42.5

     
  • Ivica Ico Bukvic

    Fixed and re-uploaded the patch after discovering some stability issues.

     
  • Ivica Ico Bukvic

    • assigned_to: nobody --> zmoelnig
     
  • Hans-Christoph Steiner

    • assigned_to: zmoelnig --> eighthave
    • status: open --> pending
     
  • Hans-Christoph Steiner

    Hey Ico, glad to see you putting work into hard problems.

    cyclone is a complex library with a very specific goal: a collection of clones of Max/MSP objects, bugs, warts and all. I recommend that you just make your own version of [coll] and give it a new name to avoid confusion, unless you really share this goal and are willing to test against Max/MSP.

     
  • Ivica Ico Bukvic

    FWIW, in Max/MSP loading large coll files (or any files for that matter) does not cause any xruns while in Pd it does. Now, I am not sure if this is due to deeper architectural difference between Pd and Max code base but as it is right now coll is unusable in a good number of scenarios and it does not behave like the counterpart it tries to emulate. This bugfix solves that. Likewise, a collection of fixes to the cyclone I submitted more recently deals with the cyclone file editor that coll also uses and makes it also more user friendly (e.g. you can save the changes without closing the window) which is also how the original coll file behaves (AFAIK).

    HTH

     
  • Ivica Ico Bukvic

    • status: pending --> open
     
  • Hans-Christoph Steiner

    I don't know Max/MSP enough to say, so that's not a decision I'm going to make. If you want to work on cyclone as a Max/MSP clone library, then I think you should discuss it with the author, Krzysztof Czaja.

     
  • Hans-Christoph Steiner

    • assigned_to: eighthave --> nobody
     
  • electrickery

    electrickery - 2015-03-29

    Cleaned up the patch. It appears to be working by moving the actual read and write operations to a separate thread. Will test some more before applying it to the code.

     


Anonymous

Cancel  Add attachments





Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks