Get Ready – Adobe MAX 2011 is Near!

Posted on September 28, 2011 at 9:42 am in Development, Training

Adobe MAX 2011


There’s a great deal of excitement in the AIR here at RealEyes Media as the premiere Adobe conference of the year-Adobe MAX 2011, rapidly approaches! This Saturday, October 1st, the epicenter of design, media, and development will be Los Angeles California, as Adobe settles in for the 3rd year in a row at the L.A. Convention Center, and the beautiful Nokia Theater L.A. LIVE. The Adobe MAX conference has always been the place to listen to and meet world-renowned speakers, learn about the latest tools and techniques, and connect with potential clients, new partners, and old friends…and this year is no exception!

If you’ve ever been to MAX, you know that Adobe pulls out all the stops for this event. Keynote addresses are given by the biggest names in tech and entertainment. In case you haven’t already heard, the musical entertainment for this year’s MAX Bash will be provided by the band Weezer!


A chance to learn from the best

Whether you’re a designer, developer, or business strategist, MAX is an environment that deepens your expertise, and ultimately makes you more productive in your work. Every skill and experience level is welcome during this Five-day learn-a-thon. Whether you’re someone who’s never opened Photoshop, or you’re interested in creating high-tech video players destined for multiple devices, there’s something at MAX for you.

learn at MAX

Learn about multiscreen development with Realeyes’ own David Hassoun, John Crosby, and Jun Heider

The last few years have seen a steady upswing in multiscreen application development, and MAX has responded to this trend by providing developers, designers, and entrepreneurs with the best resources for learning how to rise to the top in this environment.

David, John, and Jun

Realeyes Media is pleased to announce that Jun Heider, David Hassoun, and John Crosby will be speaking at MAX! Be sure to check out the following sessions:

David Hassoun & John CrosbyVideo Player Development for Multiple Devices

“Learn how to create compelling, robust, and high-performing video player experiences for desktops, tablets, and smartphones including HTML5 and Adobe AIR for iOS. This lab for developers will step through what’s needed to develop and optimize the video experience across all devices. Using Adobe Flash Media Server on the back end, you’ll use Adobe Flash Builder and Open Source Media Framework to create video players that just work. Explore how to tune hardware acceleration with Stage Video to optimize battery life.”

  • Are you attending this session? Would you like early access to the sample files? We can help out. Sign up here to download the files.

Jun HeiderMultiscreen Project Best Practices

“Prepare to take the next step in multiscreen development. Review important considerations in planning multiscreen projects geared toward efficient code reuse and workflow. Also, see how to structure projects to match the strategy chosen to fit the application’s use case. By the end of the session, you’ll walk away with an understanding of how to start architecting your multiscreen Adobe Flash Platform applications and build them using Adobe Flash Builder.”

  • If you’re attending this session you can sign up here to receive the presentation materials from Jun’s session.

These guys know their stuff, so if you’re interested in developing applications that are destined for multiple screens, be sure to attend their sessions, ask questions, and meet them in person-you won’t be disappointed!

Can’t make it to MAX? Attend “Mini-MAX”!

Here in Denver, the Rocky Mountain Adobe User Group traditionally provides an annual “mini-MAX”, for those who couldn’t make the trip out to California. Those that were there give us their take on the conference, providing us with a remote insite into MAX’s highlights. Join us on 11/08/11 at Casselman’s - 2620 Walnut Street in North Denver, CO, as well as every 2nd Tuesday of the month throughout the year to talk all things Adobe!

Adobe Releases OSMF, Strobe Media Playback 1.6

Posted on September 08, 2011 at 3:38 pm in Development, Media Solutions

Back in early June, we reported on the pre-release of Adobe’s OSMF 1.6, and its support for late-binding audio. Adobe has been working hard to improve upon the upgrades they gave us with the OSMF 1.6, Sprint 5 release, and to add even more new features for mobile as well. Today Realeyes Media is pleased to announce that OSMF 1.6, and Strobe Media Playback 1.6 have been granted their final release status.

A brief overview of the updates available in OSMF  and Strobe Media Playback 1.6:

OSMF 1.6
  • In regards to late-binding audio, as promised, today’s release supports live playback as well as video on demand (VOD).
  • Also in regards to late-binding audio, fixes to seek issues resolved.
  • For mobile – offers Stage Video support for hardware-accelerated video presentation(requires Flash Player 10.2+).
  • DVR rolling window support, which allows you specify how far back from the live point viewers can rewind (requires the newly released FMS 4.5).
Strobe Media Playback 1.6
Core Framework
  • Improvements to HTTP Dynamic Streaming as well as the ability to better manage bitrate profiles with multi-level manifests.

This is exciting news for those of us using OSMF and/or the Strobe Media Playback. Thank you to Cathi Kwon and the rest of the OSMF team for giving us these new and powerful feature updates!

For information on how Realeyes Media can help you integrate OSMF into your media solutions, please feel free to contact us today.

