Problems with @ in the m3u URL

Server Version#: 1.23.6.4881
Player Version#: 1.33.0.2444
Tuner Make/Model: xteve
Guide/Lineup name: PMS
Using XMLTV?: No

I’ve been using xteve with Plex for a while and it’s working great, I disable the buffer as I find channels work much better when not being passed through ffmpeg/vlc, I recently switched to a new provider so the m3u url has changed, the new provider uses your email address in the URL, eg…

https://tvxx.live/api/stream/example@gmail.com/password/livetv.epg/bbc.news.channel.uk.m3u8

This seems to break Plex, I get the error: Could not tune channel. Please check your tuner or antenna.

In the logs,

Aug 10, 2021 11:37:37.868 [0x7fa6c56eeb38] ERROR - [Grabber/5fc76e0aaa69a2002d8c4d9d-5fc705d7088e7d002d4c6a6c-q6ct4bxn7fn85xdpsygup90p] Unable to find title for item of type 5
Aug 10, 2021 11:37:37.868 [0x7fa6c56eeb38] ERROR - [Grabber/5fc76e0aaa69a2002d8c4d9d-5fc705d7088e7d002d4c6a6c-q6ct4bxn7fn85xdpsygup90p] Unable to find title for item of type 5
Aug 10, 2021 11:37:38.092 [0x7fa6c5496b38] ERROR - [Transcoder] [tcp @ 0x7fbacff25f00] Connection to tcp://gmail.com:443 failed: Connection refused
Aug 10, 2021 11:37:38.092 [0x7fa6c5473b38] ERROR - [Transcoder] http://127.0.0.1:34400/stream/4bfb3e6486761e0b47d5f880d8916048: Connection refused
Aug 10, 2021 11:37:38.094 [0x7fa6c56eeb38] ERROR - [Grabber/5fc76e0aaa69a2002d8c4d9d-5fc705d7088e7d002d4c6a6c-q6ct4bxn7fn85xdpsygup90p] Failed to start session.
Aug 10, 2021 11:37:38.094 [0x7fa6c56eeb38] ERROR - [Grabber/5fc76e0aaa69a2002d8c4d9d-5fc705d7088e7d002d4c6a6c-q6ct4bxn7fn85xdpsygup90p] Recorder: Unable to create transcode session or session failed to start.
Aug 10, 2021 11:37:38.094 [0x7fa6c56eeb38] ERROR - [Grabber/5fc76e0aaa69a2002d8c4d9d-5fc705d7088e7d002d4c6a6c-q6ct4bxn7fn85xdpsygup90p] Recorder: Error 16 (Recording failed. Please check your tuner or antenna.) starting the record, shutting things down.
Aug 10, 2021 11:37:38.094 [0x7fa6c5516b38] ERROR - Subscription: Rolling media grab failed to start.
Aug 10, 2021 11:37:38.094 [0x7fa6c56eeb38] ERROR - [Grabber/5fc76e0aaa69a2002d8c4d9d-5fc705d7088e7d002d4c6a6c-q6ct4bxn7fn85xdpsygup90p] Starting media grab failed.
Aug 10, 2021 11:37:38.095 [0x7fa6c56eeb38] ERROR - [Grabber/5fc76e0aaa69a2002d8c4d9d-5fc705d7088e7d002d4c6a6c-q6ct4bxn7fn85xdpsygup90p] Unknown metadata type:

My previous provider had no special characters in the URL and everything was working fine so I wonder if that’s the problem here, this log line in-particular looks suspect,

ERROR - [Transcoder] [tcp @ 0x7fbacff25f00] Connection to tcp://gmail.com:443 failed: Connection refused

I can’t break Plex, because Plex doesn’t see the URL.
It is xteve at fault.

If buffer is disabled, isn’t xteve just passing the URL to Plex?

/var/log/xteve.log
2021/08/10 11:36:55 [xTeVe] Channel Name: BBC News
2021/08/10 11:36:55 [xTeVe] Client User-Agent: Lavf/58.27.104
2021/08/10 11:36:55 [xTeVe] Streaming URL: https://tv4.xxx/api/stream/xxx@gmail.com/password/livetv.epg/bbc.news.channel.uk.m3u8
2021/08/10 11:36:55 [xTeVe] Streaming Info: URL was passed to the client.
2021/08/10 11:36:55 [xTeVe] Streaming Info: xTeVe is no longer involved, the client connects directly to the streaming server.

Apparently I am wrong. Sorry, I don’t know enough about xteve.
Looks like you’ll have to activate the buffer then.

Thanks, I’ll do that for now but is it possible to raise a bug for this?

Possible, yes.
But it will be very low priority, because a regular tuner device doesn’t require a password in the URL.

I was reminded that the @ character is supposed to be URL-encoded in a URL. So try out if your stream is still working if you supply %40 instead of @.

Thanks for the pointer, I’ve made some progress here, downloaded the providers m3u file and modified the URLs with,

sed -i 's/xxx@gmail.com/xxx%40gmail.com/g' livetv.m3u

Now xteve is passing the modified URL correctly and that works when I test it in VLC.

But I have a different error in Plex,

Aug 10, 2021 15:37:44.253 [0x7fc86287fb38] ERROR - [Transcoder] Option scan_all_pmts not found.

The mail address still has the @ in it. Or is this already decoded by something?
Actually, it looks like you are supplying the mail address twice – first with @ and then again with %40

That was just a find and replace with sed, the URL looks correct now,

2021/08/10 15:37:41 [xTeVe] Streaming URL: https://tv4.live/api/stream/xxx%40gmail.com/password/livetv.epg/bbc.one.uk.m3u8
2021/08/10 15:37:41 [xTeVe] Streaming Info: URL was passed to the client.
2021/08/10 15:37:41 [xTeVe] Streaming Info: xTeVe is no longer involved, the client connects directly to the streaming server.

I confirmed the URL with %40 is working with VLC, not sure about that new error from Plex though,

Aug 10, 2021 15:37:44.253 [0x7fc86287fb38] ERROR - [Transcoder] Option scan_all_pmts not found.

I’m guessing Plex is expecting a .ts input and doesn’t have support for m3u8?

I guess so. It is written for tuners after all.
So you will have to continue to use the xteve buffer.

Appreciate the help