Nov 14 2009

A new major version of flvstreamer has been released. After some testing it would seem that it fixes quite a number of problems that get_iplayer users have been experiencing for the past few weeks since Akamai (one of the BBC’s content delivery network providers) started upgrading all their Flash Media Servers to v3.5.x. BBC Live TV now works better and many other bugs are reported to have been fixed. It also now auto-retries failed streams and fixes the bug where recording 1+ hour BBC radio flash streams always had to be resumed.

If you are using the Windows Installer for get_iplayer then just download it again and re-run it to get the new flvstreamer and ensure you choose the cygwin based flvstreamer.


  • On November 18th, 2009, Thomas Willson said:

    Do you know where I can get an OS X binary? It won’t compile on OS X and the latest binary they provide is 1.8i.

    • On November 19th, 2009, Andy said:

      I’ve compiled it on OS X 10.6.2 after a little tweak to the source code. I’ve put it up on my site while there’s no official binary. Intel only, I’m afraid – although I could probably get a PPC copy compiled if necessary.



      • On November 19th, 2009, linuxcentre said:

        Am I right in saying that the only changes are in streams.cpp ? If so does flvstreamer (i.e. not streams) work without any changes?

        • On November 19th, 2009, Andy said:

          Urk. Put my reply in the wrong place.

          Yes, it’s only in streams.cpp that I made changes; altering the two instances of MSG_NOSIGNAL with SO_NOSIGPIPE as mentioned in the discussion. After that it compiles correctly.

        • On November 19th, 2009, linuxcentre said:

          Seems like the binary you compiled is a universal binary:

          XCFLAGS=”-arch ppc -arch i386″

          • On November 22nd, 2009, Andy said:

            Yes, I compiled it with those flags, but the resulting file is always either PPC or Intel; never a UB. Not sure what’s going on there. :/

        • On November 19th, 2009, Andy said:

          Yes, it’s only in streams.cpp that I made changes; altering the two instances of MSG_NOSIGNAL with SO_NOSIGPIPE as mentioned in the discussion. After that it compiles correctly.

          • On November 22nd, 2009, Andy said:


            Still can’t get a universal binary to build, but if you need a PPC version I’ve got one here:


            There’s also a universal binary build of FFmpeg for OS X on here as well, svn release 19400.


            So that’s everything you’ll need to run get_iplayer properly on a PowerPC machine! 🙂

            • On March 2nd, 2010, Christian said:

              Any chance you could post a version of flvstreamer with support for OSX 10.4? ..I’m seeing errors like this when I try to run yours (or any other I can find):

              bash-2.05b# /usr/bin/flvstreamer version
              dyld: unknown required load command 0x80000022
              Trace/BPT trap

            • On November 22nd, 2009, Andy said:

              Bobbins. For some reason the PPC version fails to connect and dies with:

              ERROR: ReadPacket, failed to read RTMP packet header

              If you’re using flvstreamer v1.9 on a ppc machine, please post and let us all know if it’s working for you.

              Tested v1.8i and it still works fine, so I’d perhaps stick with that for the moment.

              • On November 27th, 2009, James said:

                Hi all

                I’ve compiled this for the ARM processor on my QNAP TS-209 NAS. I used the instuctions on the download section, but modified them to use static libraries. Therefore this should work on any ARM based (and probably other) QNAP NAS. Please test and let me know how you get on.


                • On November 28th, 2009, James said:

                  Actually, scrap that last link, try this one instead.


                  • On December 18th, 2009, dahool said:

                    thanks James for this file,
                    could you please add a download link for the modified files, for instance the Makefile.
                    I would like to compile flvstreamer on NAS WD mybook world edition(arm cpu).


                  • On December 19th, 2009, rimka said:

                    Keep up the good job man… Your stuff are really great! I’ve experienced some problems with my downloaded flv… just at times the sound stays but the image freezes and then it comes back to normal. I’ve tried many players… It’s not player related. I think it may be due to dropped frames (I’m on wifi) and perhaps the lack of error correction in the program. Do you know what’s wrong?

                    • On December 19th, 2009, rimka said:

                      Will try version 1.9 right now hope it solves the problem! :)) Will report back.

                      • On December 19th, 2009, rimka said:

                        Just tried… images still freezes ramdomly within flv playbacks… And I’m know for sure it’s not player or computer related. It’s seems like some frames are missing or malformed… What amazes me is that this phenomenon never happens with the original flash player on the webpage. It seems like flvstreamer lacks an error correction mechanism… Am I right?

                        • On December 31st, 2009, linuxcentre said:

                          error correction isn’t really relevant here. TCP checksums and retries should avoid corruption due to lost packets.

                          Do you have ffmpeg installed – that demuxes the flv into mp4 which is much more playable on vlc etc.

                          • On December 31st, 2009, linuxcentre said:

                            ffmpeg will be used automatically if get_iplayer sees it installed. The win version installs it automatically.

                            • On January 1st, 2010, rimka said:

                              Alright! No I don’t have ffmpeg… I’ll install it… Seems the best solution! Thanks and Keep up the good work! Happy new year!

                          • On December 20th, 2009, James said:

                            I edited the Makefile so that top section reads


                            LDFLAGS=-Wall -static
                            SLIBS=$(THREADLIB) $(LIBS)

                            As you can see, I’ve hardcoded the paths of gcc,g++ and ld as they’re a nonstandard location that aren’t in my $PATH. I also added in the lstdc++ lib into $LIBS and set LDFLAGS to be -Wall -static to create a static library.

                            The rest of the file is the same and ran it using “make arm”

                            • On December 26th, 2009, dahool said:

                              Hi, thanks for your answer and explanation!
                              Using your modified makefile the compilation works fine but the link fails with an “undefined reference to `round'”, I resolved this link error by adding round function in flvstreamer.cpp and streams.cpp:

                              double round (double x) {
                              int x_int = (int)(x+0.5);

                              I am sure this is a dirty way to resolve this issue but it is linking and flvstreamer is now working perfectly.

                              Note that I previously tried to use the flvstreamer you provided in the zip but I always got “ERROR: Problem accessing the DNS” when trying to grab an rtmp stream on my mybook World Edition.

                              Thanks again, flvstreamer now works on WD mybook World Edition.


                            • On January 9th, 2010, Ella's Dad said:

                              2.57 doesn’t seem to be finding flvstreamer.
                              I’m actually using the ARM build and it was working a couple of days ago but the PVR always complains that it can’t find it now.
                              I’ve checked –pref-show and .get_iplayer/options for each user, removed “_arm” from the name of the binary and even copied it to /usr/bin but no dice.

                              • On January 9th, 2010, linuxcentre said:

                                Does flvstreamer work for the same user standalone? i.e. /usr/bin/flvstreamer -h

                                • On January 9th, 2010, Ella's Dad said:

                                  Hmmm no it locks the machine up – maybe it never worked for me? I should have slept on it before posting, sorry.

                                  • On January 9th, 2010, Ella's Dad said:

                                    and ironically, having tried the same recordings again, I don’t think I ever actually needed it. Must start going to bed earlier…

                                    • On January 9th, 2010, Ella's Dad said:

                                      So what actually happened was – I was using a binary for a different machine D’oh!
                                      I’ve now recompiled and got flvstreamer 1.9 running on the Sheevaplug – and yes I DID need it for some recordings.
                                      Would you like me to submit the file for the download section?

                                WordPress Themes