[mythtv-commits] Ticket #13198: Mythdownloader not following redirects for some MythNetVision videos (i.e TedTalks)

MythTV noreply at mythtv.org
Sun Dec 31 14:49:50 UTC 2017


#13198: Mythdownloader not following redirects for some MythNetVision videos (i.e
TedTalks)
-------------------------------------+-------------------------------------
     Reporter:  warpme@…             |      Owner:
         Type:  Bug Report -         |     Status:  new
  General                            |
     Priority:  minor                |  Milestone:  needs_triage
    Component:  MythTV - General     |    Version:  Unspecified
     Severity:  medium               |   Keywords:  mythdownloader
Ticket locked:  0                    |  redirects
-------------------------------------+-------------------------------------
 Mythdownloader asked by MythNetVision not follows URL redirects. wget on
 such URL works OK.
 fe log looks like this:

 {{{
 2017-12-31 15:42:45.610543 D MythCoreContext::RegisterFileForWrite():
 /myth/tv1/13126_20171231140500.ts
 2017-12-31 15:42:49.895442 I TV::TV(): Creating TV object
 2017-12-31 15:42:50.069770 N Suspending idle timer
 2017-12-31 15:42:50.073431 I TV::Init(): Created TvPlayWindow.
 2017-12-31 15:42:50.127950 I TV::HandleStateChange(): Attempting to change
 from None to WatchingVideo
 2017-12-31 15:42:50.745039 I
 StreamRingBuf(http://download.ted.com/talks/SteveSilberman_2015-480p.mp4?apikey=172BB350-0206):
 Trying
 http://download.ted.com/talks/SteveSilberman_2015-480p.mp4?apikey=172BB350-0206
 (allow seeks: 0
 2017-12-31 15:42:50.745059 E
 StreamRingBuf(http://download.ted.com/talks/SteveSilberman_2015-480p.mp4?apikey=172BB350-0206):
 Failed to open stream (error -1330794744)
 2017-12-31 15:42:50.747520 I TV::HandleStateChange(): Main UI disabled.
 }}}

 asking curl -v on URL shows:

 {{{
 curl -v
 "http://download.ted.com/talks/SteveSilberman_2015-480p.mp4?apikey=172BB350-0206"
 *   Trying 54.166.88.39...
 * Connected to download.ted.com (54.166.88.39) port 80 (#0)
 > GET /talks/SteveSilberman_2015-480p.mp4?apikey=172BB350-0206 HTTP/1.1
 > Host: download.ted.com
 > User-Agent: curl/7.47.1
 > Accept: */*
 >
 < HTTP/1.1 302 Moved Temporarily
 < Server: nginx
 < Date: Sun, 31 Dec 2017 11:27:19 GMT
 < Content-Type: text/html
 < Transfer-Encoding: chunked
 < Connection: keep-alive
 < X-Cache: HIT
 < Location:
 https://pc.tedcdn.com/talk/podcast/2015/None/SteveSilberman_2015-480p.mp4
 < Access-Control-Allow-Origin: *
 <
 * Connection #0 to host download.ted.com left intact
 <p>Moved Temporarily. Redirecting to <a
 href="https://pc.tedcdn.com/talk/podcast/2015/None/SteveSilberman_2015-480p.mp4">https://pc.tedcdn.com/talk/podcast/2015/None/SteveSilberman_2015-480p.mp4</a></p>
 }}}

 curl on redirected URL works OK:

 {{{
 curl -v
 "https://pc.tedcdn.com/talk/podcast/2015/None/SteveSilberman_2015-480p.mp4"
 > /tmp/test.mp4
   % 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 151.101.2.109...
 * Connected to pc.tedcdn.com (151.101.2.109) port 443 (#0)
 * ALPN, offering http/1.1
 * Cipher selection:
 ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
 * successfully set certificate verify locations:
 *   CAfile: /etc/ssl/certs/ca-certificates.crt
   CApath: none
 * TLSv1.2 (OUT), TLS header, Certificate Status (22):
 } [5 bytes data]
 * TLSv1.2 (OUT), TLS handshake, Client hello (1):
 } [512 bytes data]
 * TLSv1.2 (IN), TLS handshake, Server hello (2):
 { [108 bytes data]
 * TLSv1.2 (IN), TLS handshake, Certificate (11):
 { [5286 bytes data]
 * TLSv1.2 (IN), TLS handshake, Server key exchange (12):
 { [333 bytes data]
 * TLSv1.2 (IN), TLS handshake, Server finished (14):
 { [4 bytes data]
 * TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
 } [70 bytes data]
 * TLSv1.2 (OUT), TLS change cipher, Client hello (1):
 } [1 bytes data]
 * TLSv1.2 (OUT), TLS handshake, Finished (20):
 } [16 bytes data]
 * TLSv1.2 (IN), TLS change cipher, Client hello (1):
 { [1 bytes data]
 * TLSv1.2 (IN), TLS handshake, Finished (20):
 { [16 bytes data]
 * SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256
 * ALPN, server accepted to use http/1.1
 * Server certificate:
 *        subject: C=US; ST=California; L=San Francisco; O=Fastly, Inc.;
 CN=f3.shared.global.fastly.net
 *        start date: Dec 12 15:09:11 2017 GMT
 *        expire date: May  4 17:43:40 2018 GMT
 *        subjectAltName: pc.tedcdn.com matched
 *        issuer: C=BE; O=GlobalSign nv-sa; CN=GlobalSign CloudSSL CA -
 SHA256 - G3
 *        SSL certificate verify ok.
 } [5 bytes data]
 > GET /talk/podcast/2015/None/SteveSilberman_2015-480p.mp4 HTTP/1.1
 > Host: pc.tedcdn.com
 > User-Agent: curl/7.47.1
 > Accept: */*
 >
 { [5 bytes data]
 < HTTP/1.1 200 OK
 < x-amz-id-2:
 NF7Tj/mv8iJo1WnUQebMQFjasaQ5FzyW9omv44KH2npP0XE780ZQby669pVYaDM1E6Q+OhtamnI=
 < x-amz-request-id: C80B095692F461D2
 < Last-Modified: Thu, 20 Jul 2017 15:18:43 GMT
 < ETag: "0dc3cb51dd4e95cf97da29c031c1fe79"
 < x-amz-meta-md5: DcPLUd1Olc+X2inAMcH+eQ==
 < Cache-Control: public, max-age=31536000
 < Content-Type: video/mp4
 < Server: AmazonS3
 < Via: 1.1 varnish
 < Fastly-Debug-Digest:
 400459d19d58b644c422f3970adbcce72059a22b500fe3592b24f3973d493e5e
 < Access-Control-Allow-Headers: Range
 < Access-Control-Allow-Methods: GET
 < Access-Control-Allow-Origin: *
 < Access-Control-Max-Age: 86400
 < Content-Length: 99002211
 < Accept-Ranges: bytes
 < Date: Sun, 31 Dec 2017 11:28:54 GMT
 < Via: 1.1 varnish
 < Connection: keep-alive
 < X-Served-By: cache-dca17738-DCA, cache-hhn1540-HHN
 < X-Cache: MISS, HIT
 < X-Cache-Hits: 0, 0
 <
 { [1941 bytes data]
 100 94.4M  100 94.4M    0     0  17.2M      0  0:00:05  0:00:05 --:--:--
 19.6M
 * Connection #0 to host pc.tedcdn.com left intact
 }}}

 wget on original URL follows redirect OK:


 {{{
 wget -v
 "http://download.ted.com/talks/SteveSilberman_2015-480p.mp4?apikey=172BB350-0206"
 --2017-12-31 15:37:51--
 http://download.ted.com/talks/SteveSilberman_2015-480p.mp4?apikey=172BB350-0206
 Resolving download.ted.com (download.ted.com)... 54.166.88.39
 Connecting to download.ted.com (download.ted.com)|54.166.88.39|:80...
 connected.
 HTTP request sent, awaiting response... 302 Moved Temporarily
 Location:
 https://pc.tedcdn.com/talk/podcast/2015/None/SteveSilberman_2015-480p.mp4
 [following]
 --2017-12-31 15:37:52--
 https://pc.tedcdn.com/talk/podcast/2015/None/SteveSilberman_2015-480p.mp4
 Resolving pc.tedcdn.com (pc.tedcdn.com)... 151.101.2.109, 151.101.66.109,
 151.101.130.109, ...
 Connecting to pc.tedcdn.com (pc.tedcdn.com)|151.101.2.109|:443...
 connected.
 HTTP request sent, awaiting response... 200 OK
 Length: 99002211 (94M) [video/mp4]
 Saving to: ‘SteveSilberman_2015-480p.mp4?apikey=172BB350-0206’

 SteveSilberman_2015-480p.mp4?apikey=172
 100%[=================================================================================>]
 94.42M  28.9MB/s   in 3.5s

 2017-12-31 15:37:56 (27.2 MB/s) -
 ‘SteveSilberman_2015-480p.mp4?apikey=172BB350-0206’ saved
 [99002211/99002211]
 }}}

--
Ticket URL: <https://code.mythtv.org/trac/ticket/13198>
MythTV <http://www.mythtv.org>
MythTV Media Center


More information about the mythtv-commits mailing list