[FFmpeg-devel] [PATCH v8 1/3] libavdevice/avfoundation.m: use AudioConvert, extend supported formats
Marvin Scholz
epirat07 at gmail.com
Thu Jan 6 16:40:07 EET 2022
On 6 Jan 2022, at 15:34, Romain Beauxis wrote:
> Le mer. 5 janv. 2022 à 08:58, Thilo Borgmann <thilo.borgmann at mail.de>
> a écrit :
>>
>> Am 05.01.22 um 15:51 schrieb Marvin Scholz:
>>> On 31 Dec 2021, at 18:42, Romain Beauxis wrote:
>>>
>>>> * Implement support for AudioConverter
>>>> * Switch to AudioConverter's API to convert unsupported PCM
>>>> formats (non-interleaved, non-packed) to supported formats
>>>> * Minimize data copy.
>>>>
>>>> This fixes: https://trac.ffmpeg.org/ticket/9502
>>>>
>>>> API ref:
>>>> https://developer.apple.com/documentation/audiotoolbox/audio_converter_services
>>>>
>>>> Signed-off-by: Romain Beauxis <toots at rastageeks.org>
>>>> —
>>>> [Sorry for the noise but an issue came up with the previous set]
>>>>
>>>> This is the first patch of a series of 3 that fix, cleanup and
>>>> enhance the
>>>> avfoundation implementation for libavdevice.
>>>>
>>>> These patches come from an actual user-facing application relying
>>>> on
>>>> libavdevice’s implementation of avfoundation audio input. Without
>>>> them,
>>>> Avfoundation is practically unusable as it will:
>>>> * Refuse to process certain specific audio input format that are
>>>> actually
>>>> returned by the OS for some users (packed PCM audio)
>>>> * Drop audio frames, resulting in corrupted audio input. This might
>>>> have been
>>>> unnoticed with video frames but this makes avfoundation essentially
>>>> unusable
>>>> for audio.
>>>>
>>>> The patches are now being included in our production build so they
>>>> are tested
>>>> and usable in production.
>>>>
>>>> Changelog for this patch:
>>>> * v2: None
>>>> * v3: None
>>>> * v4: None
>>>> * v5: Fix indentation/wrapping
>>>> * v6: None
>>>> * v7: Removed use of
>>>> kAudioConverterPropertyCalculateOutputBufferSize
>>>> to calculate output buffer size. The calculation is trivial and
>>>> this call was
>>>> randomly failing for no reason
>>>> * v8: None
>>>>
>>>
>>> The patchset fails to apply for me:
>>>
>>> Applying: libavdevice/avfoundation.m: use AudioConvert, extend
>>> supported formats
>>> error: corrupt patch at line 191
>>> Patch failed at 0001 libavdevice/avfoundation.m: use AudioConvert,
>>> extend supported formats
>>
>> Same here.
>
> Sorry to hear y'all. I'm using the git format-patch as described here:
> https://www.ffmpeg.org/developer.html#Submitting-patches-1
>
> I've resent a new version of the patchset, this time I edited the file
> manually and sent it untouched, hopefully it'll apply fine.
>
You should send them with git send-email ideally.
It looks like whatever you used to sent it wrapped the lines
breaking the patch format.
Alternatively send them as file attachment, if you can't use
git send-email.
> Thanks for looking into it!
> -- Romain
More information about the ffmpeg-devel
mailing list