Installing Flash Media Server 4.5 on Ubuntu 11.04

September 19, 2011 | Video | 4 Comments

A few weeks ago FMS 4.5 was released. While reading through the system requirements it stated once again that it only supported running on Windows, Redhat and CentOS. Unfortunately for me I only develop on a mac and a ubuntu machine. In the past I had to use a script from this blog post to get FMS 3.5 installed.

So I decided to give it a try. To see if I could in fact get the server up and running on my ubuntu machine. To my surprise, the standard install scripts worked flawlessly.

Here are the steps:

  1. Download the development server
  2. unzip FlashMediaDevServer_4_5_all.zip
  3. cd [path_to_unzipped_files]/linux
  4. tar -zxvf FlashMediaServer4.5_x64.tar.gz
  5. cd FMS_4_5_0_r297
  6. sudo ./installFMS
  7. follow the onscreen instructions
  8. point your browser to your machines IP address.

Flash Media Server 4

September 9, 2010 | Video | 1 comment

Today adobe has announced the latest Flash Media 4 Server. I always get excited when I get to hear about new streaming technology. Adobe has really done a great job this time by releasing some great new features all branded up into three different tiers of software. They are called Streaming Server, Interactive Server and Enterprise Server.

The new features include :

  • Full 64-bit support NEW
  • Enhanced playback experience NEW
  • Faster switching with RTMP Dynamic Streaming ENHANCED
  • Absolute timecode NEW
  • RTMP quality of service (QoS) improvements ENHANCED
  • Greater live streaming security NEW
  • Simplified player development ENHANCED
  • Multiuser experiences for your audience ENHANCED
  • AMF3 support
  • Rich server-side scripting support
  • Peer-assisted networking
  • Application-level multicast NEW
  • IP multicast broadcast NEW
  • Enhanced buffer NEW
  • Faster switching with RTMP Dynamic Streaming ENHANCED
  • Absolute timecode NEW
  • RTMP quality of service (QoS) improvements ENHANCED
  • Protected multiprotocol streaming ENHANCED
  • H.264 video and HE-AAC audio
  • Live HD video streaming
  • RTMP Dynamic Streaming ENHANCED
  • Protected content delivery ENHANCED
  • DVR functionality
  • MPEG-4 video recording
  • H.264 video and HE-AAC audio
  • Live HD/H.264 video streaming
  • Bandwidth detection
  • Protected streaming support ENHANCED
  • Full 64-bit support NEW
  • Simplified player development ENHANCED
  • Simple publishing workflows
  • Integrated HTTP server
  • Consistent delivery across all screens
  • Ultimate efficiency NEW
  • Plug-in architecture
  • Easier implementation ENHANCED
  • Stream splitting
  • Server redirection handling
  • Logging

< Flash Media 4 Server />
< Developer Download />

Akamai Adobe HTTP Dynamic Streaming

August 23, 2010 | Video | 4 Comments

Finally a good demo of Adobe’s new HTTP based Dynamic streaming. Can’t wait to dissect this one a bit more. Here is more information about the new feature included in Flash Player 10.1.

Can’t wait to come up with an open source solution to this type of streaming.

FFMPEG 0.6 + Erlyvideo

June 30, 2010 | Video | 3 Comments

Previously I posted about compiling FFMPEG with RTMP support. Now I’m going to describe what you have to do to view that content with Erlyvideo running on OSX of course.

Assuming you have MacPorts installed. Run the following command:
sudo port install erlang

Once that is done you are ready to install Erlyvideo. Go here for up to date install instructions (you will also need git installed).

Finally on to the fun stuff. go to http://localhost:8082/

Assuming everything worked alright you should see the flash content loaded. Go ahead open up terminal and run the following command replacing INPUT_FILE with the file of your choice.

ffmpeg -i INPUT_FILE -re -ac 2 -acodec libfaac -vcodec libx264 -vpre default -s 480x320 -f flv rtmp://localhost:1935/rtmp/test

Now switch back to your browser where you have the erlyvideo page loaded. replace the url at the top of the page with.
rtmp://localhost:1935/rtmp/test

Click on the Connect button.
Then towards the bottom of the page click the Play button.

Congratulations you are now streaming video to erlyvideo!!!

Compiling FFMPEG 0.6 with RTMP Support for OSX

June 30, 2010 | Video | 10 Comments

The other day FFMPEG released version 0.6 nick named “Works with HTML5″. Today I’m going to try to describe the steps on how to compile this new release in OSX with RTMP support. This wont be for the faint of heart.

First you will need to download and install Xcode and then MacPorts. Please go here for MacPort download and install instructions.

Once when MacPorts is done being installed you will need to install a few packages. They include yasm, pkgconfig and openssl. So lets begin getting those installed first. Type the following command into terminal and then press enter.
sudo port install yasm pkgconfig openssl

Once when this is complete you will need to download a few extra files. We are going to compile these manually so we make sure we have the latest and greatest.

FAAC v1.28
FAAD2 v2.7
Lame
LIBRTMP
x264 (download the latest build)
FFMPEG 0.6

First you will want to extract each archive. In OSX you can double-click on the archive to extract or else in terminal use the following command.

tar xzf FILE_NAME.tar.gz

Now it’s time to compile each library. Don’t worry its very easy. For the rest of the steps we will only be working in terminal. So open it up and navigate to where you downloaded your files. Mine are located in my Downloads folder.
cd ~/Downloads

Enter the following commands to navigate to your faac folder, configure, compile and install.

