Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
* [FFmpeg-devel] videotoolbox increases min target to macOS 12
@ 2024-07-09  5:47 Helmut K. C. Tessarek
  2024-07-09  6:16 ` Gnattu OC via ffmpeg-devel
  0 siblings, 1 reply; 6+ messages in thread
From: Helmut K. C. Tessarek @ 2024-07-09  5:47 UTC (permalink / raw)
  To: FFmpeg development discussions and patches


[-- Attachment #1.1.1: Type: text/plain, Size: 2543 bytes --]

I'm very sorry to bother the dev list with this, but this is the 2nd 
time in less than a year that the min version of macOS was changed in 
videotoolbox.

2023-09-22: macOS 10.13
now: macOS 12

Will ffmpeg soon only compile on the current release of macOS (with 
videtoolbox support)? While I understand that too old OS versions are 
not necessarily the best idea, a lot of people still use older versions. 
Especially when it comes to Intel based static binaries.

I just want to ask what the devs think of this situation.
I'm not saying that this has to be fixed. (I just removed the 
videotoolbox support from my binaries.)

I'd asked in a forum, but there is none, nor is there another way to ask 
the devs a question. And it is a question to the devs:

Is it feasible that this code raises the minimum depolyment target that 
often, while the rest of ffmpeg just works perfectly fine with lower 
deployment targets?

Cheers,
   K. C.

Here  is the error message when compiling ffmpeg for reference:

libavutil/hwcontext_videotoolbox.c:592:39: error: 
'CVBufferCopyAttachments' is only available on macOS 12.0 or newer 
[-Werror,-Wunguarded-availability-new]
         CFDictionaryRef attachments = CVBufferCopyAttachments(pixbuf, 
kCVAttachmentMode_ShouldPropagate);
                                       ^~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreVideo.framework/Headers/CVBuffer.h:160:59: 
note: 'CVBufferCopyAttachments' has been marked as being introduced in 
macOS 12.0 here, but the deployment target is macOS 10.13.0
CV_EXPORT CFDictionaryRef CF_RETURNS_RETAINED CV_NULLABLE 
CVBufferCopyAttachments( CVBufferRef CV_NONNULL buffer, CVAttachmentMode 
attachmentMode ) API_AVAILABLE(macos(12.0), ios(15.0), tvos(15.0), 
watchos(8.0));
                                                           ^
libavutil/hwcontext_videotoolbox.c:592:39: note: enclose 
'CVBufferCopyAttachments' in a __builtin_available check to silence this 
warning
         CFDictionaryRef attachments = CVBufferCopyAttachments(pixbuf, 
kCVAttachmentMode_ShouldPropagate);
                                       ^~~~~~~~~~~~~~~~~~~~~~~
1 error generated.


-- 
regards Helmut K. C. Tessarek              KeyID 0x172380A011EF4944
Key fingerprint = 8A55 70C1 BD85 D34E ADBC 386C 1723 80A0 11EF 4944

/*
    Thou shalt not follow the NULL pointer for chaos and madness
    await thee at its end.
*/

[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 840 bytes --]

[-- Attachment #2: Type: text/plain, Size: 251 bytes --]

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [FFmpeg-devel] videotoolbox increases min target to macOS 12
  2024-07-09  5:47 [FFmpeg-devel] videotoolbox increases min target to macOS 12 Helmut K. C. Tessarek
@ 2024-07-09  6:16 ` Gnattu OC via ffmpeg-devel
  2024-07-09  8:41   ` epirat07
  2024-07-09 19:44   ` Helmut K. C. Tessarek
  0 siblings, 2 replies; 6+ messages in thread
From: Gnattu OC via ffmpeg-devel @ 2024-07-09  6:16 UTC (permalink / raw)
  To: FFmpeg development discussions and patches; +Cc: Gnattu OC



> On Jul 9, 2024, at 13:47, Helmut K. C. Tessarek <tessarek@evermeet.cx> wrote:
> 
> I'm very sorry to bother the dev list with this, but this is the 2nd time in less than a year that the min version of macOS was changed in videotoolbox.
> 
> 2023-09-22: macOS 10.13
> now: macOS 12
> 
> Will ffmpeg soon only compile on the current release of macOS (with videtoolbox support)? While I understand that too old OS versions are not necessarily the best idea, a lot of people still use older versions. Especially when it comes to Intel based static binaries.
> 
> I just want to ask what the devs think of this situation.
> I'm not saying that this has to be fixed. (I just removed the videotoolbox support from my binaries.)
> 
> I'd asked in a forum, but there is none, nor is there another way to ask the devs a question. And it is a question to the devs:
> 
> Is it feasible that this code raises the minimum depolyment target that often, while the rest of ffmpeg just works perfectly fine with lower deployment targets?

