EZAudio audioPlot - TAAE Output as Input. Please HELP!

Hi Guys:
Is anyone Using EZAudio as a new way of Displaying the WaveForm? I Found that it Works Great but only with the MICROPHONE as the Output.

Could Anyone PLEASE Help me Get the EZAudio AudioPlot to Display the TAEE output instead of the Microphone Input?

Here is my Setup Code for the Plot":

  • (void) setUpEZOscilloscope
    {
    /* Customizing the audio plot's look */
    self.audioPlot.backgroundColor = [UIColor colorWithRed:44.0f/255.0f green:44.0f/255.0f blue:44.0f/255.0f alpha:1.0];
    // Waveform color
    self.audioPlot.color = [UIColor colorWithRed:200.0f/255.0f green:200.0f/255.0f blue:200.0f/255.0f alpha:1.0];
    self.audioPlot.layer.cornerRadius = 5;
    self.audioPlot.layer.masksToBounds = YES;

    // Plot type
    self.audioPlot.plotType = EZPlotTypeRolling;
    // Mirrored:
    self.audioPlot.shouldMirror = YES;
    // Filled or Not:
    self.audioPlot.shouldFill = YES;

    /** Initialize the circular buffer /
    [EZAudio circularBuffer:&_circularBuffer
    withSize:1024];
    /
    Start the microphone */
    [EZMicrophone sharedMicrophone].microphoneDelegate = self;
    [[EZMicrophone sharedMicrophone] startFetchingAudio];

    // HOW CAN I Get the TAAE's Output to be the EZAudio's Input?
    }

Comments

  • Hi Hernan,

    I'm working on an audio project myself and I need to do the exact same thing. Did you have any luck with this? Please share :)

    I have an audioReceiver that I added as an output receiver to the audio controller.
    In my viewDidLoad, I have:

           audioReceiver = AEBlockAudioReceiver(block: { (source: UnsafeMutablePointer<Void>, time:            UnsafePointer<AudioTimeStamp>, frames: UInt32, audio: UnsafeMutablePointer<AudioBufferList>) -> Void in
    
            let buffers = UnsafeBufferPointer<AudioBuffer>(start: &audio.memory.mBuffers,
                count: Int(audio.memory.mNumberBuffers))
    
            for buf in buffers {
                dispatch_async(dispatch_get_main_queue(), { () -> Void in
                    self.glkView.updateBuffer(UnsafeMutablePointer<Float>(buf.mData), withBufferSize: buf.mDataByteSize)
                })
    
               // println(UnsafeMutablePointer<Float>(buf.mData).memory)
            }
        })
    

    But, the audio plot just blanks out when I start to play my audio file :(

    Thanks!

  • Hey guys - have you considered just using Apple's own time/pitch audio unit? I recently switched to using that (I used to use Dirac), and I've found it to be an order of magnitude faster, and (to our ears) better-sounding.

  • @Michael, I believe that @Hernan and @Vjammar are inquiring about how to display TAEE's waveform, using EZAudioPlot from a non-microphone output receiver:

    https://github.com/syedhali/EZAudio#examples--docs

    EZAudioPlot

    A Core Graphics-based audio waveform plot capable of visualizing any float array as a buffer or rolling plot.

    EZAudioPlotGL

    An OpenGL-based, GPU-accelerated audio waveform plot capable of visualizing any float array as a buffer or rolling plot.

    Here, the author mentions how to integrate EZAudio with TAAE:

    https://github.com/syedhali/EZAudio#using-ezaudio--the-amazing-audio-engine

  • Whoa! I don't know what happened here, looks like I posted the comment to the wrong discussion. Bizarre. Sorry about that =)

  • Well, just to give this Post a Nice Finish:

    I Got no response from the Developer or EZAudio, So I Decided to stop struggling with this Library.

    I Ended Up Using: SCSiriWaveformView

    // SCSiriWaveformView.h
    // SCSiriWaveformView
    //
    // Created by Stefan Ceriu on 12/04/2014.
    // Copyright (c) 2014 Stefan Ceriu. All rights reserved.

    It Looks AMAZING! its beautiful and I Ended up just giving it My Volume Output and that was That...

    Thanks for all the Participants in this Discussion and I Hope it helps someone ;-)

Sign In or Register to comment.