Adobe Media Server Release Notes

Macromedia Flash Media Server 2.0.2 Release Notes

This document addresses issues that are not discussed in the Macromedia Flash Media Server 2 documentation. This document may be updated as more information becomes available.

About Flash Media Server 2.02

This update to Flash Media Server 2.0 provides a number of key bug fixes. Adobe recommends that you install this update if you are currently using Flash Media Server 2.0 or 2.0.1.

You can also check out the many resources available for learning about Flash Media Server at the Flash Media Server Developer Center. Find inspiration with tips, articles, tutorials, and resources, or steer your project to success with forums, code examples, exchanges, and reference materials.

System Requirements

Flash Media Server 2 is supported on Windows® 2003 Server, Windows 2000 Server, Linux Red Hat® Enterprise 3.0, Linux Red Hat Enterprise 4.0.

For information, see the Flash Media Server 2 system requirements.

What's New in this Release

The following bugs have been fixed in this release. The bug tracking number is included for items where applicable.

[157645] The configuration file processing for each incoming connection was optimized.

[158573] The root shared folder in UNC path wasn't recognized by FMS, but the sub folder was recognized.

[160993] When a play command is followed by an immediate seek, a race condition could occur which caused streams not to play.

[163305] On Linux, interrupt was not being handled when a write was in progress which would result in a disconnect.

[165630] In an Edge/Origin configuration, the streaming buffer takes much longer to fill when it is connected through an Edge server.

[165905] Playing FLV files containing invalid metadata would cause an assert in the logs.

[166039] Recording FLVs with inserted server-side data messages could result in backward timestamps in the FLV.

[167138] In an Edge/Origin configuration, a missing segment could cause video or mp3 playback to stall.

[168837] A race condition between deleteStream and initStream in an Edge/Origin stream transmission would lead to a crash.

[168904] In an Edge/Origin configuration, loading of FLV segments was optimized to reduce CPU and memory load.

[169413] In an Edge/Origin configuration, the Edge server requested boundaries even when it had a complete locally cached file.

[169588] Server-side connections were incorrectly being counted against the license limit.

[169600] In an Edge/Origin configuration, recorded audio would play the cached stream even after deleting that stream.

[169931] In an Edge/Origin configuration, the FMS Core process handling a proxy could crash if an application was unloaded on the Edge.

[170192] Shutting down the server while it was playing a recorded stream could cause a fault in the FLV module.

[172735] Stream.length was not set to 0 after Stream.clear was called.

[173165] Server side didn't function if used more than once after a delay (gc interval), because the stream was not being unpublished when the Stream object was garbage collected.

[173221] There were potential errors in the reporting of sc-stream-bytes under certain circumstances when the user requested some actions (e.g. click fast-foward button).

Known Issues

The following issues were known to exist at the time of the release. These issues are in addition to any listed elsewhere.

The FLV cache configuration should be picked such that the total memory use is under 1 GB. Otherwise, it may result in a FMS Core crash.

If the connection rate is very high and the application is unable to process the connection within 30 seconds, this will result in FMS stopping the application. A workaround for this is to set <CoreTimeout> in Server.xml to 0.

If a connection attempt is made using RTMPT and the browser closes the connection before the session is established, there is a potential memory leak in the FMS Edge process.

On Linux, a log file size greater than 2 GB is not supported.

Installation on Red Hat Linux

  • There is no option to modify an individual installation option. If needed, use Control+C to exit the installer and begin again.

Server: All Platforms

  • Garbage collection can sometimes interfere with streams, stopping the playback in mid-stream.
  • Sometimes the admin server reports the number of connected users incorrectly. This does not affect the licensing limits, which does not rely on this to track connections.
  • When upgrading from Flash Communication Server (version 1.0 only), the original serial key cannot be combined with the upgrade serial key using the Flash Media Server 2 Management Console. Workaround: First, enter the Flash Media Server 2.0 upgrade serial key using the FMS Management Console. Then, manually add the Flash Communication Server 1.0 serial key to the <LicenseInfo> tag in the Server.xml configuration file. Separate the original and upgrade serial keys with a semi-colon (;). Restart Flash Media Server to effect the change.
  • To open the Flash Media Server 2 Management Console at any time, double-click the fms2_console.swf file and enter “localhost” or the address of the Flash Media Server. To run the management console from a computer other than the computer where the server is installed, you can either copy the fms2console.swf file to the other computer; or, ensure that the .swf file is in your webroot directory so it can be accessed remotely.
  • When using the Management Console during application development, it may be necessary to close the console and log-in again after Flash Media Server and Flash Media Admin Server have been stopped and restarted.
  • In the Management Console's Manage Servers Details pane, for getServerStats the "total_connects" and "connected" properties do not increase with rtmps or rtmpt connections. For getVHostStats both of these properties do increase with these types of connections.  
  • The server-side XML.ignoreWhite property can only be set before populating an XML object with data. To use the ignoreWhite property, you must first construct the object using the default XML object constructor (e.g. xmlVariable = new XML();) and then set the ignoreWhite property (e.g. xmlVariable.ignoreWhite = true;).
  • Names assigned to vhosts must have corresponding DNS entries that can be resolved by clients to the appropriate IP address for the server.
  • When using the SetBandwidth component, note that you can set the up/down rates in the component using a programmatic call to the setRates() method, as shown in the following example:
     var up = 146; // up bandwidth of 146 kbit/sec
     var down = 0; // down bandwidth of unlimited kbit/sec 
     setbw_mc.setRates( up, down ); // assume setbw_mc is an instance of FCSetBandwidth component
  • If your application uses components and you define a custom onAppStop method in your main.asc script, make sure that it returns either true or false. If your onAppStop method doesn't return anything, the onAppStop methods defined in the components' server-side scripts will not be invoked, and the components might not work properly.
  • The key_value argument of the setConfig method can be an XML hierarchy, but needs to be valid XML. The following example is valid, assuming "nc" is a NetConnection object:"setConfig", 0, "Hello", "<World><Tag1>value1</Tag1><Tag2>value2</Tag2></World>",    "/");

    and will result in deleting any tags already in the <Hello> hierarchy and replacing it with the values:

  • <World> 

