Opened 19 hours ago
Last modified 19 hours ago
#11383 new defect
Unable to achieve specified fps with AVFoundation camera on iOS
Reported by: | Dex Devlon | Owned by: | |
---|---|---|---|
Priority: | important | Component: | ffmpeg |
Version: | 6.0.1 | Keywords: | ios avfoundation |
Cc: | Dex Devlon | Blocked By: | |
Blocking: | Reproduced by developer: | no | |
Analyzed by developer: | no |
Description
My goal was to stream 1080p at 120fps from the iPhone's main camera to a local network server with minimal latency. However, I encountered issues when trying to achieve the specified frame rates using AVFoundation. With the BGR0 pixel format, I’m seeing around 57fps when the camera is set to 60fps mode, while with the NV12 pixel format, I’m getting 60fps as expected in 60fps mode. The main problem arises with 120fps and 240fps modes, where I’m only able to achieve between 70fps and 77fps, which is far below the expected frame rates. Interestingly, with an earlier version of FFmpeg, I was able to achieve just under 120fps in 1080p at 240fps mode. Also of note, these tests were done on iPhone 14 Plus main back camera, the application built using ffmegkit.
The expected behavior is to achieve the specified frame rate in the corresponding frame rate mode using AVFoundation.
How to reproduce (change framerate and pixel format to reproduced the results):
ffmpeg -f avfoundation -video_size 1920x1080 -framerate 60 -pixel_format nv12 -i "0" -f null -
bgr0 1080p@60fps mode:
LOG ffmpeg version n6.0 LOG Copyright (c) 2000-2023 the FFmpeg developers LOG LOG built with Apple clang version 14.0.3 (clang-1403.0.22.14.1) LOG configuration: --cross-prefix=arm64-ios-darwin- --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS16.4.sdk --prefix=/Users/sue/Projects/arthenica/ffmpeg-kit/prebuilt/apple-ios-arm64/ffmpeg --pkg-config=/opt/homebrew/bin/pkg-config --enable-version3 --arch=aarch64 --cpu=armv8 --target-os=darwin --enable-neon --enable-asm --ar=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ar --cc=clang --cxx=clang++ --as='/Users/sue/Projects/arthenica/ffmpeg-kit/.tmp/gas-preprocessor.pl -arch aarch64 -- clang -arch arm64 -target arm64-apple-ios12.1 -march=armv8-a+crc+crypto -mcpu=generic -DFFMPEG_KIT_ARM64 -Wno-unused-function -Wno-deprecated-declarations -fstrict-aliasing -DIOS -DFFMPEG_KIT_BUILD_DATE=20230903 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS16.4.sdk -Oz -miphoneos-version-min=12.1 -I/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS16.4.sdk/usr/include' --ranlib=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib --strip=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strip --nm=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm --extra-ldflags='-miphoneos-version-min=12.1' --disable-autodetect --enable-cross-compile --enable-pic --enable-inline-asm --enable-optimizations --enable-swscale --enable-shared --disable-static --install-name-dir='@rpath' --enable-pthreads --disable-v4l2-m2m --disable-outdev=v4l2 --disable-outdev=fbdev --disable-indev=v4l2 --disable-indev=fbdev --enable-small --disable-xmm-clobber-test --disable-debug --disable-neon-clobber-test --disable-programs --disable-postproc --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-sndio --disable-schannel --disable-securetransport --disable-xlib --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --disable-alsa --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --enable-gmp --enable-gnutls --disable-sdl2 --disable-openssl --enable-zlib --enable-audiotoolbox --disable-outdev=audiotoolbox --enable-bzlib --enable-videotoolbox --enable-avfoundation --enable-iconv --disable-coreimage --disable-appkit --disable-opencl --disable-opengl LOG libavutil 58. 2.100 / 58. 2.100 LOG libavcodec 60. 3.100 / 60. 3.100 LOG libavformat 60. 3.100 / 60. 3.100 LOG libavdevice 60. 1.100 / 60. 1.100 LOG libavfilter 9. 3.100 / 9. 3.100 LOG libswscale 7. 1.100 / 7. 1.100 LOG libswresample 4. 10.100 / 4. 10.100 LOG [avfoundation @ 0x10d7c8000] Stream #0: not enough frames to estimate rate; consider increasing probesize LOG Input #0, avfoundation, from '0': LOG Duration: LOG N/A LOG , start: LOG 120001.513994 LOG , bitrate: LOG N/A LOG LOG Stream #0:0 LOG : Video: rawvideo (BGR[0] / 0x524742), bgr0, 1920x1080 LOG , LOG 1000k tbr, LOG 1000k tbn LOG LOG Stream mapping: LOG Stream #0:0 -> #0:0 LOG (rawvideo (native) -> wrapped_avframe (native)) LOG LOG Press [q] to stop, [?] for help LOG Output #0, null, to 'pipe:': LOG Metadata: LOG encoder : LOG Lavf60.3.100 LOG LOG Stream #0:0 LOG : Video: wrapped_avframe, bgr0(progressive), 1920x1080, q=2-31, 200 kb/s LOG , LOG 1000k fps, LOG 1000k tbn LOG LOG Metadata: LOG encoder : LOG Lavc60.3.100 wrapped_avframe LOG LOG {} LOG frame= 0 fps=0.0 q=-0.0 size= 0kB time=00:00:00.00 bitrate=N/A speed= 0x LOG {} LOG frame= 31 fps=0.0 q=-0.0 size=N/A time=00:00:00.50 bitrate=N/A speed=0.985x LOG {} LOG frame= 61 fps= 60 q=-0.0 size=N/A time=00:00:01.01 bitrate=N/A speed=0.993x LOG {} LOG frame= 91 fps= 59 q=-0.0 size=N/A time=00:00:01.53 bitrate=N/A speed= 1x LOG {} LOG frame= 121 fps= 59 q=-0.0 size=N/A time=00:00:02.05 bitrate=N/A speed= 1x LOG {} LOG frame= 149 fps= 58 q=-0.0 size=N/A time=00:00:02.55 bitrate=N/A speed= 1x LOG {} LOG frame= 176 fps= 58 q=-0.0 size=N/A time=00:00:03.05 bitrate=N/A speed=0.998x LOG {} LOG frame= 205 fps= 57 q=-0.0 size=N/A time=00:00:03.56 bitrate=N/A speed=0.999x LOG {} LOG frame= 235 fps= 58 q=-0.0 size=N/A time=00:00:04.08 bitrate=N/A speed= 1x LOG {} LOG frame= 265 fps= 58 q=-0.0 size=N/A time=00:00:04.60 bitrate=N/A speed=0.999x LOG {} LOG frame= 294 fps= 57 q=-0.0 size=N/A time=00:00:05.11 bitrate=N/A speed=0.999x LOG {} LOG frame= 322 fps= 57 q=-0.0 size=N/A time=00:00:05.63 bitrate=N/A speed=0.999x LOG {} LOG frame= 349 fps= 57 q=-0.0 size=N/A time=00:00:06.15 bitrate=N/A speed= 1x LOG {} LOG frame= 379 fps= 57 q=-0.0 size=N/A time=00:00:06.65 bitrate=N/A speed=0.999x LOG {} LOG frame= 408 fps= 57 q=-0.0 size=N/A time=00:00:07.16 bitrate=N/A speed= 1x LOG {} LOG frame= 437 fps= 57 q=-0.0 size=N/A time=00:00:07.68 bitrate=N/A speed= 1x LOG {} LOG frame= 466 fps= 57 q=-0.0 size=N/A time=00:00:08.20 bitrate=N/A speed= 1x LOG {} LOG frame= 494 fps= 57 q=-0.0 size=N/A time=00:00:08.68 bitrate=N/A speed=0.999x LOG {} LOG frame= 524 fps= 57 q=-0.0 size=N/A time=00:00:09.20 bitrate=N/A speed= 1x LOG {} LOG frame= 554 fps= 57 q=-0.0 size=N/A time=00:00:09.71 bitrate=N/A speed= 1x LOG {} LOG frame= 580 fps= 57 q=-0.0 Lsize=N/A time=00:00:10.15 bitrate=N/A speed=0.998x LOG video:272kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: LOG unknown LOG LOG Exiting normally, received cancel request. LOG Streaming was cancelled
nv12 1080p@60fps mode
LOG Exiting normally, received cancel request. LOG Streaming was cancelled LOG ffmpeg version n6.0 LOG Copyright (c) 2000-2023 the FFmpeg developers LOG LOG built with Apple clang version 14.0.3 (clang-1403.0.22.14.1) LOG configuration: --cross-prefix=arm64-ios-darwin- --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS16.4.sdk --prefix=/Users/sue/Projects/arthenica/ffmpeg-kit/prebuilt/apple-ios-arm64/ffmpeg --pkg-config=/opt/homebrew/bin/pkg-config --enable-version3 --arch=aarch64 --cpu=armv8 --target-os=darwin --enable-neon --enable-asm --ar=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ar --cc=clang --cxx=clang++ --as='/Users/sue/Projects/arthenica/ffmpeg-kit/.tmp/gas-preprocessor.pl -arch aarch64 -- clang -arch arm64 -target arm64-apple-ios12.1 -march=armv8-a+crc+crypto -mcpu=generic -DFFMPEG_KIT_ARM64 -Wno-unused-function -Wno-deprecated-declarations -fstrict-aliasing -DIOS -DFFMPEG_KIT_BUILD_DATE=20230903 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS16.4.sdk -Oz -miphoneos-version-min=12.1 -I/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS16.4.sdk/usr/include' --ranlib=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib --strip=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strip --nm=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm --extra-ldflags='-miphoneos-version-min=12.1' --disable-autodetect --enable-cross-compile --enable-pic --enable-inline-asm --enable-optimizations --enable-swscale --enable-shared --disable-static --install-name-dir='@rpath' --enable-pthreads --disable-v4l2-m2m --disable-outdev=v4l2 --disable-outdev=fbdev --disable-indev=v4l2 --disable-indev=fbdev --enable-small --disable-xmm-clobber-test --disable-debug --disable-neon-clobber-test --disable-programs --disable-postproc --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-sndio --disable-schannel --disable-securetransport --disable-xlib --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --disable-alsa --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --enable-gmp --enable-gnutls --disable-sdl2 --disable-openssl --enable-zlib --enable-audiotoolbox --disable-outdev=audiotoolbox --enable-bzlib --enable-videotoolbox --enable-avfoundation --enable-iconv --disable-coreimage --disable-appkit --disable-opencl --disable-opengl LOG libavutil 58. 2.100 / 58. 2.100 LOG libavcodec 60. 3.100 / 60. 3.100 LOG libavformat 60. 3.100 / 60. 3.100 LOG libavdevice 60. 1.100 / 60. 1.100 LOG libavfilter 9. 3.100 / 9. 3.100 LOG libswscale 7. 1.100 / 7. 1.100 LOG libswresample 4. 10.100 / 4. 10.100 LOG [avfoundation @ 0x10d7b1b80] Stream #0: not enough frames to estimate rate; consider increasing probesize LOG Input #0, avfoundation, from '0': LOG Duration: LOG N/A LOG , start: LOG 119901.001820 LOG , bitrate: LOG N/A LOG LOG Stream #0:0 LOG : Video: rawvideo (NV12 / 0x3231564E), nv12, 1920x1080 LOG , LOG 1000k tbr, LOG 1000k tbn LOG LOG Stream mapping: LOG Stream #0:0 -> #0:0 LOG (rawvideo (native) -> wrapped_avframe (native)) LOG LOG Press [q] to stop, [?] for help LOG Output #0, null, to 'pipe:': LOG Metadata: LOG encoder : LOG Lavf60.3.100 LOG LOG Stream #0:0 LOG : Video: wrapped_avframe, nv12(progressive), 1920x1080, q=2-31, 200 kb/s LOG , LOG 1000k fps, LOG 1000k tbn LOG LOG Metadata: LOG encoder : LOG Lavc60.3.100 wrapped_avframe LOG LOG {} LOG frame= 0 fps=0.0 q=-0.0 size= 0kB time=00:00:00.00 bitrate=N/A speed= 0x LOG {} LOG frame= 33 fps=0.0 q=-0.0 size=N/A time=00:00:00.53 bitrate=N/A speed=1.05x LOG {} LOG frame= 63 fps= 62 q=-0.0 size=N/A time=00:00:01.03 bitrate=N/A speed=1.01x LOG {} LOG frame= 94 fps= 62 q=-0.0 size=N/A time=00:00:01.55 bitrate=N/A speed=1.02x LOG {} LOG frame= 124 fps= 61 q=-0.0 size=N/A time=00:00:02.05 bitrate=N/A speed=1.01x LOG {} LOG frame= 155 fps= 61 q=-0.0 size=N/A time=00:00:02.56 bitrate=N/A speed=1.01x LOG {} LOG frame= 185 fps= 61 q=-0.0 size=N/A time=00:00:03.06 bitrate=N/A speed= 1x LOG {} LOG frame= 216 fps= 61 q=-0.0 size=N/A time=00:00:03.58 bitrate=N/A speed= 1x LOG {} LOG frame= 247 fps= 60 q=-0.0 size=N/A time=00:00:04.10 bitrate=N/A speed= 1x LOG {} LOG frame= 278 fps= 60 q=-0.0 size=N/A time=00:00:04.61 bitrate=N/A speed= 1x LOG {} LOG frame= 309 fps= 60 q=-0.0 size=N/A time=00:00:05.13 bitrate=N/A speed= 1x LOG {} LOG frame= 339 fps= 60 q=-0.0 size=N/A time=00:00:05.63 bitrate=N/A speed= 1x LOG {} LOG frame= 370 fps= 60 q=-0.0 size=N/A time=00:00:06.15 bitrate=N/A speed= 1x LOG {} LOG frame= 401 fps= 60 q=-0.0 size=N/A time=00:00:06.66 bitrate=N/A speed= 1x LOG {} LOG frame= 415 fps= 60 q=-0.0 Lsize=N/A time=00:00:06.90 bitrate=N/A speed= 1x LOG video:195kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: LOG unknown LOG LOG Exiting normally, received cancel request. LOG Streaming was cancelled
nv12 1080p@120fps mode
LOG ffmpeg version n6.0 LOG Copyright (c) 2000-2023 the FFmpeg developers LOG LOG built with Apple clang version 14.0.3 (clang-1403.0.22.14.1) LOG configuration: --cross-prefix=arm64-ios-darwin- --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS16.4.sdk --prefix=/Users/sue/Projects/arthenica/ffmpeg-kit/prebuilt/apple-ios-arm64/ffmpeg --pkg-config=/opt/homebrew/bin/pkg-config --enable-version3 --arch=aarch64 --cpu=armv8 --target-os=darwin --enable-neon --enable-asm --ar=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ar --cc=clang --cxx=clang++ --as='/Users/sue/Projects/arthenica/ffmpeg-kit/.tmp/gas-preprocessor.pl -arch aarch64 -- clang -arch arm64 -target arm64-apple-ios12.1 -march=armv8-a+crc+crypto -mcpu=generic -DFFMPEG_KIT_ARM64 -Wno-unused-function -Wno-deprecated-declarations -fstrict-aliasing -DIOS -DFFMPEG_KIT_BUILD_DATE=20230903 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS16.4.sdk -Oz -miphoneos-version-min=12.1 -I/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS16.4.sdk/usr/include' --ranlib=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib --strip=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strip --nm=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm --extra-ldflags='-miphoneos-version-min=12.1' --disable-autodetect --enable-cross-compile --enable-pic --enable-inline-asm --enable-optimizations --enable-swscale --enable-shared --disable-static --install-name-dir='@rpath' --enable-pthreads --disable-v4l2-m2m --disable-outdev=v4l2 --disable-outdev=fbdev --disable-indev=v4l2 --disable-indev=fbdev --enable-small --disable-xmm-clobber-test --disable-debug --disable-neon-clobber-test --disable-programs --disable-postproc --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-sndio --disable-schannel --disable-securetransport --disable-xlib --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --disable-alsa --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --enable-gmp --enable-gnutls --disable-sdl2 --disable-openssl --enable-zlib --enable-audiotoolbox --disable-outdev=audiotoolbox --enable-bzlib --enable-videotoolbox --enable-avfoundation --enable-iconv --disable-coreimage --disable-appkit --disable-opencl --disable-opengl LOG libavutil 58. 2.100 / 58. 2.100 LOG libavcodec 60. 3.100 / 60. 3.100 LOG libavformat 60. 3.100 / 60. 3.100 LOG libavdevice 60. 1.100 / 60. 1.100 LOG libavfilter 9. 3.100 / 9. 3.100 LOG libswscale 7. 1.100 / 7. 1.100 LOG libswresample 4. 10.100 / 4. 10.100 LOG [avfoundation @ 0x10d602080] Stream #0: not enough frames to estimate rate; consider increasing probesize LOG Input #0, avfoundation, from '0': LOG Duration: LOG N/A LOG , start: LOG 120309.729835 LOG , bitrate: LOG N/A LOG LOG Stream #0:0 LOG : Video: rawvideo (NV12 / 0x3231564E), nv12, 1920x1080 LOG , LOG 1000k tbr, LOG 1000k tbn LOG LOG Stream mapping: LOG Stream #0:0 -> #0:0 LOG (rawvideo (native) -> wrapped_avframe (native)) LOG LOG Press [q] to stop, [?] for help LOG Output #0, null, to 'pipe:': LOG Metadata: LOG encoder : LOG Lavf60.3.100 LOG LOG Stream #0:0 LOG : Video: wrapped_avframe, nv12(progressive), 1920x1080, q=2-31, 200 kb/s LOG , LOG 1000k fps, LOG 1000k tbn LOG LOG Metadata: LOG encoder : LOG Lavc60.3.100 wrapped_avframe LOG LOG {} LOG frame= 0 fps=0.0 q=-0.0 size= 0kB time=00:00:00.00 bitrate=N/A speed= 0x LOG {} LOG frame= 41 fps=0.0 q=-0.0 size=N/A time=00:00:00.51 bitrate=N/A speed=1.02x LOG {} LOG frame= 76 fps= 75 q=-0.0 size=N/A time=00:00:01.01 bitrate=N/A speed=0.999x LOG {} LOG frame= 112 fps= 73 q=-0.0 size=N/A time=00:00:01.54 bitrate=N/A speed=1.01x LOG {} LOG frame= 147 fps= 72 q=-0.0 size=N/A time=00:00:02.04 bitrate=N/A speed= 1x LOG {} LOG frame= 182 fps= 72 q=-0.0 size=N/A time=00:00:02.54 bitrate=N/A speed= 1x LOG {} LOG frame= 217 fps= 71 q=-0.0 size=N/A time=00:00:03.05 bitrate=N/A speed= 1x LOG {} LOG frame= 252 fps= 71 q=-0.0 size=N/A time=00:00:03.56 bitrate=N/A speed= 1x LOG {} LOG frame= 287 fps= 71 q=-0.0 size=N/A time=00:00:04.06 bitrate=N/A speed= 1x LOG {} LOG frame= 322 fps= 70 q=-0.0 size=N/A time=00:00:04.58 bitrate=N/A speed= 1x LOG {} LOG frame= 357 fps= 70 q=-0.0 size=N/A time=00:00:05.08 bitrate=N/A speed= 1x LOG {} LOG frame= 391 fps= 70 q=-0.0 size=N/A time=00:00:05.59 bitrate=N/A speed= 1x LOG {} LOG frame= 426 fps= 70 q=-0.0 size=N/A time=00:00:06.09 bitrate=N/A speed= 1x LOG {} LOG frame= 437 fps= 70 q=-0.0 Lsize=N/A time=00:00:06.26 bitrate=N/A speed= 1x LOG video:205kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: LOG unknown LOG LOG Exiting normally, received cancel request. LOG Streaming was cancelled
nv12 1080p@240fps mode
LOG ffmpeg version n6.0 LOG Copyright (c) 2000-2023 the FFmpeg developers LOG LOG built with Apple clang version 14.0.3 (clang-1403.0.22.14.1) LOG configuration: --cross-prefix=arm64-ios-darwin- --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS16.4.sdk --prefix=/Users/sue/Projects/arthenica/ffmpeg-kit/prebuilt/apple-ios-arm64/ffmpeg --pkg-config=/opt/homebrew/bin/pkg-config --enable-version3 --arch=aarch64 --cpu=armv8 --target-os=darwin --enable-neon --enable-asm --ar=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ar --cc=clang --cxx=clang++ --as='/Users/sue/Projects/arthenica/ffmpeg-kit/.tmp/gas-preprocessor.pl -arch aarch64 -- clang -arch arm64 -target arm64-apple-ios12.1 -march=armv8-a+crc+crypto -mcpu=generic -DFFMPEG_KIT_ARM64 -Wno-unused-function -Wno-deprecated-declarations -fstrict-aliasing -DIOS -DFFMPEG_KIT_BUILD_DATE=20230903 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS16.4.sdk -Oz -miphoneos-version-min=12.1 -I/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS16.4.sdk/usr/include' --ranlib=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib --strip=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strip --nm=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm --extra-ldflags='-miphoneos-version-min=12.1' --disable-autodetect --enable-cross-compile --enable-pic --enable-inline-asm --enable-optimizations --enable-swscale --enable-shared --disable-static --install-name-dir='@rpath' --enable-pthreads --disable-v4l2-m2m --disable-outdev=v4l2 --disable-outdev=fbdev --disable-indev=v4l2 --disable-indev=fbdev --enable-small --disable-xmm-clobber-test --disable-debug --disable-neon-clobber-test --disable-programs --disable-postproc --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-sndio --disable-schannel --disable-securetransport --disable-xlib --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --disable-alsa --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --enable-gmp --enable-gnutls --disable-sdl2 --disable-openssl --enable-zlib --enable-audiotoolbox --disable-outdev=audiotoolbox --enable-bzlib --enable-videotoolbox --enable-avfoundation --enable-iconv --disable-coreimage --disable-appkit --disable-opencl --disable-opengl LOG libavutil 58. 2.100 / 58. 2.100 LOG libavcodec 60. 3.100 / 60. 3.100 LOG libavformat 60. 3.100 / 60. 3.100 LOG libavdevice 60. 1.100 / 60. 1.100 LOG libavfilter 9. 3.100 / 9. 3.100 LOG libswscale 7. 1.100 / 7. 1.100 LOG libswresample 4. 10.100 / 4. 10.100 LOG [avfoundation @ 0x14d975900] Stream #0: not enough frames to estimate rate; consider increasing probesize LOG Input #0, avfoundation, from '0': LOG Duration: LOG N/A LOG , start: LOG 120380.644691 LOG , bitrate: LOG N/A LOG LOG Stream #0:0 LOG : Video: rawvideo (NV12 / 0x3231564E), nv12, 1920x1080 LOG , LOG 1000k tbr, LOG 1000k tbn LOG LOG Stream mapping: LOG Stream #0:0 -> #0:0 LOG (rawvideo (native) -> wrapped_avframe (native)) LOG LOG Press [q] to stop, [?] for help LOG Output #0, null, to 'pipe:': LOG Metadata: LOG encoder : LOG Lavf60.3.100 LOG LOG Stream #0:0 LOG : Video: wrapped_avframe, nv12(progressive), 1920x1080, q=2-31, 200 kb/s LOG , LOG 1000k fps, LOG 1000k tbn LOG LOG Metadata: LOG encoder : LOG Lavc60.3.100 wrapped_avframe LOG LOG {} LOG frame= 0 fps=0.0 q=-0.0 size= 0kB time=00:00:00.00 bitrate=N/A speed=N/A LOG {} LOG frame= 44 fps=0.0 q=-0.0 size=N/A time=00:00:00.52 bitrate=N/A speed=1.03x LOG {} LOG frame= 81 fps= 80 q=-0.0 size=N/A time=00:00:01.03 bitrate=N/A speed=1.02x LOG {} LOG frame= 119 fps= 78 q=-0.0 size=N/A time=00:00:01.54 bitrate=N/A speed=1.01x LOG {} LOG frame= 157 fps= 77 q=-0.0 size=N/A time=00:00:02.05 bitrate=N/A speed=1.01x LOG {} LOG frame= 195 fps= 77 q=-0.0 size=N/A time=00:00:02.56 bitrate=N/A speed=1.01x LOG {} LOG frame= 231 fps= 76 q=-0.0 size=N/A time=00:00:03.07 bitrate=N/A speed=1.01x LOG {} LOG frame= 268 fps= 75 q=-0.0 size=N/A time=00:00:03.57 bitrate=N/A speed= 1x LOG {} LOG frame= 305 fps= 75 q=-0.0 size=N/A time=00:00:04.08 bitrate=N/A speed= 1x LOG {} LOG frame= 341 fps= 74 q=-0.0 size=N/A time=00:00:04.59 bitrate=N/A speed= 1x LOG {} LOG frame= 379 fps= 75 q=-0.0 size=N/A time=00:00:05.09 bitrate=N/A speed= 1x LOG {} LOG frame= 415 fps= 74 q=-0.0 size=N/A time=00:00:05.59 bitrate=N/A speed= 1x LOG {} LOG frame= 453 fps= 74 q=-0.0 size=N/A time=00:00:06.11 bitrate=N/A speed= 1x LOG {} LOG frame= 492 fps= 74 q=-0.0 size=N/A time=00:00:06.62 bitrate=N/A speed= 1x LOG {} LOG frame= 531 fps= 75 q=-0.0 size=N/A time=00:00:07.13 bitrate=N/A speed= 1x LOG {} LOG frame= 571 fps= 75 q=-0.0 size=N/A time=00:00:07.64 bitrate=N/A speed= 1x LOG {} LOG frame= 609 fps= 75 q=-0.0 size=N/A time=00:00:08.13 bitrate=N/A speed= 1x LOG {} LOG frame= 647 fps= 75 q=-0.0 size=N/A time=00:00:08.65 bitrate=N/A speed= 1x LOG {} LOG frame= 694 fps= 76 q=-0.0 size=N/A time=00:00:09.16 bitrate=N/A speed= 1x LOG {} LOG frame= 739 fps= 77 q=-0.0 size=N/A time=00:00:09.66 bitrate=N/A speed= 1x LOG {} LOG frame= 783 fps= 77 q=-0.0 size=N/A time=00:00:10.17 bitrate=N/A speed= 1x LOG {} LOG frame= 826 fps= 77 q=-0.0 size=N/A time=00:00:10.69 bitrate=N/A speed= 1x LOG {} LOG frame= 865 fps= 77 q=-0.0 size=N/A time=00:00:11.20 bitrate=N/A speed= 1x LOG {} LOG frame= 902 fps= 77 q=-0.0 size=N/A time=00:00:11.70 bitrate=N/A speed= 1x LOG {} LOG frame= 939 fps= 77 q=-0.0 size=N/A time=00:00:12.21 bitrate=N/A speed= 1x LOG {} LOG frame= 975 fps= 77 q=-0.0 size=N/A time=00:00:12.71 bitrate=N/A speed= 1x LOG {} LOG frame= 982 fps= 77 q=-0.0 Lsize=N/A time=00:00:12.80 bitrate=N/A speed= 1x LOG video:460kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: LOG unknown LOG LOG Exiting normally, received cancel request. LOG Streaming was cancelled
nv12 1080p@240fps older version of ffmpeg tested
LOG ffmpeg version n5.1.2 LOG Copyright (c) 2000-2022 the FFmpeg developers LOG LOG built with Apple clang version 14.0.0 (clang-1400.0.29.102) LOG configuration: --cross-prefix=arm64-ios-darwin- --sysroot=/Applications/Xcode-v13.4.1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS16.0.sdk --prefix=/Users/taner/Projects/ffmpeg-kit/prebuilt/apple-ios-arm64/ffmpeg --pkg-config=/opt/homebrew/bin/pkg-config --enable-version3 --arch=aarch64 --cpu=armv8 --target-os=darwin --enable-neon --enable-asm --ar=/Applications/Xcode-v13.4.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ar --cc=clang --cxx=clang++ --as='/Users/taner/Projects/ffmpeg-kit/.tmp/gas-preprocessor.pl -arch aarch64 -- clang -arch arm64 -target arm64-apple-ios12.1 -march=armv8-a+crc+crypto -mcpu=generic -DFFMPEG_KIT_ARM64 -Wno-unused-function -Wno-deprecated-declarations -fstrict-aliasing -fembed-bitcode -DIOS -DFFMPEG_KIT_BUILD_DATE=20220929 -isysroot /Applications/Xcode-v13.4.1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS16.0.sdk -Oz -miphoneos-version-min=12.1 -I/Applications/Xcode-v13.4.1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS16.0.sdk/usr/include' --ranlib=/Applications/Xcode-v13.4.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib --strip=/Applications/Xcode-v13.4.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strip --nm=/Applications/Xcode-v13.4.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm --extra-ldflags='-miphoneos-version-min=12.1' --disable-autodetect --enable-cross-compile --enable-pic --enable-inline-asm --enable-optimizations --enable-swscale --enable-shared --disable-static --install-name-dir='@rpath' --enable-pthreads --disable-v4l2-m2m --disable-outdev=v4l2 --disable-outdev=fbdev --disable-indev=v4l2 --disable-indev=fbdev --enable-small --disable-xmm-clobber-test --disable-debug --disable-neon-clobber-test --disable-programs --disable-postproc --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-sndio --disable-schannel --disable-securetransport --disable-xlib --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --disable-alsa --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --enable-gmp --enable-gnutls --disable-sdl2 --disable-openssl --enable-zlib --enable-audiotoolbox --disable-outdev=audiotoolbox --enable-bzlib --enable-videotoolbox --enable-avfoundation --enable-iconv --disable-coreimage --disable-appkit --disable-opencl --disable-opengl LOG libavutil 57. 28.100 / 57. 28.100 LOG libavcodec 59. 37.100 / 59. 37.100 LOG libavformat 59. 27.100 / 59. 27.100 LOG libavdevice 59. 7.100 / 59. 7.100 LOG libavfilter 8. 44.100 / 8. 44.100 LOG libswscale 6. 7.100 / 6. 7.100 LOG libswresample 4. 7.100 / 4. 7.100 LOG -vsync is deprecated. Use -fps_mode LOG [avfoundation @ 0x11b544500] Selected pixel format (yuv420p) is not supported by the input device. LOG [avfoundation @ 0x11b544500] Supported pixel formats: LOG [avfoundation @ 0x11b544500] nv12 LOG [avfoundation @ 0x11b544500] bgr0 LOG [avfoundation @ 0x11b544500] Overriding selected pixel format to use nv12 instead. LOG Input #0, avfoundation, from '0': LOG Duration: LOG N/A LOG , start: LOG 42063.619652 LOG , bitrate: LOG N/A LOG LOG Stream #0:0 LOG : Video: rawvideo (NV12 / 0x3231564E), nv12, 1280x720 LOG , LOG 240 tbr, LOG 1000k tbn LOG LOG Stream mapping: LOG Stream #0:0 -> #0:0 LOG (rawvideo (native) -> hevc (hevc_videotoolbox)) LOG LOG Press [q] to stop, [?] for help LOG Output #0, rtp, to 'udp://192.168.0.102:5000': LOG Metadata: LOG encoder : LOG Lavf59.27.100 LOG LOG Stream #0:0 LOG : Video: hevc, nv12(progressive), 1280x720, q=2-31, 2000 kb/s LOG , LOG 240 fps, LOG 90k tbn LOG LOG Metadata: LOG encoder : LOG Lavc59.37.100 hevc_videotoolbox LOG LOG SDP: v=0 o=- 0 0 IN IP4 127.0.0.1 s=No Name c=IN IP4 192.168.0.102 t=0 0 a=tool:libavformat LIBAVFORMAT_VERSION m=video 0 RTP/AVP 96 b=AS:2000 a=rtpmap:96 H265/90000 a=control:streamid=0 LOG [hevc_videotoolbox @ 0x11070d400] Color range not set for nv12. Using MPEG range. LOG {} LOG frame= 1 fps=0.0 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A speed= 0x LOG {} LOG frame= 55 fps=0.0 q=-0.0 size= 209kB time=00:00:00.47 bitrate=3570.8kbits/s speed=0.953x LOG {} LOG frame= 116 fps=115 q=-0.0 size= 394kB time=00:00:00.98 bitrate=3267.6kbits/s speed=0.979x LOG {} LOG frame= 174 fps=115 q=-0.0 size= 499kB time=00:00:01.49 bitrate=2741.7kbits/s speed=0.986x LOG {} LOG frame= 228 fps=113 q=-0.0 size= 596kB time=00:00:01.99 bitrate=2446.8kbits/s speed=0.992x LOG {} LOG frame= 276 fps=109 q=-0.0 size= 694kB time=00:00:02.51 bitrate=2263.3kbits/s speed=0.997x LOG {} LOG frame= 330 fps=109 q=-0.0 size= 804kB time=00:00:03.00 bitrate=2188.2kbits/s speed=0.992x LOG {} LOG frame= 386 fps=109 q=-0.0 size= 928kB time=00:00:03.52 bitrate=2156.3kbits/s speed=0.998x LOG {} LOG frame= 450 fps=111 q=-0.0 size= 1075kB time=00:00:04.02 bitrate=2186.9kbits/s speed=0.995x LOG {} LOG frame= 505 fps=111 q=-0.0 size= 1221kB time=00:00:04.54 bitrate=2200.9kbits/s speed=0.998x LOG {} LOG frame= 562 fps=111 q=-0.0 size= 1348kB time=00:00:05.04 bitrate=2187.9kbits/s speed=0.998x LOG {} LOG frame= 629 fps=113 q=-0.0 size= 1488kB time=00:00:05.55 bitrate=2196.1kbits/s speed=0.999x LOG {} LOG frame= 693 fps=114 q=-0.0 size= 1618kB time=00:00:06.02 bitrate=2197.9kbits/s speed=0.995x LOG {} LOG frame= 752 fps=115 q=-0.0 size= 1758kB time=00:00:06.55 bitrate=2197.2kbits/s speed=0.999x LOG {} LOG frame= 811 fps=115 q=-0.0 size= 1900kB time=00:00:07.05 bitrate=2206.2kbits/s speed=0.999x LOG {} LOG frame= 870 fps=115 q=-0.0 size= 2029kB time=00:00:07.53 bitrate=2204.9kbits/s speed=0.997x LOG {} LOG frame= 933 fps=116 q=-0.0 size= 2172kB time=00:00:08.05 bitrate=2209.2kbits/s speed=0.998x LOG {} LOG frame= 992 fps=116 q=-0.0 size= 2292kB time=00:00:08.57 bitrate=2188.4kbits/s speed= 1x LOG {} LOG frame= 1052 fps=116 q=-0.0 size= 2407kB time=00:00:09.06 bitrate=2175.4kbits/s speed=0.998x LOG {} LOG frame= 1108 fps=116 q=-0.0 size= 2507kB time=00:00:09.57 bitrate=2144.5kbits/s speed=0.999x LOG {} LOG frame= 1174 fps=116 q=-0.0 size= 2649kB time=00:00:10.08 bitrate=2152.1kbits/s speed=0.999x LOG {} LOG frame= 1231 fps=116 q=-0.0 size= 2761kB time=00:00:10.57 bitrate=2138.7kbits/s speed=0.998x LOG {} LOG frame= 1291 fps=116 q=-0.0 size= 2891kB time=00:00:11.07 bitrate=2138.2kbits/s speed=0.998x LOG {} LOG frame= 1349 fps=116 q=-0.0 size= 3021kB time=00:00:11.57 bitrate=2138.3kbits/s speed=0.998x LOG {} LOG frame= 1401 fps=116 q=-0.0 size= 3129kB time=00:00:12.07 bitrate=2122.8kbits/s speed=0.998x LOG {} LOG frame= 1455 fps=116 q=-0.0 size= 3246kB time=00:00:12.56 bitrate=2116.8kbits/s speed=0.997x LOG {} LOG frame= 1512 fps=115 q=-0.0 size= 3373kB time=00:00:13.09 bitrate=2110.8kbits/s speed=0.999x LOG {} LOG frame= 1564 fps=115 q=-0.0 size= 3487kB time=00:00:13.58 bitrate=2103.2kbits/s speed=0.999x LOG {} LOG frame= 1614 fps=114 q=-0.0 size= 3602kB time=00:00:14.09 bitrate=2094.2kbits/s speed=0.998x LOG {} LOG frame= 1640 fps=114 q=-0.0 Lsize= 3681kB time=00:00:14.38 bitrate=2096.4kbits/s speed= 1x LOG video:3641kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 1.089030% LOG {} LOG frame= 1640 fps=114 q=-0.0 Lsize=N/A time=00:00:14.38 bitrate=N/A speed= 1x LOG video:3641kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown LOG Exiting normally, received cancel request. LOG Streaming was cancelled
avfoundation modes available on iPhone 14 Plus, where all the tests took place:
LOG ffmpeg version n5.1.2 LOG Copyright (c) 2000-2022 the FFmpeg developers LOG LOG built with Apple clang version 14.0.0 (clang-1400.0.29.102) LOG configuration: --cross-prefix=arm64-ios-darwin- --sysroot=/Applications/Xcode-v13.4.1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS16.0.sdk --prefix=/Users/taner/Projects/ffmpeg-kit/prebuilt/apple-ios-arm64/ffmpeg --pkg-config=/opt/homebrew/bin/pkg-config --enable-version3 --arch=aarch64 --cpu=armv8 --target-os=darwin --enable-neon --enable-asm --ar=/Applications/Xcode-v13.4.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ar --cc=clang --cxx=clang++ --as='/Users/taner/Projects/ffmpeg-kit/.tmp/gas-preprocessor.pl -arch aarch64 -- clang -arch arm64 -target arm64-apple-ios12.1 -march=armv8-a+crc+crypto -mcpu=generic -DFFMPEG_KIT_ARM64 -Wno-unused-function -Wno-deprecated-declarations -fstrict-aliasing -fembed-bitcode -DIOS -DFFMPEG_KIT_BUILD_DATE=20220929 -isysroot /Applications/Xcode-v13.4.1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS16.0.sdk -Oz -miphoneos-version-min=12.1 -I/Applications/Xcode-v13.4.1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS16.0.sdk/usr/include' --ranlib=/Applications/Xcode-v13.4.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib --strip=/Applications/Xcode-v13.4.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strip --nm=/Applications/Xcode-v13.4.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm --extra-ldflags='-miphoneos-version-min=12.1' --disable-autodetect --enable-cross-compile --enable-pic --enable-inline-asm --enable-optimizations --enable-swscale --enable-shared --disable-static --install-name-dir='@rpath' --enable-pthreads --disable-v4l2-m2m --disable-outdev=v4l2 --disable-outdev=fbdev --disable-indev=v4l2 --disable-indev=fbdev --enable-small --disable-xmm-clobber-test --disable-debug --disable-neon-clobber-test --disable-programs --disable-postproc --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-sndio --disable-schannel --disable-securetransport --disable-xlib --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --disable-alsa --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --enable-gmp --enable-gnutls --disable-sdl2 --disable-openssl --enable-zlib --enable-audiotoolbox --disable-outdev=audiotoolbox --enable-bzlib --enable-videotoolbox --enable-avfoundation --enable-iconv --disable-coreimage --disable-appkit --disable-opencl --disable-opengl LOG libavutil 57. 28.100 / 57. 28.100 LOG libavcodec 59. 37.100 / 59. 37.100 LOG libavformat 59. 27.100 / 59. 27.100 LOG libavdevice 59. 7.100 / 59. 7.100 LOG libavfilter 8. 44.100 / 8. 44.100 LOG libswscale 6. 7.100 / 6. 7.100 LOG libswresample 4. 7.100 / 4. 7.100 LOG -vsync is deprecated. Use -fps_mode LOG [avfoundation @ 0x15051d180] Selected framerate (121.000000) is not supported by the device. LOG [avfoundation @ 0x15051d180] Supported modes: LOG [avfoundation @ 0x15051d180] 192x144@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 192x144@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 352x288@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 352x288@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 480x360@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 480x360@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 640x480@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 640x480@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 640x480@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 640x480@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 960x540@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 960x540@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 1024x768@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 1024x768@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 1280x720@[1.000000 30.000000]fps LOG [avfoundation @ 0x15051d180] 1280x720@[1.000000 30.000000]fps LOG [avfoundation @ 0x15051d180] 1280x720@[1.000000 30.000000]fps LOG [avfoundation @ 0x15051d180] 1280x720@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 1280x720@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 1280x720@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 1280x720@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 1280x720@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 1280x720@[1.000000 240.000000]fps LOG [avfoundation @ 0x15051d180] 1280x720@[1.000000 240.000000]fps LOG [avfoundation @ 0x15051d180] 1440x1080@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 1440x1080@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 1920x1080@[1.000000 30.000000]fps LOG [avfoundation @ 0x15051d180] 1920x1080@[1.000000 30.000000]fps LOG [avfoundation @ 0x15051d180] 1920x1080@[1.000000 30.000000]fps LOG [avfoundation @ 0x15051d180] 1920x1080@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 1920x1080@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 1920x1080@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 1920x1080@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 1920x1080@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 1920x1080@[1.000000 120.000000]fps LOG [avfoundation @ 0x15051d180] 1920x1080@[1.000000 120.000000]fps LOG [avfoundation @ 0x15051d180] 1920x1080@[1.000000 240.000000]fps LOG [avfoundation @ 0x15051d180] 1920x1080@[1.000000 240.000000]fps LOG [avfoundation @ 0x15051d180] 1920x1440@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 1920x1440@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 1920x1440@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 1920x1440@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 1920x1440@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 2592x1944@[1.000000 30.000000]fps LOG [avfoundation @ 0x15051d180] 2592x1944@[1.000000 30.000000]fps LOG [avfoundation @ 0x15051d180] 3264x2448@[1.000000 30.000000]fps LOG [avfoundation @ 0x15051d180] 3264x2448@[1.000000 30.000000]fps LOG [avfoundation @ 0x15051d180] 3840x2160@[1.000000 30.000000]fps LOG [avfoundation @ 0x15051d180] 3840x2160@[1.000000 30.000000]fps LOG [avfoundation @ 0x15051d180] 3840x2160@[1.000000 30.000000]fps LOG [avfoundation @ 0x15051d180] 3840x2160@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 3840x2160@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 3840x2160@[1.000000 60.000000]fps LOG [avfoundation @ 0x15051d180] 4032x3024@[1.000000 30.000000]fps LOG [avfoundation @ 0x15051d180] 4032x3024@[1.000000 30.000000]fps LOG 0: Input/output error