• 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: Need help to identify Audio Output issue
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Need help to identify Audio Output issue


  • Subject: Re: Need help to identify Audio Output issue
  • From: Jeff Moore <email@hidden>
  • Date: Thu, 15 May 2008 11:28:44 -0700


On May 13, 2008, at 4:47 PM, Marc Van Olmen wrote:

Thanks Jeff! Love your input on this!!

Sorry this reply took so long.


On May 13, 2008, at 2:39 PM, Jeff Moore wrote:

That said, my gut reaction is that this is an application issue though. This sounds to me like somebody is failing to account for a clocking problem somewhere along the way. You say you are using a QT vOut component to push video to the card and Core Audio to push the audio to the card. Can you be more specific about what exact APIs are involved and how you are reconciling the clock for the vOut with the clock for the audio hardware?


Of course this was our first reaction, that it would be in our application, but our application telemetry data indicates that the Last Audio frame and Last video are being send to the different API's (vout and coreAudio) in 1 Frame duration 1/25 accuracy. For my telemetry I use the CPU clock , for the playback I use the video clock of course...

Here is another reason why I think it is something to do with coreAudio API or Decklink driver:

For coreAudio I use the following API (I can give more details if needed):

<Output Unit code>

My only questions about this is:
- How are you dealing with the time stamps from the audio hardware and correlating that to the video time stamps?
- Are you checking for overloads and/or other time stamp irregularities? If so, how are you handling them. If not, I think you really ought to be.
- How are you coping with the presentation latency in the audio hardware?


Now as soon somebody press the Pause button I start outputting 0 samples in this call back DoAudioOutputCallback. So I'm currently assuming that this will be right away done. But what I notice that there is a 1/2 second delay before the samples becoming zero. (This is only in the case there is noticeable desync, otherwise the audio indeed it is right away.

Is it possible that the call back is calling me like 1/2 second ahead? My experience is that the DoAudioOutputCallback is always output (almost immediately)?.

Yes that is possible. What is the latency and safety offset figures for the device? They represent a reasonable estimate about the buffering in the device and might be quite large.



On May 12, 2008, at 8:28 PM, Marc Van Olmen wrote:

I need some help trying to identify what is causing this issue.

We are using Decklink video card and we use the QuickTime vOut(video frames) and uses coreAudio to play out the audio to the device.
Our application has been running fine for a couple of years on several clients configurations running 24/7. But we have problem that is coming up for different users:


The audio seems to be later then the video after a long time (sometimes 24 hours sometimes even quicker).

I recorded a video that records both the the audio video that comes out the decklink card:

http://www.sky4studios.com/desync/desync.mov

In this sample the delay is 12 frames (25 fps) so about 1/2 second.
But we think that there is something wrong with coreAudio or with the audio driver of the Decklink drive. Why?


When we pause our application, the audio doesn't stop for 12 frames (exactly the duration of the desync).

We stop the audio by the following technique: as soon the pause action is received we start sending 0.0 samples towards the audio output.

When there is no desync of the application this works instantly. But when there is a desync of audio and video, the audio takes longer to stop(duration of desync)

Also when we press the continue button, the video frames starts right away but the audio doesn't starts playing for again exactly the duration of the desync.

In the video above you can see the Pause/Continue button in action. If you analyze this clip in Final Cut Pro you see what I'm talking about.

I would love some feedback to figure out if I can proof if this is the Decklink Driver or is it a coreAudio problem. Is there something I can turn on in coreAudio when I hear a desync that helps me to proof my case?



--

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



--

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: Need help to identify Audio Output issue
      • From: Marc Van Olmen <email@hidden>
References: 
 >Need help to identify Audio Output issue (From: Marc Van Olmen <email@hidden>)
 >Re: Need help to identify Audio Output issue (From: Jeff Moore <email@hidden>)
 >Re: Need help to identify Audio Output issue (From: Marc Van Olmen <email@hidden>)

  • Prev by Date: Re: SSE
  • Next by Date: Re: Need help to identify Audio Output issue
  • Previous by thread: Re: Need help to identify Audio Output issue
  • Next by thread: Re: Need help to identify Audio Output issue
  • Index(es):
    • Date
    • Thread