Server: Red Hat Linux

  • If the Flash Media Server ports are not free by the time a server restart command is issued, the restart command might fail and a "bind failed" error might be displayed. This error occurs whether the restart command is issued by the command line or through the Management Console. If you get this error, issue a "server stop" command (in the Administration Console, click Shutdown) and wait for confirmation that the server has stopped. Then, issue a "server start" command (in the Administration Console, click Restart).
  • Permissions for FLV files are read and write for the owner and group by default. The Server.xml file contains a <Mask> node with a default value of 017 (15 in octal). Note: Do not deny read/write access to the owner, or the server will be unable to write or read from the file and application users will not be able to create FLV stream files.

Documentation Updates

In the Flash Media Server 2 Server Management ActionScript Language Reference manual, on page 37, the properties for the getLicenseInfo() data object have changed. The “key,” “type,” “family,” and “edition” properties are no longer available. A new license_files object containing information about license files has been added.

In the Flash Media Server 2 Server Management ActionScript Language Reference manual, on page 42, the properties for the getNetStreamStats() data object have changed. A new client_type property has been added. Different types of clients include the following: normal clients (clients connected directly to the origin server through Flash player), group clients (edge servers connected to the origin), virtual clients (clients connected through an edge to the origin) and service clients (clients connected to the service application).

In the Flash Media Server 2 Server-Side ActionScript Language Reference manual, on page 115-116, one of the methods used to invoke setInterval() is no longer valid. The first method, setInterval(function, interval[, p1, …, pN]) is correct and should be used. The second method, setInterval (object, methodName, interval[, p1, …, pN]) is not valid.

In the Flash Media Server 2 Server-Side ActionScript Language Reference manual, the usage description for Stream.setVirtualPath() on page 158 is incorrect. The statement should read: Stream.setVirtualPath(virtual Path, directory, virtualKey) .


Viewing documentation updates using LiveDocs
In addition to accessing Flash Media Server documentation in the Flash Help panel, you can access the same documentation online in the LiveDocs format. One of the advantages of LiveDocs is the ability to see comments that clarify the documentation. Macromedia recommends reviewing LiveDocs to see if any errata or issues relating to the Flash Media Server features you are using have been reported.

To find the equivalent page on the LiveDocs website, click the View Comments on LiveDocs link at the bottom of any help page in the Flash Help panel. Your web browser will launch, and take you to the specified LiveDocs page.

The Flash Media Server LiveDocs are available at:

Reporting a bug to the Macromedia Flash Media Server Team

Found a bug? Your first step should be to contact Macromedia Technical Support. They can help you resolve issues and they can also log bugs. If you are no longer eligible for support, please use the Macromedia Software Feature Request and Bug Report form.

In order for us to understand the issue being reported please include every detail possible, including the operating system details, CPU, memory, crash log (if applicable). We will get back to you when the issue you reported has been verified.

Thank you for using Macromedia Flash Media Server, and for taking the time to send us your feedback

Notices, Terms, Conditions, and Attribution

Copyright (c) 1993-2006 Adobe Macromedia Software LLC and its licensors. All rights reserved. Macromedia, the Macromedia logo and Flash are trademarks or registered trademarks of Macromedia, Inc. in the United States and/or other countries. Other marks are the properties of their respective owners.

This computer program is protected by copyright law and international treaties. Unauthorized use, reproduction, or distribution of this program, or any portion of it, may result in severe civil and criminal penalties, and will be prosecuted to the maximum extent possible under the law.

Notices, terms and conditions pertaining to third party software are located at and incorporated by reference herein.

Flash Media Server Resources


About Documentation Types

Find out more about the various documentation types available for learning materials including LiveDocs, Help, and PDF.