Scott Sheridan writes about, and messes around with, the latest technologies in digital motion media at Realeyes. He also does triathlons. Really big triathlons.

Feel free to reach out with any questions-we’re glad to help!

scott@realeyesmedia dot com

Jun Heider gave a really nice presentation this morning on how to leverage the Adobe Flash platform P2P API to create applications for sharing video, audio, and data among application peers. In his talk, Jun demonstrates P2P technologies working across multiple devices and taking advantage of the flexible RTMFP protocol, an Adobe technology that allows for maximum scalability coupled with a dramatic reduction in server infrastructure and bandwidth costs.

View the presentation:

Meeting recording

Presentation slides (PDF)

Additional Resources

You can also check out a recent screencast from Jun’s blog demonstrating a multiscreen P2P call center application

The following are demonstrations of some of the ways in which this technology can be implemented:

Basic Demos (right-click demos to view source)

Metrics Demo (Serverless)

Multiuser Video Demo

Elearning Demo

Adobe AIR – File Sharing

File Sharing Demo (AIR)

File Sharing Demo Source

Byte Array Chunker Utility

Part 1 of this series discussed HTTP Dynamic Streaming (HDS) at a fairly high level. The next few editions in the series will explore some of the more powerful features that make using this protocol advantageous. Multi-bitrate stream switching and file encryption are two important features that we’ll cover in the very near future, as they’re very big reasons to stream over any protocol. However, in this article I’d like to discuss a brand new feature of the Open Source Media Framework (OSMF) known as “late-binding audio”.

Late Binding Audio Defined

Late-binding audio refers to the ability to stream videos with multiple associated audio tracks. This makes it possible to play an alternative audio track on the client-side using the same video file. There’s no need to encode, store, and deliver separate video + audio assets for each version you would like to provide. Say for example that you would like to provide video content with audio translated into multiple languages. Instead of  creating separate video + audio files for each language, you instead encode the video only once, and include the alternate audio-only tracks along with the it. This represents a huge savings in time, storage, and bandwith that anyone making the switch to HTTP Dynamic Streaming can take advantage of.

Updates to OSMF that came in version 1.6, Sprint 5 make streaming late-binding audio files over HTTP possible. Specifically, the MediaPlayer class now contains the read-only public property hasAlternativeAudio : Boolean. By using the LateBindingAudio example application included in the latest OSMF release, I’ll demonstrate step-by-step how to get this new feature to work.

Many of the steps we’ll be taking are the same steps we took when packaging our files for simple streaming over HTTP, so if you’d like to review, please check out HTTP Dynamic Streaming – Part 1: An Introduction to Streaming Media.

Late-Binding Audio, Step-by-Step

1. Gather your media assets

In this example, we’ll be working with a video that has one alternate audio track. (President Barack Obama’s speech from July 25th, and an alternate audio track of the transcription translated into Spanish) You can include as many alternate audio tracks as you’d like, however there are some recommendations from the OSMF team in regards to how you prepare your media. One suggestion is that you should use audio tracks that are at least as long as the main video + audio track to ensure smooth stream switching. Other guidelines relate to encoding best practices for streaming over HTTP in general. You can read the white paper on encoding standards here. A list of known issues with OSMF 1.6 Sprint 5 can be found in the release notes.

The creation of the media assets prior to packaging them for HTTP streaming is beyond the scope of this article, but for your information:

  • I used Adobe Premiere Pro 5.5 to edit the original video file down to something shorter (~2 min).
  • I used Adobe Audition CS 5.5 to edit the audio, and to create the alternate audio track.
  • I encoded the video and audio files to .f4v using Adobe Media Encoder (see part 1 of the series for file type requirements).
  • I happily found a transcription of the speech online.
  • Google Translate helped me with the translation (it’s been awhile since I’ve spoken Spanish).
  • At&t Natural Voices text-to-speech demo provided me with the .wav files of the Spanish audio.
So, to start you’ll need a minimum of 3 separate files:
  • The original video + audio file encoded into an .flv or Mp4-compatible format
  • The audio track from the original video + audio encoded the same as above
  • An alternate audio track, hopefully of the same duration as the original audio, encoded the same as above
2. Package your media using the f4fpackager tool

This step is the same as it is for packaging files for simple streaming over HTTP, covered in part 1.

using the f4fpackager to package the media files

At this point, if you’d like to send additional arguments to the packager, you can enter them here and they’ll show up in the XML of the .f4m file, otherwise use the minimum arguments. We’ll be editing the XML of the main video’s .f4m file in the next step. After you’ve packaged all of the files, it’s time to create a “master” .f4m file. I’m using 3 source files, so I have 3 sets of 3 packaged files:

  • Obama.f4m
  • ObamaSeg1.f4x
  • ObamaSeg1.f4f
  • Obama_Audio.f4m
  • Obama_AudioSeg1.f4x
  • Obama_AudioSeg1.f4f
  • Obama_altAudio.f4m
  • Obama_altAudioSeg1.f4x
  • Obama_altAudioSeg1.f4f
