• 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
AU Val and AU's with UI
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

AU Val and AU's with UI


  • Subject: AU Val and AU's with UI
  • From: William Stewart <email@hidden>
  • Date: Wed, 9 Feb 2005 18:07:37 -0800

First some background.

auval was deliberately built as a command line utility to emphasise the fact that we expect AU implementations to have no direct dependency on UI frameworks - this has been an intrinsic part of the AU specification from day 1, with a completely separate body of code for UI. This has of course been discussed many times on this list - the importance of sharing this pointers, etc...

One of the problems that was encountered by the Logic team as they integrated auval within their application was the fact that some AU's will directly invoke UI code when they are either opened or initialized. In some cases this is ok, but in other cases where the UI is a modal dialog (a standard alert for instance), it can be deadly as the auval process will just stall, and because auval is a command line utility, not a UI app, there is no way for a user to click through a dismiss the dialog.

Typically, the kind of dialog being displayed has to do with copy protection. So, we can understand both the necessity for handling this issue as well as the fact that this might escape in-house testing (at least by engineers writing the code, as they likely don't run against a copy protected version).

We are loathe to change auval - and would reinforce with AU developers that we continue to want to see no UI frameworks/dependencies in the actual AU itself. We also understand that we are hopeless idealists, don quixote's, but we will continue to dream.

An approach we'd like to encourage companies to consider when they have to provide visual feedback to the user is:
(1) Have the AU fall into a silent mode - it does nothing, but it does open (unless of course there is something fatally wrong)
(2) We're more than happy to describe some expected host behaviours for the kAudioUnitErr_Unauthorised
- for instance, this could be returned from Initialize - the host knows the AU can't be used to render, but it also knows that it should present the UI to the user so that:
(3) Have the AU's UI components be the only place where an AU presents UI to the user.

I believe for compatibility reasons that Logic will continue to provide a workaround as it does today so that existing AU's will continue to work during its launch process - and thus allows users to click through and dismiss alert panels as needed.

auval as a tool, will continue also to exist as it does today - please test against this with the actual install options where you might have copy protection info, etc to communicate.

Thanks - interested in comments and thoughts on this matter.

Bill
_______________________________________________
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
  • Prev by Date: Re: Host Time epoch
  • Next by Date: seeking experienced driver developers
  • Previous by thread: Re: Host Time epoch
  • Next by thread: seeking experienced driver developers
  • Index(es):
    • Date
    • Thread