• 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: Recording system audio
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Recording system audio


  • Subject: Re: Recording system audio
  • From: Jeff Moore <email@hidden>
  • Date: Tue, 18 Mar 2008 16:14:47 -0700


On Mar 18, 2008, at 3:36 PM, Martin Redington wrote:
Thanks very very much for all the very quick replies.

I've got SoundFlower and Jack, and have played around with the Apple
Samples. Everything builds fine, and I can install the kexts no
problem.

Great! I'm sure your having fun playing with everything.


I still think I'm missing something though - I can set SoundFlower to
be the default input and output device globally, and record the system
sound that way, but its not clear to me how to do the equivalent
programmatically, and that setup loses me the normal input, which I'd
like to record as well, and the system output to the speakers as well.

I guess what I want is

system audio - presented as a device, so that I can record an audio
track, but also played through to the speakers

normal input - presented as a device, so that I can record from this too.

I guess one kext which handles the system audio and passes it through
to the output it's normally configured for would do the trick, but I'm
not sure how to get to that from the samples, or without setting stuff
manually and globally from the System Preferences

Basically, you already have pretty much everything you want. The other "real" devices on the system are already audio devices you can get at through the HAL. There is no problem with using multiple audio devices at the same time in the same program. The system is happy to let you do that. In fact, the HAL's aggregate device support even lets you combine multiple audio devices into a single audio device.


The only piece you are really missing to achieve what you describe above is the piece that takes the audio coming back from the AudioReflector/SoundFlower and sends it to a real output device so you can hear it. A good example of this kind of program can be found in our SDK at /Developer/Examples/CoreAudio/SimpleSDK/CAPlayThrough.

That said, I think that the routing stuff that Jack does ought to also get you a good deal of the way toward what you are looking for without having to do the CAPlayThrough thing.


On Thu, Mar 13, 2008 at 9:02 PM, tahome izwah <email@hidden> wrote:
I believe they did, that's why I posted the link to the latest
version. Here it is again for your convenience:


http://thirdcog.eu/apps/soundflower

--th

2008/3/13, Jeff Moore <email@hidden>:


Just FYI, the AudioReflectorDriver and SoundFlower do the basically
the same thing. They take the audio from their output side and present
it back to the system through it's input side.


Did Cycling'74 ever fix the timing issues in SoundFlower? I recall a
while back that this driver had a wandering clock due to the way it
did it's timing (which I think was based on some older driver sample
code we put out). I last looked at it a few years ago, so take it with
grain of salt.



On Mar 13, 2008, at 12:18 PM, Philippe GRUCHET wrote:


You could also take a look at the Soundflower source code:

http://cycling74.com/downloads/soundflower

Bye,
PG


On Mar 13, 2008, at 10:16 AM, Martin Redington wrote:
I'd like to record the system audio, on 10.4 and 10.5

Looking at other apps that do this, they commonly seem to install
a kernel extension which create a pseudo audio device.

Is this approach documented anywhere in the sample code or docs?
It seems to be common enough to qualify as an idiom, but I can't
seem to uncover any direct references to it.

Any pointers will be gratefully received ...


Jeff Moore replied:
There really aren't any docs about doing what you want to do. The
system doesn't really make it particularly easy. Even using a fake
device has it's drawbacks (see some of my recent posts). At any
rate, the closest we have for sample code in this area are the two
sample drivers in /Developer/Examples/CoreAudio/HAL. The sample
kernel audio driver is the AudioReflectorDriver project. The sample
user-land audio driver is the SampleHardwarePlugIn project.




--

Jeff Moore
Core Audio
Apple

 _______________________________________________
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




-- http://www.mildmanneredindustries.com/ _______________________________________________ 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



--

Jeff Moore
Core Audio
Apple


_______________________________________________ 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
  • Follow-Ups:
    • Re: Recording system audio
      • From: "Martin Redington" <email@hidden>
References: 
 >Recording system audio (From: "Martin Redington" <email@hidden>)
 >Re: Recording system audio (From: Jeff Moore <email@hidden>)
 >Re: Recording system audio (From: Philippe GRUCHET <email@hidden>)
 >Re: Recording system audio (From: Jeff Moore <email@hidden>)
 >Re: Recording system audio (From: "tahome izwah" <email@hidden>)
 >Re: Recording system audio (From: "Martin Redington" <email@hidden>)

  • Prev by Date: Re: Recording system audio
  • Next by Date: Re: Recording system audio
  • Previous by thread: Re: Recording system audio
  • Next by thread: Re: Recording system audio
  • Index(es):
    • Date
    • Thread