Well the code introduced is to fix certain HDR related bugs and it does not "works perfectly” before, it was just broken.
> 
> Cheers,
>  K. C.
> 
> Here  is the error message when compiling ffmpeg for reference:
> 
> libavutil/hwcontext_videotoolbox.c:592:39: error: 'CVBufferCopyAttachments' is only available on macOS 12.0 or newer [-Werror,-Wunguarded-availability-new]
>        CFDictionaryRef attachments = CVBufferCopyAttachments(pixbuf, kCVAttachmentMode_ShouldPropagate);

This should be fixed by this patch: https://patchwork.ffmpeg.org/project/ffmpeg/patch/tencent_386EBEE5491311084F93F9136A75C4090E05@qq.com/

so that it should at least compile on older OS targets.
But the end result is that the colorspace is as wrong as before, an older version cannot receive the fix to set the correct colorspace.

For this use case I could see that using the (now deprecated) `CVBufferGetAttachments` instead on older OS, but I cannot really test that because I don’t have device running that old version.
>                                      ^~~~~~~~~~~~~~~~~~~~~~~
> /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreVideo.framework/Headers/CVBuffer.h:160:59: note: 'CVBufferCopyAttachments' has been marked as being introduced in macOS 12.0 here, but the deployment target is macOS 10.13.0
> CV_EXPORT CFDictionaryRef CF_RETURNS_RETAINED CV_NULLABLE CVBufferCopyAttachments( CVBufferRef CV_NONNULL buffer, CVAttachmentMode attachmentMode ) API_AVAILABLE(macos(12.0), ios(15.0), tvos(15.0), watchos(8.0));
>                                                          ^
> libavutil/hwcontext_videotoolbox.c:592:39: note: enclose 'CVBufferCopyAttachments' in a __builtin_available check to silence this warning
>        CFDictionaryRef attachments = CVBufferCopyAttachments(pixbuf, kCVAttachmentMode_ShouldPropagate);
>                                      ^~~~~~~~~~~~~~~~~~~~~~~
> 1 error generated.
> 
> 
> -- 
> regards Helmut K. C. Tessarek              KeyID 0x172380A011EF4944
> Key fingerprint = 8A55 70C1 BD85 D34E ADBC 386C 1723 80A0 11EF 4944
> 
> /*
>   Thou shalt not follow the NULL pointer for chaos and madness
>   await thee at its end.
> */
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [FFmpeg-devel] videotoolbox increases min target to macOS 12
  2024-07-09  6:16 ` Gnattu OC via ffmpeg-devel
@ 2024-07-09  8:41   ` epirat07
  2024-07-09 19:44   ` Helmut K. C. Tessarek
  1 sibling, 0 replies; 6+ messages in thread
From: epirat07 @ 2024-07-09  8:41 UTC (permalink / raw)
  To: FFmpeg development discussions and patches; +Cc: Gnattu OC



On 9 Jul 2024, at 8:16, Gnattu OC via ffmpeg-devel wrote:

>> On Jul 9, 2024, at 13:47, Helmut K. C. Tessarek <tessarek@evermeet.cx> wrote:
>>
>> I'm very sorry to bother the dev list with this, but this is the 2nd time in less than a year that the min version of macOS was changed in videotoolbox.
>>
>> 2023-09-22: macOS 10.13
>> now: macOS 12
>>
>> Will ffmpeg soon only compile on the current release of macOS (with videtoolbox support)? While I understand that too old OS versions are not necessarily the best idea, a lot of people still use older versions. Especially when it comes to Intel based static binaries.
>>
>> I just want to ask what the devs think of this situation.
>> I'm not saying that this has to be fixed. (I just removed the videotoolbox support from my binaries.)
>>
>> I'd asked in a forum, but there is none, nor is there another way to ask the devs a question. And it is a question to the devs:
>>
>> Is it feasible that this code raises the minimum depolyment target that often, while the rest of ffmpeg just works perfectly fine with lower deployment targets?
>
> Well the code introduced is to fix certain HDR related bugs and it does not "works perfectly” before, it was just broken.
>>
>> Cheers,
>>  K. C.
>>
>> Here  is the error message when compiling ffmpeg for reference:
>>
>> libavutil/hwcontext_videotoolbox.c:592:39: error: 'CVBufferCopyAttachments' is only available on macOS 12.0 or newer [-Werror,-Wunguarded-availability-new]
>>        CFDictionaryRef attachments = CVBufferCopyAttachments(pixbuf, kCVAttachmentMode_ShouldPropagate);
>
> This should be fixed by this patch: https://patchwork.ffmpeg.org/project/ffmpeg/patch/tencent_386EBEE5491311084F93F9136A75C4090E05@qq.com/
>
> so that it should at least compile on older OS targets.
> But the end result is that the colorspace is as wrong as before, an older version cannot receive the fix to set the correct colorspace.
>
> For this use case I could see that using the (now deprecated) `CVBufferGetAttachments` instead on older OS, but I cannot really test that because I don’t have device running that old version.

Yes,
I can submit a fix for this soon that makes this work on macOS 10.8+

For now the other patch should be merged to fix the runtime issue. (I am not sure why I did not get any warning about this locally…)

>>                                      ^~~~~~~~~~~~~~~~~~~~~~~
>> /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreVideo.framework/Headers/CVBuffer.h:160:59: note: 'CVBufferCopyAttachments' has been marked as being introduced in macOS 12.0 here, but the deployment target is macOS 10.13.0
>> CV_EXPORT CFDictionaryRef CF_RETURNS_RETAINED CV_NULLABLE CVBufferCopyAttachments( CVBufferRef CV_NONNULL buffer, CVAttachmentMode attachmentMode ) API_AVAILABLE(macos(12.0), ios(15.0), tvos(15.0), watchos(8.0));
>>                                                          ^
>> libavutil/hwcontext_videotoolbox.c:592:39: note: enclose 'CVBufferCopyAttachments' in a __builtin_available check to silence this warning
>>        CFDictionaryRef attachments = CVBufferCopyAttachments(pixbuf, kCVAttachmentMode_ShouldPropagate);
>>                                      ^~~~~~~~~~~~~~~~~~~~~~~
>> 1 error generated.
>>
>>
>> -- 
>> regards Helmut K. C. Tessarek              KeyID 0x172380A011EF4944
>> Key fingerprint = 8A55 70C1 BD85 D34E ADBC 386C 1723 80A0 11EF 4944
>>
>> /*
>>   Thou shalt not follow the NULL pointer for chaos and madness
>>   await thee at its end.
>> */
>> _______________________________________________
>> ffmpeg-devel mailing list
>> ffmpeg-devel@ffmpeg.org
>> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>>
>> To unsubscribe, visit link above, or email
>> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [FFmpeg-devel] videotoolbox increases min target to macOS 12
  2024-07-09  6:16 ` Gnattu OC via ffmpeg-devel
  2024-07-09  8:41   ` epirat07
@ 2024-07-09 19:44   ` Helmut K. C. Tessarek
  2024-07-09 20:04     ` epirat07
  1 sibling, 1 reply; 6+ messages in thread
From: Helmut K. C. Tessarek @ 2024-07-09 19:44 UTC (permalink / raw)
  To: ffmpeg-devel


[-- Attachment #1.1.1: Type: text/plain, Size: 1810 bytes --]

Thanks for the reply.

On 2024-07-09 02:16, Gnattu OC via ffmpeg-devel wrote:
> Well the code introduced is to fix certain HDR related bugs and it does not "works perfectly” before, it was just broken.

I was rather talking about being able to compile it. I can compile 
ffmpeg without videotoolbox for older deployment targets without any issues.

It is great to fix videotoolbox, but is it required to use 
functions/methods that are only available in newer OS? All the other 
libraries and ffmpeg itself can fix bugs without using functions that 
are not available on "older" systems.

If you say it isn't possible, then all is good. I am not asking anyone 
to make the impossible possible.

I am just trying to understaand why videotoolbox is raising the minimum 
deploymewnt target all the time, while this is not necessary for 
anything else. Don't get me wrong, I am compiling ffmpeg with around 50 
3rd party libraries. None of them requires me to raise the deployment 
target.

> so that it should at least compile on older OS targets.
> But the end result is that the colorspace is as wrong as before, an older version cannot receive the fix to set the correct colorspace.
> 
> For this use case I could see that using the (now deprecated) `CVBufferGetAttachments` instead on older OS, but I cannot really test that because I don’t have device running that old version.

FYI. I am also compiling on the most recent macOS release but I set the 
deployment target via env var:

export MACOSX_DEPLOYMENT_TARGET=10.13


-- 
regards Helmut K. C. Tessarek              KeyID 0x172380A011EF4944
Key fingerprint = 8A55 70C1 BD85 D34E ADBC 386C 1723 80A0 11EF 4944

/*
    Thou shalt not follow the NULL pointer for chaos and madness
    await thee at its end.
*/

[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 840 bytes --]

[-- Attachment #2: Type: text/plain, Size: 251 bytes --]

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [FFmpeg-devel] videotoolbox increases min target to macOS 12
  2024-07-09 19:44   ` Helmut K. C. Tessarek