3. Create master .f4m file

Next, we’ll be adding some information from the two audio tracks’ .f4m files (the separated audio from the original video, and our alternate Spanish track) to the .f4m of the packaged main video file. Copy the “bootstrapInfo” and “media” tags from inside the .f4m files of the two audio tracks, and paste them into the main video’s .f4m file.

Add media and bootstrapInfo tags to main .f4m file

Add media and bootstrapInfo tags to main .f4m file

4. Add attributes to media tags in master .f4m

In order for late-binding audio to work, we’ll need to add a few attributes to the media tags inside the main .f4m file. In the media tag of your alternate audio, add:

  • alternate=”true”
  • type=”audio”
In order to get the example application that I’m using to behave the way I’d like it to, I added another attribute to the alternate audio’s media tag:
  • lang=”Spanish”
The player is using that attribute to populate a dropdown menu of available alternate audio tracks, and by including this attribute, I get a nicely-named menu item in the player.
*Note*I’ve noticed that when using packaged .f4v’s, the example player can’t load the files unless I add yet another attribute to (every) media tag:
  • bitrate=””
Apparently, the player doesn’t care what the bitrate value is, even if it’s an empty String, but it does seem to require that you include that attribute when streaming packaged .f4v’s.
Updated master .f4m file

Updated master .f4m file

5. Place all packaged files into vod folder in the webroot of your Apache server

When done, it should look something like this: (“readme.htm” and “sample2_1000kbps.f4v” are files that come with Flash Media Server, and can be ignored)

Packaged files in the vod folder on the server

Packaged files in the vod folder on the server

Setting Up Flash Builder

6. Make sure you’re using the latest versions of Flash Builder, Flash Player, and OSMF

In order for this example to work, you’ll need to ensure that you’re using Flash Builder 4.5.1 and the latest OSMF .swc. You’ll need to replace the OSMF .swc that comes with the latest Flex SDK with the one from OSMF 1.6 Sprint 5, and deploy your project to the latest version of the Flash Player. (At least 10.2)

Use Flex 4.5.1, and Flash Player 10.2 and up

Use Flex 4.5.1, and Flash Player 10.2 and up

Use the latest OSMF .swc-OSMF 1.6, Sprint 5

Use the latest OSMF .swc-OSMF 1.6, Sprint 5

As mentioned earlier, this example uses the LateBindingAudioSample application that comes bundled with the latest OSMF release. It can be found in OSMF/apps/samples/framework/LateBindingAudioSample. Modify this application to point to your main video’s .f4m file on the server.

That’s it! Ensure that your Apache web server is running, and if you’re using the same example application, run the application in debug mode to get valuable information about the stream in the Console. Select your video asset from the dropdown menu up top, and hit “Play”. Choose the alternate audio stream at any time from the dropdown in the lower left of the application.

Where to go from here

For a more in-depth look into HDS, including discussions on file encryption, and live streaming, please refer to John Crosby’s series on HTTP Dynamic Streaming

For an informative look into the world of OSMF, including deep-dives into such things as building custom media players and plugin integration and development, please see David Hassoun and John Crosby’s article series “Mastering OSMF“on the Adobe Developer Connection site .

For information on how Realeyes Media can help you make the switch to HTTP Dynamic Streaming, please feel free to contact us today.


Adobe HTTP Dynamic Streaming documentation

f4fpackager documentation

F4M file format specification


HTTP origin module


Flash Media Development Server (free)

Apache web server

Scott Sheridan writes about, and messes around with, the latest technologies in digital motion media at Realeyes. He also does triathlons. Really big triathlons.

Feel free to reach out with any questions-we’re glad to help!

scott AT realeyes DOT com

Kao tehnologija koje se odnosi na proizvodnju i isporuku digitalnih pokreta medija nastavlja da napreduje, tako da su zahtevi potrošača za sve raznovrsniji i bogatiji mediji iskustveniji.. Video visoke definicije se sada isporučuje na više korisnika, na razlicitim vrstama uređaja, i kroz više kompleksnih mreža nego ikada pre. Za provajdere sadržaja, to naravno znači više raspoloživih mogućnosti za medijsku distribuciju i monetizaciju.


