Mar 10 2010

The events of the past two weeks (here, here, here, here and here) have clarified the BBC’s stance on allowing interoperability with open-source iPlayer clients. I have therefore decided to withdraw get_iplayer with immediate effect.

Ian Hunter’s post (Managing Editor, BBC Online) provided very clear guidance on the way the BBC feels about open-source applications accessing iPlayer streams. I have no desire act against the BBC’s wishes in this respect.

The BBC iPlayer is built on many open-source products and yet, in this case, they have failed to let open-source clients access the very same service. The BBC have clearly not followed the spirit of open-source here.

From the outset, exactly 2 years ago when I developed get_iplayer, my intentions have been to never harm the BBC but to just provide a convenient way for me to watch iPlayer programmes on my TV with the hardware that I own. However, the BBC clearly considers such methods to be somehow detrimental to their service and therefore with great regret I have decided to cease development.

I sincerely hope that, in the future, the BBC will make steps to support open source given that they have gained so much from it.

272 Comments

  • On May 26th, 2010, Roadcone said:

    I’m running Vista 32.

    I carried out the modification by editing the .pl and continued to get an error message that the flashaacstd1 could not be downloaded and is being skipped. I downloaded the file:

    get_iplayer-eff7251.tar.gz\get_iplayer-eff7251 – TAR+GZIP archive, unpacked size 668,024 bytes

    and replaced the .pl and .cgi files in my windows program folder with the two from the above zip. When I run the command:

    get_iplayer 13162 –get –mode=flashaacstd

    I get the following text:

    get_iplayer v2.66, Copyright (C) 2008-2010 Phil Lewis
    This program comes with ABSOLUTELY NO WARRANTY; for details use –warranty.
    This is free software, and you are welcome to redistribute it under certain
    conditions; use –conditions for details.

    Matches:
    13162: Woman’s Hour Drama – The Private Patient: Episode 1, BBC Radio 4, Crime,Drama,Radio

    INFO: 1 Matching Programmes
    INFO: Checking existence of default version
    INFO: flashaacstd1 modes will be tried for version default
    INFO: Trying flashaacstd1 mode to record radio: Woman’s Hour Drama – The Private Patient: Episode 1

    INFO: File name prefix = Womans_Hour_Drama_-_The_Private_Patient_Episode_1_b00sfj0n_default
    INFO: Command exit code 1 (raw code = 256)
    WARNING: Failed to stream file c:\Users\clive\Downloads\Awaiting Transfer\Spoken Word/Womans_Hour_Drama_-_The_Private_Patient_Episode_1_b00sfj0n_default.partial.aac.flv via RTMP
    INFO: skipping flashaacstd1 mode
    ERROR: Failed to record ‘Woman’s Hour Drama – The Private Patient: Episode 1 (b00sfj0n)’

    The version is reporting 2.66 not what you guys have linked me to but if I open my .pl file, I find the following:

    package main;
    my $version = 2.76;

    I’d be really grateful if you could help me out here.

    Many thanks.

    Clive

    • On May 27th, 2010, Andy said:

      Spot on, worked for me too – thanks for the update!

      • On May 28th, 2010, Elena said:

        Hi,
        Can someone please post the line of code I’m supposed to type in if I just want to download one BBC programme with its b00 code number. I never expected the instructions to disappear.

        Or if somebody could post a link to the full page of instructions on a forum somewhere that would be magic!

        • On May 29th, 2010, Roadcone said:

          I could not get my get_iplayer to work even with the mods to the .pl and by taking a more recent .pl from a link above.

          In renamed my folder get_iplayer OLD and put a copy from another computer into the folder get_iplayer. Now, oddly, when I run it, it fails, reporting v2.66. If I rename the folder to (say get_iplayer_) underscore at the end, it runs, to downloads and it reports v2.77.

          Can anyone enlighten me please?

          Yours – Mystified of the Midlands

          • On May 30th, 2010, linuxcentre said:

            LOL! You must be using windows :-) UAC is your problem.

            • On May 30th, 2010, Roadcone said:

              You’re right, I am, and you’re right, it is. I switched off UAC and renamed the folder to the default get_iplayer – and it works fine, no problems. I turn UAC back on and it fails. I rename the default folder by adding an underscore at the end (get_iplayer_) and it works again.

              OK – anyone know how I make it such that it works fine when it is in the default folder please? Anyone? Mmmm?

              Clive

          • On May 31st, 2010, Rob said:

            Worked a treat for me, too, thanks for the work guys. I guess inevitably it will be killed off completely soon. I have to hope that if they’re monitoring this then they don’t care about the few people that go to the lengths of replacing lines of code.

            • On May 31st, 2010, braindead said:

              Hello
              can anyone tell me the actual ffmpeg commands get_iplayer uses to encode to mp4, I found this in the code
              # Convert video flv to mp4/avi if required
              } else {
              @cmd = (
              $bin->{ffmpeg},
              ‘-i’, $file_tmp,
              ‘-vcodec’, ‘copy’,
              ‘-acodec’, ‘copy’,
              ‘-f’, $prog->{ext},
              ‘-y’, $prog->{filepart},
              the -f is force format, I’ll do some tests in the meantime

              • On May 31st, 2010, braindead said:

                ok managed to answer my own question, here’s the command ffmpeg -i ~/tv/Our_World-Front_Line_Helmand.mov -vcodec copy -acodec copy -f mp4 ~/tv/frontline.mp4
                as you can see it also works for ipod/mov versions so can watch on my telly via ps3 again (like I used to before sony removed linux)

              • On June 1st, 2010, Steve said:

                I’ve been using v2.76 in Debian and getting nowhere. I just upgraded to v2.78 after reading this thread and everything’s moving again. Woo hoo!

                • On June 1st, 2010, axisofevil said:

                  Me too!
                  Tried the BBC official download on the BBC website (on a M$ PC).
                  Ran like treacle.
                  Just have to uninstall it now.

                  • On June 1st, 2010, Coup said:

                    Hi,

                    It would be great to find an answer to this if anyone can help. I have used the v4 installer on windows and unfortunately I am still getting the “WARNING: Please download and run latest installer or install the XML::Simple perl module to use the Series and Brand pid parsing functionality” error.

                    Looking in the get_iplayer folder it looks like there is Perl 5.10.1.2 in there. I have researched on the web and it seems I need Strawbwrry Perl 5.12.0.1 which includes the XML::Simple module.

                    What I don’t know is how to install this later version. Do I just run the msi? Where do I install it? How does get_iplyer know that I have installed a later version?

                    Many thanks for any advice.

                    • On June 1st, 2010, linuxcentre said:

                      Hi Peter, Maybe your employer would rather you used their own official iPlayer downloader ;-) get_iplayer is no longer supported here. That downloader is from some other site. It clearly isn’t working quite right yet. Maybe have a google around….

                    • On June 1st, 2010, linuxcentre said:

                      LOL! I think the fork maintainers might actually see this as a complement – i.e. that they are so young ;-)

                      • On June 1st, 2010, mkfs said:

                        Well, compliment or not, I find it difficult to trust somebody that starts the fork with ‘get_iplayer is a tangled mess, I’m going to refactor it!’ followed by a series of rollbacks to the original source since the changes aren’t really working.

                        I believe that any fork (to be successful) needs to carry a degree of momentum. Criticising previous author is a way of deflecting that momentum. ;)

                        This opinion of course applies to a small part of timespace and I’m happy to eat my hat once the situation improves. :)

                        PS. This capcha is a pain. :P

                        • On June 1st, 2010, linuxcentre said:

                          I see your point. Checkout the infradead.org fork… Anyway, all developers have the urge to rewrite a piece of code when they first see it – almost always not a good idea (i.e. reinventing the wheel, going over old same ground with bugs etc) but quite a natural first response I find.. Yes, code has 2 or 3 globals but I think that is it and then code could be split up with a few hrs refactoring if you really wanted it split up…

                          • On June 1st, 2010, mkfs said:

                            re: infradead

                            Thanks for that! :D

                            That looks like a sensible fork :)

                      • On June 1st, 2010, keswick said:

                        Hi what and where do i put this code?

                        kind regards

                        ffmpeg -i ~/tv/Our_World-Front_Line_Helmand.mov -vcodec copy -acodec copy -f mp4 ~/tv/frontline.mp4

                        • On June 1st, 2010, braindead said:

                          Hello
                          I was just trying to figure out what ffmpeg command is used by get_iplayer to convert .flv files (the video format flash uses) to .mp4, so I could use my ps3 to watch get_iplayer recordings on my tv.
                          ffmpeg is an audio/video converter, that above command goes in a command line terminal and will convert .flv or .mov files to mp4.
                          If you’re using windows read this http://ffmpeg.arrozcru.org/wiki/index.php?title=Main_Page there are some gui front ends available just have a google, unfortunately this is no help to the problem you’re having a few posts up, hopefully a helpful windows user will steer you towards a solution, as a helpful linux user I can suggest installing a linux distro beside windows and using get_iplayer in that

                          • On June 5th, 2010, thekernel said:

                            ffmpeg -i inputfile.flv -vcodec copy -acodec copy -f mp4 -y outfile.mp4

                        • On June 1st, 2010, alan said:

                          Now that realaudio is gone only wma is available outside uk. Is there a way to have wma automatically transcoded to mp3?

                          • On June 2nd, 2010, linuxcentre said:

                            I think flashaaclow worked and probably still does outside of the UK on the infradead.org fork.

                            • On June 3rd, 2010, alan said:

                              Yes thanks, I see that now – it looks like wma is the only available mode but get_iplayer converts this to aac. But my portable player doesn’t do aac so I’ll have to convert after the download. I wonder why get_iplayer was designed to convert real to mp3 but wma to aac?

                              • On June 3rd, 2010, linuxcentre said:

                                It does not convert wma to aac. It uses the flash streams which are native aac/mp4a. Hmm, maybe it converts real to mp3 because real format is a streaming format. If it doesn’t work for you then this clearly is not the place to get support. This is just a comment thread on how support has been dropped.

                          • On June 2nd, 2010, keswick said:

                            braindead:

                            Thank you for that, but I’m a bit of a novice and i’m using windows. I just want to know how to convert .mov’s so I could use my ps3 to watch get_iplayer recordings on my tv.

                            Cheers for the help

                            • On June 5th, 2010, JohnC said:

                              You need a program to change (transcode) video formats. The best IMHO is FFMpeg which can transcode almost anything into anything. ‘flv’ and ‘mp4′ wrap (or bind) an audio and video stream together. FFMpeg unwraps and can then change the audio and video streams (codecs) before rewrapping them into the required format for whatever you want. You just need to Google around to learn a bit about this stuff.

                              FFMpeg can also be used to crop the extra 12 lines that the BBC puts on their flash streams (to break XBMC and AppleTV) to convert 640×372 (flashhigh) back to the standard 640×360.

                              Now if somebody could get get-iplayer to do that automatically…….

                              Definitely worthwhile!

                              • On June 5th, 2010, Thomas Willson said:

                                There isn’t a way of cropping the 12 lines without re-encoding the whole thing is there?

                            • On June 3rd, 2010, Richard said:

                              Nice work!

                              • On June 6th, 2010, JohnC said:

                                Not that I’m aware of. That’s why it would be good to integrate the process in get_iplayers flv to mp4 conversion step.
                                That said, you can batch the process for FFMpeg using WinFF so that it chugs away in the background. The other workaround is to use VLC to crop as it plays but I haven’t seen a way of getting VLC to do that as a ‘preset’.

                                • On June 6th, 2010, linuxcentre said:

                                  Integrating it into get_iplayer’s conversion between flv->mp4 wouldn’t make things much faster. That is just a simple demux – i.e. just changes the container format – not transcoding the video. To remove lines AFAIK you HAVE to transcode thus losing some quality, using a lot of CPU cycles and generally taking a long time.

                                  • On June 7th, 2010, David Woodhouse said:

                                    It would be quite useful to have an optional generic transcode stage which happens _after_ the download (not during it, as in the case of the RTMP streamer for the flv->mp4 container format change). That way, people who want to resize and transcode could do it there.

                                    This is a discussion best taken to the get_iplayer mailing list though.

                                    • On June 7th, 2010, linuxcentre said:

                                      Yes TBH this was always an option with the –command option. Maybe simplifying a similar option specifically for transcoding might be useful!

                                • On June 6th, 2010, thekernel said:

                                  Most of the time, I find if I use –vmode=flashvhigh
                                  I don’t get a problem and so no need for cropping.

                                  • On June 8th, 2010, keswick said:

                                    How do you use FFmpeg?

                                    I’m using windows get_iplayer installer!!

                                    Cheers

                                    • On June 10th, 2010, braindead said:

                                      Hello
                                      still trying to get your ps3 to play your recorded .mov’s ? as I am completely unfamiliar with windows I can’t begin to tell you how to use ffmpeg from the windows command line or even open a terminal, but the first hit on google for “ffmpeg gui” came up with this http://www.videohelp.com/tools/ffmpegGUI
                                      The .mov and .flv video and audio can be played by the ps3, the problem is the container, the ps3 just doesn’t recognise mov or flv, so all you need to do is copy the vid and audio but change the format/container to mp4.
                                      It might be possible to set get_iplayer to do this automatically by setting a preset command when downloading, I’ll have to experiment, but again I’ll only be doing this in linux

                                      • On November 21st, 2011, patronanejo said:

                                        HERE’S one way to do it in Windows. If you don’t mind executing batch files, you can combine your get_iplayer commands with ffmpeg commands.

                                        FIRST download the latest static build of ffmpeg and extract ffmpeg.exe to C:/program files (x86)/get_iplayer/
                                        SECOND right-click any empty space on your desktop and open a new text file. Rename it combined_script.bat; right-click on it and select EDIT.
                                        THIRD cut-and-paste the following into your batch file:

                                        ::Begin batch script
                                        C:
                                        cd “C:/program files (x86)/get_iplayer/
                                        ::Begin get_iplayer script
                                        get_iplayer –force –raw –modes flashhd,flashvhigh –subtitles –pid b00yourprogramme -o “C:/get_iplayer recordings/downloaded_progamme.flv”
                                        ::Long switch –raw prevents transcoding conflicts. Note short switch -o (preceding output filename) is preceded by one hyphen; long switches are preceded by two hyphens.
                                        pause
                                        ::Pause is optional and requires operator input to proceed to remuxing stage, but it is useful for debug purposes.
                                        ::Begin ffmpeg script
                                        cd “C:/program files (x86)/get_iplayer/
                                        ffmpeg -i “C:/get_iplayer recordings/downloaded_progamme.flv” -acodec copy -vcodec copy remuxed_programme.mp4
                                        ::Note all ffmpeg switches are preceded by a single hyphen; ffmpeg does not require output switch (-o) to precede output filename
                                        pause
                                        ::Pause is optional and requires operator input to close command line interface, but it is useful for debug purposes.
                                        ::End batch script

                                        Change –pid b00yourprogramme to suit your download, of course.

                                        FOURTH save batch file and double-click it to run.

                                        The batch file can be rewritten to take advantage of named pipes if you’d like to dispense with the intermediate flash file; be sure the rest of this script works as intended before investigating your system’s support for named pipes.

                                      • On June 9th, 2010, davidt said:

                                        Using easy peasy and 2.78, I have problems with guidance. -Cannot get isOver 16 to record even with -v flagged. Wonderful program by the way.
                                        ps as its end product is little different from a VHS/dvd/hard drive recording, apart from file size etc I still find it difficult to understand its end and I am glad others have taken up the challenge.

                                        • On June 10th, 2010, davidt said:

                                          Since posting, windows based version will generate a partial flv but linux based system records nothing. Is there something obvious I have overlooked – I can post a debug verbose if that would help.

                                        • On June 10th, 2010, CEB said:

                                          Guessing this is moderated, that’s why my original attempt to post didn’t make it…

                                          I’m not sure whether I’m allowed to post this, but I found a Windows Installer here http://www.infradead.org/get_iplayer_win/get_iplayer_setup_4.2.exe

                                          I consider myself relatively knowledgeable about Windows, but this is all way over my head. I had messed up the files and folders of my installation, and got lucky looking for a new Windows installer.

                                          Get_iPlayer is great, and reduces peer-to-peer sharing. The BBC should be welcoming this app; the only way to beat copyright infringement is to make it easier to get legal content than illegal content.

                                          I was using Get_iPlayer on Windows, but something went wrong. I tried to fix it, but screwed up and now the folders/files are all messed up.

                                          Is there a link to a Windows installer that I can download to re-install Get_iPlayer please? I’ve looked on the Git site, but don’t have a clue what it’s all about.

                                          What’s the easiest option for a Windows only person please?

                                          My other option for offline viewing of BBC is very time-consuming, and I miss Get_iPlayer greatly.

                                          Thanks in advance for your help.

                                          • On June 10th, 2010, Matthew said:

                                            Is there a way to download programmes from BBC pages that aren’t on iPlayer? For example the episode of Pulse which is available here http://www.bbc.co.uk/blogs/bbcthree/2010/05/watch-pulse-online-now-and-tel.shtml

                                            The PID seems to be p0082d9v but get_iplayer doesn’t recognise it when it’s put into the –pid command.

                                          • On June 22nd, 2010, Ian said:

                                            The BBC Trust is running a consultation how on the way the BBC makes its content and programmes available on-demand (such as via the BBC iPlayer).

                                            The starting assumption for this review is that the BBC must control, and so must develop, every player for every platform.

                                            Can I suggest that anyone interested in open standards complete the survey and disabuse them of this notion?

                                            Please take the opportunity to point out that, as a public service broadcaster, the BBC shouldn’t be developing a few proprietary, closed, commercial solutions.

                                            The consultation can be found at:
                                            http://www.bbc.co.uk/bbctrust/consultations/departments/bbc/on-demand-syndication/consultation/consult_view

                                            • On June 27th, 2010, Andy Alford said:
                                              • On June 28th, 2010, Energy said:

                                                Please help – trying to get a glastonbury stream using the unofficial update. Strangely even tho it claims to be in the brand ‘glastonbury’ it doesn’t appear on the main list. And if I put the PID in directly nothing happens… Any help? Here’s the links:
                                                http://www.bbc.co.uk/iplayer/playlist/p008kh9m/
                                                http://www.bbc.co.uk/glastonbury/2010/artists/imogenheap/

                                                Thanks for any time spent helping…

                                                • On July 19th, 2010, toby said:

                                                  This is a news post not a support forum. Also the news post clearly tells you that the bbc don’t support the program.

                                                  • On July 22nd, 2010, Ross said:

                                                    Hi all, been using this great program for a while now, but since about 2 months ago I’ve been unable to download embedded news items that previously worked very well… I’ve checked all the help pages and I’ve tried all combinations of commands, has the BBC changed something which means this no longer works? e.g.
                                                    get_iplayer –get –url=”http://news.bbc.co.uk/sport1/hi/motorsport/formula_one/8808644.stm” –modes=flashnormal

                                                    It always says “No specified modes available…” no matter what modes I use.

                                                    Thanks for your help

                                                    • On December 9th, 2010, Joe said:

                                                      Hi, the Iphone radio download which gave me mp3 files seems to have stopped working – anyone else had the problem please ?

                                                      Cheers – Joe

                                                      • On July 12th, 2011, Dan said:

                                                        HI,
                                                        I can’t get RTMP to download anymore. I get this error:

                                                        C:\Program Files\get_iplayer>perl.exe get_iplayer.pl –get 212 –modes=flashstd1
                                                        get_iplayer v2.79, Copyright (C) 2008-2010 Phil Lewis
                                                        This program comes with ABSOLUTELY NO WARRANTY; for details use –warranty.
                                                        This is free software, and you are welcome to redistribute it under certain
                                                        conditions; use –conditions for details.
                                                        ….

                                                        640.000 kB / 10.92 sec (0.2%)
                                                        ERROR: WriteN, RTMP send error 10054 (46 bytes)
                                                        ERROR: RTMP_ReadPacket, failed to read RTMP packet body. len: 65693
                                                        647.942 kB / 10.92 sec (0.2%)
                                                        Download may be incomplete (downloaded about 0.20%), try resuming
                                                        INFO: Command exit code 2 (raw code = 512)
                                                        WARNING: Failed to stream file C:\Documents and Settings\Owner\Desktop\iPlayer R
                                                        ecordings/EastEnders_Omnibus_-_Part_2_b012kpsp_default.partial.mp4.flv via RTMP
                                                        INFO: skipping flashstd1 mode
                                                        ERROR: Failed to record ‘EastEnders Omnibus – Part 2 (b012kpsp)’

                                                        Help Anyone?

                                                        • On July 27th, 2011, John said:

                                                          Using the Windows version and it too has started failing since Monday – obviously the BBC have been making changes. Programs I downloaded last week fail now with all the same settings.

                                                          • 222 old comments are not displayed. Click to display all comments

                                                          WordPress Themes