This tip was too good to not share. It comes from David Hassoun, who showed me this slick way to set up a defacto workspace for FMS, er, AMS projects. Essentially what you’re doing is creating a new VHost for your FMS dev server and pointing its application directory to wherever your workspace is. This assumes that you’re running a dev server on the same machine as you’re developing on. Here’s the rundown of steps:
- Decide on a name for your workspace. For example: MyFMSWorkspace.
- Go into your hosts file (you’re doing this from a text editor with admin rights, right?) and add an entry that points to 127.0.0.1 and gives it the host name MyFMSWorkspace.
- Save and close your hosts file
- Go into the conf directory in your FMS install (for example, C:\Program Files\Adobe\Flash Media Server 4.5\conf) and then go into the _defaultRoot_ folder.
- Copy the _defaultVHost_ directory and paste it into the same directory. Rename it to MyFMSWorkspace. Congratulations, you now have a new VHost on your FMS server
- Go into your new VHost folder and open the Vhost.xml file (with admin rights, of course).
- Locate the AppsDir node, and replace the contents with the path to your (e.g., <AppsDir>C:\_projects\myFMSDev\myFMSProject</AppsDir>).
- Save your Vhost file and then restart your FMS servers. You should probably restart both the Admin and the Main services.
- Open your FMS Admin Console and where you’d normally type in localhost, type in MyFMSWorkspace and use your normal admin credentials.
- You should be able to log in and be able to create new instances of applications that are stored in whatever you specified as your AppsDir. The myFMSProject directory in our example is now like the applications directory in your standard FMS install. You should now be able to connect to FMS applications in that app directory by using URIs like rtmp://MyFMSWorkspace/test where test is a directory inside the myFMSProject folder.
This will save me a ton of time and avoid the heartache of copying ASC files from my project directories into FMS. Thanks David!
Adobe Media Server 5 (formerly known as Adobe Flash Media Server) is now officially released and shipping. Along with a name change that clearly demonstrates its ubiquity across all platforms, AMS 5 has a great list of improved and new features that are available right out of the box. Coupled with its existing feature set, AMS 5 picks up right where FMS 4.5 left off and continues its delivery of media to multiple platforms with several protocols that can fit a large number of needs.
Here is a complete list of the Adobe Media Server 5 release features:
Expanded media streaming options
- Protected RTMP (pRTMP)
- 24/7 live streaming support
- Adobe Access key rotation and output protection (Adobe Access license required)
- Protected HTTP Dynamic Streaming for Adobe Flash and AIR (PHDS)
- Protected HTTP Live Streaming for Apple iOS (PHLS)
- Adaptive bitrate manifest support
- Multi-protocol manifest generator/pre-packaging tools (Flash and iOS)
- Adobe Access 4 DRM ready
- 608/708 closed captioning support
Enhanced communication features
- On-Demand stream packaging for HTTP (Flash and iOS)
- Audio extraction for HLS (required for Apple App Store approval)
- SIP Gateway support with G711 coding in Flash Player
- High quality audio/video capture support
- Scalable P2P introduction services for Flash
- Multicast ingest and recording
- Robust HTTP Media Origin services
- Advanced disk management for HTTP (Flash and iOS)
- Optimized Server configuration for live HDS
- Native 64-bit only
The Adobe Media Server 5 product line has the following editions available:
Adobe Media Server 5 Standard (formerly known as Adobe Flash Media Streaming Server) Even though it’s entry level, don’t let that fool you. With AMS 5 Standard, you can broaden your reach to more audiences by streaming RTMP and HTTP to Adobe Flash Player compatible and iOS devices.
- Internal video delivery on a small scale
- One-way broadcasting
- Video bloggers
Adobe Media Server 5 Professional (formerly known as Adobe Flash Media Interactive Server) The proverbial “Flagship” of the product line, AMS 5 Professional is both a robust and affordable solution. Leverage protected HTTP delivery internally and/or externally to Flash Player compatible and iOS devices and scale to fit needs. Target larger audiences and deliver DRM protected content with Adobe Access to implement a single workflow solution.
- Large broadcasters running HTTP origin services
- Broadcasters who need DRM protection over HTTP to all devices
- Large enterprise deployments with multicast support
- Small to medium sized businesses
Adobe Media Server 5 Extended (formerly known as Adobe Flash Media Enterprise Server) Leverage a large scale, unified communications network and deliver with high-quality voice and video capabilities to SIP-enabled devices through the integrated Adobe Flash Media Gateway. Add massive scalability and reduce network congestion with P2P capacity for large enterprise broadcasts to several locations over several networks.
- VoIP network services integration enabling traditional calls with Adobe Flash applications
- Massive-scale communication applications
- Large enterprises with global live delivery
- Immediate and complete media delivery control and content protection
Adobe Media Server 5 Starter (formerly known as Adobe Flash Media Development Server) In limited capacities, leverage all of the features available in all editions for Proof of Concept and development. Not to be used for production.
- Evaluation purposes only
- Proof of Concept
- Application level development
- Testing and/or staging
Let RealEyes help you determine which Adobe Media Server 5 edition meets your immediate and/or long term needs, and how to get started.
As some of you may or may not know, Adobe Media Server 5 was officially announced last month. This blog post from Kevin Towes (FMS/AMS Product Manager at Adobe) also gives a little more insight:
To better clarify, the Adobe Media Server product line (formerly known as Flash Media Server) began shipping June 21st 2012, in a staggered release format. The Linux version for new licenses is available immediately. The Windows version and upgrades will ship later this year. There are very few resellers able to offer the new Adobe Media Server 5 at this time, and it just so happens that RealEyes is one of them, so contact us for further details and questions.
It is also important to note that all Flash Media Server products will be getting a name change with this release as well. To avoid any confusion, the name changes are as follows:
- Adobe Flash Media Development Server → Adobe Media Server 5 Starter
- Adobe Flash Media Streaming Server → Adobe Media Server 5 Standard
- Adobe Flash Media Interactive Server → Adobe Media Server 5 Professional
- Adobe Flash Media Enterprise Server → Adobe Media Server 5 Extended
Some of the features of this version release include:
- Dynamic copy protection for Flash, Android and now Apple (DRM)
Reach a wider audience with a premium video experience consistently across devices, TVs and desktops with a single infrastructure to protect with a single protection solution.
- Simple publishing workflows for protected HTTP streaming
Use the same source media and live streams to deliver and protect full adaptive bitrate experiences to Adobe Flash, Android and Apple devices to help reduce storage and infrastructure costs.
- Standalone offline packaging utilities for HDS and HLS
New HLS packaging utility with integrated encryption to prepare your media content and lock it down with a wide variety of protection options including DRM with Adobe Access 4
- On-Demand stream packaging
Publish faster, reduce storage costs and save time by publishing video once with full adaptive bitrate support.
RealEyes is putting on an Adobe Media Server (AMS) 5 training program this June. This custom course was created from our 7+ years of working with FMS and AMS servers and their use in real-world deployments. Come join us for our inaugural AMS 5 class this June on the 18th and 19th.
With AMS 5 due out on June 21st, you can be ready for all that the new tool has to offer the day it comes out, and hit the ground running with your new deployment.
Do you currently have an FMS 4.5 or older deployment? Come get up to date on the newest features and functions and be ready to bring your deployment up to AMS 5.
To view our class and register go to: Deployment, Management and Delivery
You can always reach out to us at firstname.lastname@example.org or 303-433-1216 if you have any questions.
The other day a call came in from from a customer who had questions about Adobe Flash Media Server and if it would be the right software for their situation. After listening to their questions and exactly what their requirements were, I moved on from there.
As a product specialists, solutions engineers, developers, and trainers, the team here wear multiple hats. So in this case, I put on my solutions engineer hat, and began assessing their needs case.
Their initial inquiry was about streaming Flash based content within their Intranet. The customer was searching for a way to package internal asset videos and SCORM based training content together into one piece that could be uploaded to their proprietary Learning Management System (LMS). He had mentioned that they also had full motion videos, and that they too would like to be able to bring those recordings into the training piece. He asked about Adobe Captivate initially.
Seems easy enough, right? Give them Captivate.
Not so fast.
This Flash based content was quite complex and not as efficient as it could be. I recognized this as something I could use to minimize the clutter, and streamline the content from start to finish. The quick and easy route to a solution would have been to use Captivate and a couple other software applications. This would have worked, but it wasn’t the best solution. I’m a firm believer that less is more when it comes to software applications. The goal was to make it easier for end users to navigate and comprehend, as well as easier to manage for the content creators.
The solution actually turned out to be pretty simple – I had gathered all of the necessary information, the keywords of SCORM and LMS were a big help, from him and I decided that Adobe Presenter would be a better solution because of its simplicity. LIke any good customer, he questioned the solution & I explained it this way:
- Presenter has the ability to import the internal asset videos (already in .flv format).
- The full motion videos were already in .swf format, and Adobe Presenter can import those, as well.
- Presenter is a SCORM compliant eLearning content authoring tool, so you can leverage its quiz functionality to build the quiz, as well as deploy it to any LMS that utilizes SCORM as its reporting engine.
In the end, this was the solution that the customer ended up using. He appreciated the simplicity factor. And since he had really only been tasked with this project as a result of an employee leaving the company the simplicity was important to him since this wasn’t his primary role. A big win for the customer.
The point of this post is to emphasize just how important it really is to listen to all of the requirements before making any judgments and beginning to endeavor down that solution’s path. There are always multiple solutions to a problem. We help to determine the best solution.
The team at RealEyes excels at proposing the best solution for the situation. We take great pride in being an Adobe Solution Partner and Adobe Certified Instructors.
Looking for a solution to a problem? Contact Us!
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.
- 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.
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:
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.
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:
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)
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)
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 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.
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 Flash Player 10.1, Adobe Stratus 2, and Real-Time Media Flow Protocol (RTMFP) are setting a firm foundation for peer-to-peer (P2P) with peer-assisted networking. Using the capabilities of groups and the new features around them, you can make deployments of nearly any scale and take advantage of multiuser interactive applications for data and media. Everything from application-level video multicasting to swarming file delivery and multiuser games are within easy reach of developers, without the heavy burden being laid upon a server infrastructure.
RealEyes’ David Hassoun and Jun Heider have just released the first in a series of articles for Adobe’s Developer Connection that focus on the P2P capabilities of the Adobe Flash Platform, Adobe Stratus, and RTMFP. Future articles will dive deeper and provide a hands-on approach to utilizing the new groups and peer-assisted network topologies to make corporate enterprise, social media, and entertainment applications. Read the article.
More than 40,000 students use A Beka Academy’s home school curriculum each year. This stalwart of distance learning for primary and secondary education has traditionally delivered its video-based instruction to students using physical media, a costly and time consuming process.
A Beka Academy engaged RealEyes Media to create a digital process to augment their traditional delivery model. The resulting project used the spectrum of Adobe tools to yield both an automated process to encode, encrypt, and transfer more than 14,000 hours of video to a CDN as well as a consumer application that students will use to view assigned classroom video content.
The automated encoding process was designed to empower A Beka Academy to process and deploy new video content without dependence on an external vendor.
The consumer application’s purpose is to allow for secure, on-demand access of high-quality video lessons to each student while strictly enforcing business rules and safeguarding intellectual property. Two versions of the consumer application were created to meet the school’s needs fully. A Flash, browser-based version allows students to view assigned streaming video lessons by day or by subject. The AIR desktop version extends these capabilities, allowing students to download DRM-protected files for offline viewing.
In addition to providing a convenient, new delivery option for families using A Beka Academy curriculum, and realizing considerable ROI over time, the school undertook this project to meet the challenge of adequately enforcing its business rules. For example, the consumer application implements complex view rules based upon an individual student’s academic program, and enrollment status. This was not possible with the physical media delivery model. Furthermore, the school desired to enact more stringent control over its intellectual property to reduce or eliminate unauthorized use. DRM protection and SWF validation met this need.
This project also addressed other significant development challenges. These include:
- Thousands of hours of source video content needed to be captured from original physical media, encoded into H.264 format, secured with DRM protection, and deployed to a CDN.
- Families using the school’s curriculum are geographically diverse, with extreme variances in connection speeds, hardware performance, and technical knowledge.
- Instant access to streaming files was desired; however, it was also critical that students have the ability to view lessons when an internet connection was not available. Also, the ability to send the entire library of lessons via fixed media was desired to accommodate remote A Beka Academy schools.
The school’s physical media delivery model required that three shipments of DVDs were sent to each student, and then returned to the school. There is considerable financial cost to this process including shipping, media, processing, and replacement of lost/damaged disks.
Providing these files as h.264 Flash Video files for streaming and DRM-protected download access via a CDN is significantly less expensive per-student than the traditional physical delivery model. Additionally, as more students adopt this digital delivery method, there is an economy of scale as origin storage costs are distributed among a larger student base.
David Hassoun and Jun Heider of the RealEyes team will be presenting at MAX 2009 October 4–7 in Los Angeles, California. David will be presenting on Video in the Enterprise and Jun Heider’s topic will be Tackling Memory and Performance in Flash, Flex, and Adobe AIR.
Be sure to sign up and check out David and Jun’s sessions. Register here for what promises to be an amazing event!
Video in the Enterprise – David Hassoun
Learn how you can deploy video in Flash within your enterprise. This session will walk you through how you can support employee generated video, control access with LDAP and how to install, configure and customize the Adobe Flash Media Server within your network. The lab will focus on the specific challenges faced within large enterprises and implementing user authentication techniques using server side ActionScript. Step through the processes to deploy and discover the benefits of edge caching and other deployment techniques for high volume streaming using Flash Media Server within your network to publish live and recorded media.
Tackling Memory and Performance in Flash, Flex, and Adobe AIR – Jun Heider
Learn everything you need to know about managing memory during the lifetime of your application. We’ll address how objects are created and deleted, how the garbage collector works, and how to debug your applications to find any leaks. We’ll also cover how you can monitor the memory and performance of your application using the Flash Builder 4 Profiler. You’ll walk away with code in hand that provides solutions to common problems likely to be encountered when creating a wide range of applications.
RealEyes Media has been working at fever-pitch for the last few months to bring you the most Flash-tastic event in Denver’s history: Rocky Mountain Adobe Camp. And, of course, our crew will be there (alongside other premiere designers and developers) to present sessions on how you can best use Adobe’s web technology in your career. We invite you to join us in Downtown Denver on June 22, 2009 for the first ever Adobe Camp!
Here are the sessions that our team is presenting:
- Building Flash Video Players: Progressive and Streaming (David Hassoun)
- Enterprise Encoding and Encrypting (Jun Heider & David Hassoun)
- Building Your First Flex/AIR Application with Flex 4 (Jun Heider)
- Building Custom Connect Pods in Flash with Sync SWF (Nils Thingvall)
- Creating Courses and Curricula in Adobe Connect Pro (Jorma Jennings)
And, while we’re giving props to our team, we want to thank the Adobe Camp planning duo: Amanda Johnson and Josh Lucero. Make sure to meet them at the camp as well – they are making sure it will be a great day!