• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: DLSMusicDevice and reverb
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: DLSMusicDevice and reverb


  • Subject: Re: DLSMusicDevice and reverb
  • From: William Stewart <email@hidden>
  • Date: Mon, 20 Nov 2006 11:32:22 -0800


On 18/11/2006, at 2:52 PM, E. Tejkowski wrote:

I have seen it mentioned that by default the built-in internal reverb of the DLSMusicSynth is active. I've also seen code in more than one place that shows how to deactivate it. Why is that when I omit the line to deactivate the reverb, I not only don't hear reverb, I hear nothing coming from my DLSSynth? Also, what parameters does the default reverb have and how I can access them?

Below is some pseudocode showing what I am doing:

err = NewAUGraph
err = AUGraphNewNode(graph, description, 0, 0, synthNode)//dlsSynth
err = AUGraphNewNode(graph, description, 0, 0, outputNode)//output
err = AUGraphConnectNodeInput(graph,synthNode,1,outputNode,0)// connect dls to output
err = AUGraphUpdate(graph)
err = AUGraphOpen(graph)
err = AUGraphInitialize(graph)


// Turn off the reverb on the synth
err = AUGraphGetNodeInfo (graph, synthNode, 0,0,0, synthUnit)
usesReverb = 0
//THIS NEXT LINE IS THE LINE THAT I OMIT, WHICH GIVES ME SILENCE
err = AudioUnitSetProperty(synthUnit, kMusicDeviceProperty_UsesInternalReverb, kAudioUnitScope_Global, 0, usesReverb, 4)

When you turn off the internal reverb on the synth, it will change the way it outputs data:


Internal Reverb off:
It will output data on the first output element only (el == 0)

Internal Reverb on:
It will output data on both output elements, el==0 will have the reverb signal (the synth's output that should be taken through the reverb) and el==1 will have the dry signal


You should change this property with the AU not being initialised - so you should do this after AUGraphOpen and before AUGraphInitialise

I don't exactly know why you aren't hearing sound - but you have to have both outputs of the synth active - if you were playing a sound that was only using the reverb, then there would be no output on el==1...

Bill


// Start playing err = AUGraphStart(graph)

Thanks,
Erick
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden

--
mailto:email@hidden
tel: +1 408 974 4056
________________________________________________________________________ __
"Much human ingenuity has gone into finding the ultimate Before.
The current state of knowledge can be summarized thus:
In the beginning, there was nothing, which exploded" - Terry Pratchett
________________________________________________________________________ __


_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


References: 
 >DLSMusicDevice and reverb (From: "E. Tejkowski" <email@hidden>)

  • Prev by Date: Re: ExtAudioFileRead: how to create AudioBufferList
  • Next by Date: Re: AUNetSend and AUNetReceive
  • Previous by thread: DLSMusicDevice and reverb
  • Next by thread: AUNetSend and AUNetReceive
  • Index(es):
    • Date
    • Thread