• wadeorz

    Does anyone know if there is a way to make PD keep "hearing" keystrokes when it is not the active window/application?

    Let me explain. I use PD as a MIDI controller for ableton live. it lets me get custom functionality out of old hardware controllers.

    What I want to do is map knobs in ableton to pairs of keystrokes in PD - very easy -

    "A" key = turn knob right
    "Z" key = turn knob left.

    This works fine AS LONG AS PD is the active window - i.e. the last program to be clicked on.

    But as soon as I touch sometghing in ableton with the mouse PD stops hearing the keystrokes - and I need to be able to use the mouse with ableton

    Anyone know a workaround??

    Cheers

    W

    posted in technical issues read more
  • wadeorz

    Hi all,

    This should be the easiest thing in the world, but I cant for the life of me figure it out.

    I need to populate an array with input from four different number streams were the order of appearence of numbers in the stream puts them into an queue to bang messages from 0,1,2 etc.

    A brief explanation

    I presume is pretty
    easy when you know how, but A brief explanation of the project might be in order

    The idea is to back project onto a series of screens and give people
    IR LED "paintbrushes" so they can paint with procedural graphics and
    sound.

    We're using "touchlib" blob tracking software (and webcams)to
    differentiate between the blobs. the software assigns each blob a
    numbered ID for the length of its lifetime, based on the order in
    which they come into existence : so the first blob in existence is "ID
    0" (until it dies, when it takes its pace in the queue), the second
    is "ID 1" etc.

    These IDs allow us to assign specific graphics to different blobs in
    Processing, and also to give each an individual piece of audio.

    Its easy with just one machine sending these messages as each ID
    corresponds nicely to the order of tracks to be triggered in the
    sequencer,
    but we're using four separate modular machines each running touchlib
    and we want the sound to be global.

    We have networked the machines and each of the four graphics modules
    can talk to the machine running the sound. The sound module is running
    PD which receives messages from the other machines and then sends MIDI
    messages to the sequencer. So PD is getting four streams of numbers -say from zero to three- which correspond to the order in which touchlib blob IDs pop into existence - (each stream local to its own machine)

    these numbers trigger a fade in/out of a
    mixer track in say for example Reason). Ideally the first person who enters the space will
    trigger some pad sounds (fader 1 in reason say) regardless of which
    screen they paint on.

    that way it will work if there is only one person in the space. The
    next person would trigger some percussion, and the full track would
    build naturally. The alternative is to have every ID locked to a
    sound, meaning it would really only work for four people in the space.

    So to the question. There are 4 data streams coming into PD, literally
    numbers 0 - 3 in each number box. as you can see in the
    "four_machine_dilemma"patch attached.

    what I need to do is fix it so that if (and only if) computer A has
    sent a message triggering track 1 that computer B, or the next stream,
    when it sends its own "ID number 1" is converted to ID number 2 , that
    is, it occupies the next position in the global array, triggering
    track two (because track 1 is occupied) even though it thinks it is
    "ID number 1", and so on down the chain.

    is there some way to store a boolean for the track's on state and use
    it to reassign a value to the next incoming message?

    Or just to fill positions in an array with the incoming messages in
    the order they are received. It seems like it it should be
    straight-forward but I'll be buggered blind if I can figure it out.

    Hope this is not to long winded for a simple question.

    Thanks in advance,

    wadeorz

    posted in technical issues read more
  • wadeorz

    I am trying to get the PD reactivision client to work in order to pick up messages from touchlib

    The Processing client does this no problem on the same port 3333 but PD picks up
    sweet F A.

    I really need to get touchlib talking directly to PD for an exhibition in a month.

    All help dearly appreciated,

    Thankyou.

    posted in technical issues read more
  • wadeorz

    thanks anyway dude

    posted in technical issues read more
  • wadeorz

    Thanks ... it is indeed. What does it do? The help file just has a patch which lists devices without explaining what it does ... How can it help me route keystrokes to PD when its not the active window ?

    if it helps this is what I get when I run the patch

    hidin: ** found 9 devices on your system
    DEVICES: -1 None
    DEVICES: 1
    DEVICES: 2
    DEVICES: 3
    DEVICES: 4
    hidin: -- could not get device #5: Access is denied.

    hidin: -- can not read from mouse and keyboard
    DEVICES: 5 Unsupported Device
    hidin: -- could not get device #6: Access is denied.

    hidin: -- can not read from mouse and keyboard
    DEVICES: 6 Unsupported Device
    hidin: -- could not get device #7: Access is denied.

    hidin: -- can not read from mouse and keyboard
    DEVICES: 7 Unsupported Device
    hidin: -- could not get device #8: Access is denied.

    hidin: -- can not read from mouse and keyboard
    DEVICES: 8 Unsupported Device
    hidin: -- could not get device #9: Access is denied.

    hidin: -- can not read from mouse and keyboard
    DEVICES: 9 Unsupported Device

    Thanks again.

    W

    posted in technical issues read more
  • wadeorz

    is hid an object? I'm on a windows machine unfortunately : (

    posted in technical issues read more
  • wadeorz

    ...eh, right. buggy then?

    say I wanted to make a switch to reset in case of noise/bugs whatever.

    would the safest thing be to overwrite all the arrays to 0?

    Thanks again for all your wonderful help!

    posted in technical issues read more
  • wadeorz

    what would you define as an"undefined execution order?"

    posted in technical issues read more
  • wadeorz

    and the fader abstraction.

    THANK YOU SOOOOOOOOO much

    http://www.pdpatchrepo.info/hurleur/fader.pd

    posted in technical issues read more
  • wadeorz

    Wow. I'm speechless. You're a genius. Check out the link below for info on the project (you'll be getting a mention on the website!)

    https://www.cs.tcd.ie/~odwyernc/zenTech/research.html

    I just have 1 more question (ok maybe two)

    as you can see from the attached "saviour.pd" (yes thats you) patch

    I have the faders rigged to receive a separate bang for on and off messages. This is because processing actually sends two different messages(with the same ID but a different message name - on or off)

    Whereas you seem to have done everything "in the box"

    The route object will trigger the on messages perfectly but the deallocation of the voices uses the same channel so I'm wondering:

    is it possible to use one [poly low] for on messages and one for off (i'm guessing not) or how can I hook up/route the [poly low] object to the faders so that the first bang on a channel is ON and the seccond OFF?

    http://www.pdpatchrepo.info/hurleur/saviour.pd

    posted in technical issues read more

Internal error.

Oops! Looks like something went wrong!