poly~ and groove~ makes crash?


    May 19 2006 | 1:51 am
    Hi everyone,
    I've recently built a granulation patch (I know, so original!) using [groove~] and [poly~], that uses a Wacom tablet's X, Y, and pressure values to control playback position, rate/direction, and amplitude, respectively. My problem is that, after some use, and under unspecific conditions (at least, unspecific to my knowledge), the process hiccups and crashes, like so:
    Date/Time: 2006-05-18 17:57:11.367 -0700 OS Version: 10.4.6 (Build 8I127) Report Version: 4
    Command: MaxMSP 4.5.app Path: /Applications/MaxMSP 4.5/MaxMSP 4.5.app Parent: WindowServer [101]
    Version: 4.5.7 (4.5.7 - 3 February 2006)
    PID: 1075 Thread: 0
    Exception: EXC_BAD_ACCESS (0x0001) Codes: KERN_PROTECTION_FAILURE (0x0002) at 0x00000007
    Thread 0 Crashed: 0 groove~ 0x05c7d498 groove_set + 24 1 MaxPPC3.1pwpc 0x00437664 typedmess_fun + 1924 2 MaxPPC3.1pwpc 0x0050a164 outlet_anything + 320 3 prepend 0x0582331c prepend_out + 44 4 prepend 0x058236f8 prepend_anything + 196 5 MaxPPC3.1pwpc 0x00437484 typedmess_fun + 1444 6 MaxPPC3.1pwpc 0x0050a164 outlet_anything + 320 7 MaxPPC3.1pwpc 0x004cf834 unpack_element__FP6unpacklP4atom + 284 8 MaxPPC3.1pwpc 0x004cf940 unpack_list__FP6unpackP6symbolsP4atom + 176 9 MaxPPC3.1pwpc 0x0050b1f8 stdlist + 184 10 MaxPPC3.1pwpc 0x00509fb8 outlet_list + 292 11 MaxPPC3.1pwpc 0x004b571c route_list__FP5routeP6symbolsP4atom + 452 12 MaxPPC3.1pwpc 0x0050b1f8 stdlist + 184 13 MaxPPC3.1pwpc 0x00509fb8 outlet_list + 292 14 MaxPPC3.1pwpc 0x0050b1b8 stdlist + 120 15 MaxPPC3.1pwpc 0x00509fb8 outlet_list + 292 16 poly~ 0x05c73d20 poly_list + 144 17 MaxPPC3.1pwpc 0x0050b1f8 stdlist + 184 18 MaxPPC3.1pwpc 0x00509fb8 outlet_list + 292 19 MaxPPC3.1pwpc 0x00436fa8 typedmess_fun + 200 20 MaxPPC3.1pwpc 0x00436c60 typedmess + 92 21 MaxPPC3.1pwpc 0x00438200 aeval + 1264 22 MaxPPC3.1pwpc 0x0040bfc0 atombuf_eval + 124 23 MaxPPC3.1pwpc 0x004d34b4 vmessage_list__FP9_vmessageP6symbolsP4atom + 68 24 MaxPPC3.1pwpc 0x0050b1f8 stdlist + 184 25 MaxPPC3.1pwpc 0x00509fb8 outlet_list + 292 26 MaxPPC3.1pwpc 0x004ac7c8 pack_out__FP4pack + 104 27 MaxPPC3.1pwpc 0x004ac9cc pack_int__FP4packl + 152 28 MaxPPC3.1pwpc 0x00509a64 outlet_int + 288 29 MaxPPC3.1pwpc 0x004a26c8 vnumber_int__FP8_vnumberl + 76 30 MaxPPC3.1pwpc 0x00509a64 outlet_int + 288 31 poly 0x058d93cc poly_int + 280 32 MaxPPC3.1pwpc 0x0050b28c stdlist + 332 33 MaxPPC3.1pwpc 0x00509fb8 outlet_list + 292 34 MaxPPC3.1pwpc 0x004ac7c8 pack_out__FP4pack + 104 35 MaxPPC3.1pwpc 0x004ac9cc pack_int__FP4packl + 152 36 MaxPPC3.1pwpc 0x00509a64 outlet_int + 288 37 MaxPPC3.1pwpc 0x004cf78c unpack_element__FP6unpacklP4atom + 116 38 MaxPPC3.1pwpc 0x004cf940 unpack_list__FP6unpackP6symbolsP4atom + 176 39 MaxPPC3.1pwpc 0x0050b1f8 stdlist + 184 40 MaxPPC3.1pwpc 0x00509fb8 outlet_list + 292 41 com.cycling74.maxapi.framework 0x01068668 outlet_list + 72 42 wacom 0x05c64a00 wacom_outputPoint + 604 (wacom.c:553) 43 wacom 0x05c65a40 HandleTabletPointer + 348 (wacom.c:1100) 44 com.apple.HIToolbox 0x9321c794 DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*) + 692 45 com.apple.HIToolbox 0x9321beec SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, HandlerCallRec*) + 372 46 com.apple.HIToolbox 0x93222c8c SendEventToEventTarget + 40 47 com.apple.HIToolbox 0x93411a28 HandleTabletEvent(OpaqueEventRef*) + 48 48 com.apple.HIToolbox 0x932230a4 ToolboxEventDispatcherHandler(OpaqueEventHandlerCallRef*, OpaqueEventRef*, void*) + 668 49 com.apple.HIToolbox 0x9321c9e4 DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*) + 1284 50 com.apple.HIToolbox 0x9321beec SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, HandlerCallRec*) + 372 51 com.apple.HIToolbox 0x93222c8c SendEventToEventTarget + 40 52 com.apple.HIToolbox 0x932639a0 ToolboxEventDispatcher + 92 53 com.apple.HIToolbox 0x9326392c HLTBEventDispatcher + 16 54 com.apple.HIToolbox 0x93261ee4 RunApplicationEventLoop + 148 55 MaxPPC3.1pwpc 0x0042d534 app_run + 48 56 MaxPPC3.1pwpc 0x0042c314 main + 820
    I'm running about 50 instances of the grain patch. My guess is that, if it isn't a bug of [groove~], or just my computer getting bogged, I'm sending my messages to it too quickly or in the wrong order.
    Because I figure most people don't use or have a Wacom tablet, I've included a more-or-less identical patch driven by a mouse rather than a tablet. If you have a Wacom tablet, you'll need the [wacom] object available here (http://www.jmcouturier.com/download.html). Granted, I haven't been able to crash the mouse version, but I don't think that's the culprit. Is it possible that the [metro] that's stuffing the [pack] out of the [wacom]/[mousestate] could cause a crash? I added that recently so that audio would persist even when the Wacom tablet wasn't moving, but I also didn't experience any crashes until after I added it. But then again, I don't understand how it would cause it, either.
    All the files are attached.
    Thanks for your time,
    Evan

    • May 19 2006 | 2:09 am
      It appears that the mailing list attachment didn't come through on the message board side. Here they are, in text form:
      POLY-GRAIN (mouse version):
      THE-GRAIN (the poly~ object):
      POLY-GRAIN-WACOM (Wacom tablet version):
      Evan