Tradicionalno, video je dostavljen klijentu na jedan od dva načina:bilo progresivnim preuzimanjem korišćenjem široko podržanog HTTP protokola, ili strimovanjem, korišćenjem protokola RTP, RTMP, UDP, ili TCP, u saradnji sa specijalizovanim serverom softvera za rukovanje tokom (npr. Flash Media Server ili Windows Media Services). Ove dve metode dostave imaju i prednosti i mane. Streaming medija protokoli nude gledaocu bolje iskustvo omogućavajuci videu da reprodukuje odmah, bez potrebe da prvo sačekamo da su potpunosti uploaduje. Oni su takođe omogućili takve karakteristike kao adaptivne bitrate strimovanja da nadoknadi za fluktuacije u korisničkom protok, uživo gledanje, sadržaj enkripciju, i pametne ribanje. Ove karakteristike su često vrlo skupe, međutim, i kao takve nije su održiva opcija za mnoge sadržaje. Isporuka preko HTTP, s druge strane, traži kompletan file download pre nego se moze poceti gledanje. Pored toga, sadržaj prebačen na ovaj način je uskladištena na hard disku krajnjeg korisnika, i zbog toga često nije najbolje rešenje za prikazivanje zaštićenog sadržaja autorskih prava. Međutim, podrška za HTTP protokol bio je i ostao, veoma rasprostranjen. Specijalizovani server tehnologije se ne zahteva da bi se dostavio sadržaj preko HTTP- jednostavno (i besplatano) ce to uraditi web server. Biti podrzan postojećim i rasprostranjenim serverom hardvera i caching infrastruktura nastavlja da bude jedan od glavnih prednosti pri korišćenju HTTP protokola.


U prošlosti, provajderi sadržaja su često bili suočeni sa teškom dilemom. Da li bi oni trebali da naprave velike finansijske investicije u cilju pružanja najboljeg streaming videa iskustva svojim krajnjim korisnicima? Ili bi njihov ROI bio bolji ako isporuci robustano iskustvo gledanja, iako ima potencijalno veću publiku, preko HTTPa? Kompanije kao što su Move Networks, Microsoft, Adobe i Apple su došli sa svojim jedinstvenim rešenjima ovog problema – dinamičan problem streaming medija preko HTTP protokola. Svako rešenje podrazumeva razbijanje kodiranih medijskih datoteka u manje komade, koji su zatim ponovo okupljeni od strane medija playera klijenta.

Nekoliko adaptivnih bitrate streaming rešenja:

HTTP Dynamic Streaming – Adobe

Od puštanja Adobe Flash Playera 10.1, i Open Source Media Framework 1.0 (OSMF), sadržaj isporuke usluga, stvaraoci i izdavači imali su opciju usklađivanje HTTP Dynamic Streaming da znatno povećaju svoj domet kada je u pitanju pružanje kvalitetnih video iskustva klijentu. HTTP Dinamic Streaming (HDS) je prava streaming tehnologija, ali ne zavisi od specijalizovanih streaming servera ili vlasničkih transfer protokola. . Pored toga, potreban alat da biste gledali svoj video preko HTTP dobija se besplatno sa Adobe.

Da biste pripremili svoje medije za HDS, uradite sledeće:

Spakujte vaš FLV, F4V ili druge MP4-kompatibilne datoteke pomoću slobodanog f4fpackager alata.

Preuzmite f4fpackager. f4fpackager je komandna linija alat dostupan za Windows i Linux koji koristite za pretvaranje svoje izvorne medijske datoteke u nužno-fragmentiranedatoteke potrebne za strimovanje. Možete skinuti packager  besplatno sami, ili koristite verziju koja se isporučuje u okviru Flash Media Server 4.0 i dalje. Proces je prilično jednostavan i brz, mnogo brži nego kodiranje izvornog fajla za početak! Za pokretanje Packager u operativnom sistemu Windows, na komandnoj liniji, “cd” u svoj Flash Media Server ili Apache web server instalaciom ““tools\f4fpackager” foldera. Odavde se lako pokrene Packager jednostavnim kucanjem “F4″ (tada Tab), i pustiti komandni prozor da auto kompletira pokretanje f4fpackager.exe. Dajte Packageru najmanje sledeće argumente:

01 --input-file=<em>theFullPathToYour/Media
01 --output-path=theFullPathToTheOutputLocationOfYourChoice

Alternativno, možete izostaviti argument izlaz, a Packager će staviti upakovane fajlove u izvornom direktorijumu. Više Packager argumenta za stvari kao sto su trazenje bitrate nekog datoteke, kriptovanje, itd mogu se naći ovde.

f4fPackager at the command line
Korišćenje f4fPackager na komandnoj liniji

Ako sve ide dobro, trebalo bi da imate 3 nova fajlova za svaku izvornu datoteku koju ste poslali Packager-u:

  1. .F4M (manifest) file
  2. .F4F (fragment) file
  3. .F4x (index) file

Manifest fajl (F4M.). je XML fajl koji sadrži bitne informacije o vašim medijima koje medija plejer analizira kako bi se reprodukovao pravilno datoteku. Da biste saznali više o F4M, i. F4F tipovima datoteka., Pogledajte Džona Krozbi serija na HTTP Dinamic Streamingu

The 3 packaged files: .F4M, .F4F, and .F4X

Uverite se da imate HTTP Poreklo modula spreman zarad

