ADBTuner: A "channel tuning" application for networked Google TV / Android TV devices

Is there anyway this could work to stream the Formula 1 app feed into channels?

1 Like

When you try watching formula 1 on the web, what kind of link are you presented with?
If the stream deep links through the website, you might have a chance.
What service are you using?

Hi, is there a way to stop adbtuner so it will say available when it says in use without going to the page and clicking it to free it up? This is not a adbtuner issue.

Never mind, I set all tuners to the same priority.

@Edwin_Perez What are the latest details to know about using ADBTuner with the Xfinity app?

Do I need the experimental version? Compatibility mode? How many concurrent streams are allowed by Xfinity? What's the best way to determine the deeplink URLs? Do you have, or know of an M3U, with a decent number of Xfinity deeplinks defined?

1 Like

1.You can have 5 devices Streaming.
2. Compatibility Mode on.
3. use Chrome or any web browser logon to xfinity TV launch a channel get deep link in link bar. The title of the show is just a placeholder and can be replace by Channel name.

I only use it for HBO and Showtime have 2 Prime Tuners for other Channels.
Sample channel

2 Likes

@Turtletank - would you consider adding a feature to ADBTuner so that it cycles though all of the encoders, rather than always use them in the same order? For example, with 3 tuners, everything idle, if I watch a channel on tuner #1, then stop playback, then select another channel, it would use tuner #2 and then tuner #3 the next time - this would "exercise" all of the Onn TV boxes - I don't see an issue with the way it currently works, but my 2nd and 3rd tuners don't get used too often and it would be nice to get them in the mix more often to see if they are still working - thanks for considering

Also hsving the ability to reorder the tuners would be great. Sometimes i want to test a channel om a specific tuner or one may ne having issues and i want ti demote it to the last tuner etc.

1 Like

I pushed an update to the experimental build this morning that adds a priority field for each tuner. The lowest numbered tuner will be used first.

The default behavior when the priority fields are all the same was changed to selecting one at random instead of going by the order in which they were originally added. This random selection should help keep all of the tuners in-use without having to keep track of tuner usage history in ADBTuner.

1 Like

I know you posted this a while ago, but are you still having issues with this? Was it actually loading the wrong channels? Or were you being forced to remap them to channels in the guide within Channels DVR?

The ID number you see after /stream/ in the URL is just the primary key for that channel in the database. This will usually change when you import into a new instance of ADBTuner. It's not really something that should matter much unless the wrong content is loading.

The Channel Number is the number that is configured for that channel in ADBTuner.

The channel-id included in the m3u file is randomly generated (well a uuid), this will also change if you move instances. This is intentional as things can get a bit screwy in Channels DVR if a channel id is reused, but for different content.

1 Like