@ 2024-07-09 20:04     ` epirat07
  2024-07-09 20:15       ` Helmut K. C. Tessarek
  0 siblings, 1 reply; 6+ messages in thread
From: epirat07 @ 2024-07-09 20:04 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

On 9 Jul 2024, at 21:44, Helmut K. C. Tessarek wrote:

> Thanks for the reply.
>
> On 2024-07-09 02:16, Gnattu OC via ffmpeg-devel wrote:
>> Well the code introduced is to fix certain HDR related bugs and it does not "works perfectly” before, it was just broken.
>
> I was rather talking about being able to compile it. I can compile ffmpeg without videotoolbox for older deployment targets without any issues.
>
> It is great to fix videotoolbox, but is it required to use functions/methods that are only available in newer OS? All the other libraries and ffmpeg itself can fix bugs without using functions that are not available on "older" systems.
>
> If you say it isn't possible, then all is good. I am not asking anyone to make the impossible possible.
>
> I am just trying to understaand why videotoolbox is raising the minimum deploymewnt target all the time, while this is not necessary for anything else. Don't get me wrong, I am compiling ffmpeg with around 50 3rd party libraries. None of them requires me to raise the deployment target.

Videotoolbox should not have raised the deployment target and I did not notice any change recently that would
have done it other than mine accidentally.