Instalirajte i konfigurišite HTTP Module Porijekla u postojeću instalaciju Apache web servera. HTTP Modul porekla je proširenje na Apache web serveru koji je neophodan za striming medija preko HTTP-a za Flash Player. Možete preuzeti modul ovde.  Alternativno.,I HTTP modul porekla i Apache web server dolaze u paketu i konfigurisani sa Flash Media Server om verzije 4.0 i gore. *Napomena* Uvjerite se da se vas server Apache koristi operativni sistem Windows, podrazumevan, Apache web servis počinje konfiguraciju unutar Flash Media Servera 4 koji je postavljen na “Manual”. Možda ćete želeti da se prebaci ovo na “automatski”.

Postavi vase spakovane media server datoteke u vod direktorijum vašeg Apache web servera (webroot / vod/)

Kada imate sve datoteke pravilno upakovane, i vi ste instalirali i konfigurisali Apache web server, kao i HTTP Modul porijekla (kao samostalan ili u paketu u okviru Flash Media Server), sve sto treba da uradite na strani servera je postaviti 3 upakovana fajla u vod fasciklu unutar vašeg Apache servera, i zgrabite URL (e) medijske datoteke (e) koje želite da pustite. *napomena* Apache je postavljen za slušanje na port 80 kao podrazumevano, i prelaze na port 8134 ako port 80 je u upotrebi. Međutim, možete konfigurisati Apache server da sluša bilo koji dostupan port.

Make sure Apache service is running

Konfigurisanje media player da ukaže na URL medi unutar vašeg vod fajla

Dobrodošli ste da izgradite sopstveni prilagođeni player na potoku preko HTTP-a, međutim, fini ljudi na Adobe i Realeyes mediji su već uradili dosta posla za vas. Dajte nekima ili svima od sledećih playera sansu:

REOPS Player   Moćan, OSMF-baziran media player iz Realeyes medija The Realeyes OSMF player primer (REOPS) nudi odličnu bazu za stvaranje snažnog video playera koristeći Open Source Media Framework (OSMF) iz Adobe. REOPS je trebalo da bude kamen temeljac za programere, kao i vizuelni prikaz da ilustruje mogućnosti i kako da se od OSMF framework. The REOPS projekat uključuje veoma proširu i robustnu kontrolnu traku i šablone da pomogne da prilagodite traku kontrole, kao i Full-screen podršku, zatvoren Captioning iz eksternog fajla, kao i OSMF dinamički plugin podršku. The REOPS projekat može da se koristi za primenu lako prilagođenog player videa koji podržavaju progresivnu video reprodukciju, video na zahtev, striming live streaming i dinamičkih striming. Šta više, sve ove funkcije se mogu konfigurisati iz spoljnog XML fajla.

Flash Media Playback Besplatan, standardni medija player za Adobe Flash platformu Flash Media Playback može koristiti bilo koji sajt sa samo nekoliko linija HTMLa, omogućavajući video i druge medije u nekoliko minuta. Njegova prošira plug-in arhitektura omogućava jednostavnu integraciju sa mrežama sadržaja isporuke (CDNs) i oglašavanja platformi, kao i podršku za analitiku i dodatne nezavisne usluge. Sa podrškom za najnovije metode isporuke, Flash Media Playback omogućava web programerima svih nivoa da u potpunosti iskoriste mocne karakteristike videa na Flash Platformi.

Strobe Media Playback Besplatni, OSMF bazirani media player iz Adobe. Strobe Media Playback je Open Source Media Framework (OSMF) baziran media player koji možete brzo i lako integrisati u vaš sajt. Sastavni SVF i njegov izvorni kod su dostupni za besplatno preuzimanje ovde.

… ili napravi svoj pomocu sledeceg tutorijala!  Ovladavanje OSMF-Adobe Developer Connection serije. John Crosby i David Hassoun iz Realeyes medija napisali su odličan niz članaka i tutorijalekoji nas vode kroz ucenje rada sa OSMF. Oni počinju sa izgradnjom jednostavnog medija playera, a onda zarone dublje u složenije teme, kao što su odvajanje kontrole, uključujući media prekrivače, kao i integraciju i razvoj custom plugin-a.

Bilo da odlučite da izgradite sopstveni ili da koristite medija player koji je vec napravljen, moraćete da istaknete svoju aplikaciju na F4M fajlu. vod direktorijumu vašeg Apache servera. Opet, ovo je media manifest datoteka, XML datoteka koju media player koristi da analizira ažne informacije o medijima, kao što su bitrate, trajanje, itd

 HTTP Dinamic Streaming zahteva Flash Player 10.1 i gore. Bilo koja verzija OSMF, počevši od 1.0 bice kompatabilna sa HDSom.

Streaming Demo

Ispod je primer ugrađenog Flash Media Playback medija playerakoji dostavlja video preko HTTP-a. Ako želite,možete podesiti svoj player ovde. Ukoliko želite da koristite iste upakovane fajlove koji se koriste u demo, možete ih preuzeti ovde.

