As promised, I've pushed bnhf/olivetin:latest (aka bnhf/olivetin:2025.12.19), that adds support for creating ADBTuner lanes, and CDVR Custom Channels Sources for apps with deeplinks supported by FruitDeepLinks. I'll add more with participation from interested users here.
For the moment, you can try out ESPN, Prime Video and Paramount+ -- and I'm happy to add others, for anyone willing to test them. There are enough apps, including package variations between FireTV and generic Android, plus subscriptions required -- to make this very difficult for any one person to test them all. This will be a team effort!
The first step is to get FruitDeepLinks installed, and there's now a Project One-Click Action for that:

Next you'll need to do your initial scrape in FruitDeepLinks to build the database, followed by configuring ADB support. Save that, and do a Skip Scrape to update the M3Us and XMLs without doing another full scrape:
From there you're ready to add your virtual channels to ADBTuner, which will also automatically create your CDVR Custom Channels Source:

With ESPN, you'll need to use a Custom ADBTuner Configuration. Even if this, or another config has been previously added, you'll need to paste it in again, so that the UUID can be extracted. Here's my current recommendation for ESPN:
{
"name": "ESPN+ Deep Links - Show Tuning Process",
"author": "bnhf",
"version": "1.0",
"description": "Load content via ESPN+ deep link URLs (where supported). Show tuning process.",
"uuid": "51af5028-092f-4ddc-b4ea-d5e5fca58cac",
"global_options": {
"wait_for_video_playback_detection": false,
"use_fixed_delay": true,
"fixed_delay_seconds": 5,
"check_for_and_clear_whos_watching_prompts": false,
"wait_after_post_playback_start_commands_seconds": 0
},
"pre_tune_commands": [
"input keyevent KEYCODE_MEDIA_STOP"
],
"tune_commands": [
"am start -n '||TARGET_PACKAGE_NAME||'/com.espn.startup.presentation.StartupActivity -d '||TARGET_URL_OR_IDENTIFIER||'"
],
"post_playback_start_commands": [
"sleep 20",
"input keyevent KEYCODE_DPAD_DOWN",
"input keyevent KEYCODE_DPAD_DOWN",
"input keyevent KEYCODE_DPAD_RIGHT",
"input keyevent KEYCODE_DPAD_CENTER"
],
"post_tune_commands": [
"input keyevent KEYCODE_MEDIA_STOP",
"input keyevent KEYCODE_MEDIA_PAUSE",
"input keyevent KEYCODE_HOME"
],
"source_file": "/app/.config/user_configurations/51af5028-092f-4ddc-b4ea-d5e5fca58cac.json"
}
With Prime Video, you'll also need a custom config:
{
"name": "Prime Video",
"author": "bnhf",
"version": "1.0",
"description": "Launch Prime Video Deep Links",
"uuid": "a176643f-b3b6-47fb-8527-47908d089695",
"global_options": {
"wait_for_video_playback_detection": false,
"use_fixed_delay": false,
"fixed_delay_seconds": 0,
"check_for_and_clear_whos_watching_prompts": false,
"wait_after_post_playback_start_commands_seconds": 0
},
"pre_tune_commands": [
"input keyevent KEYCODE_MEDIA_STOP"
],
"tune_commands": [
"am start -n com.amazon.firebat/com.amazon.firebatcore.deeplink.DeepLinkRoutingActivity -a android.intent.action.VIEW -d '||TARGET_URL_OR_IDENTIFIER||'"
],
"post_playback_start_commands": [],
"post_tune_commands": [
"input keyevent KEYCODE_MEDIA_STOP",
"input keyevent KEYCODE_MEDIA_PAUSE",
"input keyevent KEYCODE_HOME"
],
"timed_keep_active_commands": []
}
For Paramount+, you should be able to use the recommended, standard deeplinks config in the dropdown -- no custom config required thus far.
As I said, for anyone with the interest and the ability to test other deeplinks supported by FruitDeepLinks, call it out. They should be easy enough to add, it's the testing that's trickier.