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

URL, containing "asset" is a reference to particular program, I believe. You have to refer to channels like this, using /1/channel//watch:
{
"provider_name": "Sling TV",
"number": 9036,
"name": "Bravo",
"url": "Stream Live TV Now | Get Started",
"package_name": "com.sling",
"alternate_package_name": "",
"compatibility_mode": false,
"tvc_guide_stationid": "58625",
"guide_offset_hours": 0
}

1 Like

So I can confirm this is definitely an issue with the latest version of the NBC app. I didn’t realize that an apk specific to android tv for the older version of the app 9.9.1 existed on apkmirror.com I downloaded and installed 9.9.1 android tv on my onn device and sure enough the west coast channels play and even better, the dimming issue is gone.

3 Likes

Have a quick question for developers.

Was there something specific about the slingtv app that made it not possible to keep it running and exit to something like the guide when the video is stopped? I had some spare time and was experimenting with a slingtv and ADBTuner and noticed that every time I stopped a video it quit the app completely and had to restart the app each time before tuning again.

I have youtubetv configured with ah4c (non docker) and I set it so that when a video stops it actually goes to a neutral screen keeping the app running. This makes for much faster tuning.

I can tune a channel in 4 or so seconds that way. Using slingtv the way it is configured in ADBTuner takes around 15 seconds to start the slingtv app and tune the channel. This makes browsing a bit cumbersome.

Is this by design due to some technicality with the app?

Here is a link to a video comparison of channels tuning where the app stays running vs when it is existed completely.

Update: I did some manual testing and found where even exiting to the Home Screen instead of killing the app completely when the video stops speeds up the tuning speed to 5 seconds.

A simple:

adb -s 192.168.1.133 shell "input keyevent 3"

Keeps the slingtv app ready in the background.

In ADBTuner, the Compatibility Mode setting toggles this behavior for each channel.

With Compatibility Mode enabled the target app will be restarted before loading content. This option is provided as some apps just will not load content from a URL if the app is already open.

I don’t recall if the Sling app needs to be restarted but you can test by disabling Compatibility Mode.

Hmmm. doesnt exit to a position of rest. I monitor it on vlc and notice it keeps a video going.

1 Like

What Android device are you using? Can you share docker logs for when this happens? ADBTuner sends keyevent 86 (KEYCODE_MEDIA_STOP) to the device to stop video playback. Does that not stop playback in the Sling app?

The command stops the video. But for sling tv it brings you to a screen where the item that is automatically highlighted begins to play then goes to full screen mode after a couple of seconds. I haven't checked an around in the app to see if there is an option to disable autoplay just yet.

Update: Disabled autoplay and all is well now.

1 Like

Hi,

I set up my Linkpi ENC5v2 successfully with an onn device. Then added a few NBC channels to ADBTuner and they worked OK. The next step was to add the key apps for me: SNY and Gotham (for MSG+, which is now part of this new Gotham app). They work fine with the remote. But ADBTuner can't tune to either one of these apps. The onn never leaves the Home screen. I used stream links that work on a Chrome web page with no issue. ADBTuner settings below. Am I missing something?

Thanks very much for any input.
{
"provider_name": "Optimum",
"number": 9000,
"name": "SNY",
"url": "https://sny.tv/watch-now",
"package_name": "tv.sny",
"alternate_package_name": "tv.sny",
"compatibility_mode": true,
"tvc_guide_stationid": "",
"guide_offset_hours": 0
},
{
"provider_name": "Optimum",
"number": 9001,
"name": "MSG",
"url": "Gotham Sports",
"package_name": "com.gothamsports.gotham.tv",
"alternate_package_name": "com.gothamsports.gotham.tv",
"compatibility_mode": true,
"tvc_guide_stationid": "",
"guide_offset_hours": 0
},

Yeah...I don't think adbtuner will work for that unless they have a link directly to the stream so I think your best bet is using ah4c instead

Is there a way to send remote commands via ADB tuner for the NBC app? I run ADB Tuner in Linux inside Docker/Portainer. I've noticed if on the Google box remote, I press up, then, ok, then back, the picture gets bright again.

1 Like

The easy workaround for NBC is to run the 9.9.1 version which you can download from APKmirror. But the drawback is you'll have to disable auto app updates after that.

I can't find that version for Google TV? I've tried these versions before. They either are too small in size, or the wrong version for my Google Stick.

1 Like

Shrug worked fine on my onn 4K cheapo Walmart box.

2 Likes

That's what mine is. Onn HD Google TV Stick.

1 Like

I see this was asked as a reply to the original post, and didn't see an answer. Maybe this could be added to the turtletank docker hub page (https://hub.docker.com/r/turtletank99/adbtuner).

How does one go about figuring out what the package and component names are for any given service/device combination? Is there something on the webpage that shows it, or do you just suss it out via voodoo? Maybe a Seance session?

I've searched and can't seem to find much, just everyone talks about them, but not where/how they arrived at the one they need. Some guidance would be really appreciated.

1 Like

What service are you using?

I'm not sure yet. I might be using Peacock, and I might be using Philo and/or Pluto.tv. And if I can figure out any formulas to determine how to set things up, I might look for a service that allows me to add some Pay Channels like Cinemax, HBO, etc. Seems like if this is just acting as a sophisticated screen capture device, anything I can tune in on my mecool MK6 should be capturable? Or am I completely misinformed?

My opinion go with onn pros/linkpi/youtube tv. Winning combo. Pluto you can get via docker.

2 Likes

ADBTuner is mostly used to control Android devices for the purposes of opening live, linear content from streaming apps as if they were traditional TV channels. It is typically used to add some live TV channels to Channels DVR that can no longer be easily loaded using other methods (CableCARD, etc.).

The focus is on linear TV content that can be mapped to a guide data that can be loaded by passing a URL to the target application. It doesn't really do anything for on-demand content within streaming apps.

The ADBTuner admin interface includes a dropdown menu for each "channel" that includes the package names for all of the apps installed on the linked Android device. More often than not you just have to select the correct option from the dropdown menu and it's pretty obvious which app is which.

The URLs for each specific channel can be tricky, but usually it's just using the web version of the provider's service in a browser and copying the URL from the address bar. Sometimes that's not sufficient and you have to get into decompiling apks or using other tricks to figure out the correct URL format. That being said, most of the major apps have been discussed here or in the ah4c thread. However, some apps just don't support loading live content via URLs and are incompatible with ADBTuner.

The HDMI capture device is used to capture the output of the Android device so it can be sent back to Channels DVR. ADBTuner just acts a passthrough proxy for that. So yeah, in some ways it is a sophisticated screen capture device as you suggested.

This can be a very effective solution, but it's very much in enthusiast territory and not really a plug and play thing. If great if working through something like this is fun for you. Otherwise, I wouldn't recommend it. Most Channels DVR users are enthusiasts though lol.

2 Likes

Yeah...I think for peacock, this may work. Pluto you can use without this through the docker containers (or use the non-docker feeds). Philo can also work with this. The pay channels? YTTV and Sling will let you get them Ala carte and will work with this. You'll need some hardware tho for that (1-4 onn devices depending on how many tuners you need and a hdmi encoder)