Naravno, ova demonstracija samo pokazuje video snimak preko HTTP-a to nije primjer moćnih funkcije dostupnih preko HDSa, kao što su promenljive bitrate prebacivanje, enkripcija, ili kasno vezivanje audio. Ostanite uz nas za vise informacija i o tome..

Where to go from here

Za dublji pogled na HDS, uključujući rasprave o File Encriptionu, Live streamingu, pogledajte John Crosby seriju na HTTP Dinamic Streamingu

Za informativni pogled na svet OSMF, uključujući i duboko zaranjanje u takvim stvarima kao građenje prilagođenih medija playera i dodatke integracije i razvoja, pogledajte David Hassoun i John Crosby’s clanak serijeMastering OSMF na Adobe Developer Connection sajtu .

Za informacije o tome kako Realeyes Mediji vam mogu pomoći da se prebacite na HTTP Dinamic Streaming, budite slobodni da nas kontaktirate danas.

This article is translated to “” Serbo-Croatian language by Vera Djuraskovic from “”

As technologies related to the production and delivery of digital motion media continue to advance, so do consumer demands for an increasingly varied and rich media viewing experience. High-definition video is now being delivered to more users, on a wider variety of devices, and through more complex networks than ever before. For content providers, this of course means more available avenues for media distribution and monetization.


Traditionally, video has been delivered to the client in one of two ways: either by progressive download using the widely-supported HTTP protocol, or by streaming, using protocols such as RTP, RTMP, UDP, or TCP, in conjunction with specialized server-side software to handle the stream (e.g., Flash Media Server or Windows Media Services). These two delivery methods had both advantages and disadvantages. Streaming media protocols offered the viewer a better experience by allowing the video to play back right away, without having to first wait for it to completely download. They also made possible such features as adaptive bitrate streaming to compensate for fluctuations in user bandwith, live viewing, content encryption, and smart scrubbing. These features often came at a significant cost, however, and as such weren’t a viable option for many content providers. Delivery over HTTP on the other hand, required a complete file download before viewing could start. In addition, content transferred in this way was stored on the end user’s hard drive, and was therefore often not the best solution for displaying copyright-protected content. However, support for the HTTP protocol was, and remains to be, very widespread. Specialized server technology isn’t required to deliver content over HTTP-a simple (and free) web server will do. Being supported by existing and widespread server hardware and caching infrastructures continues to be one of the major advantages of using the HTTP protocol.


In the past, content providers often faced a difficult dilemma. Should they make the relatively large financial investment in order to provide the best streaming video experiences to their end-users? Or would their ROI be better served by delivering a less-robust viewing experience, albeit to a potentially larger audience, over HTTP? Companies such as Move Networks, Microsoft, Adobe, and Apple have come up with their own unique solutions to this problem-the problem of dynamically streaming media over the HTTP protocol. Each solution involves breaking up the encoded media files into smaller chunks, which are then re-assembled by the media player on the client end.

A few adaptive bitrate streaming solutions:

HTTP Dynamic Streaming – Adobe

Since the release of Adobe Flash Player 10.1, and the Open Source Media Framework 1.0 (OSMF), content delivery providers, creators, and publishers have had the option of leveraging HTTP Dynamic Streaming to vastly increase their reach when it comes to delivering quality video experiences to the client. HTTP Dynamic Streaming (HDS) is a true streaming technology, but not dependent on specialized streaming servers or proprietary transfer protocols. In addition, the tools required to make your media files streamable over HTTP are provided free from Adobe.

To prepare your media for HDS, you do the following:

Package your FLV, F4V, or other MP4-compatible files using the free f4fpackager tool.

Download f4fpackager The f4fpackager is a command line tool available for Windows and Linux that you use to convert your source media files into the necessarily-fragmented files required for streaming. You can get the packager for free on its own, or use the version that ships within Flash Media Server 4.0 and up. The process is fairly simple and quick-much faster than encoding the source files to begin with! To run the packager in Windows, at the command line, “cd” into your Flash Media Server or Apache web server installation’s “tools\f4fpackager” folder. From here, easily run the packager by simply typing “f4″ (then Tab), and let the command window auto-complete your prompt to launch f4fpackager.exe. Give the packager at least the following arguments:


Alternatively, you can omit the output argument, and the packager will place the packaged files into the source directory. More packager arguments for doing things like declaring a file’s bitrate, encrypting, etc. can be found here.

f4fPackager at the command line
Using the f4fPackager at the command line

If everything goes well, you should have 3 new files for every source file you sent to the packager:

  1. .F4M (manifest) file
  2. .F4F (fragment) file
  3. .F4x (index) file

The manifest file (.F4M) is an XML file that contains pertinent information about your media that the media player parses in order to play back the file appropriately. To learn more about the .F4M, and .F4F file types, please check out John Crosby’s series on HTTP Dynamic Streaming.

The 3 packaged files: .F4M, .F4F, and .F4X

