Showing posts with label Flash Media Server. Show all posts
Showing posts with label Flash Media Server. Show all posts

Two Presentations on Peer-to-Peer in Flash


I've noticed two separate presentations having been posted by separate authors, both covering the Peer-to-Peer features in Flash Player 10 in combination with Stratus.
The first, shorter video tutorial was authored by Tom Krcha of Adobe and guides you through building a simple P2P application leveraging Stratus. Watch it here.

The second presentation is an hour long session by Danny Patterson and goes into more depth than the previous tutorial. I haven't watched it in full but the part that I have seen looked very interesting and I definitely recommend you check it out.

It should be noted that Stratus is still in beta and detecting failed P2P connections can be a quite tricky. I would not recommend the P2P features for production use yet, instead you may want to rely on AFCS to handle the RTMP fallover for you.

Vendor Lock Out: Screen Sharing via the Flash Player and FMS


The following post has been sitting in my drafts folder for a while and I wasn't sure whether to publish or not. Today I decided I would, and it was after reading a very interesting article by Mike Slinn on InsideRIA. It talks about Adobe's lack of focus on its developer community, and how a shift in startegy may mean winning the RIA market for Adobe.

I'm always hesitant posting an article such as the one that follows as it will most likely be perceived as mainly negative by Adobe and its employees, many of which I know personally and rate very highly. I realise that there are people behind the software that this corporate behemoth churns out and it is for that reason that I'd like to say upfront that everything posted here has Adobe best interests in mind. I desperately want Adobe to succeed in the RIA market (and commonly they are doing a good job - but could do better...) and it is frustrating to see them making decisions that I think are not in their best long term interest.

RTMP Specs Spark Debate on the FlashMedia List


The release of the RTMP specs by Adobe yesterday has thrown up some questions on the nologies. And free Adobe tech support too - I suggest you FlashMedia List, and several people are asking themselves if it is a good idea to actually read them as doing so (or even simply downloading the specs) will mean that you agree to be bound to the RTMP license. In particular, the license includes a section about prohibited uses:

"Prohibited Uses
The rights and licenses granted by Adobe in the RTMP Specification, including those granted in the Patent License, are conditioned upon Your agreement to use the RTMP Specification for only streaming video, audio and/or data content and not to make, have made, use, sell, offer to sell, import or distribute: (i) any technology that intercepts streaming video, audio and/or data content for storage in any device or medium; or (ii) any technology that circumvents technological measures for the protection of audio, video and/or data content, including any of Adobe's secure RTMP measures. No right or license to any Adobe intellectual property is granted for such prohibited uses."

