Package de.sciss.net

Examples of de.sciss.net.OSCMessage


      for( int i = 0, j = 2; j < args.length; i++, j++ ) {
        args[ j ] = extraArgs[ i ];
      }
   
      try {
        server.send( new OSCMessage( "/gui/menu", args ), n.getAddress() );
      }
      catch( IOException e1 ) {
        BasicWindowHandler.showErrorDialog( null, e1, n.getText() );
      }
    }
View Full Code Here


 
  public void close()
  throws IOException
  {
    if( pending.getPacketCount() == 0 ) {
      pending.addPacket( new OSCMessage( "/status" ))// properly mark ending of rendering
    }
    flush();
//    fch.close();
    raf.close();
  }
View Full Code Here

          return;
        }
      }
     
      final OSCBundle    bndl  = new OSCBundle();
      final OSCMessage  msgWrite;
     
      try {
//        server.dumpOutgoingOSC( kDumpBoth );
        bndl.addPacket( ct.bufDisk.closeMsg() );
//        msgWrite = ct.bufDisk.writeMsg( ct.recFile.getAbsolutePath(), "aiff",
//                affp.getEncodingString(), 0, 0, true );
        msgWrite = ct.bufDisk.writeMsg( ct.recFile.getAbsolutePath(), "aiff",
                encodingString, 0, 0, true );
        bndl.addPacket( msgWrite );
        if( server.sendBundleSync( bndl, msgWrite.getName(), 4 )) {
          nw.register( ct.synthDiskOut );
         
//System.out.println( "HERE" );
//try { Thread.sleep( 3000 ); } catch( InterruptedException e1 ) { /* ... */ }
//System.out.println( "---2" );
View Full Code Here

    busPhasor      = Bus.audio( server );

    runTrigger      = new Runnable() {
      public void run()
      {
        final OSCMessage    msg    = trigMsg;  // this way we synchronize the access
        final int        nodeID  = ((Number) msg.getArg( 0 )).intValue();
        final int        nextClock, fill, bufOff;
        final long        pos, start;
        final OSCBundle      bndl2;
        final int        even;
        final Span[]      bufSpans;
        int            numCh;

        try {
          clock    = ((Number) msg.getArg( 2 )).intValue();
//System.err.println( "clock = " + clock );
          nextClock  = clock + 1;
          even    = nextClock & 1; // == 0;
          bndl2    = new OSCBundle();

          if( (ct == null) || (ct.synthPhasor == null) || (nodeID != ct.synthPhasor.getNodeID()) ) return;
          if( trigNodeID == -1 ) return// transport not running anymore
            pos    = nextClock * DISKBUF_SIZE_HM - ((1 - even) * DISKBUF_PAD) + playOffset;
            start  = Math.max( 0, pos );
            fill  = (int) (start - pos);
            bufOff  = even * DISKBUF_SIZE_H;
            if( fill > 0 ) {
              for( int j = 0; j < ct.bufsDisk.length; j++ ) {
                numCh = ct.bufsDisk[ j ].getNumChannels();
                bndl2.addPacket( ct.bufsDisk[ j ].fillMsg( bufOff * numCh, fill * numCh, 0.0f ));
              }
            }
            bufSpans = transport.foldSpans( new Span( start, pos + DISKBUF_SIZE_H ), MIN_LOOP_LEN );
            doc.getAudioTrail().addBufferReadMessages( bndl2, bufSpans, ct.bufsDisk, bufOff + fill );

            lastBufSpans[ even ] = bufSpans;
if( DEBUG_FOLD ) {
  System.out.println( "------C "+ nextClock + ", " + even + ", " + playOffset + ", " + pos );
for( int k = 0, m = bufOff + fill; k < bufSpans.length; k++ ) {
  System.out.println( "i = " + k + "; " + bufSpans[ k ] + " -> " + m );
    m += bufSpans[ k ].getLength();
  }
  System.out.println();
}
            if( !server.sync( bndl2, TIMEOUT )) {
              printTimeOutMsg( "bufUpdate" );
          }
        }
        catch( IOException e1 ) {
          printError( "Receive /tr", e1 );
        }
        catch( ClassCastException e2 ) {
          printError( "Receive /tr", e2 );
        }
      }
    };

    trigResp      = new OSCResponderNode( server, "/tr", new OSCListener() {
      public void messageReceived( OSCMessage msg, SocketAddress sender, long time )
      {
        final int  nodeID  = ((Number) msg.getArg( 0 )).intValue();
       
        if( nodeID == trigNodeID ) {
          trigMsg  = msg;
          EventQueue.invokeLater( runTrigger );
        }
View Full Code Here

  // ----------------- EventManager.Processor interface -----------------

  public void processEvent( BasicEvent be )
  {
    final Event      e      = (Event) be;
    final OSCMessage  msg      = e.msg;
    final int      busIndex  = ((Number) msg.getArg( 0 )).intValue();
    final int      numVals    = ((Number) msg.getArg( 1 )).intValue();
// getWhen doesn't provide a valid value i think
//    final long      time    = e.getWhen();
    final long      time    = System.currentTimeMillis();
    Client        mc; 
 
    if( (bus == null) || (busIndex != bus.getIndex()) ) return;

    for( int i = 0; i < collActiveClients.size(); i++ ) {
      mc  = (Client) collActiveClients.get( i );
      if( !mc.task ) continue;
      for( int j = 0, k = 0, m = numVals + 2, off = mc.cOffset + 2; (k < mc.cNum) && (off < m); j++ ) {
        if( mc.channels[ j ] >= 0 ) {
          mc.peakRMSPairs[ k++ ] = ((Number) msg.getArg( off++ )).floatValue();
          mc.peakRMSPairs[ k++ ] = ((Number) msg.getArg( off++ )).floatValue();
        } else {
          mc.peakRMSPairs[ k++ ] = 0f;
          mc.peakRMSPairs[ k++ ] = 0f;
          off += 2;
        }
View Full Code Here

        nw    = NodeWatcher.newFrom( server );
        bndl  = new OSCBundle();
        bus    = Bus.control( server, numCtrlChans );
        if( bus != null ) {
          meterBangBndl = new OSCBundle();
          meterBangBndl.addPacket( new OSCMessage( "/c_getn", new Object[] {
            new Integer( bus.getIndex() ), new Integer( bus.getNumChannels() )}));

          for( int i = 0; i < collActiveClients.size(); i++ ) {
            mc  = (Client) collActiveClients.get( i );
            if( mc.task ) numTask++;
            if( mc.g != null ) {
              g  = mc.g;
              meterBangBndl.addPacket( new OSCMessage( "/n_set", new Object[] {
                new Integer( g.getNodeID() ), "t_trig", new Integer( 1 )}));
            } else {
              if( grp == null ) {
                grp = Group.basicNew( server );
                grp.setName( "MeterManager" );
                bndl.addPacket( grp.newMsg( server.getDefaultGroup(), kAddToTail ));
                nw.register( grp );
              }
              g  = grp;
              if( !haveGrpTrig ) {
                meterBangBndl.addPacket( new OSCMessage( "/n_set", new Object[] {
                  new Integer( g.getNodeID() ), "t_trig", new Integer( 1 )}));
                haveGrpTrig = true;
              }
            }
            for( int j = 0, m = bus.getIndex() + mc.cOffset; j < mc.synths.length; j++, m += 2 ) {
View Full Code Here

    }

    public boolean incorporate( BasicEvent oldEvent )
    {
      if( (oldEvent instanceof Event) && (oldEvent.getSource() == getSource()) ) {
        final OSCMessage omsg = ((Event) oldEvent).msg;
        if( omsg.getName().equals( msg.getName() ) &&
          (omsg.getArgCount() == msg.getArgCount()) &&
          omsg.getArg( 0 ).equals( msg.getArg( 0 )) &&  // busIndex
          omsg.getArg( 1 ).equals( msg.getArg( 1 ))) {  // numVals
         
          final Object[] fuseArgs = new Object[ msg.getArgCount() ];
          fuseArgs[ 0 ] = msg.getArg( 0 );
          fuseArgs[ 1 ] = msg.getArg( 1 );
          for( int i = 2; i < fuseArgs.length; i++ ) {
            fuseArgs[ i ] = new Float( Math.max(
                ((Numbermsg.getArg( i )).floatValue(),
                ((Number) omsg.getArg( i )).floatValue() ));
          }
          msg = new OSCMessage( msg.getName(), fuseArgs );
          return true;
        }
      }
      return false;
    }
View Full Code Here

//  }

  public void reply( String cmd, Object[] args )
  throws IOException
  {
    server.send( new OSCMessage( cmd, args ), addr );
  }
View Full Code Here

    final Object[] args = new Object[ argCount + 1 ];
    args[ 0 ] = msg.getName();
    for( int i = 0; i < argCount; i++ ) {
      args[ i + 1 ] = msg.getArg( i );
    }
    server.send( new OSCMessage( OSCRoot.OSC_FAILEDREPLY, args ), addr );
  }
View Full Code Here

      args[ j++ ] = msg.getArg( i );
    }
    for( int i = 0; i < doneArgs.length; i++ ) {
      args[ j++ ] = doneArgs[ i ];
    }
    server.send( new OSCMessage( OSCRoot.OSC_DONEREPLY, args ), addr );
  }
View Full Code Here

TOP

Related Classes of de.sciss.net.OSCMessage

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.