Ensure that you have the HTTP Origin Module ready to go.

Install and configure the HTTP Origin Module into an existing Apache web server installation. The HTTP Origin Module is an extension to the Apache web server that is necessary for streaming media via HTTP to the Flash Player. You can download the module here. Alternatively, both the HTTP Origin Module and the Apache web server come bundled and configured with Flash Media Server versions 4.0 and up. *Note* Make sure your Apache server is running. On Windows, by default, the Apache web service start configuration within Flash Media Server 4 is set to “manual”. You may want to switch this to “automatic”.

Place your packaged media files into the vod folder of your Apache web server. (webroot/vod/).

Once you have your files properly packaged, and you’ve installed and configured your Apache web server, as well as the HTTP Origin Module (as a standalone or bundled within Flash Media Server), all you need to do on the server side is place the 3 packaged files into the vod folder within your Apache server, and grab the URL(s) of the media file(s) you wish to stream. *note* Apache is set to listen to port 80 by default, and to switch over to port 8134 if port 80 is in use. However, you may configure your Apache server to listen to any available port.

Make sure Apache service is running

Configure your media player to point to the URL of the media within your vod directory.

You’re welcome to build your own custom player to stream via HTTP, however, the fine people at Adobe and Realeyes Media have already done a lot of the work for you. Give any or all of the following example players a try:

REOPS Player  A powerful, OSMF-based media player from Realeyes Media The Realeyes OSMF Player Sample (REOPS) offers an excellent base for creating a robust video player utilizing the Open Source Media Framework (OSMF) from Adobe. REOPS is meant to be a building block for developers as well as a visual representation to illustrate the capabilities and how to of the OSMF framework. The REOPS project includes a very extensible and robust control bar skinning solution and templates to help customize the control bar, as well as Full-screen support, Closed Captioning from an external file, and OSMF dynamic plugin support. The REOPS project can be used to deploy easily customized video players that support progressive video playback, video on demand streaming, live streaming and dynamic streaming. What is more, all of these features are configurable from an external XML file.

Flash Media Playback A free, standard media player for the Adobe Flash Platform Flash Media Playback can be used by any website with only a few lines of HTML, enabling playback of video and other media in minutes. Its extensible plug-in architecture enables easy integration with content delivery networks (CDNs) and advertising platforms, as well as support for analytics and additional third-party services. With support for the latest delivery methods, Flash Media Playback enables web developers of all levels to fully utilize the powerful video features of the Flash Platform.

Strobe Media Playback A free, OSMF-based media player from Adobe Strobe Media Playback is an Open Source Media Framework (OSMF) based media player that you can quickly and easily integrate into your website. The compiled SWF and its source code are available for free download here.

…Or Build Your Own With These Tutorials! Mastering OSMF-Adobe Developer Connection Series John Crosby and David Hassoun of Realeyes Media have written an excellent series of articles and walkthrough tutorials for teaching us how to work with OSMF. They start with building a simple media player, and then dive deeper into more complex topics such as separating control, incorporating media overlays, as well as integrating and developing custom plugins. 

Whether you decide to build your own, or use a media player that’s been provided, you’ll need to point your application to the .F4M file within your Apache server’s vod directory. Again, this is the media manifest file, an XML file that the media player uses to parse important information about the media, such as bitrate, duration, etc..

 HTTP Dynamic Streaming requires Flash Player 10.1 and above. Any version of OSMF, starting with 1.0, will be capable of HDS.

Streaming Demo

Below is an example of the embedded Flash Media Playback media player delivering a video over HTTP. If you’d like, you can configure your own player here. If you would like to use the same packaged files playing in the demo, you can download them here. Of course, this demonstration is merely showing a video stream via HTTP-it’s not an example of the more powerful features available with HDS, such as variable bitrate switching, encryption, or late-binding audio. Stay tuned for coverage of those topics and more.

Where to go from here

For a more in-depth look into HDS, including discussions on file encryption, and live streaming, please refer to John Crosby’s series on HTTP Dynamic Streaming

For an informative look into the world of OSMF, including deep-dives into such things as building custom media players and plugin integration and development, please see David Hassoun and John Crosby’s article series “Mastering OSMF“on the Adobe Developer Connection site .

For information on how Realeyes Media can help you make the switch to HTTP Dynamic Streaming, please feel free to contact us today.


Adobe HTTP Dynamic Streaming documentation

f4fpackager documentation

F4M file format specification


HTTP origin module


Flash Media Development Server (free)

Apache web server

Scott Sheridan writes about, and messes around with, the latest technologies in digital motion media at Realeyes. He also does triathlons. Really big triathlons.

Feel free to reach out with any questions-we’re glad to help!

scott AT realeyes DOT com

