HDMI for Channels

Oh totally for sure. It's not a linear channel but in theory it could be when it knows it's already live and all you have to do is a center button action it would be like butter to automate.

I am using my mother's spectrum login to watch Bally. I don't have Fubo or DirectTV Stream unfortunately.

I am familar with how docker works. I have docker on my Channels/Plex Server. It is a Mac Pro from 2009 working like a charm. Currently have running a FreshRSS (rss feeder), Pluto for Channels, & ADBTuner.

If it is straight forward I'm down to move forward with this.

Would make a custom script for Bally to work would it interfere with ADBTuner?

1 Like

Kind of already happened for the NBC channels, PBS, and now Fox.

Had a Phillies game MLB blackout last night that I set to record and....I got a nice recording of NHL
so that worked!

This project can coexist with ADBTuner -- but only if you have a multiple port encoder. You wouldn't want to have multiple containers all pointed to the same Android device and encoder stream.

1 Like

Very nice! Thanks for letting me know.

We're in good shape I believe with DTVStream. I've been using using it for a couple of months with my satellite credentials, adding numerous enhancements to the scripts along the way. We recently found a difference or two that pops-up when you use stream vs sat credentials, but that's now accounted for in the scripts.

As you might imagine, using the required "remote control emulation" tuning is not lightning fast, but it's very serviceable. In fact, it's probably faster than a person could tune if you were using the app directly. :slight_smile: Reliability has been emphasized, in the interest of successful recordings.

Let me know if/when you're ready to give it a try, and I'll point you in the right direction.

1 Like

I experimented with changing the 4 back to a 3 and that did not work for me.

And I added one Channel that is interesting for MLB Alternate. The DTV channel I had to make it #214 not 213 or it tried to tune both. May not work for everyone if they have a 214, When 213 MLB was blacked out it went to 214 MLBA not NHL,

#EXTINF:-1 channel-id="214" tvc-guide-stationid="62085",MLB Network Alternate
http://{{ .IPADDRESS }}/play/tuner/214

In the interest of consistency, what would you think about using 213A as the channel number, and http://{{ .IPADDRESS }}/play/tuner/213A for the URL?

Sounds good Ill give it a try and see what happens

So far this looks good. Blackout worked on 213A also. I think its good to go, I will update if there is an issue going forward. Elegant solution!

1 Like

Have you looked into Amazon Prime live channels at all?

I'm tempted to try DTV Stream just to get an understanding how this all works.

Here's a docker-compose you can use in Portainer-Stacks:

version: '3.9'
services:
  ah4c:
    image: bnhf/ah4c:test2
    container_name: ah4c
    hostname: ah4c
    dns_search: localdomain # Specify the name of your LAN's domain, usually local or localdomain
    ports:
      - 5037:5037 # Port used by adb-server
      - 7654:7654 # Port used by this androidhdmi-for-channels proxy
      - 7655:8000 # Port used by ws-scrcpy
    environment:
      - IPADDRESS=${IPADDRESS} # Hostname or IP address of this androidhdmi-for-channels extension to be used in M3U file (also add port number if not in M3U)
      - NUMBER_TUNERS=${NUMBER_TUNERS} # Number of tuners you'd like defined 1, 2, 3 or 4 supported
      - TUNER1_IP=${TUNER1_IP} # Streaming device #1 with adb port in the form hostname:port or ip:port
      - TUNER2_IP=${TUNER2_IP} # Streaming device #2 with adb port in the form hostname:port or ip:port
      - TUNER3_IP=${TUNER3_IP} # Streaming device #3 with adb port in the form hostname:port or ip:port
      - TUNER4_IP=${TUNER4_IP} # Streaming device #4 with adb port in the form hostname:port or ip:port
      - ENCODER1_URL=${ENCODER1_URL} # Full URL for tuner #1 in the form http://hostname/stream or http://ip/stream
      - ENCODER2_URL=${ENCODER2_URL} # Full URL for tuner #2 in the form http://hostname/stream or http://ip/stream
      - ENCODER3_URL=${ENCODER3_URL} # Full URL for tuner #3 in the form http://hostname/stream or http://ip/stream
      - ENCODER4_URL=${ENCODER4_URL} # Full URL for tuner #4 in the form http://hostname/stream or http://ip/stream
      - STREAMER_APP=${STREAMER_APP} # Streaming device name and streaming app you're using in the form scripts/streamer/app (use lowercase with slashes between as shown)
      - CHANNELSIP=${CHANNELSIP} # Hostname or IP address of the Channels DVR server itself
      #- ALERT_SMTP_SERVER="smtp.gmail.com:587"
      #- ALERT_AUTH_SERVER="smtp.gmail.com"
      #- ALERT_EMAIL_FROM=""
      #- ALERT_EMAIL_PASS=""
      #- ALERT_EMAIL_TO=""
      #- ALERT_WEBHOOK_URL=""
      - UPDATE_SCRIPTS=${UPDATE_SCRIPTS} # Set to true if you'd like the sample scripts and STREAMER_APP scripts updated whether they exist of not
      - UPDATE_M3US=${UPDATE_M3US} # Set to true if you'd like the sample m3us updated whether they exist of not
      - TZ=${TZ} # Your local timezone in Linux "tz" format
    volumes:
      - /data/ah4c/scripts:/opt/scripts # pre/stop/bmitune.sh scripts will be stored in this bound host directory under streamer/app
      - /data/ah4c/m3u:/opt/m3u # m3u files will be stored here and hosted at http://<hostname or ip>:7654/m3u for use in Channels DVR - Custom Channels settings
      - /data/ah4c/adb:/root/.android # Persistent data directory for adb keys
    restart: unless-stopped

