Jump to content

Scripter crashing LPX 10.3.2


Recommended Posts

I am very easily able to get LPX 10.3.2 to crash by using Scripter.  I am wondering if anyone else can replicate this or has any idea about why it might be happening.

 

In order to replicate, start up LPX, create an instrument track with any instrument you want, insert a midi region and draw some midi note events onto the region.  Put an instance of Scripter into the MFX slot, just use the simple example passthrough script provided by default.  Put LPX into cycle loop playing the region over and over again.  Now while its playing, try moving one of the notes forward or backward in time in the piano roll with the mouse.  You might have to do this more than once, but for me it pretty consistently crashes LPX the instant I release the mouse.

 

Anyone else?

Link to comment
Share on other sites

Good to know you are on the latest El Capitan. So thats one down - latest OS update and latest supported Logic Pro X update. IMHO, never post full crashes on forums. but with that caveat out of the way, it could be interesting to recreate a crash and see whats going on by taking a peek at El Capitan Console afterwards. If you were comfortable with it, you post a section of output relevant to Logic and see if anyone could help you go through it. I'm not sure I could, but I would take a look. That said, it does sound like a system level error to me. I have no idea if this is good advice, or if you have any familiarity with this, but this is the best run through I could find after a short search:

 

https://computers.tutsplus.com/tutorials/how-to-use-console-your-macs-diagnostic-diary--mac-45251

http://www.macworld.com/article/1061222/software-utilities/jan08geekfactor.html

 

Hope the bug hunting goes well. Post back the story with your other mac when you get the chance?

Link to comment
Share on other sites

I am able to replicate this crash on my MacPro also.  sometimes it takes longer before it happens on both computers.  sometimes it happens just playing through using just about any one of the example scripts from Apple...sometimes it happens when I click around on the piano roll whlie playing, sometimes right away and sometimes not.  The crash error is always the same as shown below...on both computers.

 

