GetiPlayerAutomator / get-iplayer-automator

Moved to https://github.com/Ascoware/get-iplayer-automator! The goal of Get iPlayer Automator is to allow iTunes and your Mac to become the hub for your British Television experience regardless of where in the world you are. Currently, Get iPlayer Automator allows you to download and watch BBC and ITV shows on your Mac. Series-Link/PVR functionality ensures you will never miss your favourite shows. Programmes are fully tagged and added to iTunes automatically upon completion. It is simple and easy to use, and runs on any machine running Mac OS X 10.7 or later. And since the shows are in iTunes, it is extremely easy to transfer them to your iPod, iPhone, or Apple TV allowing you to enjoy your shows on the go or on your television.
https://github.com/Ascoware/get-iplayer-automator
GNU General Public License v3.0
127 stars 54 forks source link

Series-link to Queue erroneously adds shows to record not in the series link list. #325

Closed willson556 closed 10 years ago

willson556 commented 10 years ago

From tobyr...@gmail.com on January 08, 2014 08:44:25

What steps will reproduce the problem? 1. I have seen this twice. I activate getiplayerautomator using an automator script triggered by ical over night. Twice I have found it in the morning trying to download the entire program cache. 2. 3. What is the expected output? What do you see instead? Any new episodes of series link searches to be queued and recorded. Instead I see the whole program cache (152 programs) added and trying to download them. What version of the product are you using? On what operating system? 1.5.9 (620) on OSX 10.7.5 (cant upgrade further as system wont support 10.8 or 10.9) Please provide any additional information below. I attach the log from the session with 2 screen shots embedded.

Attachment: TXT.rtf Pasted Graphic.tiff Pasted Graphic 1.tiff

Original issue: http://code.google.com/p/get-iplayer-automator/issues/detail?id=333

willson556 commented 10 years ago

From tobyr...@gmail.com on January 08, 2014 03:09:44

Just for reference I checked and do have quick caching enabled already. Have forced a cache update and will monitor.

willson556 commented 10 years ago

From dinkypumpkin on January 08, 2014 04:06:31

Unfortunately, it looks like it is also possible to encounter this problem in a different way. If a quick cache update fails for a given programme type, GiA will retry by assembling the cache directly from the iPlayer site. It is the output from those retries that breaks adding series-link entries to the queue. Your output shows a lot of connection failures when attempting to access the iPlayer site, so maybe upstream connectivity problems are affecting quick caching as well.. Note that you can also encounter this problem when manually adding series-link entries to the queue. It boils down to this: GiA needs to complete a cache update immediately before adding series-link entries to the queue to make sure that it captures all available episodes. If the cache is stale, an update is automatically triggered when adding series-link entries to the queue. That update appears to be unreliable in your case, even with quick caching enabled, and the problem is compounded by a bug in GiA. For now, I can only suggest you download manually until a fixed build is available.

Summary: Series-link to Queue erroneously adds shows to record not in the series link list. (was: Series-link to Queue eroniously adds shows to record not in the series link list.)

willson556 commented 10 years ago

From tobyr...@gmail.com on January 08, 2014 06:11:55

Thanks - The explanation helps. My ical event kicks off in the night (to use over night bandwidth) but the Mac is asleep. When it wakes (for whatever reason), the update kicks off immediately, but the network may not be ready, hence the failures. GOod news is I can probably change my automator script to check for connectivity before I do the update…

Much appreciated.

willson556 commented 10 years ago

From dinkypumpkin on January 08, 2014 11:34:40

Fixed in 1.6.0-pre.2. Give it a spin with your setup and report back.

Status: Fixed

willson556 commented 10 years ago

From tobyr...@gmail.com on January 09, 2014 00:36:04

Hi Dinky, tried the 1.6.0 release last night. Dont seem to have the issue with auto populating from series link, but downloading is broken. Key lines from the log seems to be.

