[FFmpeg-user] 5% of audio samples missing when capturing audio on a mac
Edward Park
kumowoon1025 at gmail.com
Mon Sep 14 10:28:36 EEST 2020
Hi,
Now that I try it, it works fine for some random number of seconds, then stops. Sometimes 3, sometimes 300.
Something that comes to mind is that Mojave release notes had something about a new model for security as it pertains to mic input (like to prevent a mac version of a "wiretap" type malware). I checked and I had given Terminal.app at some point, but that might not be enough, I think if you enable DevToolsSecurity you can whitelist specific binaries to run, but I don't know if that also is possible for entitlements.
> I have had a chance to test the issue on friends' laptops so here are two
> more data points. They have only version 4.3.1 I believe, not the latest
> HEAD. Their built-in mic sample rate is 48000Hz (I suppose more recent
> laptops updated it?).
Yeah, I don't remember the details but apparently it's more efficient or something?
48000 is certainly a much nicer number when you compare it with the common video framerates (24, 30/1.001, etc. all divide cleanly)
> 1) MacBook Pro (13-inch, 2018, Four Thunderbolt 3 Ports) Processor 2,3 GHz
> Intel Core i5
> No issues, captured audio sounds fine.
>
> 2) MacBook Pro (13-inch, 2019, Four Thunderbolt 3 Ports) Processor 2,4 GHz
> Quad-Core Intel Core i5
> Missing audio samples as in my case (even more so), and the captured audio
> sounds even worse...
That's interesting because I'm pretty sure that was the year they started marketing the "directional beamforming mic array" that looked like the same 3 mics as before, I wonder if they are interleaved/framed differently with a new chip?
> So unfortunately it looks like a problem with ffmpeg's avfoundation
> implementation at this point...
Well you can look at it that way, but another might be apple makes breaking changes to their system framework apis all the time :p
> I am making some recorded lectures using the webcam output of ATEM mini and so the sound capture has to be flawless. FFmpeg is such a great tool for encoding and I hoped to use it to grap 1080p webcam instead of the too simple QuickTime, which offers only an Apple prores codec with 2GB/min of data... OBS seems to have too much overhead for 1080p on my 2core laptop. Maybe I'll have to grab the audio using quicktime and video using ffmpeg and sync them up in iMovie.
Okay now I am not sure what the setup is. FFmpeg or QuickTime will record whatever input it gets if it can mux it, I think you should take another look at the controller for your capture interface (software or hardware). Since they call it "webcam" I really don't think prores would be the only output format, especially on hardware with that price tag, surely it has built in h.264, especially over usb.
Are you using the same device to record audio? I think that would be better if you're not, even if you have to add a seemingly unnecessary roundtrip.
Regards,
Ted Park
More information about the ffmpeg-user
mailing list