Skip to content

Commit

Permalink
lavc/videotoolbox: remove opengl compatability key
Browse files Browse the repository at this point in the history
We are not using OpenGL and this compatability key could introduce
performance penalty on some Macs. Performance difference is neglible
on Apple Silicon but on old Intel Macs like the 2018 MacBook Air,
decoding performance could be reduced by 15% as the IOSurface might
make extra frame copies to reshape the pixel buffer.
  • Loading branch information
gnattu committed Oct 23, 2024
1 parent 142e51b commit 6b59d00
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 0 deletions.
16 changes: 16 additions & 0 deletions debian/patches/0079-videotoolbox-remove-opengl-compatability.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Index: FFmpeg/libavcodec/videotoolbox.c
===================================================================
--- FFmpeg.orig/libavcodec/videotoolbox.c
+++ FFmpeg/libavcodec/videotoolbox.c
@@ -786,11 +786,6 @@ static CFDictionaryRef videotoolbox_buff
CFDictionarySetValue(buffer_attributes, kCVPixelBufferIOSurfacePropertiesKey, io_surface_properties);
CFDictionarySetValue(buffer_attributes, kCVPixelBufferWidthKey, w);
CFDictionarySetValue(buffer_attributes, kCVPixelBufferHeightKey, h);
-#if TARGET_OS_IPHONE
- CFDictionarySetValue(buffer_attributes, kCVPixelBufferOpenGLESCompatibilityKey, kCFBooleanTrue);
-#else
- CFDictionarySetValue(buffer_attributes, kCVPixelBufferIOSurfaceOpenGLTextureCompatibilityKey, kCFBooleanTrue);
-#endif

CFRelease(io_surface_properties);
CFRelease(cv_pix_fmt);
1 change: 1 addition & 0 deletions debian/patches/series
Original file line number Diff line number Diff line change
Expand Up @@ -76,3 +76,4 @@
0076-alway-set-videotoolboxenc-pixel-buffer-info.patch
0077-add-remove-dovi-hdr10plus-bsf.patch
0078-fix-atenc-layout-samplerate.patch
0079-videotoolbox-remove-opengl-compatability.patch

0 comments on commit 6b59d00

Please sign in to comment.