WARNING: Your version of rtmpdump/flvstreamer does not support SWF Verification INFO: /Applications/Get iPlayer Automator.app/Contents/Resources/rtmpdump-2.4 version INFO: RTMP_URL: rtmp://iplayertokfs.fplive.net:1935/ondemand?_fcs_vhost=iplayertokfs.fplive.net&auth=token=c3RhcnRfdGltZT0yMDE0MDEwOTA2MTQ1MCZlbmRfdGltZT0yMDE0MDEwOTEwMTQ1MCZkaWdlc3Q9MDcxNTRmZDEyMmYwYzA0ZDE3NzdmNTY0ZjIwMmE4YTU=&aifp=v001&slist=mp4:3200kbps/modav/bUnknown-d158dda0-e244-454e-bce5-06bc13ced30b_b03pd8pn_1389025532435, tcUrl: rtmp://iplayertokfs.fplive.net:1935/iplayertok?token=c3RhcnRfdGltZT0yMDE0MDEwOTA2MTQ1MCZlbmRfdGltZT0yMDE0MDEwOTEwMTQ1MCZkaWdlc3Q9MDcxNTRmZDEyMmYwYzA0ZDE3NzdmNTY0ZjIwMmE4YTU=, application: iplayertok?token=c3RhcnRfdGltZT0yMDE0MDEwOTA2MTQ1MCZlbmRfdGltZT0yMDE0MDEwOTEwMTQ1MCZkaWdlc3Q9MDcxNTRmZDEyMmYwYzA0ZDE3NzdmNTY0ZjIwMmE4YTU=, authString: token=c3RhcnRfdGltZT0yMDE0MDEwOTA2MTQ1MCZlbmRfdGltZT0yMDE0MDEwOTEwMTQ1MCZkaWdlc3Q9MDcxNTRmZDEyMmYwYzA0ZDE3NzdmNTY0ZjIwMmE4YTU=, swfUrl: http://www.bbc.co.uk/emp/releases/iplayer/revisions/617463_618125_4/617463_618125_4_emp.swf , file: /Volumes/alex laptop backup/Movies/Father Brown/Father Brown.s02e03.The Pride of the Prydes.partial.mp4, file_done: /Volumes/alex laptop backup/Movies/Father Brown/Father Brown.s02e03.The Pride of the Prydes.mp4 WARNING: rtmpdump/flvstreamer 1.8 or later is required - please upgrade

I rolled back to 1.5.9 and retried and the download is successful. Following comparable lines of log.

