lavfi/metal: fix build with pre-10.11 deployment targets
authorrcombs <rcombs@rcombs.me>
Tue, 21 Dec 2021 08:38:18 +0000 (02:38 -0600)
committerrcombs <rcombs@rcombs.me>
Thu, 23 Dec 2021 00:43:34 +0000 (18:43 -0600)
commit8e24a8e93a9e0326967cf61a5caa243f566b3f81
treee512ced14a91446de0c4d96501bd2d231f519c6e
parent0f77ee9d97a9a9ed56da59a192acc616f574b932
lavfi/metal: fix build with pre-10.11 deployment targets

- Ensure the yadif .metal compiles when targeting any Metal runtime version
- Use some preprocessor awkwardness to ensure Core Video's Metal-specific
  functionality is exposed regardless of our deployment target (this works
  around what seems to be an SDK header bug, filed as FB9816002)
- Ensure all direct references to Metal functions and classes are gated
  behind runtime version checks (this satisfies clang's deployment-target
  violation warnings provided by -Wunguarded-availability).
libavfilter/metal/utils.h
libavfilter/metal/vf_yadif_videotoolbox.metal
libavfilter/vf_yadif_videotoolbox.m