Maybe one of you guys with OSX 10.11.6 can try to replicate again...giving it a little more time to crash.  since its happening on both my MBP and my Mac Pro...I am thinking this must be more widespread.

 

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.apple.JavaScriptCore      	0x00007fff8f9169ee bmalloc::Heap::allocateXLarge(std::__1::lock_guard<bmalloc::StaticMutex>&, unsigned long) + 30
1   com.apple.JavaScriptCore      	0x00007fff8f9148ad bmalloc::Allocator::allocateXLarge(unsigned long) + 77
2   com.apple.JavaScriptCore      	0x00007fff8f8210cc JSC::MachineThreads::gatherConservativeRoots(JSC::ConservativeRoots&, JSC::JITStubRoutineSet&, JSC::CodeBlockSet&, void*, void*, int (&) [37]) + 188
3   com.apple.JavaScriptCore      	0x00007fff8f6d312e JSC::Heap::markRoots(double, void*, void*, int (&) [37]) + 462
4   com.apple.JavaScriptCore      	0x00007fff8f6d44a7 JSC::Heap::collectImpl(JSC::HeapOperation, void*, void*, int (&) [37]) + 679
5   com.apple.JavaScriptCore      	0x00007fff8f6d41d0 JSC::Heap::collect(JSC::HeapOperation) + 96
6   com.apple.JavaScriptCore      	0x00007fff8f4fa0fb JSC::GCActivityCallback::doWork() + 75
7   com.apple.JavaScriptCore      	0x00007fff8f2f753a JSC::HeapTimer::timerDidFire(__CFRunLoopTimer*, void*) + 186
8   com.apple.CoreFoundation      	0x00007fff91448ae4 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 20
9   com.apple.CoreFoundation      	0x00007fff91448773 __CFRunLoopDoTimer + 1075
10  com.apple.CoreFoundation      	0x00007fff914482ca __CFRunLoopDoTimers + 298
11  com.apple.CoreFoundation      	0x00007fff9143f7c1 __CFRunLoopRun + 1841
12  com.apple.CoreFoundation      	0x00007fff9143ee28 CFRunLoopRunSpecific + 296
13  com.apple.HIToolbox           	0x00007fff8a4b5935 RunCurrentEventLoopInMode + 235
14  com.apple.HIToolbox           	0x00007fff8a4b576f ReceiveNextEventCommon + 432
15  com.apple.HIToolbox           	0x00007fff8a4b55af _BlockUntilNextEventMatchingListInModeWithFilter + 71
16  com.apple.AppKit              	0x00007fff88056df6 _DPSNextEvent + 1067
17  com.apple.AppKit              	0x00007fff88056226 -[NSApplication _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 454
18  com.apple.AppKit              	0x00007fff8804ad80 -[NSApplication run] + 682
19  com.apple.AppKit              	0x00007fff88014368 NSApplicationMain + 1176
20  com.apple.logic10             	0x0000000107c228ab 0x1072e9000 + 9672875
21  libdyld.dylib                 	0x00007fff8e7735ad start + 1

Link to comment
Share on other sites

Man sure wish I could figure this out.  Both computers here on El Capitan are giving me these crashes using just about any Scripter script I try.  The mouse doesn't have to be moved.  As can be seen from the crash report...its a memory allocation bug of some kind, I'm guessing the problem is not in JavaScriptCore, but rather in the Scripter plugin itself.

 

I already tried restoring JavaScriptCore from the latest combo updater from Apple.  No difference.  Safari, Preview and all the other stuff that suposedly uses JavaScript is working fine.  This is only happening in Logic and Mainstage.  I wasn't a heavy Scripter user before the recent LPX update, so I don't know if this problem has been around a while.  But I can say, Scripter is unusable for me and don't konw what to do other then upgrade to Sierra with my fingers crossed, but I really prefer not to.

 

I recently wrote a pretty cool sequencer script, but it will only play a few notes before crashing, so I can't really test it at this point.  If anyone wants to try it out for me, lemme know...

Link to comment
Share on other sites

BTW, for a variety of reasons, I can totally understand a reluctance to upgrade to Sierra, but you've gone through all of the steps and its still acting up. I can understand your frustration. Especially with regard to being in the middle of actually going somewhere with a script. How would you feel about using one computer as a sacrificial lamb for a Sierra update, preferably not your preferred one? I'm up for testing out your script if you like BTW. Edited by Nseruame
Link to comment
Share on other sites

I just upgraded to Sierra, couldn't handle all the crashing.  Here is a little video of what I'm working on, its not ready to share..if at all yet..  Basically a script that can play midi files in mainstage.  This is a GM midifile I got off the net somewhere just to demo it..

 

Link to comment
Share on other sites

  • 3 months later...
  • 11 months later...
I just upgraded to Sierra, couldn't handle all the crashing.  Here is a little video of what I'm working on, its not ready to share..if at all yet..  Basically a script that can play midi files in mainstage.  This is a GM midifile I got off the net somewhere just to demo it..

 

 

Man...please let me know when this is done. I would love to take a look at this under the hood...and I know a lot of people would find this useful.

Link to comment
Share on other sites

I can’t even find the script now. Hehe. I am thinking about making an au plugin that can play midi files back instead. Or I have found plogue bidule’s sequencer object to work quite well.

 

The above was actually not that hard. You just need to take that program change script I shared on the other thread and add some conditional statements in the area where the actual midi events are created and sent, then you might need to expand the data array a little bit to indicate event type. But basically that’s all there is to it. Getting the array data with proper time stamps is the tricky part but I used scripter inside logic to log that data as it played a midi file, then I had it.

 

The above also had a bunch of extra GUI script code in it in order to select which midi channel to play on each channel, etc. Notice I had to copy the script to each channel in mainstage. It’s the same script on each channel but each one is only playing one midi channel from the big ass array. They all play perfectly in sync as would be expected. It was pretty cpu heavy that way though I will say. I could probably do it better now if I put some thought into it.

Link to comment
Share on other sites

Holy sh*t Batman. Here we have the official successor to the all-time-great "One Note Song" from 1992-ish by the ever-so popular K.Hofman (sic) which came as a demo on the single floppy Logic came on. It took one note as input and orchestrated it into "Popcorn", a synth driven disco hit from the 70s. Did I mention this was in 1992, so Scripter was just a glint in Dr. Lengeling's eye, if anything. Everything done in the Environment. Thinking of it, this might have impressed me even more than I thought it had.

 

Impressive Dewdman.

 

Christian

Link to comment
Share on other sites

shoot actually now that I look at it, I don't expect any of you to understand one thing about the script. At the time I was experimenting with JavaScript object oriented approaches, which is cool and all, but honestly..I don't expect anyone other than an experienced programmer to understand that script AT ALL. But knock yourselves out...

 

Maybe between looking at some part of that script and the other much simpler program change sender on the other thread, you can put together a script that sends whatever you want..

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...