INFO: /Applications/Get iPlayer Automator (620).app/Contents/Resources/rtmpdump-2.4 version 2.4 INFO: RTMP_URL: rtmp://iplayertokfs.fplive.net:1935/ondemand?_fcs_vhost=iplayertokfs.fplive.net&auth=token=c3RhcnRfdGltZT0yMDE0MDEwOTA2MzEyMyZlbmRfdGltZT0yMDE0MDEwOTEwMzEyMyZkaWdlc3Q9YjQyOWYxZTlmZDRhNjRlZWZjYmZmOTVlNWExMDQ0NmQ=&aifp=v001&slist=mp4:3200kbps/modav/bUnknown-d158dda0-e244-454e-bce5-06bc13ced30b_b03pd8pn_1389025532435, tcUrl: rtmp://iplayertokfs.fplive.net:1935/iplayertok?token=c3RhcnRfdGltZT0yMDE0MDEwOTA2MzEyMyZlbmRfdGltZT0yMDE0MDEwOTEwMzEyMyZkaWdlc3Q9YjQyOWYxZTlmZDRhNjRlZWZjYmZmOTVlNWExMDQ0NmQ=, application: iplayertok?token=c3RhcnRfdGltZT0yMDE0MDEwOTA2MzEyMyZlbmRfdGltZT0yMDE0MDEwOTEwMzEyMyZkaWdlc3Q9YjQyOWYxZTlmZDRhNjRlZWZjYmZmOTVlNWExMDQ0NmQ=, authString: token=c3RhcnRfdGltZT0yMDE0MDEwOTA2MzEyMyZlbmRfdGltZT0yMDE0MDEwOTEwMzEyMyZkaWdlc3Q9YjQyOWYxZTlmZDRhNjRlZWZjYmZmOTVlNWExMDQ0NmQ=, swfUrl: http://www.bbc.co.uk/emp/releases/iplayer/revisions/617463_618125_4/617463_618125_4_emp.swf , file: /Volumes/alex laptop backup/Movies/Father Brown/Father Brown.s02e03.The Pride of the Prydes.partial.mp4, file_done: /Volumes/alex laptop backup/Movies/Father Brown/Father Brown.s02e03.The Pride of the Prydes.mp4 INFO: Command: "/Applications/Get iPlayer Automator (620).app/Contents/Resources/rtmpdump-2.4" "--port" "1935" "--protocol" "0" "--playpath" "mp4:3200kbps/modav/bUnknown-d158dda0-e244-454e-bce5-06bc13ced30b_b03pd8pn_1389025532435" "--host" "iplayertokfs.fplive.net" "--swfVfy" " http://www.bbc.co.uk/emp/releases/iplayer/revisions/617463_618125_4/617463_618125_4_emp.swf " "--tcUrl" "rtmp://iplayertokfs.fplive.net:1935/iplayertok?token=c3RhcnRfdGltZT0yMDE0MDEwOTA2MzEyMyZlbmRfdGltZT0yMDE0MDEwOTEwMzEyMyZkaWdlc3Q9YjQyOWYxZTlmZDRhNjRlZWZjYmZmOTVlNWExMDQ0NmQ=" "--app" "iplayertok?token=c3RhcnRfdGltZT0yMDE0MDEwOTA2MzEyMyZlbmRfdGltZT0yMDE0MDEwOTEwMzEyMyZkaWdlc3Q9YjQyOWYxZTlmZDRhNjRlZWZjYmZmOTVlNWExMDQ0NmQ=" "--pageUrl" " http://www.bbc.co.uk/iplayer/episode/b03phbrg/Father_Brown_Series_2_The_Pride_of_the_Prydes/ " "--resume" "-o" "/Volumes/alex laptop backup/Movies/Father Brown/Father Brown.s02e03.The Pride of the Prydes.partial.mp4.flv" "--timeout" "10" "--verbose" RTMPDump 2.4 (c) 2010 Andrej Stepanchuk, Howard Chu, The Flvstreamer Team; license: GPL DEBUG: Protocol : RTMP DEBUG: Hostname : iplayertokfs.fplive.net DEBUG: Port : 1935 DEBUG: Playpath : mp4:3200kbps/modav/bUnknown-d158dda0-e244-454e-bce5-06bc13ced30b_b03pd8pn_1389025532435 DEBUG: tcUrl : rtmp://iplayertokfs.fplive.net:1935/iplayertok?token=c3RhcnRfdGltZT0yMDE0MDEwOTA2MzEyMyZlbmRfdGltZT0yMDE0MDEwOTEwMzEyMyZkaWdlc3Q9YjQyOWYxZTlmZDRhNjRlZWZjYmZmOTVlNWExMDQ0NmQ= DEBUG: swfUrl : http://www.bbc.co.uk/emp/releases/iplayer/revisions/617463_618125_4/617463_618125_4_emp.swf DEBUG: pageUrl : http://www.bbc.co.uk/iplayer/episode/b03phbrg/Father_Brown_Series_2_The_Pride_of_the_Prydes/ DEBUG: app : iplayertok?token=c3RhcnRfdGltZT0yMDE0MDEwOTA2MzEyMyZlbmRfdGltZT0yMDE0MDEwOTEwMzEyMyZkaWdlc3Q9YjQyOWYxZTlmZDRhNjRlZWZjYmZmOTVlNWExMDQ0NmQ= DEBUG: live : no DEBUG: timeout : 10 sec DEBUG: SWFSHA256: DEBUG: b6 74 7f 89 f9 ec 6a 60 c1 a4 b5 8b b1 18 b0 fa DEBUG: 65 18 86 24 c2 8a 1a a3 2f 72 0f 0b 80 59 dd 7f DEBUG: SWFSize : 595316 DEBUG: Setting buffer time to: 36000000ms Connecting ...

willson556 commented 10 years ago

From dinkypumpkin on January 09, 2014 03:53:12

Is that error message via iCal or from an ad hoc download? That's an entirely different problem, and one that I can't duplicate. Something is wrong with your installation, but you'll have to do a bit of spelunking to help me diagnose. If you haven't already, go ahead and download 1.6.0 final, which Thomas released this morning UK time. Assuming you have it installed in /Appplications, back up and then open this file in a text editor:

/Applications/Get iPlayer Automator.app/Contents/Resources/get_iplayer.pl

Find this line:

my $rtmpver = "$bin->{rtmpdump}" --help 2>&1;

And add these lines immediately after it:

if ( $opt->{verbose} ) { (my $rtmpver_log = $rtmpver) =~ s/^/INFO: /gm; main::logger "INFO: rtmpver:\n$rtmpver_log"; }

and save the file. The purpose of this is to capture and print any rtmpdump error message that may be generated. Once that change is in place, make sure Verbose is selected in preferences and then try a single download. Use something short like an episode of the Shipping Forecast. Assuming it fails, send the full log as an attachment to your reply.

willson556 commented 10 years ago

From tobyr...@gmail.com on January 09, 2014 06:54:02

Hi Dinky,

That was ad hock and was using the new public release.

I tried another ad hock download of the shipping forecast as suggested and it still fails. It works just fine on another Mac of mine (10.8.5)

Made the changes to the perl script and attached the verbose debug here

willson556 commented 10 years ago

From dinkypumpkin on January 09, 2014 07:03:15

