Various ramblings-on, mostly about Red5

25 Aug 10 Building the latest Xuggler for Windows

I recently had reason to build the latest cutting-edge version of Xuggler for my Windows environment and I want to share the experience. Mind you, I have had to do this a few times before including when the project was still named AAFFMPEG and was “unreleased”. The process has been
made a lot simpler due to the hard work of Xuggle and its community (Special thanks to Jonathan Ben). BTW if you want to skip all the steps and get the build I created, you can find it here: xuggle-xuggler.4.0.1049-win32-setup.exe

Get all of the following applications / tools if you don’t already have them; they are all FREE.
Get the 1.6 JDK
– Install it
Get 7zip (due to MinGW file compression)
– Install it
Get the zlib dll
– Copy into Windows\System32 directory
Get the preconfigured MinGW
– Unzip into C:\MinGW
– Add C:\MinGW\bin path to the PATH environmental variable
Get the Msys installer
– Install to C:\msys (not C:\msys\1.0)
– Create a directory under C:\msys name “local”
– Add C:\msys\bin path to the PATH environmental variable
Get Ant
– Unzip into C:\ant
– Create a new environment variable named “ANT_HOME” with a value of C:\ant
– Add C:\ant\bin path to the PATH environmental variable
Get SilkSVN (good command line tool, otherwise I suggest TortoiseSVN)
– Install it
Get NSIS (if you want to build the installer)
– Install it
– Add C:\Program Files\NSIS path to the PATH environmental variable
Get Visual C++ 2010 Express
– Select your language on the form
– Install it (a reboot will usually be required)
Now for the fun! Be aware that this takes awhile to complete, on my system it took 76 minutes.
1. Enter the Visual Studio command environment by selecting the “Visual Studio Command Prompt (2010)” link in the start menu
2. Change directory to C:\MinGW
3. Execute “msys.bat”
4. Check out the project source from subversion
svn co
6. Navigate to the xuggler directory
cd trunk/java/xuggle-xuggler
7. For the heck of it run this first
ant clobber
8. Now build while also running tests and producing installers
ant run-tests dist

Et voila! (if everything works, as it did for me)

If you run into an issue where “libraries can’t be found”, you are probably missing the zlib library. I have posted a defect for this here.

Tags: , , , , , ,

05 Dec 09 Fun with FFMPEG

Since I’ve seen nothing which addresses the processing delays that I noticed in ffmpeg when generating thumbnail images, I figured I should share some important optimizations. I used to specify this command line when generating the images from a movie source (f4v in this case):

ffmpeg -y -i mymovie.f4v -an -ss 00:05:00 -t 00:00:00.01 -sameq -r 1 -vframes 1 -deinterlace -f mjpeg mythumbnail.jpg

This will take about one minute to generate the image of the video frame which is five seconds into the clip. This seems really extreme and is even worse when you try to increase the start location; for instance 45 seconds in, takes about an hour.
So, I knew there had to be a better way and I monkeyed around with the options:

ffmpeg -y -ss 00:05:00 -i mymovie.f4v -an -t 00:00:00.01 -sameq -r 1 -vframes 1 -deinterlace -f mjpeg mythumbnail.jpg

There is only one change between these lines, the placement of the “ss” option. This change causes the command to complete in less than a second, no matter what our start time is. Quite an increase in processing for something so simple! I hope this helps a few of you out there.

Tags: , , ,

06 Jun 09 FFMPEG made super simple

Robert and Art continue to amaze me with their Xuggler project. If you are like me and have had to use FFMPEG in a project (Java in my case), you know how hard it can be to get everything working correctly. Xuggler has some how made this even more easy than with their 1.0 version. Through the use of their MediaTool you can do some incredible stuff; the stuff that should have been possible with JMF! Do yourself a favor and check out their post about the MediaTool.

As a minor side note, Xuggler has changed its license to AGPL with the 3.0 release.

Tags: , , , ,

19 Feb 09 Xuggler final

Having been in the media streaming game for quite some time, esentially since its birth on the internet. I have needed conversion and transcoding tools countless times. These tools usually needed to interoperate with Java in one way or another. I have used the various offerings throughout the years, from JMF, FMJ, QuickTime, and helloNetwork stuff to accomplish my tasks. None of these tools worked as seemlessly nor flawlessly as Xuggler does. One of the best things about it, is that it works with Red5 for live transcoding! 

Another key point to consider is that it works everywhere (osx, linux, and win); this is an important feature when I consider tools. So are you ready to buy a copy now? Guess what, it gets better.. Xuggler is FREE and it can be built compliant to GPL or LGPL!

Kudos go to Art and Robert, you’ve created an awesome open source tool and I am glad to use it.

Lastly, if youre attending FITC in Amsterdam next week you should stop and see Arts demo.

Tags: , , , , , , , ,

Fatal error: Call to undefined function akismet_counter() in C:\xampp\htdocs\paulgregoireblog\wp-content\themes\googlechrome\footer.php on line 9