• 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: getting started with CoreAudio plugin for Final Cut Pro
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: getting started with CoreAudio plugin for Final Cut Pro


  • Subject: Re: getting started with CoreAudio plugin for Final Cut Pro
  • From: Jeff Moore <email@hidden>
  • Date: Wed, 24 Nov 2004 14:44:22 -0800

Your kernel driver would likely assume the primary role for doling out data to user-land entities like your vdig. IOKit provides the tools you'd need to exploit to create the necessary bridging code (aka your driver's user client) between the kernel and user-land. Writing user client code is a little beyond the scope of this mailing list. You should be able to get lots of help on one of the kernel development lists like one of the Darwin lists.

On the IOAudio side of things, the Phantom Audio Driver is a decent place to get started as would one of the template drivers in /Developer/Examples/Kernel/IOKit/Audio. IOAudio questions are fine to post to this list as are questions about writing a user-land driver should you wish to go that route.

On Nov 24, 2004, at 1:01 PM, Tommy Schell wrote:

Jeff,

Thanks for responding, I didn't see the response til today, as I only get the bulk mailing.

If I went for a kernel based driver, does it present a problem that my Firewire driver is in user space?
Would I be able to easily communicate from my Firewire driver (as a thread within the vdig or vout components)
with the kernel based CoreAudio driver via a user client, and pass data or data pointers back and forth?
Would this be the best approach, to communicate through a user client?


And then I suppose a good place to start would be Phantom Audio Driver?

Thanks again, Tommy


A kernel driver is the best thing to write in terms of compatibility,
conformance, and ease of development. Writing a user-land driver is
much harder as you are responsible for all the behaviors the HAL
provides for free to kernel-based drivers.

Is there sample code which is a good starting point for what I need to
do?

No. The only docs are in <CoreAudio/AudioHardwarePlugIn.h>

Is it possible to handle the audio as a thread within Quicktime
components, or does a plugin need to be a separate process located
in the plugins folder?

The thread you use to call IOProcs can be any thread you wish to use provided you can deliver the data on time with accurate time stamps.

If a CoreAudio plugin needs to be a separate process, how do my
Quicktime components or Firewire threads communicate with and pass
data to and from the plugin?

A user-land driver is a CFPlugIn that the HAL loads into every process.
How you manage communication between your HAL plug-in and the rest of
your stack is entirely in your hands.


--

Jeff Moore
Core Audio
Apple




--

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
References: 
 >Re: getting started with CoreAudio plugin for Final Cut Pro (From: Tommy Schell <email@hidden>)

  • Prev by Date: Re: getting started with CoreAudio plugin for Final Cut Pro
  • Next by Date: fftw_complex
  • Previous by thread: Re: getting started with CoreAudio plugin for Final Cut Pro
  • Next by thread: fftw_complex
  • Index(es):
    • Date
    • Thread