So you're saying the same build (1.6.0) works on a 10.8 machine but not on a 10.9 machine?

It looks like the attachment went walkabout.

willson556 commented 10 years ago

From dinkypumpkin on January 09, 2014 07:05:20

I meant 10.7, not 10.9.

willson556 commented 10 years ago

From tobyr...@gmail.com on January 09, 2014 07:09:33

Correct 10.7 fails. 10.8 and 10.9 both work fine (I just verified).

Of course it could be less related to 10.7 and more related to the hardware. My 10.7 is core2duo based. The 10.8 and 10.9 are I7 based. I have a core2duo running 10.9 that I can test on too.

willson556 commented 10 years ago

From dinkypumpkin on January 09, 2014 07:15:31

Attach your log so I can see what error was generated on your 10.7 machine.

willson556 commented 10 years ago

From tobyr...@gmail.com on January 09, 2014 07:57:15

Attached, but it doesn't show much more than was in message 9 which I now see was truncated DOH!

Here is what I originally wrote…

Looks like the version of RTMPdump is crashing on my mac.

sh: line 1: 10976 Segmentation fault: 11 "/Applications/Get iPlayer Automator.app/Contents/Resources/rtmpdump-2.4" --help 2>&1 INFO: rtmpver:

I opened a shell and tried to run the rtmpdump-2.4 app there with the following result.

toby-rees-computer:Resources tobyrees$ ./rtmpdump-2.4 --help Illegal instruction: 4

Just out of interest I compared rtmp-dump in this version with the 1.5.9 version and they are a totally different size (38k vs 87k). The 1.6.0 is truncated?

running the 1.5.9 included version gives

toby-rees-computer:Resources tobyrees$ ./rtmpdump-2.4 dyld: Library not loaded: /usr/local/lib/librtmp.dylib Referenced from: /Users/tobyrees/Desktop/Get iPlayer Automator (620).app/Contents/Resources/./rtmpdump-2.4 Reason: image not found Trace/BPT trap: 5 toby-rees-computer:Resources tobyrees$

I copied the old version into the content of the new downloader and re-tested. It failed again, this time with the error INFO: dyld: Library not loaded: /usr/local/lib/librtmp.dylib INFO: Referenced from: /Applications/Get iPlayer Automator.app/Contents/Resources/rtmpdump-2.4 INFO: Reason: image not found

Comparing 1.5.9 and 1.6.0 againI find librtmp.dylib (316K) and librtmp.1.dylib (133k)

Copying that library accross - the download is now working...

It looks like new version of rtmpdump is not working on my mac mini (its a core2duo running Lion). Could this be a 32bit vs 64bit issue or is there some other major change to the version of rtmpdump in use?

Let me know if I can perform further debug.

Attachment: getiplayer debug log.txt

willson556 commented 10 years ago

From dinkypumpkin on January 09, 2014 08:14:51

Confirmed. I just wanted to make sure you got the same error. The new version of rtmpdump Thomas added in 1.6.0 is broken on 10.7. I suspect whoever built it did so on a newer version of OSX, which can lead to such problems. I'll make a Lion-ready version of rtmpdump and put out a new GiA build. In the meantime, you can try this:

Back up and delete these files:

"/Applications/Get iPlayer Automator.app/Contents/Resources/librtmp.1.dylib" "/Applications/Get iPlayer Automator.app/Contents/Resources/rtmpdump-2.4"

Download this archive, which contains a working rtmpdump: http://sourceforge.net/projects/get-iplayer/files/osx/utils/x86_64/20130714/get_iplayer-osx-utils-x86_64-20130714.zip Take the "rtmpdump" file from the archive, rename it to "rtmpdump-2.4" and copy it to:

"/Applications/Get iPlayer Automator.app/Contents/Resources"

(assuming GiA installed in /Applications)

Thanks for the testing.

willson556 commented 10 years ago

From tobyr...@gmail.com on January 09, 2014 09:08:18

That worked just fine too. I attached the log for interest.

Attachment: getiplayer debug log -fixed.txt

willson556 commented 10 years ago

From dinkypumpkin on January 09, 2014 12:08:22

Just to wrap up, try 1.6.1-pre.1 on your 10.7 system.

willson556 commented 10 years ago

From tobyr...@gmail.com on January 09, 2014 12:50:24

Hi Dinky,

This seems to work fine.

Tobes

Attachment: getiplayer debug log 1.6.1 pre.txt

willson556 commented 10 years ago

From dinkypumpkin on January 09, 2014 13:23:52

Good. Thanks again for your assistance.