I’ve been looking some more into this and getting more confused. 😊
I am running mythbackend fixes/33 [v33.1-v33.1-4-gc273ed0f9a]
Here is the snippet from the mythbackendlog file when it tries to load a channel. I’ve redacted part of the url which would show credentials.
2023-04-17 19:49:28.323310 I [1743/1766] TVRecEvent tv_rec.cpp:1094 (HandleStateChange) - TVRec[1]: Changing from None to WatchingLiveTV
2023-04-17 19:49:28.326818 I [1743/1766] TVRecEvent tv_rec.cpp:3613 (TuningFrequency) - TVRec[1]: TuningFrequency
2023-04-17 19:49:28.444279 I [1743/1766] TVRecEvent channelutil.cpp:2044 (GetIPTVTuningData) - Loaded [data]
http://hostengine.live/live/XXXXXX/YYYYYY/263899.ts[fec
type][fec0][fec1] for 10001
2023-04-17 19:49:28.671929 I [1743/1766] TVRecEvent channelutil.cpp:2044 (GetIPTVTuningData) - Loaded [data]
http://hostengine.live/live/XXXXXX/YYYYYY/263899.ts[fec
type][fec0][fec1] for 10001
2023-04-17 19:49:28.699708 N [1743/1743] CoreContext autoexpire.cpp:244 (CalcParams) - AutoExpire: CalcParams(): Max required Free Space: 3.0 GB w/freq: 14 min
2023-04-17 19:49:28.716923 N [1743/1766] TVRecEvent recordinginfo.cpp:732 (ApplyRecordRecGroupChange) - ApplyRecordRecGroupChange: LiveTV to LiveTV (2)
2023-04-17 19:49:28.839217 I [1743/1766] TVRecEvent httptsstreamhandler.cpp:95 (HTTPTSStreamHandler) - HTTPTSSH[1](
http://hostengine.live/live/XXXXXX/YYYYYY/263899 .ts): ctor
2023-04-17 19:49:45.301764 E [1743/1795] ProcessRequest tv_rec.cpp:2884 (PauseRecorder) - TVRec[1]: PauseRecorder() called with no recorder
2023-04-17 19:49:47.265548 I [1743/1766] TVRecEvent tv_rec.cpp:3613 (TuningFrequency) - TVRec[1]: TuningFrequency
2023-04-17 19:49:47.386238 I [1743/1766] TVRecEvent channelutil.cpp:2044 (GetIPTVTuningData) - Loaded [data]
http://hostengine.live/live/XXXXXX/YYYYYY/53704.ts[fect
ype][fec0][fec1] for 11148
2023-04-17 19:49:47.386289 I [1743/1766] TVRecEvent httptsstreamhandler.cpp:100 (~HTTPTSStreamHandler) - HTTPTSSH[1](
http://hostengine.live/live/XXXXXX/YYYYYY/2638 99.ts): dtor
2023-04-17 19:49:47.386318 I [1743/1766] TVRecEvent httptsstreamhandler.cpp:95 (HTTPTSStreamHandler) - HTTPTSSH[1](
http://hostengine.live/live/XXXXXX/YYYYYY/53704. ts): ctor
2023-04-17 19:49:47.391773 I [1743/1766] TVRecEvent channelutil.cpp:2044 (GetIPTVTuningData) - Loaded [data]
http://hostengine.live/live/XXXXXX/YYYYYY/53704.ts[fect
ype][fec0][fec1] for 11148
2023-04-17 19:49:47.405300 N [1743/1743] CoreContext autoexpire.cpp:244 (CalcParams) - AutoExpire: CalcParams(): Max required Free Space: 3.0 GB w/freq: 14 min
2023-04-17 19:49:47.452246 N [1743/1766] TVRecEvent recordinginfo.cpp:732 (ApplyRecordRecGroupChange) - ApplyRecordRecGroupChange: LiveTV to LiveTV (2)
2023-04-17 19:50:07.461764 E [1743/1766] TVRecEvent tv_rec.cpp:3917 (TuningSignalCheck) - TVRec[1]: TuningSignalCheck: Hit pre-fail timeout
2023-04-17 19:50:17.467513 W [1743/1766] TVRecEvent tv_rec.cpp:3945 (TuningSignalCheck) - TVRec[1]: TuningSignalCheck: taking more than 30000 ms to get a lock. marking thi
s recording as 'Failing'.
2023-04-17 19:50:17.467518 W [1743/1766] TVRecEvent tv_rec.cpp:3950 (TuningSignalCheck) - TVRec[1]: See 'Tuning timeout' in mythtv-setup for this input
2023-04-17 19:50:27.868019 I [1743/1766] TVRecEvent tv_rec.cpp:1094 (HandleStateChange) - TVRec[1]: Changing from WatchingLiveTV to None
If I use curl to determine the actual URL of the channel I get the following:
[root@mythdvb ~]# curl -L -O -v
http://hostengine.live/live/XXXXXX/YYYYYY/263900.ts % Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0* Trying 206.212.248.24:80...
* Connected to hostengine.live (206.212.248.24) port 80 (#0)
> GET /live/XXXXXX/YYYYYY/263900.ts HTTP/1.1
> Host: hostengine.live
> User-Agent: curl/7.82.0
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 302 Found
< Server: nginx/1.20.1
< Content-Type: text/html; charset=UTF-8
< Connection: close
< Cache-Control: no-cache, private
< Date: Thu, 20 Apr 2023 01:59:36 GMT
< Location:
http://38.84.24.33:8089/play/mpegts/eyJpdiI6Ii9LemgxeFBreFpsXRmNzL1d5T1RDa3lTR0VpOWpsaUJQOVB2aDZBQ2xaZzVOZzh1WWFGaEJibVQxR1hwZCs3S0gxUSIsIm1hYyI6ImI3MWVjNTRkM2NkNzcyNDE5MDdmMWIwZDQyNzkwYTg1Mjc5MDFlZGI5YWFlZTZiZWQ3NGMyMDM4YzEzMTZiM2QiLCJ0YWciOiIifQ==/e0ab3705-e3d3-4a96-a946-e0a40d309929.ts?lvtoken=eyJpdiI6Im1oQzFGVVpvMldaSDBrRWRWN3ZIWVE9PSIsInZhbHVlIjoiTEttWFJlMmtVb0RoakE2QzVRRjNKc1dEd0ZrODBqVFc0dWM5cnh3cDk0WWNlTndVcU41SlVrZ2RqVlA1ZWNyV1ozcTcwdmFaQTFVcHVWMVk5SGwvMU9KODFQNklIRHk0MzZFNi9jSWR5SXRYZjZXdElGK0FuZEIwbHJvT3Frb29MYmpNUXlKc2phMXJodW5zTC9pM2M0a3J2NXhOd0ZneVh4ZDl0K3FuYTJTczhtSTBOZmFDeGlHSFk4VFlqUT09IiwibWFjIjoiNzhmNWM4OTFlOWU0MWY2ZWQ1MGQ0Y2I1MzI0ZTg0OTAyODE5NDhlYzJjMzQ4MDgxODU4MzU2MjBkYWY5YWViOSIsInRhZyI6IiJ9&r=1be63b&rt=9e71a9656397926edd28d9016f3321bb < Access-Control-Allow-Origin: *
<
{ [0 bytes data]
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
* Closing connection 0
* Clear auth, redirects to port from 80 to 8089
* Issue another request to this URL: '
http://38.84.24.33:8089/play/mpegts/eyJpdiI6Ii9LemgxeFBreFpsXRmNzL1d5T1RDa3lTR0VpOWpsaUJQOVB2aDZBQ2xaZzVOZzh1WWFGaEJibVQxR1hwZCs3S0gxUSIsIm1hYyI6ImI3MWVjNTRkM2NkNzcyNDE5MDdmMWIwZDQyNzkwYTg1Mjc5MDFlZGI5YWFlZTZiZWQ3NGMyMDM4YzEzMTZiM2QiLCJ0YWciOiIifQ==/e0ab3705-e3d3-4a96-a946-e0a40d309929.ts?lvtoken=eyJpdiI6Im1oQzFGVVpvMldaSDBrRWRWN3ZIWVE9PSIsInZhbHVlIjoiTEttWFJlM\mtVb0RoakE2QzVRRjNKc1dEd0ZrODBqVFc0dWM5cnh3cDk0WWNlTndVcU41SlVrZ2RqVlA1ZWNyV1ozcTcwdmFaQTFVcHVWMVk5SGwvMU9KODFQNklIRHk0MzZFNi9jSWR5SXRYZjZXdElGK0FuZEIwbHJvT3Frb29MYmpNUXlKc2phMXJodW5zTC9pM2M0a3J2NXhOd0ZneVh4ZDl0K3FuYTJTczhtSTBOZmFDeGlHSFk4VFlqUT09IiwibWFjIjoiNzhmNWM4OTFlOWU0MWY2ZWQ1MGQ0Y2I1MzI0ZTg0OTAyODE5NDhlYzJjMzQ4MDgxODU4MzU2MjBkYWY5YWViOSIsInRhZyI6IiJ9&r=1be63b&rt=9e71a9656397926edd28d9016f3321bb' * Trying 38.84.24.33:8089...
* Connected to 38.84.24.33 (38.84.24.33) port 8089 (#1)
> GET /play/mpegts/eyJpdiI6Ii9LemgxeFBreFpsXRmNzL1d5T1RDa3lTR0VpOWpsaUJQOVB2aDZBQ2xaZzVOZzh1WWFGaEJibVQxR1hwZCs3S0gxUSIsIm1hYyI6ImI3MWVjNTRkM2NkNzcyNDE5MDdmMWIwZDQyNzkwYTg1Mjc5MDFlZGI5YWFlZTZiZWQ3NGMyMDM4YzEzMTZiM2QiLCJ0YWciOiIifQ==/e0ab3705-e3d3-4a96-a946-e0a40d309929.ts?lvtoken=eyJpdiI6Im1oQzFGVVpvMldaSDBrRWRWN3ZIWVE9PSIsInZhbHVlIjoiTEttWFJlMmtVb0RoakE2QzVRRjNKc1dEd0ZrODBqVFc0dWM5cnh3cDk0WWNlTndVcU41SlVrZ2RqVlA1ZWNyV1ozcTcwdmFaQTFVcHVWMVk5SGwvMU9KODFQNklIRHk0MzZFNi9jSWR5SXRYZjZXdElGK0FuZEIwbHJvT3Frb29MYmpNUXlKc2phMXJodW5zTC9pM2M0a3J2NXhOd0ZneVh4ZDl0K3FuYTJTczhtSTBOZmFDeGlHSFk4VFlqUT09IiwibWFjIjoiNzhmNWM4OTFlOWU0MWY2ZWQ1MGQ0Y2I1MzI0ZTg0OTAyODE5NDhlYzJjMzQ4MDgxODU4MzU2MjBkYWY5YWViOSIsInRhZyI6IiJ9&r=1be63b&rt=9e71a9656397926edd28d9016f3321bb HTTP/1.1
> Host: 38.84.24.33:8089
> User-Agent: curl/7.82.0
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 200 OK
< Server: nginx/1.20.1
< Date: Thu, 20 Apr 2023 01:59:37 GMT
< Content-Type: video/mp2t
< Connection: close
< Access-Control-Allow-Origin: *
<
{ [3118 bytes data]
100 611k 0 611k 0 0 296k 0 --:--:-- 0:00:02 --:--:-- 528k^C
So I can see that there is a redirect, but MythBackend doesn’t seem to be following the redirect.
Is there some setting I don’t have correct (I’ve had this mythtv installation in various forms for probablt 10 years now. Juts keep moving the database from server to server as I update).
If someone can give me something to look at for why it isn’t following the redirect, I would appreciate it.
I am not running from rpms on Fedora 36, so I should be up to date.
Thanks
From: shredder83@gmail.com <shredder83@gmail.com>
Date: Sunday, April 16, 2023 at 6:10 PM
To: mythtv-users@mythtv.org <mythtv-users@mythtv.org>
Subject: Re: [mythtv-users] IPTV Recorder not following redirects
On Sat, 15 Apr 2023 17:24:16 -0700, you wrote:
On Sat, 2023-04-15 at 18:15 -0600,
shredder83@gmail.com wrote:
Hey everyone,
?
I am using a paid subscription for IPTV. Trying to get it to work
with Mythtv.
I am able to scan the channels and get program data.
When I go to play a channel, it times out.
?
If I do a wget to the URL that the tuner is trying to connect to
(From the mythtv log file), I get a 302 redirect. Wget does download
the mpeg stream no problem. I can play the downloaded file with VMC.
?
I thought that the newer versions of MythTV (I am running .33.1)
fixed this issue? Is that not the case?
?
Any help on getting MythTV to work through the redirect would be
grest.
?
Thanks.
i have always had to compile with the patch found at the end of this
thread: ?
http://email.mg.glenb.net/c/eJwkyk1uxCAMQOHTkF2RTbBhFixGlXIPMJ5JpPxUQEfq7bvI8ul9NckrV_KTJuSIDJ4pTGui8sASCiCCEw8YJWeNFCu6LLn6aUtMM7kQaI4ItZZCKEzCM0f1AoT6eGlgKFbyobvx8N71LPbUMe1pHeOnm_lp3GLcsm99dJubrNtHreRWrpPBynUYtxx_Yx0f45bfrq0btzBAQDbfzjxhm1q6wde9Pdxpr_b-DwAA__9Zm0MM am
using 33 fixes but i still use this because it works for me on the
redirects
I was also under the impression that redirects should work now - I
thought I saw something in the release notes about it for v31 or v32?
If you do not want to use that patch, then the other way to do IPTV
with redirects is to use an External Recorder:
https://www.mythtv.org/wiki/ExternalRecorder"]
https://www.mythtv.org/wiki/ExternalRecorder This would use curl, wget, ffmpeg, tsduck, vlc or some other such
software that allows you to do IPTV and provide a stream the can be
used in an external recorder.
There are various examples of how to do external recorders, some more
applicable to IPTV than others. Not all of them have been published -
I am fairly sure there are people who are using them for pay IPTV
where they have to do special authentication to make it work, for
example.
https://www.mythtv.org/wiki/Mythexternrecorder_v4l2_vlc"]
https://www.mythtv.org/wiki/Mythexternrecorder_v4l2_vlc https://github.com/garybuhrmaster/mythhdhrrecorder"]
https://github.com/garybuhrmaster/mythhdhrrecorder Thanks for the ideas. I am not set up to comile from source, so I wouldn’t be going that route if I can help.
I took a look through the External Recorders section. Looks like I’ll need to totally reformat my m3u file to have it work with those recorders. May look at that as a last ditch effort.
I’m going to try a few different settings in the IPTV recorder config to see if I can get it working. Hopefully there is some simple setting I don’t have set.
Thanks,.