Language libraries

Client-side ActionScript API

Client-side scripts run in Flash Player, AIR, or Flash Lite. You can use Adobe Flash or Adobe Flex to write client-side scripts in ActionScript that access server resources (such as capturing live audio and video and streaming it to the server, which streams it to all connected clients).

Developers can use any Flash Player classes in a client-side script. The following classes are used to access Adobe Media Server resources:

Camera

Captures video from a camera attached to a computer running Flash Player or AIR. Use the NetConnection and NetStream classes to transmit the video to Adobe Media Server. Adobe Media Server can send the video to other servers and broadcast it to other clients running Flash Player, AIR, or Flash Lite.

GroupSpecifier

The GroupSpecifier class is used to construct the opaque groupspec strings that can be passed to NetStream and NetGroup constructors. A groupspec specifies an RTMFP Peer-to-Peer Group, including the capabilities, restrictions, and authorizations of the member using the groupspec.

Microphone

Captures audio from a microphone attached to a computer running Flash Player or AIR. Use the NetConnection and NetStream classes to transmit the audio to Adobe Media Server. Adobe Media Server can send the audio to other servers and broadcast it to other clients running Flash Player, AIR, or Flash Lite.

NetConnection

A two-way connection between the client and Adobe Media Server or between Adobe Media Server and Flash Remoting.

NetGroup

Instances of the NetGroup class represent membership in an RTMFP group.

NetStream

A one-way stream between the client and Adobe Media Server through a connection made available by a NetConnection object.

SharedObject

Share data between multiple SWF files. You can also share data between multiple Adobe Media Server application instances.

Video

Displays live or recorded video in an application without embedding the video in a SWF file. A Video object is a display object on the application's display list and represents the visual space in which the video runs in a user interface.

For more information, see ActionScript 3.0 Reference for the Adobe Flash Platform.

Server-side ActionScript API

Adobe Media Server Extended, Adobe Media Server Professional, and Adobe Media Server Starter provide access to Server-Side ActionScript. You can write server-side code to control log-in procedures, republish content to other servers, allow and disallow users access to server resources, and to allow users to update and share information.

Server-Side ActionScript is Adobe’s name for JavaScript 1.5, which is similar, but not identical to, ActionScript 1.0. Both languages are based on ECMAScript Language Specification Edition 3, but ActionScript 1.0 did not implement the specification exactly. Server-Side ActionScript runs in the Mozilla SpiderMonkey engine embedded in Adobe Media Server.

The following are the Server-Side ActionScript classes:

Application

A singleton class that represents an instance of an application in a server-side script. Use the Application class event handlers to control the flow of code in an application and to accept, reject, or redirect connections.

ByteArray

Provides methods and properties to optimize reading, writing, and working with binary data.

Client

Represents a client connected to an application. The server creates a client object each time a client connects. Use this class to get information about a client, set read and write access to server resources, and for remote method invocation.

File

Lets applications write to the server’s file system. Use this class to store information without using a database, to create log files for debugging, or to track usage.

GroupSpecifier

Defines the capabilities, restrictions, and authorizations of an RTMFP peer-to-peer group. Pass GroupSpecifier objects to the NetGroup and NetStream constructors to create a peer-to-peer group and multicast audio and video.

GroupControl

The GroupControl class represents an association between a remote peer and a group that it has joined.

LoadVars

Use this class to send variables in an object to a specified URL and load variables at a specified URL into an object over HTTP.

Log

Use this class to create log files when using web services.

MulticastStreamInfo

specifies various Quality of Service (QoS) statistics related to a NetStream object's underlying RTMFP peer-to-peer and IP Multicast stream transport.

MulticastStreamIngest

Use the MulticastStreamIngest class to ingest RTMFP multicast streams and convert the multicast data units to messages that a Stream object can use.

NetConnection

Creates a two-way connection between Adobe Media Server and an application server, another Adobe Media Server, or another application instance on the same server.

NetGroup

An RTMFP group. Use this object to post messages to the group, directly route messages to a group member, and replicate objects within the group. There are several NetGroup helper classes, as well.

NetStream

Opens a one-way stream through a NetConnection object between two installations of Adobe Media Server. You can also use this class to publish a source Stream into an RTMFP Group as a multicast stream.

ProxyStream

Proxies a stream from one Adobe Media Server to another Adobe Media Server over a server-side NetConnection object. Use the ProxyStream class to build large-scale applications that use DVR functionality.

SharedObject

Stores data on the server and shares data between multiple client applications in real time.

SHA256

An implementation of SHA-256 (secure hash algorithm) as described in Federal Information Processing Standards Publication 180-2. Use this class to generate a digest, or signature, for binary data. A receiver of the data can compute its own digest and compare that to the original digest value to ensure that the binary data has not been tampered with.

SOAPCall

The object type returned from all web service calls.

SOAPFault

The object type of the error object returned to WebService.onFault() and SOAPCall.onFault().

Stream

Use this class to manage or republish streams. For example, use the Stream class to create server-side playlists. You can also use this class to send data to clients subscribed to a stream and to add metadata to a live stream.

WebService

Use this class to create and access a WSDL/SOAP web service.

XML

Use this class to load, parse, send, build, and manipulate XML document trees.

XMLSocket

Use this class to implement client sockets that let Adobe Media Server communicate with another server identified by an IP address or domain name.

XMLStreams

A variation of the XMLSocket class that transmits and receives data in fragments.

For more information, see the Server-Side ActionScript Language Reference.

Plug-in API

Use the Adobe Media Server Plug-in API to write C++ plug‑ins that extend the functionality of the server.

Access plug-in

Adds a layer of security before the server accepts connection requests from clients. The Access plug‑in examines each connection request before it reaches the script layer of the server. The plug‑in determines whether the server accepts or rejects the request based on server statistics, such as the number of current connections. You can code the Access plug‑in to set permissions to server resources such as streams and shared objects. You can also code the Access plug‑in to assign client connections to applications to certain core processes.

Authorization plug-in

Authorize client access to events that occur on the server. Use the Authorization plug‑in to authorize connections to the server, playing of streams, and publishing of streams. You can also map logical URLs to physical locations. The Authorization plug‑in can deliver content according to the geographic location of the client, the subscription level, or the duration a client has viewed a stream. In Flash Media Server 3.5 and later, you can access client statistics, such as bytes in and out, RTMP messages in and out, and RTMP messages dropped.

File plug-in

Provides an interface between the file I/O mechanism and the server. Developers can implement an alternative file I/O system in place of the default operating system-based file system. The File plug‑in interface supports a fully asynchronous model for file operations, making it easier to implement network-based file I/O. In Adobe Media Server 3.5 and later, the File plug‑in supports operations on streams and SWF files.

For more information, see Developing Plug-ins and Adobe Media Server Plug-in API Reference.

Administration API

The Administration API can be used to monitor, manage, and configure the server from a Flash Player or AIR client over RTMP or from a web client over HTTP. The Administration API lets you do the following:

  • Monitor the server and its applications and services.

  • Perform administrative tasks, such as adding administrative users and starting and stopping the server, virtual hosts, and applications.

  • View and set values for server configuration keys.

    Some methods are available only to server administrators; virtual host administrators cannot use these methods. In some cases, virtual host administrators can use a method with restrictions; any restrictions are described in the entry for that method. For more information, see Adobe Media Server Administration API Reference.