Example #1
0
        static int renderCallback(IntPtr inRefCon,
                                  ref AudioUnit.AudioUnitRenderActionFlags _ioActionFlags,
                                  ref AudioTimeStamp _inTimeStamp,
                                  uint _inBusNumber,
                                  uint _inNumberFrames,
                                  AudioBufferList _ioData)
        {
            // getting audiounit instance
            var handler = GCHandle.FromIntPtr(inRefCon);
            var inst    = (AUGraph)handler.Target;

            // evoke event handler with an argument
            if (inst.RenderCallback != null)
            {
                var args = new AudioGraphEventArgs(
                    _ioActionFlags,
                    _inTimeStamp,
                    _inBusNumber,
                    _inNumberFrames,
                    _ioData);
                inst.RenderCallback(inst, args);
            }

            return(0); // noerror
        }
Example #2
0
        static int renderCallback(IntPtr inRefCon,
            ref AudioUnit.AudioUnitRenderActionFlags _ioActionFlags,
            ref AudioTimeStamp _inTimeStamp,
            uint _inBusNumber,
            uint _inNumberFrames,
            AudioBufferList _ioData)
        {
            // getting audiounit instance
            var handler = GCHandle.FromIntPtr(inRefCon);
            var inst = (AUGraph)handler.Target;

            // evoke event handler with an argument
            if (inst.RenderCallback != null)
            {
                var args = new AudioGraphEventArgs(
                    _ioActionFlags,
                    _inTimeStamp,
                    _inBusNumber,
                    _inNumberFrames,
                    _ioData);
                inst.RenderCallback(inst, args);
            }

            return 0; // noerror
        }
 void _auGraph_RenderCallback(object sender, AudioGraphEventArgs e)
 {
     // is Post Render ?
     if ((e.ActionFlags & AudioUnitRenderActionFlags.PostRender) != 0)
     {
         /*
         if (_isRecording)
         {
             // reading buffer
             _extAudioFile.WriteAsync(e.NumberFrames, e.Data);
         }*/
     }            
 }