Dibujo de forma de onda con AVAssetReader

Estoy leyendo una canción de la biblioteca de iPod usando assetUrl (en el código que se llama audioUrl) Puedo reproducirla de muchas maneras, puedo cortarla, puedo hacer un poco de precesión con esto pero ... Realmente no entiendo lo que voy a hacer con este CMSampleBufferRef para obtener datos para dibujar formas de onda! Necesito información sobre valores máximos, ¿cómo puedo obtenerla de esta manera (tal vez de otra manera)?

    AVAssetTrack * songTrack = [audioUrl.tracks objectAtIndex:0];
    AVAssetReaderTrackOutput * output = [[AVAssetReaderTrackOutput alloc] initWithTrack:songTrack outputSettings:nil];
    [reader addOutput:output];
    [output release];

    NSMutableData * fullSongData = [[NSMutableData alloc] init];
    [reader startReading];

    while (reader.status == AVAssetReaderStatusReading){

        AVAssetReaderTrackOutput * trackOutput = 
        (AVAssetReaderTrackOutput *)[reader.outputs objectAtIndex:0];

        CMSampleBufferRef sampleBufferRef = [trackOutput copyNextSampleBuffer];

        if (sampleBufferRef){/* what I gonna do with this? */}

¡Por favor, ayúdame

Respuestas a la pregunta(2)

Su respuesta a la pregunta