A long thread started on the list, and it was great to see not only community members participating but also several Adobe employees, including FMS engineers and even the product manager himself. Regardless of what you think of the RTMP license (I personally think it's a huge step in the right direction and underlines Adobe's commitment to removing barriers in this field) I think this level of engagement is rarely (ever?) seen by a multi-billion dollar company. Not only did Adobe engage, but they posted a wealth of information around the intricacies of RTMP/E/S security - many thanks to Kevin, Matthew, Asa, Jody and Brad (hope I didn't miss anyone) for regularly participating.

Further proof then (as if I didn't know) that the FlashMedia List is the place to be for the latest info on FMS, Flash video and its related technologies. And free Adobe tech support too - I suggest you subscribe right now :)
Once subscribed you can access the
list archives here.

Making Sense of Stratus, LCCS and FMS


There has been a bit of confusion around which one of Adobe's collaborative platforms offers or will offer certain features. In particular many people have asked if a developer always needs to rely on a hosted service such as Stratus or Lifecycle Collaboration Service (aka AFCS aka Cocomo) when wanting to use the new RTMFP protocol which will deliver (partly is delivering already) new and exciting features to the Flash Player.

To clear thing up, Kevin Towes, FMS Product Manager at Adobe, just posted the following information to the FlashMedia List:

STRATUS - this will always be ahead of the curve, providing a way to help us roll out new features that are in Flash player, before we can have a server offering. The service is and will remain as a free non-commercial service from Adobe. This service is not FMS, and has no ability for Server side scripting, or customization.

AFCS/LIVECYCLE COLLABORATION SERVICE - this will be a commercial option for customers interested in building a business that includes RTMFP. We introduced a pricing model, and it has support for the features found inside Stratus 1.0 (supporting Flash player 10.0). Key advantage with this service is the framework, which is an option for developers to get started, and leverage RTMFP to RTMP failover technology. You still will not have access to server side scripting, but there are lots of APIs in the framework to get you going. The goal for this service is to provide developers an option to bring this technology into your solution.

FLASH MEDIA SERVER - we have not announced any new version of FMS yet that will support RTMFP. We did hint yesterday that we'll be updating FMS3.5 to version 3.5.3 later this year to support the new FP 10.1 features - and in a future version after that release - FMS may be one of your options to host a local service to build your own P2P applications - including introductions, and supporting server side programming.

Live Uefa Euro 2008 via FMS


If you are in the UK and near a computer (but not near a TV) wanting to watch live football (or soccer if you prefer) action then head over to the BBC One Euro 2008 pages and watch it there - streamed live in Flash via FMS.

The quality is nothing to write home about, which is likely due to a low bitrate used. My guess would be sub-300 kbit (see screengrab). Still, even in fullscreen and way better than the stamp sized experiences we used to see only a few years ago. How times have changed - here we have one of the biggest sporting events in the world streamed live, for free, over the net. I wish Sky would take some ideas from that.

But bitrates aside (they could be adjusted if wanted by the broadcaster), this is a huge event for live Flash video. After the Masters a few months ago I doubt that anyone still has any doubts about Flash as a viable and credible live streaming platform.

Flash Platform News from Flash on the Beach


As you may know I am spending the main part of this week at Flash on the Beach in Brighton. If you don't know what Flash on the Beach is, it's the biggest Flash (and Flex, AIR etc) conference in the UK, if not Europe. It's also the best conference of the whole year in my calendar. I presented my session on monday right after the keynote so I am now free to enjoy the conference fully. While attending some of the sessions I gathered a few interesting bits of information, some of which may not have been public knowledge before.

First of all I remember hearing that AIR is coming to mobile devices, which is cool, especially considering that AIR is ActionScript 3 only (outside HTML and JS and so on) so this is definitely one to watch. Another interesting note was that ActionScript 3 support will come to server side FMS, and while it was not mentioned when exactly this may be it was stated by the Flash Player Team that it was 'being worked on'. Nice, and FINALLY! The Red5 team is also working on this feature, and I am sure they'll have it added way earlier too. Lastly, it sounds as if the ball will soon be firmly be in Apple's court as far as Flash on the iPhone is concerned. The Flash Player Team 'is working on Flash support for the iPhone, and are doing the best job they can'. In the end however, the iPhone is a closed platform and it is up to Apple to decide if they want to 'allow' it or not. A lack of Flash on the device is definitely not down to Adobe not trying hard, and there don't seem to be any technical problems hindering it either, but rather it sounds like a question of politics on Apple's part. This is how read it. Adobe will also concentrate on other devices of course, and the iPhone is only one piece of the puzzle. The bottom line to be seems to be: the Flash Player for iPhone will be available sooner rather than later, but it's still down to Apple to ok it.

Anyway, that's it from me for now - the pace of this conference is relentless, in a good way.

be Flash Media Encoding Server Announced


Adobe today announced the Flash Media Encoding Server at IBC. This is a new scalable, high-performance solution for converting multiple video file formats to Flash video (FLV/F4V) and the latest addition to the Adobe Flash Media Server family of products. The solution ispowered by Rhozet, one of the leading providers of transcoding solutions.

At IBC2008, Adobe is also previewing new technologies that will be available in future versions of Adobe Flash Media Server. These include dynamic streaming for delivering the highest quality, uninterrupted viewing experience, and the ability to pause or rewind a live video stream. Expect more news from IBC over the coming days.

Full press release here.

PureMVC Skeleton App for FMS


It's a bit embarrassing to admit that it has taken me this long to post this app. I first spoke about it at my talk at MAX 2008 in Milan but then Christmas came and went and I got swamped with work... Apologies, but better late than never.

So what have we got here? My PureMVC Skeleton App is a simple Flex project that uses thePureMVC framework to give you a bit of a head start with your next FMS project. I'm by no means suggesting that this is the best way to build an FMS app but what I can say is that it works well for me. Not only that but since I've picked up PureMVC I have been able to build much larger projects than ever before, and the framework allows me to come back to an app months later and pick it up in no time at all. Everything has its place and it's easy to find your way around, and projects generally end up well maintained.
One thing I should point out is that the app itself has no UI - there's nothing to see when you compile it (hence the skeleton bit in its name). You will however see traces if you compile a debug project, or install Firebug for Firefox so you can see the
Thunderbolt AS3 traces I tend to use extensively.

In order to connect to your own FMS application you first need to create it on FMS (mine is called pmvcskeleton) and then go into the ResourceBundleProxy and on line 42 add your corresponding RTMP string. I'm not sure if this is a good idea but I often use ResourceBundles for configuration options such as the RTMP string, I find it quite handy since they usually do not change so I just compile that in.

It helps if you are a bit familiar with FMS based applications and the MVC design pattern. For everything else check out the PureMVC website, it has tons of info and a lively community. Or why not sign up to my FlashMedia List, there's always a bunch of knowledgeable people there ready to help.

On this note I will leave you to it, take a look at the app and feel free to post a comment if anything isn't clear.

Massive thanks to Simon who gave me some excellent tips when I got stuck with certainPureMVC nags.

Download the project .zip here.

Flash Media Server 3.5 And Flash Media Live Encoder 3.0 Released


Yes it's out, and this time I've double checked! Flash Media Server 3.5 is now available for download and purchase from the Adobe website.

This release mainly adds new features such as the new Dynamic Streaming, DVR functionality, HTTP delivery support, and H.264 enhancements. There are no changes in licensing or pricing. The editions also remains unchanged with the Flash Media Streaming Server (FMSS) taking care of your live and on-demand streaming needs while the Flash Media Interactive Server (FMIS) provides more complex features such as recording capabilities and Origin-Edge setups, as well as full support for server side scripting.
Of course you can also try the
free Flash Media Development Server 3.5 and use all the features of FMIS up to a limit of 10 connections.

Download FMS 3.5 now.

Flash Media Live Encoder, Adobe's free live encoding tool for broadcasting live streams has also seen an update today, bringing it up to version 3.0. The major new feature here is the ability to encode multiple streams in multiple bitrates at once, publish them to FMS 3.5 and then make use of the Dynamic Streaming feature in a live setting. Pretty cool stuff.

You can download Flash Media Live Encoder 3.0 from this page.

Adobe To Publish RTMP Specs


Great news today amidst the Inauguration celebrations: Adobe is to publish the specificationsfor its (apparently patented) RTMP protocol. This protocol (the real-time messaging protocol) is designed for high-performance transmission of audio, video, and data between Adobe Flash Platform technologies, including Flash Media Server. Other server platforms such as Wowzaand Red5 had in the also added support for RTMP and this announcement should make it somewhat easier for third parties to develop compatible technologies (if there are still any unanswered question about RTMP that is).

According to Adobe's Serge Jespers, the RTMP details will soon be published on Adobe.com. The full press release is here.

"With the RTMP specification, developers and companies will be able to provide users with optimized audio, video and data streaming, no matter what kind of device the user is on or where the content is coming from," said Adobe CTO Kevin Lynch. "Our ongoing commitment to openness is accelerating adoption of the Flash Platform by developers and resulting in a new generation of Web applications, content and video experiences that run reliably across operating systems and devices."

Understandably Adobe will not release details of the secure variants of RTMP such as RTMPE since it forms the backbone of some of the content protection measures in Flash Media Server.

Adobe Strobe - A Video Player Framework


Adobe Strobe is the code-name for a new video player framework with an aim to help drive standards for media players.
Strobe is a great idea and sorely needed. These days every publisher, agency, developer, CDN and ad network are rolling their own video players and integration logic which means there is virtually no best practices approach as far as industry standards go. Why? Because there are no standards as of now, and you can bet that video player A which was developed with CDN B in mind will not work with CDN C unless some pretty major surgery is applied to the player's code.

Strobe is trying to alleviate these pains by providing a player framework which can be extended through a plug-in model. For example the connection routine between CDN A and CDN B differs drastically. In this case Strobe should (once released) allow both CDNs to provide connection routine plug-ins for Strobe (these may simply be some ActionScript3 classes) which developers can leverage easily without having to rework their existing video player code - provided it is built on top of Strobe.

Connection routines are of course just one aspect. Other implementation points may include advertising insertion, content syndication, micropayments, viewer authentication, transaction handling, and business model controls.

According to the FAQ Adobe Strobe is planned for release around the third quarter of 2009.

FLVPlayback Component Update - DVR, Dynamic Streaming in Flash & Flex


Today Adobe released an update to the FLVPlayback component (v2.5.0.15) for Flash CS4 and Flex 3 (yes, Flex is supported!).
This component has numerous bug fixes to make it more robust for streaming including support for Dynamic Streaming (multibitrate) and DVR. A new Devnet article is also available discussing these new features:
http://www.adobe.com/devnet/flashmediaserver/ (note Part 2 of the DVR article by David Hassoun).

We also released the new DVRCast application that makes it easy to add DVR-enabled live streams to your website using Flash Media Server 3.5.

There's much more info on the new features on Kevin's blog.

You can download both tools from: http://www.adobe.com/go/fms_tools/

I can't wait to try these new features - just need to wait for the next suitable live event :-)
I think it is highly likely that this is the last update to the FLVPlayback component we will see as the upcoming Strobe framework is likely to replace the efforts made my the component. Love it or hate it, the FLVPlayback component helped countless Flash newcomers to get their video content online quickly. If this is indeed the last update then it will go out with a bang as these new features are pretty cool - and we've got a Flex version thrown in too.

Running Flashcom Server alongside IIS


If you are running your own webserver and maybe have bought a Flashcom license alongside it then you might be tempted to run both your webserver and flashcom apps on the same box. And why not, after all we don't all have multiple machines at our disposal.

The following configuration is one that I have set up several times. I am running IIS (Microsoft's Internet Information Server) and FCS (Flash Communication Server 1.5.2) on the same server which uses Windows 2000 Server as its OS.
It's possible to use other webservers like Apache for this but in this tutorial I will focus on IIS and FCS on Windows so keep that in mind if your setup is different.

Strict Typing and the Communication Classes


ActionScript 2.0 introduced new language features like formal class definitions and strict typing that make it easier to build larger and more complex applications. However, many FlashCom developers quickly ran into problems when they tried to use strict typing with the NetConnection, NetStream, SharedObject, and other communication classes.

Flash Communication Server-Side framework


This subject sounds really advanced but it is not. There isn’t much info about the Flash Communication Server Server-Side framework but along this tutorial I’ll try to document some interesting parts of it that hopefully will help you with some common tasks you could have on your daily development.

I think this framework was created not as a utility but as a manager for flashcom server-side components (something like the UIComponent class for Client-Side components) but it also has some nice utilities we can take advantage of.

The normal .asc structure
Normally an .asc (ActionScript Communication) file will have this structure: