Station Logos not on client

I show all the proper station logos on the guide in the Server GUI, but some of them are missing in all my client apps guides including FireTV and Nvidia Shield. These are only the ones from my M3U source. The HDHomerun and cable app sources are fine as well as all the guide info. Just an issue with the logos.

I did try reloading the M3u and redownload XML. Also tried refresh station logos and recreate database.
I checked the actual XML files and the correct icon sources are there. I even tried reinstalling ChannelsDVR on the clients. No effect.

Can anyone help?

1 Like

Is there any chance the URLs for the logos are http:// rather than https://? I seem to remember that client apps require images to be served from secure connections.

I was using https from Schedules Direct, then went to direct file for the M3U and XML. I use Xteve to create my custom m3u and XML, and the logos are good from there. I even tried creating custom logos from my own web server. Point is, the logos appear fine in the Channels Server GUI guide. Just not in the client apps. The server is not delivering these logos to the clients.

When I goto 'On Now' in the client, those channels show only the channel number and name, which are superimposed on top of one another so they are difficult to read.

2 Likes

So you are saying you got the logos from Schedules Direct, saved them locally, and then used those locally saved files in your M3U playlist?

So you can access the logos through Xteve. You have also hosted them on your own web server, and can view them there. There is no problem viewing these in the DVR web UI, correct?

You're right, the server isn't. The client apps don't get those logos from the DVR server; instead they download the logos directly from the URL specified in the M3U playlist. This is why I specifically asked about the protocol used to define the logos in the playlist. IIRC, the client apps will only display logos from HTTPS sources, and if the URLs used in your playlist are not HTTPS, that may explain things.

Also, using Schedules Direct in this manner—as middleware to generate data to feed a commercial program—is against their TOS. Instead, use the station ID you'd get from Schedules Direct and put that in your playlist as tvc-guide-stationid="..."; that way Channels will automatically use the appropriate logo, and handle the guide data, too, with no need for external XMLTV files.

I'm doing exactly this with a few imported channel streams for a few sources that I can't pull in over TVE and it works perfectly and the guide and logo info is always spot on. Originally I was doing something similar to the xteve route and managing xml feeds and it was a mess. Even without having the stationid - Ive usually been able to go back into the custom channels after the stream import, put in a provider and zipcode and then manually map a channel and guide to the stream that way and it also works perfectly.

I will try that right after lunch. At first I just used the m3u as is from xteve and it didn,t work that way either. Can,t use the m3u direct from provider because too many stations for Channels to handle, and I want a better guide

All working now. Thanks. Just needed a few stations to fill in so I just created a text source. Don't need Xteve anymore.

1 Like

I tried substituting a logo which isn't a good one from Gracenote with my own from another https location and I have the same issue. Apparently only the Gracenote logos work. Shows ok in the server guide, but not in the clients. Is there any way to replace a station logo in the client app?

When creating custom channels for surveillance cameras, I never had a problem with the client apps displaying the content. In all cases they were served from an internet-facing web server over HTTPS.

As I have repeatedly asked, are your logos being served from a URL over HTTPS (with valid certificates)?

Yes https with valid certs. Does it have to match the Gracenote size? It is close. These logos were actually pulled down from Gracenote and placed on my server, so this is a Gracenote logo.

Channels' documentation specifically states logos be 4x3. That could be the issue; I wouldn't know as I've always made sure my logos matched the required ratio.

The developers have done a great job trying to make edge cases work, but deviating from specified guidelines is one way to introduce issues. I'm going to let others handle this, as I've exhausted what I can offer.

Tried resizing logo to match working current logo with no luck. I must assume the logo has to come from Gracenote to work. Funny thing is it works in the server guide. Gracenote logo shows the station logo, not 'The CW' logo, which is why I want to change it.

What url are you using for the image?

Sounds like the client can't load the URL

The client can load the image no problem via a browser. I will PM the link to you to test

I wanted to come back here and state I am able to get this to work. If this is old news, I never came across the hours of searching, please be gentle...
Me running on an nvidia shield and self hosting my logos in the same container running Caddy. I went all around the world setting up CF tunnels, ssl certs, etc. I continued to test and found in fact that, at least the android client, needs http://. WOW!
Here is a sample of my Caddyfile, and maybe help others.

# Local access to logos.local (HTTP only)
> logos.local {
>     root * /mnt/logos
>     file_server browse
> }
> 
> # External access to logos.domain.com (HTTP only)
> logos.domain.com {
>     root * /mnt/logos
>     file_server browse
> }
the "root * /mnt/logos" line is where I host all the logos.
"file_server browse" allows a basic built in filebrowser from caddy for you to get the links