And, some example environment variables. Note you'd want to use /scripts/firetv/dtvstream for your STREAMER_APP variable (there are some slight differences when sat credentials are used, which is why mine is different). Other variables would be set to suit your setup:

Regarding the Amazon Prime Channels, I've looked at them but didn't see anything I couldn't live without.

Thanks.

I subscribe to some premium channel through prime which gives me access to the apps as well as linear channels. HBO Cinemax etc.

That definitely makes Prime channels more interesting. I'll have a look and let you know.

I never used prime channels either. Should be possible with voice commands tho

I posted here a few weeks ago about a webview app that someone had written to allow viewing Spectrum streams on Android/FIre TV devices. For those that don't know, Spectrum doesn't officially support those devices, I suspect due to exclusivity deals. I've since made some changes to the app myself to make it more useful for HDMI capture with Channels and similar DVRs. The main changes are to allow "tuning" to specific channels programatically via ADB and to automatically dismiss the "Still There?" dialog that pops up every 4 hours.

You can find my source code at GitHub - gigem/SpectrumTV_webview: Spectrum TV App for Android TV platform . The original author helped me create my changes but has not yet pulled them into his version. If anyone wants to try this and isn't able to build theire own apk, let me know and I'll try to include a prebuilt one.

Finally, there is one known issue. The app occasionally crashes causing a return to the home screen. In my testing, this only seemed to happen while viewing Bally Sports Southwest. I spent the better part of the last week trying to find the cause of the problem but was unsuccessful.

Unfortunately, I'm not able do any more testing for the next month or so as I cancelled my Spectrum service. I hopeto sign back up when the Disney and Bally Sports issues are resolved and I qualify for new user pricing again.

1 Like

OK, I have a working setup for Fire TV - Live TV channels which would include any premium channels subscribed to through Amazon Prime.

Which leads to a couple of questions:

Do you have a FireStick you can use on at least one of your HDMI Encoder ports?

If so, which specific premium services are you signed-up for?

I have Chromecast devices on a 4 port encoder. I have one Chromecast and port free for testing purposes.
The first 3 are in use with ADB tuner.

Currently I have HBO, Cinemax, Stars, MGM, AMC+

Too many I know.

I spent aite time today and installed the docker compose into portainer. I'm getting slightly more comfortable with it.

If you access one of your Chromecast devices, do you see the premium channels you're subscribed to show-up in the Google TV "Live TV" guide?

Looks like just the free stuff google is pushing. I have to open the Prime app to get the premium stuff.

If I need a FireTV in order for this to work, I will just order one. No Biggie.