If you encounter other issues with it, once my fix is merged, do not hesitate to report them here.

>
>> so that it should at least compile on older OS targets.
>> But the end result is that the colorspace is as wrong as before, an older version cannot receive the fix to set the correct colorspace.
>>
>> For this use case I could see that using the (now deprecated) `CVBufferGetAttachments` instead on older OS, but I cannot really test that because I don’t have device running that old version.
>
> FYI. I am also compiling on the most recent macOS release but I set the deployment target via env var:
>
> export MACOSX_DEPLOYMENT_TARGET=10.13
>
>
> -- 
> regards Helmut K. C. Tessarek              KeyID 0x172380A011EF4944
> Key fingerprint = 8A55 70C1 BD85 D34E ADBC 386C 1723 80A0 11EF 4944
>
> /*
>    Thou shalt not follow the NULL pointer for chaos and madness
>    await thee at its end.
> */
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [FFmpeg-devel] videotoolbox increases min target to macOS 12
  2024-07-09 20:04     ` epirat07
@ 2024-07-09 20:15       ` Helmut K. C. Tessarek
  0 siblings, 0 replies; 6+ messages in thread
From: Helmut K. C. Tessarek @ 2024-07-09 20:15 UTC (permalink / raw)
  To: ffmpeg-devel


[-- Attachment #1.1.1: Type: text/plain, Size: 337 bytes --]

On 2024-07-09 16:04, epirat07@gmail.com wrote:
> Videotoolbox should not have raised the deployment target and I did not notice any change recently that would
> have done it other than mine accidentally.
> 
> If you encounter other issues with it, once my fix is merged, do not hesitate to report them here.

Thanks, will do.



[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 840 bytes --]

[-- Attachment #2: Type: text/plain, Size: 251 bytes --]

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-07-09 20:15 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-07-09  5:47 [FFmpeg-devel] videotoolbox increases min target to macOS 12 Helmut K. C. Tessarek
2024-07-09  6:16 ` Gnattu OC via ffmpeg-devel
2024-07-09  8:41   ` epirat07
2024-07-09 19:44   ` Helmut K. C. Tessarek
2024-07-09 20:04     ` epirat07
2024-07-09 20:15       ` Helmut K. C. Tessarek

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git