[Cs-dev] resetting Csound...
Date | 2013-04-11 14:24 |
From | Rory Walsh |
Subject | [Cs-dev] resetting Csound... |
Thanks to the Maynooth Massive I got over the last reported problem. But it seems all roads lead to memRESET(CSOUND *csound) in memalloc.c, and at some stage or another my host will crash. It's very inconsistent but I find that a failed compile followed quickly be a successful recompile will do it. Backtrace is: 0 0x00007ffff5c81425 __GI_raise ../nptl/sysdeps/unix/sysv/linux/raise.c 64 1 0x00007ffff5c84b8b __GI_abort abort.c 91 2 0x00007ffff5cbf39e __libc_message ../sysdeps/unix/sysv/linux/libc_fatal.c 201 3 0x00007ffff5cc9b96 malloc_printerr malloc.c 5007 4 0x00007ffff5ccc3e8 _int_malloc malloc.c 3470 5 0x00007ffff5ccdfb5 __GI___libc_malloc malloc.c 2924 6 0x00007ffff4fef69c xcb_connect_to_fd 7 0x00007ffff4ff2804 xcb_connect_to_display_with_auth_info 8 0x00007ffff7882ef2 _XConnectXCB 9 0x00007ffff7873a41 XOpenDisplay 10 0x00007fffe532c0b4 csoundModuleInit 11 0x00000000008afbb2 csoundInitModule /home/rory/sourcecode/csound-csound5-git/Top/csmodule.c 829 12 0x00000000008afd81 csoundInitModules /home/rory/sourcecode/csound-csound5-git/Top/csmodule.c 877 13 0x00000000008b6780 csoundCompile /home/rory/sourcecode/csound-csound5-git/Top/main.c 330 14 0x00000000004bc83f Csound::Compile /usr/include/csound/csound.hpp 147 15 0x00000000004b4aba CabbagePluginAudioProcessor::reCompileCsound /home/rory/sourcecode/CabbagePatcher/Source/Plugin/CabbagePluginProcessor.cpp 327 16 0x0000000000461146 FilterComponent::actionListenerCallback /home/rory/sourcecode/CabbagePatcher/Source/GraphEditorPanel.cpp 330 17 0x0000000000628452 juce::ActionBroadcaster::ActionMessage::messageCallback /home/rory/sourcecode/CabbagePatcher/JuceLibraryCode/modules/juce_events/broadcasters/juce_ActionBroadcaster.cpp 42 18 0x0000000000629e66 juce::InternalMessageQueue::dispatchNextInternalMessage /home/rory/sourcecode/CabbagePatcher/JuceLibraryCode/modules/juce_events/native/juce_linux_Messaging.cpp 206 19 0x000000000062988e juce::InternalMessageQueue::dispatchNextEvent /home/rory/sourcecode/CabbagePatcher/JuceLibraryCode/modules/juce_events/native/juce_linux_Messaging.cpp 94 20 0x0000000000627eda juce::MessageManager::dispatchNextMessageOnSystemQueue /home/rory/sourcecode/CabbagePatcher/JuceLibraryCode/modules/juce_events/native/juce_linux_Messaging.cpp 390 21 0x0000000000624541 juce::MessageManager::runDispatchLoopUntil /home/rory/sourcecode/CabbagePatcher/JuceLibraryCode/modules/juce_events/messages/juce_MessageManager.cpp 119 22 0x0000000000624461 juce::MessageManager::runDispatchLoop /home/rory/sourcecode/CabbagePatcher/JuceLibraryCode/modules/juce_events/messages/juce_MessageManager.cpp 99 23 0x000000000078307b juce::JUCEApplication::main /home/rory/sourcecode/CabbagePatcher/JuceLibraryCode/modules/juce_gui_basics/application/juce_Application.cpp 242 24 0x0000000000783296 juce::JUCEApplication::main /home/rory/sourcecode/CabbagePatcher/JuceLibraryCode/modules/juce_gui_basics/application/juce_Application.cpp 297 25 0x000000000046a215 main /home/rory/sourcecode/CabbagePatcher/Source/HostStartup.cpp 107 Latest Csound 5 git, Linux. . ------------------------------------------------------------------------------ Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis & visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2013-04-11 14:33 |
From | Rory Walsh |
Subject | Re: [Cs-dev] resetting Csound... |
Actually in this case the problem is originating in csoundInitModule, sorry, I got the functions wrong. On 11 April 2013 14:24, Rory Walsh |
Date | 2013-04-11 15:19 |
From | Victor Lazzarini |
Subject | Re: [Cs-dev] resetting Csound... |
Are you always calling csoundPreCompile()? On 11 Apr 2013, at 14:33, Rory Walsh wrote: > Actually in this case the problem is originating in csoundInitModule, > sorry, I got the functions wrong. > > On 11 April 2013 14:24, Rory Walsh |
Date | 2013-04-11 15:28 |
From | Rory Walsh |
Subject | Re: [Cs-dev] resetting Csound... |
Yup, each time I recompile I do the following: csCompileResult = csound->Compile(const_cast |
Date | 2013-04-11 15:42 |
From | Victor Lazzarini |
Subject | Re: [Cs-dev] resetting Csound... |
In this example, there are two compiler calls. Which one is responsible for the break-up if it fails? On 11 Apr 2013, at 15:28, Rory Walsh wrote: > Yup, each time I recompile I do the following: > > csCompileResult = > csound->Compile(const_cast |
Date | 2013-04-11 15:45 |
From | Rory Walsh |
Subject | Re: [Cs-dev] resetting Csound... |
Sorry copy and paste messed me up, more accurate description now: csound->DeleteChannelList(csoundChanList); csound->Reset(); csound->PreCompile(); numCsoundChannels = 0; csound->SetMessageCallback(CabbagePluginAudioProcessor::messageCallback); csound->SetExternalMidiInOpenCallback(OpenMidiInputDevice); csound->SetExternalMidiReadCallback(ReadMidiData); csound->SetExternalMidiOutOpenCallback(OpenMidiOutputDevice); csound->SetExternalMidiWriteCallback(WriteMidiData); CSspout = nullptr; CSspin = nullptr; csCompileResult = csound->Compile(const_cast |
Date | 2013-04-11 15:54 |
From | Victor Lazzarini |
Subject | Re: [Cs-dev] resetting Csound... |
A few questions: 1) when there is no audio, is Csound still performing without problems? 2) are the CSspout etc ptrs not NULL? 3) after a fail do you reset() and precompile()? On 11 Apr 2013, at 15:45, Rory Walsh wrote: > Sorry copy and paste messed me up, more accurate description now: > > csound->DeleteChannelList(csoundChanList); > csound->Reset(); > csound->PreCompile(); > numCsoundChannels = 0; > csound->SetMessageCallback(CabbagePluginAudioProcessor::messageCallback); > csound->SetExternalMidiInOpenCallback(OpenMidiInputDevice); > csound->SetExternalMidiReadCallback(ReadMidiData); > csound->SetExternalMidiOutOpenCallback(OpenMidiOutputDevice); > csound->SetExternalMidiWriteCallback(WriteMidiData); > > CSspout = nullptr; > CSspin = nullptr; > > csCompileResult = > csound->Compile(const_cast |
Date | 2013-04-11 16:24 |
From | Rory Walsh |
Subject | Re: [Cs-dev] resetting Csound... |
> 1) when there is no audio, is Csound still performing without problems? Yes. > 2) are the CSspout etc ptrs not NULL? I just do that before I reassign them: CSspout = csound->GetSpout(); CSspin = csound->GetSpin(); > 3) after a fail do you reset() and precompile()? Yes, that whole sequence is called again. I think that this must be a threading problem on my side. I'll report back if I learn otherwise. Big thanks to you and Steven for your direction on this. > On 11 Apr 2013, at 15:45, Rory Walsh wrote: > >> Sorry copy and paste messed me up, more accurate description now: >> >> csound->DeleteChannelList(csoundChanList); >> csound->Reset(); >> csound->PreCompile(); >> numCsoundChannels = 0; >> csound->SetMessageCallback(CabbagePluginAudioProcessor::messageCallback); >> csound->SetExternalMidiInOpenCallback(OpenMidiInputDevice); >> csound->SetExternalMidiReadCallback(ReadMidiData); >> csound->SetExternalMidiOutOpenCallback(OpenMidiOutputDevice); >> csound->SetExternalMidiWriteCallback(WriteMidiData); >> >> CSspout = nullptr; >> CSspin = nullptr; >> >> csCompileResult = >> csound->Compile(const_cast |
Date | 2013-04-11 16:27 |
From | Victor Lazzarini |
Subject | Re: [Cs-dev] resetting Csound... |
My question was, when you are getting no sound, have you checked whether the spout, spin are NULL? Or are they pointing somewhere else? On 11 Apr 2013, at 16:24, Rory Walsh wrote: >> >> 2) are the CSspout etc ptrs not NULL? > > I just do that before I reassign them: > CSspout = csound->GetSpout(); > CSspin = csound->GetSpin(); Dr Victor Lazzarini Senior Lecturer Dept. of Music NUI Maynooth Ireland tel.: +353 1 708 3545 Victor dot Lazzarini AT nuim dot ie ------------------------------------------------------------------------------ Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis & visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2013-04-11 16:31 |
From | Rory Walsh |
Subject | Re: [Cs-dev] resetting Csound... |
Yes, I know what you mean now. I'll put those checks in and see. On 11 April 2013 16:27, Victor Lazzarini |
Date | 2013-04-11 16:52 |
From | Rory Walsh |
Subject | Re: [Cs-dev] resetting Csound... |
Got it. I had some dodgy mutex stuff that wasn't unlocking itself, due to my error of course. Steven sensed as much last night but I got thrown off course by other errors. Fingers crossed but it's now behaving really nicely. The lag between recompiles is noticeable, but this isn't technically live coding so I guess it's acceptable. Thanks again. ------------------------------------------------------------------------------ Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis & visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2013-04-11 16:56 |
From | Victor Lazzarini |
Subject | Re: [Cs-dev] resetting Csound... |
excellent. You'll get technically correct live coding with Csound 6. On 11 Apr 2013, at 16:52, Rory Walsh wrote: > Got it. I had some dodgy mutex stuff that wasn't unlocking itself, due > to my error of course. Steven sensed as much last night but I got > thrown off course by other errors. Fingers crossed but it's now > behaving really nicely. The lag between recompiles is noticeable, but > this isn't technically live coding so I guess it's acceptable. Thanks > again. > > ------------------------------------------------------------------------------ > Precog is a next-generation analytics platform capable of advanced > analytics on semi-structured data. The platform includes APIs for building > apps and a phenomenal toolset for data science. Developers can use > our toolset for easy data analysis & visualization. Get a free account! > http://www2.precog.com/precogplatform/slashdotnewsletter > _______________________________________________ > Csound-devel mailing list > Csound-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/csound-devel Dr Victor Lazzarini Senior Lecturer Dept. of Music NUI Maynooth Ireland tel.: +353 1 708 3545 Victor dot Lazzarini AT nuim dot ie ------------------------------------------------------------------------------ Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis & visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2013-04-11 17:02 |
From | Rory Walsh |
Subject | Re: [Cs-dev] resetting Csound... |
It's funny, right now I can't really think of how it would any easier than how I'm currently doing. Each .csd lives in a plugin, and each plugin is part of a managed signal flow graph. With Csound 6 it would be just as to create my own Csound flow graph and add and remove nodes as I wish, but the way I currently have it implemented means I can insert LADSPA, LV2, AU and VST plugins anywhere along my signal graph between Csound instances. That's really handy. ------------------------------------------------------------------------------ Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis & visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2013-04-11 17:51 |
From | Victor Lazzarini |
Subject | Re: [Cs-dev] resetting Csound... |
It might mean you could add new instruments to a node. Would that be useful? On 11 Apr 2013, at 17:02, Rory Walsh wrote: > It's funny, right now I can't really think of how it would any easier > than how I'm currently doing. Each .csd lives in a plugin, and each > plugin is part of a managed signal flow graph. With Csound 6 it would > be just as to create my own Csound flow graph and add and remove nodes > as I wish, but the way I currently have it implemented means I can > insert LADSPA, LV2, AU and VST plugins anywhere along my signal graph > between Csound instances. That's really handy. > > ------------------------------------------------------------------------------ > Precog is a next-generation analytics platform capable of advanced > analytics on semi-structured data. The platform includes APIs for building > apps and a phenomenal toolset for data science. Developers can use > our toolset for easy data analysis & visualization. Get a free account! > http://www2.precog.com/precogplatform/slashdotnewsletter > _______________________________________________ > Csound-devel mailing list > Csound-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/csound-devel Dr Victor Lazzarini Senior Lecturer Dept. of Music NUI Maynooth Ireland tel.: +353 1 708 3545 Victor dot Lazzarini AT nuim dot ie ------------------------------------------------------------------------------ Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis & visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2013-04-11 18:17 |
From | Rory Walsh |
Subject | Re: [Cs-dev] resetting Csound... |
A node within a node within a node. It'll be like the movie Inception for signal graphs! I guess you could do that, and you would not need to restart Csound either. That could be nice. Of course I'll also provide a live coding console too. On 11 April 2013 17:51, Victor Lazzarini |
Date | 2013-04-11 18:19 |
From | Victor Lazzarini |
Subject | Re: [Cs-dev] resetting Csound... |
well yes, you can open a console for each node so users can live code directly there. On 11 Apr 2013, at 18:17, Rory Walsh wrote: > A node within a node within a node. It'll be like the movie Inception > for signal graphs! I guess you could do that, and you would not need > to restart Csound either. That could be nice. Of course I'll also > provide a live coding console too. > > On 11 April 2013 17:51, Victor Lazzarini |
Date | 2013-04-11 20:00 |
From | Oeyvind Brandtsegg |
Subject | Re: [Cs-dev] resetting Csound... |
Attachments | None None |
Hah. And it would solve all need for more processing time, as one second in the outer node would equal an hour inside the nested node (probably remember the ratio wrong from the movie, but something along those lines). Den 11. apr. 2013 19:18 skrev "Rory Walsh" <rorywalsh@ear.ie> følgende:
A node within a node within a node. It'll be like the movie Inception |
Date | 2013-04-11 20:15 |
From | Rory Walsh |
Subject | Re: [Cs-dev] resetting Csound... |
Using the movie to explain Csound's audio and control rates is about the one thing I haven't tried! On 11 April 2013 20:00, Oeyvind Brandtsegg |
Date | 2013-04-11 21:07 |
From | andy fillebrown |
Subject | Re: [Cs-dev] resetting Csound... |
Attachments | None None |
Someone may be hitting your code with a train in one of the inner nodes.. That would totally explain the crashing. On Thu, Apr 11, 2013 at 3:15 PM, Rory Walsh <rorywalsh@ear.ie> wrote: Using the movie to explain Csound's audio and control rates is about |
Date | 2013-04-11 21:13 |
From | Rory Walsh |
Subject | Re: [Cs-dev] resetting Csound... |
Good point. Actually, to be serious for a minute, this would make something else I was planning a lot easier. I was hoping that users could select a box over all their plugins and merge them into one mega plugin. I was thinking of doing it via text, but this would be a much better solution. I could just recreate the entire signal flow in a single Csound instance. Nice. On 11 April 2013 21:07, andy fillebrown |
Date | 2013-04-11 22:03 |
From | Oeyvind Brandtsegg |
Subject | Re: [Cs-dev] resetting Csound... |
Attachments | None None |
Nice. But look out for that (pulse)train. It can hit when you least expect it. 2013/4/11 Rory Walsh <rorywalsh@ear.ie> Good point. Actually, to be serious for a minute, this would make Oeyvind Brandtsegg Professor of Music Technology NTNU 7491 Trondheim Norway Cell: +47 92 203 205 http://flyndresang.no/ http://www.partikkelaudio.com/ http://soundcloud.com/brandtsegg http://soundcloud.com/t-emp |