Adobe Labs is currently previewing their latest animation tool-Adobe Edge, which you will be able to use to create animations destined for screens of all sizes. By using the latest web standards, such as HTML/HTML 5, CSS 3, and JavaScript, animators will be able to use Edge to create motion content with its easy to use, timeline-based interface. Edge will allow you to create compositions from scratch, or to import and animate existing web graphics (bitmap or SVG) and CSS-based HTML layouts.

Here’s an introduction to Adobe Edge from Doug Winnie:

Stay tuned, as an early preview release should be available soon. (July-ish)

  • You can sign up to be notified when the preview release becomes available here.
  • Follow Adobe Edge on Facebook

Today Adobe released version 4.5 of Flash Builder and the open-source Flex SDK. Arguably the most important update in this release is the added support for mobile application development. Developers can leverage Flash Builder 4.5 and the Flex 4.5 SDK to create applications destined for multiple mobile platforms using a common code base (Flex and or ActionScript 3.0). The new SDK includes 21 new, ready-made components that developers can use to build applications for Android, BlackBerry, or iOS. Testing and debugging can done on the desktop by leveraging the AIR-based device emulator, or by connecting devices locally and using a one-click process to package, deploy, and launch the application. Flash Builder 4.5 will generate platform-specific installer files to upload to a mobile application distribution site or store.

Adobe’s Serge Jespers demonstrates how to create an application that can run on several devices running Android, BlackBerry, or iOS using Flex and Flash Builder.

More on Flash Builder 4.5, and Flex 4.5:

Article: Coding productivity enhancements in Flash Builder 4.5

Video: Testing Android applications on the desktop

Download Adobe Flash Builder/Flex 4.5

Adobe Flex SDK

Adobe Flash Builder

TryBuyLearn MoreHelp & Support

Adobe announced yesterday that it is no longer going to provide support  for AIR on the desktop Linux platform. Instead, they will focus their attention on mobile platforms such as Android, Blackberry Tablet OS, and iOS. Adobe also announced that they will be prioritizing a Linux porting kit for AIR, which will include source code. Open Screen Project partners can use this porting kit to implement AIR on Linux-based platforms on PC’s, mobile devices, TV’s, and TV-connected devices. According to the announcement, AIR 2.6 will be the final Adobe-supported version (AIR 2.7 is the most current release). Existing AIR applications will continue to work on Linux PC’s, provided they target AIR 2.6 or earlier. However, users won’t be able to install new AIR applications, or apply application updates, including security updates. It is Adobe’s belief that any need for future versions of AIR on Linux desktop will be met by one or more of their partners.

This decision makes sense when you take a look at the numbers: according to Adobe, Linux desktop accounted for only 0.5% of AIR installations (Linux represents only ~1% of the desktop market overall). However, Adobe is predicting that by the end of 2011 there will be more than 200M smartphones and tablets which can download and run AIR applications.

Yesterday Adobe released AIR 2.7, which offers some important bug fixes, security patches, and very interesting feature enhancements and performance upgrades for both mobile and desktop applications. Developers can download the SDK here. Some of the improvements announced with this release include:

  • AIR to SD installation (Android only) Now end users can install the AIR runtime onto the SD card of their Android device, allowing them to save storage space on the main drive of their device.
  • 4X speed improvements for iOS Runtime optimizations allow developers to create applications for iOS that run up to 4 times faster when running in CPU mode. Click here for  a video of Renaun Erickson demonstrating this new improved performance on the iPad. Here’s an example of an Android application created by Robert M. Hall that will also be deployed to iOS thanks to AIR 2.7.
  • Media Analytics Using Adobe Site Catalyst with AIR 2.7 or Flash Player 10.3, developers can now easily(read: very little code) implement video analytics in both web and desktop applications, regardless of the implementation method or delivery protocol. New open API’s give analytics providers the tools to easily gather real-time, aggregated reporting of how video is distributed, what the audience reach is, and how much video is played.
  • Acoustic Echo Cancellation (Desktop only) Real-time, outside the browser, online collaboration experiences, such as group conferencing, in-game chat, and telephony now benefit from AIR 2.7′s new audio quality feature enhancements such as, Acoustic Echo Cancellation(AEC), noise suppression, voice activity detection, and automatic compensation for various microphone input levels. End users can now experience higher quality audio without the need for noise-reduction headphones.
  • Improvements to HTMLLoader API Developers now have more control over how clickable links behave within HTML content in standalone desktop applications. Magazine readers and eBook readers can now benefit from weblink-style navigation.
  • Faster development and debugging for iOS Applications By using the AIR Developer Tool (ADT), a command line development tool which is part of the AIR SDK, developers can dramatically speed up the testing and debugging process when creating applications for iOS. By enabling the Interpreter Mode for iOS in ADT, developers can enjoy a streamlined testing and debugging workflow.
  • Bug fixes and security enhancements Important fixes delivered with AIR 2.7 are outlined in Security Bulletin APSB11-13.

The full set of release notes for AIR 2.7 can be found here.

Download Adobe AIR

Download the free AIR SDK

Download AIR development tools