cd faac-1.28/
./configure
make
make install

Now to compile Faad

cd ../faad2-2.7/
./configure
make
make install

Lames turn

cd ../lame-3.98.4/
./configure
make
make install

RTMP is a little different.

cd ../rtmpdump-2.2e/
make SYS=MacOSX
make install

Your path to h264 will most likely be different from mine.

cd ../x264-snapshot-20100629-2245/
./configure
make
make install

Finally FFMPEG 0.6. This also requires a few more steps.
cd ../ffmpeg-0.6/
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
./configure --enable-gpl --enable-nonfree --enable-pthreads --enable-libfaac --enable-libfaad --enable-libmp3lame --enable-libx264 --enable-libvpx --enable-librtmp
make
make install

Done! now you are ready to encode your file and send it to an RTMP server. I’ve been using the following command to test this.
ffmpeg -i INPUT_FILE -re -ac 2 -acodec libfaac -vcodec libx264 -vpre default -s 480x320 -f flv rtmp://localhost:1935/rtmp/test

Just replace INPUTE_FILE with the video you want to transcode and rtmp://localhost:1935/rtmp/test with the RTMP server you want to publish to. This could be a Flash Media Server, Wowza Server, Red5, Erlyvideo or any other server that supports this functionality.

New Wowza Media Server 2.0

January 14, 2010 | Video | 0 Comments

I have to say Wowza is a cool media server. I’ve played around with the developer server a few times and have found the features to be rather nice. To find out that they have released a new version of their server with these great new features makes it a really enjoyable experience. More so when you aren’t limited to just streaming to the flash platform anymore. Wowza no supports streaming to IPTV, iPhone, Quicktime, Silverlight and Flash.

Download your free developer edition here

MakeMKV Streaming

December 30, 2009 | Video | 2 Comments

As promised I wanted to get back after I was able to play with the new streaming feature in the latest release of MakeMKV. To my surprise this was actually in the last release (v1.4.9) but I was unaware of it. Basically after you scan a disc you can choose which title you want to stream.

Something that I found out that I didn’t know about before is MakeMKVCon. As the name indicates this is a binary that lets you run everything from the console. So with the simple command ./makemkvcon stream disc:0 you can stream your movie over an http server. Just point our browser to http://localhost:51000 to find the right vob or .ts file you are looking for and launch it in vlc or another application that can stream over http.

The advantages of running it from the console is it makes it able for your to integrate it with a script. So that brings me to the second part of this post. Getting the blu-ray player to stream directly to plex without having to copy it to your hard drive first. Which in my opinion is great since I have a small hard drive. Unfortunately I don’t have a working script yet. It’s about 50% there. just have to finish learning the other parts of the plex plug-in api. Once when its done I’ll be posting back here so keep checking back.

One thing I found interesting and didn’t understand why at first is why the MakeMKV people would want to use an HTTP server to stream the files. seemed like a lot of added complexity when there are other ways to stream the output just as easily. Looking at the HTTP headers it mentioned UPnP. So that was a nice surprise. Once when all the UPnP stuff is completed you should be able to play these files in plex or xbmc a lot easier.

MakeMKV Update

December 29, 2009 | Video | 0 Comments

I figures this was very news worthy. MakeMKV has updated their software to v1.4.10. Some of the new features include:

  • New functionality: instant video streaming
  • Added support for all blu-ray HD audio tracks:
    • Dolby TrueHD
    • Dolby Digital plus (E-AC3)
    • DTS-HD
    • DTS-HD Losless (Master audio)
    • DTS-HD Low bitrate

This is great news all around. Until now the HD audio codecs weren’t supported. I have to say the new instant video streaming sounds interesting. It streams content through a web server. After I look into it a bit more I’ll post more details about it.

HTTP Video Streaming

November 30, 2009 | Video | 0 Comments

So over the weekend I’ve been playing around a little bit with HTTP video streaming. A lot of the newer video streaming technologies are starting to focus around HTTP + Adaptive streaming. The reason for this is because HTTP based streaming can scale very easily and Adaptive streaming can adjust very easily client restrictions such as bandwidth and hardware capabilities.

So in my attempt to better understand the world of streaming I ended up playing around with apples solution to live video streaming. Thanks to a few great articles at IONCANNON, I was able to create a little streaming application that would dynamically load video into Safari and onto the iPhone. Very cool stuff. I plan on working with what he created already and getting it to work with my other little side project.

Flash Video Streaming Solutions

November 8, 2009 | Projects | 4 Comments

So one of my secret obsessions is with video. I like to record video. I like to watch it. I like everything about it. But what I really like about it is the technology behind it. Call me crazy but I love to figure out how to encode a clip or video and see how good I can compress it using different codecs. Maybe that’s why I love working where I work. Since I ‘m a Flash / Flex programmer I have been wanting to investigate different streaming solutions for flash and see what is available and what will work with my little at home project.

This little project I’ve been playing around with is trying to get my HDHomeRun (HDHR) to rebroadcast its live feed to flash. I’ve been investigating technologies like Red5, C++ RTMP Server and Flash Media Server. With anything that requires multiple pieces of different technologies. The hard part is integrating these different pieces together. Luckily the HDHR is open source. So that provides a lot of avenues for development. The only hard part is trying to get the MPEG-TS from the HDHR and convert it on the fly to something flash can use.

So far I haven’t been able to get any of the solutions to work. but as soon as I do I’ll post something here.

Fork me on GitHub