Commit Graph

101 Commits

Author SHA1 Message Date
Cameron Gutman c573d213f8 Allow FFmpeg decoder on Waydroid 2022-09-17 14:51:03 -05:00
Cameron Gutman 3913e845fa Add workaround for MITV4-ANSM0 low latency mode bug
Fixes #1122
2022-09-08 17:43:17 -05:00
Cameron Gutman 0fbb53c606 Remove MediaCodecHelper.getMonotonicMillis() 2022-08-02 18:08:12 -05:00
Cameron Gutman 05311da33d Use 4 slices per frame for software decoders 2022-07-22 20:14:53 -05:00
Cameron Gutman 2e442cb1d1 Only use 4 slices per frame on old Qualcomm devices that benefit from it
Using it everywhere decreases encoding efficiency for no gain in performance
2022-07-22 18:43:59 -05:00
Cameron Gutman 264b6e54f2 Add Codec2 variants in the decoder prefix lists 2022-07-19 23:51:11 -05:00
Cameron Gutman ce850ac12f Fix crash on Xiaomi MiPad running newer custom ROMs
AVC Decoder: OMX.Nvidia.h264.decode
HEVC Decoder: OMX.Nvidia.h265.decode
AVC supported width range: [32, 3840]
AVC achievable FPS range: [146.0, 149.0]
HEVC supported width range: [32, 528]
HEVC achievable FPS range: UNSUPPORTED!
2022-06-18 15:00:10 -05:00
Cameron Gutman 22b9c9ca68 Use H.264 on Sabrina if possible for lowest latency 2022-06-13 21:40:41 -05:00
Cameron Gutman c6100a9be1 Catch potential older NVIDIA devices that use partial HEVC acceleration 2022-06-13 19:25:29 -05:00
Cameron Gutman 297ac64fde Enable HEVC on all Shield TV devices 2022-06-06 17:29:47 -05:00
Cameron Gutman 6aac8e6be6 Use amazon.hardware.fire_tv feature to detect Fire TV devices 2022-06-03 19:03:56 -05:00
Cameron Gutman 0b18e8fdb4 Update decoder errata details 2022-06-03 01:39:39 -05:00
Cameron Gutman 19d8ae0f78 Revamp low latency option handling
- Introduce a tiered solution where we try progressively fewer options until one works
- Use vdec-lowlatency for all devices, since we know at least the Fire TV 3 supports it with an Amlogic SoC
- Enable HEVC on Fire TV 3 since vdec-lowlatency avoids the HEVC decoder bug
2022-06-03 01:04:11 -05:00
Cameron Gutman 2859b73dfe Add Amlogic low latency vendor-defined option 2022-06-02 21:02:43 -05:00
Cameron Gutman 6f9021a5e6 Add magic performance boost for MediaTek devices 2022-06-01 22:06:11 -05:00
Cameron Gutman 18c93abcb3 Submit fused IDR frames on decoders that support adaptive playback even if they are blocked from using it 2022-05-29 22:21:15 -05:00
Cameron Gutman c25faf6426 Replace frame pacing hack with Choreographer-based rendering
This mimics the frame pacing logic now present in the iOS client.
2022-02-17 23:48:02 -06:00
Cameron Gutman 8ac5768f4f Change H.265 to HEVC to match other clients 2021-06-12 11:00:30 -05:00
Cameron Gutman 3f1cd8a118 Use HEVC at 4K on Qualcomm since RFI is temporarily disabled 2021-05-16 20:39:58 -05:00
Cameron Gutman bb4b5838e3 Enable HEVC on Realtek SoCs 2021-05-16 20:39:00 -05:00
Cameron Gutman b94649162e Allow compatibility aliases to match preferred decoders 2021-04-27 17:43:19 -05:00
Cameron Gutman ee50e19dbd Fix use of Android 11 low latency decoding feature 2021-04-27 17:43:04 -05:00
Cameron Gutman cc23f8b831 Revert vt-low-latency option
Fixes #973
2021-04-26 19:10:07 -05:00
Cameron Gutman 823593ddae Revert "Avoid Amlogic HEVC decoders until the latency issue is understood"
This reverts commit 3600e704c4.
2021-04-19 23:08:20 -05:00
Cameron Gutman 3600e704c4 Avoid Amlogic HEVC decoders until the latency issue is understood 2021-04-19 22:46:55 -05:00
Cameron Gutman 2a5afeb5ff Don't use HEVC on Fire TV 3 2021-04-18 14:42:52 -05:00
Cameron Gutman fc5495f1ec Add vendor low latency option for Exynos 2021-04-18 14:17:26 -05:00
Cameron Gutman 699cc361a2 Add additional vendor-specific low latency options for Qualcomm and HiSilicon SoCs 2021-04-18 12:49:25 -05:00
Cameron Gutman 54ebd0a796 Fix streaming in the Android 12 emulator 2021-02-27 15:46:59 -06:00
Cameron Gutman 17cf711c3d Don't check brand when whitelisting ranchu for HEVC
HarmonyOS also uses "ranchu" as the hardware name, but doesn't use "google" as the brand name
2020-11-08 20:40:59 -06:00
Cameron Gutman 0fde5d44c0 Enable HEVC for all Amlogic decoders on API 28+ 2020-10-06 21:40:18 -05:00
Cameron Gutman 5c6be7969a Disable max operating rate trick on all Snapdragon 765G devices
Fixes #783
2020-07-26 22:39:10 -07:00
Cameron Gutman 4c5c27dfc1 Re-enable the max operating rate trick on Android 10 except on the Mi 10 Lite 5G
It still provides nice performance gains on Pixel 2 running Android 10
2020-07-10 18:29:29 -07:00
Cameron Gutman 43c67b4939 Avoid using max operating rate on Android Q and non-Qualcomm devices 2020-07-01 11:26:40 -05:00
Cameron Gutman 6de370b82f Update for Android 11 2020-06-10 20:31:32 -07:00
Cameron Gutman 81b6a8a311 Set the vendor.qti-ext-dec-low-latency.enable Qualcomm vendor extension 2020-02-22 17:06:32 -08:00
Cameron Gutman 8c910101c7 Fix Lint errors on API level 16 2020-02-19 23:53:44 -08:00
Cameron Gutman 112d9c41eb Use KEY_LOW_LATENCY to request low-latency decoding on Android R 2020-02-19 23:40:06 -08:00
Cameron Gutman 2b295400ac Avoid using RFI for HEVC on newer MediaTek SoCs 2020-01-02 16:13:19 -06:00
Cameron Gutman aa8d8e93d2 Whitelist newer Bravia devices for HEVC to minimize crashes 2019-12-31 12:59:20 -06:00
Cameron Gutman 14d354fc29 Whitelist all C2 decoders for direct submit and HEVC 2019-12-01 20:20:57 -08:00
Cameron Gutman 1616c0b022 Fix codec capabilities on devices launching with Q and C2 codecs 2019-10-24 20:20:26 -07:00
Cameron Gutman 3e7ddab0e9 Blacklist 59 FPS on BRAVIA_ATV3 due to crash reports 2019-10-20 00:06:17 -07:00
Cameron Gutman 5da0177356 Convert tabs to spaces 2019-10-19 23:59:33 -07:00
Cameron Gutman c821c4684f Allow FFmpeg decoders on Android x86. Closes #630 2019-10-15 00:11:43 -07:00
Cameron Gutman 6574a0aab2 Fix codec blacklisting 2019-07-02 23:20:14 -07:00
Cameron Gutman b461d546d6 Use new MediaCodecInfo helper to blacklist software codecs 2019-06-05 21:05:33 -07:00
Cameron Gutman 773976b265 Update 49 FPS hack for MTK devices running Oreo which remains broken 2018-12-05 20:43:44 -08:00
Cameron Gutman e97845e46e Add comments and documentation on MT8176 testing 2018-06-16 16:31:06 -07:00
Cameron Gutman af41021271 Use HEVC by default on MediaTek SoCs with PowerVR graphics 2018-06-14 22:55:10 -07:00