Can someone elaborate on a best practice/how-to for either (1) maintaining two dockers/images for both the adbtuner:latest and adbtuner:experimental - sharing the same configuration and channels between them and perhaps just starting up one vs. the other to switch between them? Or (2) alternatively, is it better for me to just edit the pull command in the 1 adbtuner instance that I have in Portainer and replace ":latest" with ":experimental"? (I'm using Portainer to manage my dockers on a Windows 11 machine)

@turtletank thanks for the reply, I got everything settled. I ended up rebuilding everything and doing some reorganization.

@turtletank I just updated to the experimental build and set my priority for my three tuners. Unfortunately it made no difference in the behavior. When doing the preview functionality as well as the direct tuning through channels the physical order was used not the Priority field.

What I thought was interesting is in the logs it references tuner 4,5 & 6. I only have 3 but i have had to physically change the order of them to change the turning priority in the past. Could this be causing issues?


Actions

      

2024-04-28 17:24:23.892 - lib.adb - ADB: 10.100.12.22 - dumpsys display
2024-04-28 17:24:23.893 - lib.adb - ADB: Connected.
2024-04-28 17:24:23.893 - lib.adb - ADB: 10.100.12.22 - pm list packages -3
2024-04-28 17:24:23.950 - lib.adb - ADB: 10.100.12.22 - getprop ro.build.version.release
2024-04-28 17:24:23.975 - lib.adb - ADB: Connecting to device (attempt 1).
2024-04-28 17:24:24.005 - lib.adb - ADB: Android Version: 12.0.
2024-04-28 17:24:24.007 - lib.adb - ADB: Connected.
2024-04-28 17:24:24.008 - lib.adb - ADB: 10.100.12.18 - pm list packages -3
2024-04-28 17:24:24.013 - httpx - HTTP Request: GET http://192.168.12.16:8090/stream2 "HTTP/1.0 200 OK"
2024-04-28 17:24:24.031 - lib.adb - ADB: Connecting to device (attempt 1).
2024-04-28 17:24:24.095 - lib.adb - ADB: Connecting to device (attempt 1).
2024-04-28 17:24:24.098 - lib.adb - ADB: Connected.
2024-04-28 17:24:24.098 - lib.adb - ADB: 10.100.12.18 - dumpsys display
2024-04-28 17:24:24.197 - lib.adb - ADB: 10.100.12.18 - getprop ro.build.version.release
2024-04-28 17:24:24.208 - lib.adb - ADB: Connected.
2024-04-28 17:24:24.208 - lib.adb - ADB: 10.100.12.17 - pm list packages -3
2024-04-28 17:24:24.243 - lib.adb - ADB: Android Version: 12.0.
2024-04-28 17:24:24.269 - httpx - HTTP Request: GET http://192.168.12.16:8090/stream1 "HTTP/1.0 200 OK"
2024-04-28 17:24:24.285 - lib.adb - ADB: Connecting to device (attempt 1).
2024-04-28 17:24:24.348 - lib.adb - ADB: Connected.
2024-04-28 17:24:24.348 - lib.adb - ADB: 10.100.12.17 - dumpsys display
2024-04-28 17:24:24.371 - uvicorn.access - 172.16.1.11:64832 - "GET /admin/tuner/installed-packages?_=1714325063331 HTTP/1.1" 200
2024-04-28 17:24:24.468 - lib.adb - ADB: 10.100.12.17 - getprop ro.build.version.release
2024-04-28 17:24:24.567 - lib.adb - ADB: Android Version: 12.0.
2024-04-28 17:24:24.600 - httpx - HTTP Request: GET http://192.168.12.16:8090/stream0 "HTTP/1.0 200 OK"
2024-04-28 17:24:24.628 - uvicorn.access - 172.16.1.11:64827 - "GET /admin/tuner/metadata?_=1714325063329 HTTP/1.1" 200
2024-04-28 17:24:52.077 - server - http disconnect
2024-04-28 17:24:52.083 - lib.adb - ADB: Connecting to device (attempt 1).
2024-04-28 17:24:52.149 - lib.adb - ADB: Connected.
2024-04-28 17:24:52.149 - lib.adb - ADB: Stopping media playback.
2024-04-28 17:24:52.149 - lib.adb - ADB: 10.100.12.17 - input keyevent KEYCODE_MEDIA_STOP
2024-04-28 17:24:52.244 - lib.adb - ADB: 10.100.12.17 - input keyevent KEYCODE_MEDIA_PAUSE
2024-04-28 17:24:52.583 - lib.adb - ADB: Force stopping com.nbcuni.nbc.androidtv.
2024-04-28 17:24:52.583 - lib.adb - ADB: 10.100.12.17 - am force-stop com.nbcuni.nbc.androidtv
2024-04-28 17:24:52.716 - lib.adb - ADB: Closing connection - 10.100.12.17
2024-04-28 17:24:52.716 - server - Released tuner 6
2024-04-28 17:24:52.716 - server - Tuner: Cleanup complete. Onn1 (middle HDMI 1) (CNBC)
2024-04-28 17:24:53.986 - server - http disconnect
2024-04-28 17:24:53.993 - lib.adb - ADB: Connecting to device (attempt 1).
2024-04-28 17:24:54.068 - lib.adb - ADB: Connected.
2024-04-28 17:24:54.068 - lib.adb - ADB: Stopping media playback.
2024-04-28 17:24:54.068 - lib.adb - ADB: 10.100.12.22 - input keyevent KEYCODE_MEDIA_STOP
2024-04-28 17:24:54.189 - lib.adb - ADB: 10.100.12.22 - input keyevent KEYCODE_MEDIA_PAUSE
2024-04-28 17:24:54.270 - lib.adb - ADB: Force stopping com.nbcuni.nbc.androidtv.
2024-04-28 17:24:54.270 - lib.adb - ADB: 10.100.12.22 - am force-stop com.nbcuni.nbc.androidtv
2024-04-28 17:24:54.397 - lib.adb - ADB: Closing connection - 10.100.12.22
2024-04-28 17:24:54.398 - server - Released tuner 4
2024-04-28 17:24:54.398 - server - Tuner: Cleanup complete. Onn2 (top HDMI 3) (WAVY)
2024-04-28 17:24:55.390 - server - http disconnect
2024-04-28 17:24:55.395 - lib.adb - ADB: Connecting to device (attempt 1).
2024-04-28 17:24:55.466 - lib.adb - ADB: Connected.
2024-04-28 17:24:55.466 - lib.adb - ADB: Stopping media playback.
2024-04-28 17:24:55.466 - lib.adb - ADB: 10.100.12.18 - input keyevent KEYCODE_MEDIA_STOP
2024-04-28 17:24:55.592 - lib.adb - ADB: 10.100.12.18 - input keyevent KEYCODE_MEDIA_PAUSE
2024-04-28 17:24:55.718 - lib.adb - ADB: Force stopping com.nbcuni.nbc.androidtv.
2024-04-28 17:24:55.718 - lib.adb - ADB: 10.100.12.18 - am force-stop com.nbcuni.nbc.androidtv
2024-04-28 17:24:55.876 - lib.adb - ADB: Closing connection - 10.100.12.18
2024-04-28 17:24:55.876 - server - Released tuner 5
2024-04-28 17:24:55.877 - server - Tuner: Cleanup complete. Onn2 (bottom HDMI 2) (Golf Channel)
2024-04-28 17:25:39.354 - server - Using first available tuner (by priority).
2024-04-28 17:25:39.355 - server - Reserved tuner 4
2024-04-28 17:25:39.355 - server - Using tuner id: 4
2024-04-28 17:25:39.355 - uvicorn.access - 192.168.12.30:49830 - "GET /stream/27 HTTP/1.1" 307
2024-04-28 17:25:39.362 - server - Tuner: Tuning to Oxygen East on Onn2 (top HDMI 3)
2024-04-28 17:25:39.367 - lib.adb - ADB: Connecting to device (attempt 1).
2024-04-28 17:25:39.426 - lib.adb - ADB: Connected.
2024-04-28 17:25:39.426 - lib.adb - ADB: 10.100.12.22 - dumpsys display
2024-04-28 17:25:39.478 - lib.adb - ADB: 10.100.12.22 - getprop ro.build.version.release
2024-04-28 17:25:39.513 - lib.adb - ADB: Android Version: 12.0.
2024-04-28 17:25:39.513 - lib.adb - ADB: 10.100.12.22 - pm list packages -3
2024-04-28 17:25:39.573 - lib.adb - ADB: 10.100.12.22 - pidof com.nbcuni.nbc.androidtv
2024-04-28 17:25:39.721 - lib.adb - ADB: Stopping media playback.
2024-04-28 17:25:39.721 - lib.adb - ADB: 10.100.12.22 - input keyevent KEYCODE_MEDIA_STOP
2024-04-28 17:25:39.786 - root - Using nbctve://live/oxygen/oxygen_east to load channel.
2024-04-28 17:25:39.786 - lib.adb - ADB: 10.100.12.22 - am start -a android.intent.action.VIEW -d "nbctve://live/oxygen/oxygen_east" com.nbcuni.nbc.androidtv
2024-04-28 17:25:44.368 - lib.adb - Checking for profile screen
2024-04-28 17:25:45.144 - lib.adb - On screen text: "awa".
2024-04-28 17:25:46.145 - lib.adb - Checking for profile screen
2024-04-28 17:25:47.158 - lib.adb - On screen text: "a is  home browse  sports  live  networks  peac  ock  oren  p".
2024-04-28 17:25:48.158 - lib.adb - Checking for profile screen
2024-04-28 17:25:49.138 - lib.adb - On screen text: "a ro  home browse  sports  live  networks  peac  ock  ren  5@)  hulu @".
2024-04-28 17:25:50.139 - lib.adb - Checking for profile screen
2024-04-28 17:25:51.151 - lib.adb - On screen text: "a is  home browse  sports  live  networks  peac  ock  ren  5@)  hulu @".
2024-04-28 17:25:52.152 - lib.adb - Checking for profile screen
2024-04-28 17:25:54.094 - server - Tuner: Compatibility Mode - Stream released after 14.74 seconds. Display was on, application (com.nbcuni.nbc.androidtv) as closed.
2024-04-28 17:25:54.094 - lib.adb - ADB: Closing connection - 10.100.12.22
2024-04-28 17:25:54.095 - uvicorn.access - 192.168.12.30:49830 - "GET /stream/4/27 HTTP/1.1" 200
2024-04-28 17:25:54.122 - root - Tuner: Stream open (attempt 1).
2024-04-28 17:25:54.126 - httpx - HTTP Request: GET http://192.168.12.16:8090/stream2 "HTTP/1.0 200 OK"
2024-04-28 17:26:06.107 - server - http disconnect
2024-04-28 17:26:06.112 - lib.adb - ADB: Connecting to device (attempt 1).
2024-04-28 17:26:06.181 - lib.adb - ADB: Connected.
2024-04-28 17:26:06.182 - lib.adb - ADB: Stopping media playback.
2024-04-28 17:26:06.182 - lib.adb - ADB: 10.100.12.22 - input keyevent KEYCODE_MEDIA_STOP
2024-04-28 17:26:06.270 - lib.adb - ADB: 10.100.12.22 - input keyevent KEYCODE_MEDIA_PAUSE
2024-04-28 17:26:06.357 - lib.adb - ADB: Force stopping com.nbcuni.nbc.androidtv.
2024-04-28 17:26:06.357 - lib.adb - ADB: 10.100.12.22 - am force-stop com.nbcuni.nbc.androidtv
2024-04-28 17:26:06.533 - lib.adb - ADB: Closing connection - 10.100.12.22
2024-04-28 17:26:06.535 - server - Released tuner 4
2024-04-28 17:26:06.535 - server - Tuner: Cleanup complete. Onn2 (top HDMI 3) (Oxygen East)

Thank you for testing and for the feedback. I just pushed another update that should correct this. The "4, 5, and 6" are the primary keys for those tuners in the database. You probably just deleted 3 tuners at some point so the first one is 4 instead of 1. I made some changes to the logs to better clarify this as well.

Logging should look more like this now:

server - Available Tuners:
server - Name: Chromecast 1 Priority: 0
server - Name: Chromecast 2 Priority: 0
server - Name: Chromecast 3 Priority: 0
server - Name: Chromecast 4 Priority: 0
server - Selecting random tuner
server - Reserved Tuner: Name: Chromecast 4 Priority: 0

I noticed a problem when adding Channels with a period .... EXPERIMENTAL

Yeah i had that issue as well. What i did was to manually download the m3u from adbtuner and edit the channel to include the "."

1 Like

This is working as intended. That is the channel number within ADBTuner and is really only used for sorting.

Do you think you could have a field that would map to the channel number field for the m3u, maybe like an override? There is an OTA channel that I cannot get reliably so I am using my hulu subscription via adbtuner. Not a huge deal but I have to do text as the source in channels and every channel manually to be able to override a station to include the "." I have a good work around so its not that big of a deal but if I were trying to do more OTA channels like @Edwin_Perez , I could see how not having "." would be problematic.

In the example below I just manually edited "2" to "2.1"

#EXTINF:-1 channel-id="91614541914158065154237807405362119474" channel-number="2.1" tvc-guide-stationid="29019",PBS NC
http://192.168.12.41:5592/stream/11

Yeah I really would not like to have to edit the M3U to get correct guide data ...

#EXTINF:-1 channel-id="175843821434038601238833585820720759399" channel-number="2",ABC
http://192.168.50.68:5594/stream/12

I’m sorry. I’m not sure I understand. What issue are you seeing as a result of having the channel number in ADBTuner not match the OTA channel number?