|
The Application.xml file contains
the settings for Flash Media Server applications. These settings
include the size of the Server-Side Media ActionScript runtime engine,
the location at which streams and shared objects are stored, and bandwidth
limitations.
The Application.xml file in the virtual host directory configures
the default settings for all applications within the virtual host.
If you want to have different settings for a particular application,
copy an Application.xml file to the application’s registered application
directory (/applications/app_name) and edit it to include
the settings you want.
In most cases, the settings in the Application.xml file in the
application directory override settings in the Application.xml file
in the virtual host directory, but not always. You can add an override attribute
to certain elements in a virtual host’s Application.xml file, as
in the following:
<LoadOnStartup override="no">false</LoadOnStartup>
The server uses the following rules when applying the override attribute:
When the override attribute is included
in an element and set to no, application-specific
Application.xml files cannot override that element’s setting.
If an element has the override attribute
set to no, then all subelements also cannot be
overridden.
If an Application.xml file is located in the application
directory and specifies a different value than the default for an
element that cannot be overridden, it is ignored, and the default
is used.
If the default Application.xml file is missing or invalid,
the server will not start.
If the user-specified Application.xml configuration file
is invalid, it is ignored.
All subelements under the LoadOnStartup element
cannot be overridden.
If you omit the override attribute, the LoadOnStartup element
can be overridden.
To change an element so it cannot be overridden, set the override tag
to no in the uppermost tag.
Note: By default, the Bandwidth and BandwidthCap container
elements include an override parameter set to yes,
which allows the values for the ClientToServer and ServerToClient elements
nested in these sections to be overridden. The Client element
in this XML file includes an override="no" attribute
by default.
To see the element structure and default values, see the Application.xml
file installed with Flash Media Server in the RootInstall/conf/_defaultRoot_/_defaultVhost_
directory.
AccessContainer
element.
The Access plug‑in consists of the libconnect.dll file. It intercepts
and examines each connection request to Flash Media Server to determine
whether the connection should be accepted or rejected.
Access (Logging)Container element.
Contains elements that configure logging in the Access log.
AccumulatedIFramesContainer
element.
The elements in this section specify the maximum size and duration
of intermediate frames a live stream can hold in the buffer.
AggregateMessages (Client)Specifies whether or not to send aggregate
messages to clients. When the enabled attribute
is set to true, the server will deliver aggregate
messages to clients that support them. When this setting is disabled,
aggregate messages are broken up into individual messages before
being delivered to clients. The default is false.
AggregateMessages (Queue)Container element; contains an element that
control the size of the aggregate messages.
This element also specifies, when queuing is enabled, whether
messages in the queue can be combined to form aggregate messages.
When the enabled attribute is set to true (the
default value), the server creates aggregate messages.
The server attempts to send aggregate messages to supported clients
whenever possible. When this setting is disabled, aggregate messages
are always broken up into individual messages before being delivered
to clients.
Example<AggregateMessages enabled="false"><\AggregateMessages>
AllowSpecifies
whether or not to allow the "following and Location:"
header that is sent with redirection of an HTTP header. The default
is true, allowing HTTP redirects.
Example<Allow>true</Allow>
AllowDebugDefaultSpecifies
the default value for application.allowDebug. This is an opening
that allows debug connections on a per application basis. The default
value is false.
Example<AllowDebugDefault>false</AllowDebug Default>
AllowHTTPTunnelThis
element configures the server to allow HTTP tunnelling connections
into this application.
By default, Flash Player communicates with the server using the
RTMP protocol over port 1935. If that fails, it will try again over
ports 443 and 80 in an attempt to get around firewall settings,
which prevents TCP/IP connections over nonstandard ports.
In some cases, Flash Player has to negotiate a connection to
Flash Media Server through an edge server, or use the HTTP protocol
to transmit RTMP packets (called HTTP tunnelling) if there
is a firewall that allows only HTTP content to be sent out to public
servers.
The values for this element are described in the following table.
Value
|
Description
|
true
|
Allows tunnelling connections.
|
false
|
Disallows tunnelling connections.
|
http1.1only
|
Allows HTTP 1.1 connections only.
|
keepalive
|
Allows HTTP 1.0 and 1.1 keepalive connections.
|
Example<AllowHTTPTunnel>true></AllowHTTPTunnel>
ApplicationThis
is the root element for Application.xml.
See alsoProcess, LoadOnStartup, MaxAppIdleTime, JSEngine, StreamManager, SharedObjManager, AllowHTTPTunnel, Client, Debug, HTTP, SWFVerification
AudioContainer
element.
The elements in this section specify the settings for audio streams
on the server.
AutoCloseIdleClientsContainer element.
Contains
elements that determine whether or not to close idle clients automatically.
Set the enable attribute to true to
close idle clients. If the enable attribute is omitted
or set to false, the feature is disabled. The default
value is false.
A client is active when it is sending or receiving data. Use
the AutoCloseIdleClients element to specify how
often the server should check for idle clients. When a client has
been idle longer than the maximum idle time (60 seconds by default),
the server sends a status message to the NetConnectionobject
(the client). The server closes the client connection to the server and
writes a message to the access log. The server also writes a message
such as “Client x has been idle for y seconds” in
the core and event logs.
To configure the closing of idle connections, you must enable
the feature in the Server.xml file. Once you enable the feature
in the Server.xml file, you can disable the feature for individual
virtual hosts in the Vhost.xml files or for individual applications
in Application.xml. The values defined in the Vhost.xml configuration
file apply to all clients connected to the Vhost, unless values
are defined in the Application.xml file. The Application.xml values
override the Vhost.xml values. (Subsequently, the values defined
in the Server.xml configuration file apply to all clients connected
to the server, unless the values are defined in the Vhost.xml file.
The Vhost.xml values override the Server.xml values.
Example<AutoCloseIdleClients enable="false">
<CheckInterval>60</CheckInterval>
<MaxIdleTime>600</MaxIdleTime>
</AutoCloseIdleClients>
AudioSampleAccessAllows
the client application to access the raw uncompressed audio data
in a stream. By default, this element is disabled. To enable it,
set the enable attribute to true. In the tag, specify
a list of semicolon-delimited folders to which client applications
have access. When this element is enabled, all clients can access
the audio data in streams in the specified folders. To enable access
to all audio data streamed by the server, specify / in the tag.
The folder path is restricted to the application’s streams folder
or folders, so do not use absolute paths in the list of folders.
While you can also enable access through Server-Side ActionScript,
this element allows access to the data without requiring Server-Side
ActionScript. You can also override this element with the Access
plug‑in or Server-Side ActionScript.
ExampleIf
an application is configured to store streams in folders C:\low_quality and C:\high_quality,
the configuration to allow access to sample those streams is as
follows:
<AudioSampleAccess enabled="true">low_quality;high_quality</AudioSampleAccess>
AutoCommitSpecifies
whether shared objects are automatically committed when they have been
changed. Setting this element to false disables
Flash Player function for all shared objects within this instance.
Note: If the AutoCommit function
is disabled, the server-side script has to call the save function
or the SharedObject.commit command for the shared
object to persist; otherwise, all data will be lost when the application
is shut down.
Example<AutoCommit>true</AutoCommit>
BandwidthContainer
element.
The elements nested in this container specify the bandwidth settings
for upstream (client-to-server) and downstream (server-to-client)
data.
By default, the Bandwidth element includes an override parameter
set to yes, which allows the values for the ClientToServer and ServerToClient elements
to be overridden as well.
BandwidthCapContainer
element.
The elements in this section specify the bandwidth settings that
a user can set. By default, this element includes an override parameter
set to yes, which allows the values for the ClientToServer and ServerToClient elements nested
in this section to be overridden, too.
BandwidthDetectionContainer
element.
This element contains settings for how the server detects bandwidth.
Set the enable attribute to true or false to
turn this feature on or off.
The server can detect client bandwidth in the core server code
(native) or in a server-side script (script-based). Native bandwidth
detection is enabled by default and is faster than script-based
because the core server code is written in C and C++.
The server detects bandwidth by sending a series of data chunks
to the client, each larger than the last. You can configure the
size of the data chunks, the rate at which they are sent, and the
amount of time the server sends data to the client.
The following table lists the values available for the BandwidthDetection element.
Element
|
Description
|
BandwidthDetection
|
Set the enabled attribute
to true or false to turn this feature
on or off.
|
MaxRate
|
The maximum rate in Kbps at which the server
sends data to the client. The default value is -1, which sends the
data at whatever rate is necessary to measure bandwidth.
|
DataSize
|
The amount of data in bytes that the server
sends to the client. To detect the client’s bandwidth, the server
attempts to send a series of random blocks of data to the client,
each time sending this much more data. For example, x bytes are sent,
followed by 2x bytes, followed by 3x bytes, and so on until MaxWait time
has elapsed.
|
MaxWait
|
The number of seconds the server sends data
to the client. Increasing this number provides a more accurate bandwidth
figure but also forces the client to wait longer.
|
Example<BandwidthDetection enabled="true">
<MaxRate>-1</MaxRate>
<DataSize>16384</DataSize>
<MaxWait>2</MaxWait>
</BandwidthDetection>
BitsThis
element contains the settings for Flash Player on the Windows and Macintosh
platforms.
Example<Bits from="WIN 6,0,0,0" to="WIN 7,0,55,0">0x01</Bits>
<Bits from="MAC 6,0,0,0" to="MAC 7,0,55,0">0x01</Bits>
BufferRatioSpecifies
the ratio of the buffer length used by server-side stream to live
buffer.
Example<BufferRatio>0.5</BufferRatio>
CacheContainer
element; contains elements that configure the cache setting for
SWF verification.
CachePrefixSpecifies
the cache prefix that is passed from the origin server to the edge
server.
This element is set on the origin server. The edge server uses
the value of this element as a relative path to locate the cache
file defined in the CacheDir element.
The type attribute provides additional specification
for the cache prefix. The type attribute can be
set to path or sname. The default
is path.
Examples<CachePrefix type="path"></CachePrefix>
When
the attribute type is path, the
server appends the physical path of the recorded stream to the prefix.
<CachePrefix type="sname"></CachePrefix>
When
the attribute type is sname, the
server appends the stream name to the prefix.
The cache prefix
is any text with or without preset parameters. The prefix can be any
name without special characters, such as \, :, *, ?, ", <, >,
|. All parameters are surrounded by “?”. The server substitutes
the actual names for everything specified within the “?”.
By
default, the prefix is set to ?IP?.
Cache prefix
|
Actual name
|
?IP?
|
IP address of the server
|
?APP?
|
Application name
|
?APPINST?
|
Application instance
|
?VHOST?
|
vhost name
|
You can include the IP address in the prefix
to avoid file collision. For example, the edge server might be connecting
to two different origin servers with the same file in c:\data\foo.flv.
Adding the IP to the prefix for these files points each file to the
appropriate server.
If you want more than one origin server
to share the cache file, do not include the IP as a parameter. Remember
the cache prefix is a relative path used by the edge server to look
up the cache stream file.
ExamplesThe
cache prefix creates a relative path in the edge’s CacheDir.
All parameters are separated by \ or /.
<CachePrefix type="path">c:\fms\flvs\foo.flv. data/?IP?</CacheDir>
resolves
to:
data/xxx.xxx.xxx.xxx/c/fms/flvs/foo.flv
<CachePrefix type="path">?APPINST?/data</CacheDir>
resolves
to:
app1/inst1/data/c/fms/flvs/foo.flv
<CachePrefix type="path">origin1/data/</CacheDir>
resolves
to:
origin1/data/c/fms/flvs/foo.flv
CacheUpdateIntervalThis
element defines the wait interval for updating cache streaming in
the edge server. The interval is defined in milliseconds. The default
value is 10 minutes. The minimum interval is 10 seconds. The maximum
interval is 24 hours.
Example<CacheUpdateInterval>10</CacheUpdateInterval>
CheckpointsMany companies use statistics from the access log to bill
customers. If your programming includes live events or 24/7 programming,
the events you use to calculate billing might not occur within a
billing cycle. To solve this problem, you can enable checkpoint events.
Checkpoint events log bytes periodically during an event. The following
are available as checkpoint events: connect-continue, play-continue,
and publish-continue.
Logging checkpoint events to the Access log is enabled in the
Vhost.xml file by default. You can disable logging checkpoints for
this application, or change the checkpoint interval of this application.
If the checkpoint interval is not specified in the Application.xml
file, or if the value is invalid, the server uses the value set in
the Vhost.xml file.
ClientContainer
element.
The elements nested within this container configure the client.
By default, the Client element includes an override="no" parameter. Individual
applications cannot override how the elements in the Client section are
configured.
ClientToServer (Bandwidth)Specifies
the bandwidth the client can use for sending data upstream to the server.
The default bandwidth is 1,250,000 bytes per second.
You can configure this value in the Bandwidth section
of XML and in the BandwidthCap section of XML.
The values in the Bandwidth section can be overridden,
but the values in the BandwidthCap section are
not. This allows ISPs to host applications for customers and ensure
that no customer abuses the bandwidth limit. For example, a customer
can set any bandwidth limit for their applications, but cannot exceed
the caps set by the ISP.
Example<ClientToServer>1250000</ClientToServer>
ClientToServer (BandwidthCap)Specifies
the maximum bandwidth a client can send to the server. The default bandwidth
is 100,000,000 bytes per second.
You can configure this value in the Bandwidth section
of XML and in the BandwidthCap section of XML.
The values in the Bandwidth section can be overridden,
but the values in the BandwidthCap section are
not. This allows ISPs to host applications for customers and ensure
that no customer abuses the bandwidth limit. For example, a customer
can set any bandwidth limit for their applications, but cannot exceed
the caps set by the ISP.
Example<ClientToServer>100000000</ClientToServer>
CombineSamplesContainer
element.
The server conserves system resources by combining sound samples.
This strategy saves the CPU and bandwidth overhead when transmitting
individual audio packets only.
Note: Use this strategy of combining sound samples
advisedly during periods of high CPU usage, as it can cause latency.
ConnectionsContainer
element.
The elements in this section configure the HTTP connections for
this application.
DataSizeSpecifies
the amount of data in bytes that the server sends to the client.
To detect the client’s bandwidth, the server attempts to send a
series of random blocks of data to the client, each time sending
this much more data. For example, x bytes are sent, followed by
2x bytes, followed by 3x bytes, and so on until MaxWait time
has elapsed.
Example<DataSize>16384</DataSize>
DebugContainer
element.
The elements in this section configure debug connections, including
the maximum number of connections and the value for application.allowDebug.
DiagnosticSpecifies whether diagnostic logging for the message queue
is enabled. The default value is false.
DirLevelSWFScanSpecifies
the number of levels of subfolders within a parent folder to scan
for SWF files. The parent folder is specified in the SWFFolder element.
Specifying a positive value scans that number of subfolder levels.
Specifying zero scans the parent folder and no subfolders. Specifying
a negative value scans all subfolder levels. The default value is
1, which means that the server scans only one subfolder level.
DisallowedProtocolsSpecifies
which protocols cannot be used to connect to an application. Specify protocols
in a comma delimited list. Any protocol not specified is allowed.
For example, the following disallows rtmp and rtmps connections: <DisallowedProtocols>rtmp,rtmps</DisallowedProtocols>
The default value is blank, which allows all protocols to connect
to the server.
DistributeSpecifies
how to distribute application instances to processes. The default
value is insts, meaning each application instance
runs in its own process. This tag contains a numprocs attribute,
which specifies the maximum number of processes to run concurrently.
The default value of the numprocs attribute is
3.
This feature is turned on by default. To use this feature, the numprocs attribute must
be set to a value higher than 0 or 1. With the default configuration,
for all your applications and application instances under a single
virtual host, three core processes will run. Each virtual host is
allotted three core processes, so systems that use multiple virtual
hosts will generate more running processes.
Note: There is no limit to the value of the numprocs attribute,
but you should never need more than 40.
Scopes have an enclosing relationship with a strict ordering:
adaptors contain virtual hosts, which contain applications, which
contain instances, which contain clients. The value of the Distribute tag
must be a scope that is lower in order than the value in the Scope tag.
In other words, if the value of Scope is adaptor,
the value of Distribute can be vhosts, apps, insts,
or clients. If the value of Scope is app,
the value of Distribute can be insts or clients.
By default, the server uses the value immediately lower than the
one specified in the Scope tag.
The following table lists the values available for the Distribute element:
Value
|
Description
|
vhosts
|
All instances of applications in a virtual
host run together in a process.
|
apps
|
All instances of an application run together
in a process.
|
insts
|
Each application instance runs in its own
process. This is the default value. If you choose this value, you
must also set the Distribute numprocs attribute
to a value greater than 1.
|
clients
|
Each client connection runs in its own process.
Use
this value for stateless applications—applications that don’t require
clients to interact with other clients and don’t have clients accessing
live streams. Most vod (video on demand) applications are stateless
because each client plays content independently of all other clients.
Chat and gaming applications are not stateless because all clients
share the application state. For example, if a shared chat application
were set to client, the messages wouldn't reach everyone in the
chat because they’d be split into separate processes.
|
Example<Distribute numproc="1"></Distribute>
DuplicateDirNote: This feature has been deprecated.
This
is one of two DuplicateDir elements in the Application.xml
file: one is in the SharedObjManager container
and one is in the StreamManager container.
Specifies the physical location where duplicate copies of shared
objects or recorded streams are stored.
This location serves as a backup for shared object files and
recorded stream files. This location must already exist when a shared
object is copied to it.
ExampleTo
include the application name in the paths for the backup files,
change the appName attribute to "true".
<DuplicateDir appName="true">c:\backupSharedObjects</DuplicateDir>
<DuplicateDir appName="true">c:\backupStreams</DuplicateDir>
DurationThis
element instructs the server how long, in seconds, to wait before
it notifies the client when the audio has stopped in the middle
of a live or recorded audio stream.
The default wait time is 3 seconds. The minimum wait time is
1 second. There is effectively no maximum value (the maximum is
the maximum value of a 32-bit integer).
Example<Duration>3</Duration>
EnabledSpecifies whether diagnostic logging for the message queue
is enabled. The default value is false.
EnhancedSeekThis
element enables or disables fine-tuning of the seeking performance
within streams by creating a keyframe.
Keyframes improve the visual display of video files while seeking.
When set to true, a new keyframe is dynamically
generated to provide smooth seeking to that index point.
Note: The server generates new keyframes for Sorenson
Spark-encoded FLV files. For On2 VP6, the new keyframe is calculated
and generated in Flash Player 9a or later. For H.264-encoded video,
the new keyframe is calculated and generated in Flash Player 9 Update
3 or later.
The default value is true. The server does not
insert keyframes and all seeks begin at the nearest existing keyframe.
Example<EnhancedSeek>true</EnhancedSeek>
EraseOnPublishWhen set to true, the server erases a
recorded stream when a new publisher starts publishing. By default,
this setting is disabled and the server does not erase a recorded
stream.
ExceptionThis
element indicates that a specific user agent is an exception to
authentication. Use the from and to attributes to indicate the lowest
and highest versions to except. This is a string comparison with
editing to make all numeric fields equal length.
For example, using a specific Flash Player will report WIN 9,0,28,0
as its UserAgent. Add To="WIN 9,0,28,0" and From="WIN 9,0,28,0" and only
that version is an exception.
FileObjectContainer
element.
The VirtualDirectory element nested within this
container configures the JSEngine file object settings.
FinalHashTimeoutThis
element defines the maximum amount of time that a client can use
to provide its final verification to the server.
FirstHashTimeoutThis
element defines the maximum amount of time that a client can use
to provide its first verification to the server.
FlushOnDataSpecifies
whether the server flushes the message queue when a data message arrives.
This element is important for streaming data-only messages, so the server
can send out the messages immediately. The default is true.
FolderAccessConfigures
the level of permission that the Access plug-in can set for accessing streams
and shared objects. This allows two levels of permissions: file-level access
(a value of false), which allow access to a particular
file only, and folder-level access (a value of true),
which allows access to a particular directory.
Example<FolderAccess>false</FolderAccess>
HiCPUThis
element instructs the server to start combining samples when CPU
utilization is higher than the specified percentage of CPU resources.
The default percentage of utilization is 80.
HostThis
element identifies the HTTP proxy. The value of the Host element
can be the host name or an IP address. The port number can also
be specified in the Port element.
Example<Host>www.example.com:8080</Host>
HTTPContainer
element.
The elements in this section configure the HTTP connection settings
for this application.
HTTP1_0This
element determines whether or not the server can use the HTTP 1.0 protocol.
The default is false, disallowing the use of the
HTTP 1.0 protocol.
Example<HTTP1_0>false</HTTP1_0>
HTTPTunnelContainer
element.
The elements nested within this container configure the parameters
for HTTP tunnelling (sending RTMP packets through HTTP).
The tunnelling protocol is based on the client continuously polling
the server. The frequency of polling affects both network performance
and the efficiency of the HTTP protocol. The IdleAckInterval and IdlePostInterval elements
control the polling frequency on a per-client basis. Selecting too
small a delay value for the above parameters will increase the polling
frequency and reduce network performance and efficiency. Selecting
too high values can adversely affect the interactivity of the application
and the server.
The Application.xml configuration file offers three settings
for these parameters. The following table presents these settings.
Acceptable Latency
|
IdlePostInterval
|
IdleAckInterval
|
Low
|
128 milliseconds
|
256 milliseconds
|
Medium
|
512 milliseconds
|
512 milliseconds
|
High
|
1024 milliseconds
|
2048 milliseconds
|
Example<HTTPTunnel>
<IdlePortInterval>512</IdlePostInterval>
<IdleAckInterval>512</IdleAckInterval>
<MimeType>application/x-fcs</MimeType>
<WriteBufferSize>16</WritebufferSize>
</HTTPTunnel>
IdleAckIntervalSpecifies
the maximum time the server may wait before it sends back an ack (acknowledgement
code) for an idle post sent by the client.
The server may respond sooner than the value of this element
if it has data to send back to the client or if some other client
is being blocked by the current idle request.
This interval implies that the client may not be able to reach
the server for the selected duration. The interval cannot be set
to a negative value.
The default interval is 512 milliseconds.
Example<IdleAckInterval>512</IdleAckInterval>
IdlePostIntervalSpecifies
how long Flash Player should wait before sending an idle post to
the server.
Idle posts are sent when Flash Player has no data to send, but
posting is necessary to provide the server with an opportunity to
send data downstream to the client.
The interval for an idle post ranges from 0 to 4064 milliseconds.
If the IdlePostInterval element is set to a value
that lies outside of this range, the default value of 512 milliseconds
is used.
Note: At times, the server will not be able to send
any data to the client for the selected duration.
Example<IdlePostInterval>512</IdlePostInterval>
InterfaceThis
element defines the name to use as the outgoing network interface.
The name can be an interface name, an IP address, or a host name.
Example<Interface>www.example.com</Interface>
IntervalSpecifies
the interval in milliseconds for sending silence messages when no audio
is being published to a live stream.
Silence messages are used to support older versions of Flash
Player. The server only sends the silence message to clients specified
in the UserAgent element in the Client section.
Bit-flag 0x01 is used to control the silence message.
The default interval is 3 seconds. Set this to 0 to disable silence
message transmission.
Example<Interval>3</Interval>
JSEngineContainer
element.
The elements nested within this container configure the JavaScript
engine.
In the server Application.xml configuration files, you can define
properties for the server-side Application object. Defining properties
in the default Application.xml file creates properties available
for all applications on a virtual host. Defining properties in an
Application.xml file in an application folder creates properties available
for that application only.
To define a property, create an XML tag. The property name corresponds
to the tag’s name, and the property value corresponds to the tag’s
contents.
ExampleThe
following XML fragment defines the properties user_name and dept_name,
with the values jdoe and engineering,
respectively:
<JSEngine>
<config>
<user_name>jdoe</user_name>
<dept_name>engineering</dept_name>
</config>
</JSEngine>
To access the property in server-side
code, use the syntax in either of these examples:
application.config.prop_name
application.config["prop_name"]
Note: The
properties you define are accessible from application.config.property,
not from application.property.
KeyFrameIntervalThis
element defines how often to generate and save keyframes in an FLV
file.
The initial value is 60000, which is the recommended value. However,
if this tag is unspecified or set to a value out of range, the server
uses a default value of 1000. Setting this element to a higher value
than the initial value reduces the number of keyframes added to
the FLV file and thus reduces the file size. Setting a higher value
for the interval, however, reduces the seeking accuracy. The value
of this element is defined in milliseconds.
For example, a 15-second video with a file size of 76 KB is increased
only to 89 KB when the KeyFrameInterval element
is set to 5000, which is an increase of 13 KB, or 17%. The same
video has a size of 109 KB with the KeyFrameInterval element
set to 1000, which is an increase of 33 KB, or 43%.
Note: Be aware of the correlation between file size
and accuracy of seeking when you set this value.
Example<KeyFrameInterval>1000</KeyFrameInterval>
LifeTimeContainer
element.
This element determines the lifetime of core processes. To roll
over such processes, set this element to a nonzero value.
Process rollover happens only when the Scope element
is set to inst.
Live (StreamManager)Container
element.
The elements nested within this container configure the intermediate
frames in a live stream and the message queue, and the amount of
time the server waits before allowing another publisher to take
over a live stream.
Live (MsgQueue)Container
element.
The elements nested within this container configure live audio.
LoadOnStartupThis
element determines whether or not the server loads an application
instance when the server starts.
Having an application instance loaded at server start-up saves
time when the first client connects to that application. The default
value is false.
If you set this element to true, an instance
of each application on the server will be loaded at start-up.
Example<LoadOnStartup>false</LoadOnStartup>
LockTimeoutSpecifies
the timeout value before automatically unlocking a shared object
if there is a client waiting for an update. The timeout value is
specified in seconds. The default value is -1, which instructs the
server to wait for an indefinite time.
Example<LockTimeout>-1</LockTimeout>
LoCPUThis
element instructs the server to stop combining samples when CPU
utilization is lower than the specified percentage of CPU resources.
The default percentage of utilization is 60.
LoggingA container element.
Contains elements that control the server logs.
LogIntervalThe interval at which the server logs checkpoint events.
MaxThis
element defines the maximum number of redirects allowed.
MaxAggMsgSizeSpecifies
the maximum size in bytes of the aggregate messages created from
the message queue, when aggregate messages are enabled. The default
value is 4096.
MaxAppIdleTimeSpecifies
the maximum time an application instance can remain idle with no clients
connected before it is unloaded from the server’s memory.
An application instance is evaluated as idle after all clients
disconnect from it. If the application instance is loaded with no
clients connected, it is not evaluated as idle.
The maximum idle time is specified, in seconds. The default is
600 seconds (10 minutes).
Example<MaxAppIdleTime>600</MaxAppIdleTime>
MaxAudioLatencySpecifies
that live audio should be dropped if audio exceeds the time specified. Time
is expressed in milliseconds.
Example<MaxAudioLatency>2000</MaxAudioLatency>
MaxBufferRetriesSpecifies
the maximum number of attempts to start buffering stream data. This configuration
tag prevents the server from indefinitely trying to buffer data
that is never delivered by the origin server. It is only applicable
in edge servers. The default value of 128 is sufficient in most
cases.
Example<MaxBufferRetries>128</MaxBufferRetries>
MaxCoresThe
value of this element determines how many core processes can exist
for an application.
By default, the MaxCores function is disabled.
The default value is zero. For more information on setting the maximum
number of core processes, see Configure how applications are assigned to server processes.
Example<MaxCores>0</MaxCores>
MaxDurationSpecifies the maximum duration, in seconds, of a recorded
file. The value 0 disables recording. The value -1 means there is
no maximum duration. The default value is -1.
Set this parameter when you deploy a DVR application to prevent
the disk from exceeding its capacity.
Note: The F_STREAM_RECORD_MAXDURATION field in
the Authorization plug-in can override this value.
MaxDurationCapSpecifies the cap on the maximum duration (in seconds)
of a recorded file. Values set in the MaxDuration element
or in Server-Side ActionScript cannot exceed this value. Setting
the value 0 disables recording. Setting the value -1 removes the
maximum duration cap. The default value is -1.
This element allows ISPs to host applications for customers and
ensure that no customer abuses the MaxDuration limit.
For example, a customer can set any MaxDuration for
their applications, but cannot exceed the MaxDurationCap set
by the ISP.
Note: The F_STREAM_RECORD_MAXDURATION field in
the Authorization plug-in can override this value.
MaxGCSkipCountSpecifies
the maximum number of times that the server will skip garbage collection
(GC) when the JS engine is busy. This element determines the frequency
of the garbage collection process.
By default, the server only performs GC when the JS engine is
not busy. However, the JS engine does not necessarily perform GC
when it is busy, so in some cases you must force the server to perform
GC regardless of the JS engine state. If MaxGCSkipCount is set to
0, the server forces a GC regardless of the JS engine state. If
MaxGCSkipCount is set to a positive value, the server forces a GC
when the skip count exceeds the value in MaxGCSkipCount.
Example<MaxGCSkipCount>-1</MaxSGCSkipCount>
MaxFailuresThe
value of this element determines the maximum number of core process failures
that can occur before a core process is disabled.
Once the core processes are disabled, the server does not launch
a core process until some minimum recovery time has elapsed. Having
a time lag for recovery avoids a denial-of-service action, which
can happen when a faulty core consumes all CPU resources by repeatedly
launching itself.
Example<MaxFailures>2</MaxFailures>
MaxIdleTimeThe maximum time a client can be idle before the server
closes the connection. This value is set in the Server.xml file
by default. You can set the value in the Vhost.xml file to override
the value set in the Server.xml file. You can set the value in the
Application.xml file to override the value set in the Vhost.xml
file.
MaxInitDelayThe
maximum number of seconds used to process SWF files. The default
value is 5 seconds.
Example<MaxInitDelay>5</MaxInitDelay>
MaxLatencyThe maximum latency, in milliseconds, of incoming messages
in a live stream. When a server-side script injects a data message
into a live stream, this setting determines the timestamp of the
message. If the injection time is larger than MaxLatency,
the server adds the time difference between the last message time
and the injection time to the timestamp of the data message. Otherwise,
the timestamp is the last message time. The default value is 500.
The minimum value is 0.
MaxMessageSizeLosslessVideoSpecifies
the maximum size of messages for screen-sharing packets.
Example<MaxMessageSizeLosslessVideo>0</MaxMessageSizeLosslessVideo>
MaxPendingDebugConnectionsSpecifies
the maximum number of pending debug connections. The default is 50.
(If the number is set to 0, debugging connections are disabled.)
Once the specified number is reached, the oldest pending debug
connection is rejected to create space.
Example<MaxPendingDebugConnections>50</MaxPendingDebugConnections>
MaxPropertiesThe
maximum number of properties for each shared object. To specify
unlimited, use -1.
Example<MaxProperties>-1</MaxProperties>
MaxPropertySizeThe
maximum size in bytes for each property of a shared object. To specify unlimited
size, use -1.
Example<MaxPropertySize>-1</MaxPropertySize>
MaxQueueDelaySpecifies
how often the server will flush the message queue, in milliseconds.
The default value is 500 milliseconds.
MaxQueueSizeSpecifies
how often the server will flush the message queue, in bytes. A value
of 0 disables queuing. The default value is 4096.
MaxRateSpecifies
the maximum rate in Kbps at which the server sends data to the client. The
default value of -1 sends the data at whatever rate is necessary
to measure bandwidth without throttling.
Example<MaxRate>-1</MaxRate>
MaxSamplesSpecifies
how many sound samples can be combined into one message.
The default number of samples is 4.
MaxSize (AccumulatedIFrames)Specifies
the maximum size, in kilobytes, of intermediate frames that a live stream
can hold in the buffer.
The buffer contains a history of the video messages up to the
last keyframe. This enables clients to catch up to the latest message
even if they join between keyframes. If the buffer size is larger
than MaxSize, the server clears the messages. This
setting prevents the buffer from growing too large and should be set
larger than the total size of intermediate frames between keyframes.
A default value of -1 means the size of intermediate frames is unlimited.
Example<MaxSize>-1</MaxSize>
MaxSize (Recording)Specifies the maximum size, in kilobytes, of a recorded
file. The value -1 means there is no maximum size. The value 0 disables
recording. The default value is -1.
Set this parameter when you deploy a DVR application to prevent
the disk from exceeding its capacity.
Note: The F_STREAM_RECORD_MAXSIZE field in the
Authorization plug-in can override this value.
MaxSizeCapSpecifies the maximum size cap, in kilobytes, of a recorded
file. The value -1 means there is no maximum size. The value 0 disables
recording. The default value is -1.
This element allows ISPs to host applications for customers and
ensure that no customer abuses the MaxSize limit.
For example, a customer can set any MaxSize for
their applications, but cannot exceed the MaxSizeCap set
by the ISP.
Note: The F_STREAM_RECORD_MAXSIZE field in the
Authorization plug-in can override this value.
MaxStreamsBeforeGCSpecifies
that garbage collection (GC) should be forced if the stream list
grows over the set value. The default value is -1 (unlimited). GC
occurs during the application GC interval.
Example<MaxStreamsBeforeGC>-1</MaxStreamsBeforeGC>
MaxTimeSpecifies
the maximum duration, in seconds, of intermediate frames that a
live stream can hold in the buffer.
The buffer contains a history of the video messages up to the
last keyframe. This enables clients to catch up to the latest message
even if they join between keyframes. If the duration in the buffer
is larger than the MaxTime, the server clears the
messages. This setting prevents the buffer from growing too large
and should be set larger than the keyframe interval. The default
value of -1 means the duration is unlimited.
Example<MaxTime>-1</MaxTime>
MaxTimeOut (Connections)This
element defines the maximum time for a transfer to be completed.
The default time is 60 seconds.
Operations such as DNS lock-ups may take more time. If the value
of this element is too low, the risk of aborting correctly functioning
operations increases.
Example<MaxTimeOut>60</MaxTimeOut>
MaxTimeOut (JSEngine)The
maximum time, in seconds, a script can take to execute a JavaScript
(Server-Side ActionScript) function. If its execution takes longer
than the maximum allowed time, then the script is evaluated as a
runaway script and its execution is terminated. Setting a maximum
time to execute a script prevents infinite looping in scripts.
The default value is 0 and no checks are performed to detect
runaway scripts. This setting may be useful in a debugging environment.
In a production environment, after the applications and scripts
have been thoroughly tested, you should set this element to a more
realistic value that does not impose limits on the time scripts
take to execute.
Example<MaxTimeOut>0</MaxTimeOut>
MaxUnprocessedCharsSpecifies
how much data can be received from an XML server (without receiving an
end tag) before XMLSocket closes the connection. This can be overridden
by each XMLSocket by specifying the property XML.maxUnprocessedChars, but
that number cannot exceed the number specified in this element.
Example<MaxUnprocessedChars>4096</MaxUnprocessedChars>
MaxWaitThis
element specifies the number of seconds to wait before the server
sends data to the client.
Increasing this number provides a more accurate bandwidth figure,
but it also forces the client to wait longer.
Example<MaxWait>4096</MaxWait>
MimeTypeSpecifies
the default MIME (Multi-purpose Internet Mail Extensions) type header sent
on tunnel responses.
The server generally uses the MIME type specified by the incoming
requests. The server will use the entry for the MIMEType element
only when it is unable to determine the MIME type from the incoming
requests.
Example<MimeType>application/x-fcs</MimeType>
MinBufferTime (Live)Specifies
the default buffer length in milliseconds for the live audio and
video queue.
Example<MinBufferTime>2000</MinBufferTime>
MinBufferTime (Recorded)Specifies
the default buffer length in milliseconds for audio and video. The
value cannot be set below this by Flash Player.
Example<MinBufferTime>2000</MinBufferTime>
MinGoodVersionSpecifies
the minimum accepted version of SWF verification allowed by the server.
The default value is 0, which allows the current and all future
versions.
Example<MinGoodVersion>0</MinGoodVersion>
MinQueuedVideoThe minimum number of video messages to queue at the start
of a stream. Streams that use H.264 or any other pipelined codec
need messages to begin playback. This setting ensures that regardless
of the buffer setting there are enough messages to begin playback
quickly. Setting this value to less than 64 may cause content with
a low FPS to delay before starting. The default value is 64.
MsgQueueContainer
element.
The elements nested within this container configure live and
recorded audio.
NetConnectionContainer
element.
The element nested within this container specifies object encoding
to use for SSAS NetConnection.
NotifyAudioStopContainer
element.
The Duration element nested within this container
determines whether or not the server is notified when an audio transmission
ending on a stream is encountered.
Example<NotifyAudioStop enabled="false"></NotifyAudioStop>
ObjectEncodingSpecifies
the default object encoding to use for SSAS NetConnection. This
can be AMF0 or AMF3. The default
is AMF3.
The default can be overridden for each individual NetConnection
by setting the NetConnection.objectEncoding property
to either 0 for AMF0 or 3 for AMF3.
Example<ObjectEncoding>AMF3</ObjectEncoding>
OutChunkSizeSpecifies
the RTMP chunk size in bytes to use in all streams for this application. The
server breaks stream content into chunks of this size. Larger values
reduce CPU usage but cause larger writes that can delay other content
on lower bandwidth connections. This can have a minimum value of
128 bytes and a maximum value of 65536 bytes. The default value
is 4096.
Note that older clients might not support chunk sizes larger
than 1024 bytes. If the chunk setting is larger than these clients
can support, the chunk setting is capped at 1024 bytes.
Example<OutChunkSize>4096</OutChunkSize>
OverridePublisherDeprecated;
see the PublishTimeout element.
Specifies whether a second client is able to take over the ownership
of a live stream when the stream is already published by another
client. The default value is false. If set to true,
add application logic to avoid stream name collision.
Example<OverridePublisher>true</OverridePublisher>
PasswordSpecifies
the password for connecting to the proxy.
PortSpecifies
the proxy port to connect to if the port is not specified as part
of the host in the Host element.
PrioritizationSpecifies
whether outgoing messages are prioritized by message type when sending
across a server-to-server connection. This setting is relevant for
multi-point publishing. By default, prioritization is set to false,
which is the correct setting to avoid possible latency when server-side
NetStream objects are used to publish messages to remote servers.
Messages are sent out through one channel and all messages have
the same priority.
If the value is set to true, the server sends
messages through multiple channels and prioritizes messages based
on the message type, as follows (where 1 has the highest priority):
Data
Audio
Video
ProcessContainer
element.
The elements nested within this container determine how a core
process is managed.
The following table lists descriptions of the contained elements.
Value
|
Description
|
Scope
|
Specifies the level at which application
instances are assigned to core processes. Scopes have an enclosing
relationship with a strict ordering: adaptors contain virtual hosts,
which contain applications, which contain instances, which contain
clients.
|
Distribute
|
Specifies how to distribute application
instances to processes. The value of the Distribute tag
must be a scope that is lower in order than the value in the Scope tag
(for example, if the value of Scope is adaptor,
the value of Distribute can be vhosts, apps, insts,
or clients). Distribution may be turned off by
setting numproc to 0 or 1.
|
LifeTime
|
Specifies the lifetime of core processes.
Process rollover happens only when the Scope element
is set to inst.
|
MaxFailures
|
The value for this element determines the
maximum number of core process failures that can occur before a
core process is disabled.
|
RecoveryTime
|
Specifies the recovery time for a core.
|
ProxyContainer
element.
The elements nested within this container configure the HTTP
Proxy settings.
PublishTimeoutSpecifies how long in milliseconds
the server waits to receive a response from a publisher when another
client tries to publish to the same stream.
If a client tries to publish to the same live stream that is
being published by another client, Flash Media Server pings the
first publisher and waits to receive a response. If the first publisher
fails to respond within the time specified in this tag, the server
allows the second publisher to take over the live stream. The default
value is 2000 milliseconds. To prevent the server from pinging the
first client, disable this setting by setting the value of the tag
to -1.
This tag replaces the OverridePublisher tag.
QualifiedStreamsMappingEnables
mapping of virtual stream paths to different physical locations.
This tag is applicable when using the Authorization plug‑in.
When a client requests to play a stream, an E_FILENAME_TRANSFORM event occurs
in the Authorization plug‑in. You can map the stream differently
for each client in the F_STREAM_PATH property of
your Authorization plug‑in code.
For example, suppose client 1 and client 2 both request to play
myStream.flv. You can remap the stream to c:\video1\myStream.flv
for client 1 and c:\video2\myStream.flv for client 2.
QueueContainer
element; contains elements that configure the settings of the message queue.
A message queue is used to buffer incoming messages from the publisher so
that the server can send messages in chunks to the subscribers.
You can disable queuing so that individual messages are immediately
sent to subscribers. To disable queuing, set the enabled attribute
to false.
RecordedContainer
element.
The element nested within this container specifies the ratio
of buffer length used by the server-side stream to the live buffer.
RecordingContainer
element.
The elements nested within this container specify the duration
and file size of files recorded by the server.
RecoveryTimeSpecifies
the recovery time for a core.
The server will not launch a core process until some minimum
recovery time has elapsed. The time lag for recovery can avoid a
denial-of-service action, which happens when a faulty core process
consumes all CPU time by repeatedly launching itself.
The recovery time for a core process is specified, in seconds.
A value of 0 disables any checking for process failures.
Note: Loading an application with Flash Media Administration
Server tools or APIs bypasses this check.
Example<RecoveryTime>300</RecoveryTime>
RedirectContainer
element.
The elements nested within this container configure the settings
for redirecting the HTTP connection.
ResyncDepthThis
element instructs the server to resynchronize a shared object file.
The shared object is resynchronized when its version number is greater
than the head version minus the current version. The default value
of -1 sends a resynchronized version of the file with every connection.
Example<ResyncDepth>-1</ResyncDepth>
ReuseThis
element configures whether or not the server explicitly closes the
HTTP connection after each transfer. The default is to reuse connections.
Set this to false to use a new connection after
every transfer.
Example<Reuse>true</Reuse>
RollOverSpecifies
how many seconds a core process can be in use before the server creates
a new core process.
After the time limit for a core is reached, a new core is instantiated.
All subsequent connections are directed to the new core.
The rollover functionality is disabled by default. The default
value is 0 (seconds). For more information on rollover
processes, see Configure how applications are assigned to server processes.
Example<Rollover>0</RollOver>
RuntimeSizeSpecifies
the maximum size in kilobytes that a particular application instance
can use to run Server-Side ActionScript code before the server removes
unreferenced and unused JavaScript objects.
The default size is 1024 kilobytes, which is the equivalent of
1 megabyte. The lower and upper limits on the size of the JavaScript
engine are 10 kilobytes and 51200 kilobytes (50 megabytes). The
default value applies when the engine size lies outside of these
limits.
If your application consumes a significant amount of memory,
you must increase the engine size. If you create a new script object
that will cause the runtime size of the application instance to
exceed the value of this element, an out-of-memory error occurs
and the application instance is shut down. In most cases, increasing
the engine size to 30720 (30 MB) is sufficient to run intensive
Server-Side ActionScript operations.
Example<RuntimeSize>1024</RuntimeSize>
ScopeThis
element determines the level at which application instances are
assigned to core processes.
Starting Flash Media Server starts a process called FMSMaster.exe
(Windows) or fmsmaster (Linux). Application instances run in processes
called FMSCore.exe (Windows) fmscore (Linux). The master process
is a monitor that starts core processes when necessary. Only one
master process can run at a time, but many core processes can run
at the same time.
Settings in an Application.xml file in a virtual host folder
apply to all applications running in that virtual host. Settings
made in an Application.xml file in an application’s folder apply
only to that application.
The following table lists the values available for the Scope element.
Value
|
Description
|
adaptor
|
All application instances in an adaptor
run together in a process.
|
vhost
|
All application instances in a virtual host
run together in a process. This is the default value.
|
app
|
All instances of a single application run
together in a process.
|
inst
|
Each application instance runs in its own
process. If you choose this value, you must also set the Distribute numprocs attribute
to a value greater than 1.
|
Example<Scope>vhost</Scope>
ScriptLibPathThis
element is a list of paths delimited by semicolons instructing the
server where to look for server-side scripts loaded into a main.asc
file with the load() method.
These paths are used to resolve a script file that is loaded
with the load API. The server first looks in the location where
the main.asc or application_name.asc file is located. If
the script file is not found there, the script engine searches,
in sequence, the list of paths specified in this element.
Example<ScriptLibPath>${APP.JS_SCRIPTLIBPATH}</ScriptLibPath>
SendDuplicateOnMetaDataSpecifies
whether an onMetaData message is sent at the beginning
of video files when the play and seek commands are called. The default
value is true.
The following values are available:
true sends onMetaData for
the play and seek commands.
false sends onMetaData for
play only.
once falls back to FMS 1.x behavior and
sends onMetaData based on the start position, regardless
of the command. If no onMetaData is found at the start
position, no onMetaData is sent.
Example<SendDuplicateOnMetaData>true</SendDuplicateOnMetaData>
SendDuplicateStartSpecifies
whether status message NetStream.Play.Start is
sent for all commands, including play, seek, and unpause. If set
to false, only the play command receives the start
message.
Example<SendDuplicateStart>true</SendDuplicateStart>
SendSilenceContainer
element.
The Interval element nested within this container
configures the settings for sending silent messages.
ServerContainer
element.
Contains two elements: BufferRatio, which specifies
the ratio of the buffer length used by the server-side stream to
the live buffer, and Prioritization, which specifies
whether to prioritize outgoing messages for server-to-server connections.
ServerToClient (Bandwidth)Specifies
the bandwidth in bytes per second that the server can use for sending data
downstream to the client.
The default bandwidth is 250,000 bytes per second.
You can configure this value in the Bandwidth section
of XML and in the BandwidthCap section of XML.
The values in the Bandwidth section can be overridden,
but the values in the BandwidthCap section are
not. This allows ISPs to host applications for customers and ensure
that no customer abuses the bandwidth limit. For example, a customer
can set any bandwidth limit for their applications, but cannot exceed
the caps set by the ISP.
Example<ServerToClient>250000</ServerToClient>
ServerToClient (BandwidthCap)Specifies
the maximum bandwidth in bytes per second that the server can use
for sending data downstream to the client.
The default bandwidth is 10,000,000 bytes per second.
You can configure this value in the Bandwidth section
of XML and in the BandwidthCap section of XML.
The values in the Bandwidth section can be overridden,
but the values in the BandwidthCap section can
not. This allows ISPs to host applications for customers and ensure
that no customer abuses the bandwidth limit. For example, a customer
can set any bandwidth limit for their applications, but cannot exceed
the caps set by the ISP.
Example<ServerToClient>10000000</ServerToClient>
SharedObjManagerContainer
element.
The elements nested within this container configure the Shared
Object Manager setting of an application.
StartClockOnPublishSpecifies whether the stream time is sensitive to the difference
between publish time and the arrival of the first stream message.
The default value is false.
To use dynamic, multibitrate streaming, leave this value false.
StorageDirSpecifies
the physical location where shared objects or streams are stored.
By default the physical location is not set. Set this element
only if the files for shared objects or recorded streams must be
stored in a location other than the application directory.
Example<StorageDir>C:\myapp\sharedobjects\</StorageDir>
<StorageDir>C:\myapp\streams\</StorageDir>
StreamManagerContainer
element.
The elements in this section configure the Stream Manager settings
for this application.
Contained elementsStorageDir, DuplicateDir, CachePrefix, CacheUpdateInterval, MaxBufferRetries, ThrottleBoundaryRequest, ThrottleLoads, ThrottleDisplayInterval, EnhancedSeek, KeyFrameInterval, MaxStreamsBeforeGC, Audio, Live (StreamManager), SendDuplicateStart, SendDuplicateOnMetaData, MaxSize (Recording), MaxSizeCap, MaxDuration, MaxDurationCap
SubscribersThis
element instructs the server to combine sound samples only if there
are more than the default number of subscribers to that stream.
The default number of subscribers is 8.
Example<Subscribers>8</Subscribers>
SWFFolderSpecifies
a single folder or a semicolon-delimited list of folders containing
copies of client SWF files. The server compares these SWF files
to client SWF files connecting to applications on the server.
The default value of the SWFFolder element is
the application's folder appended with /SWFs. Use a semicolon to
separate multiple directories. SWF files located under an instance
named folder can only connect to that specific instance.
ExampleFor
an application named myApplication located at C:\applications\, authenticating
SWF files should be placed in C:\applications\myApplication\SWFs.
SWFVerificationContainer
element.
Specifies how the server verifies client SWF files before allowing
the files to connect to an application. Verifying SWF files is a
security measure that prevents someone from creating their own SWF
files that can attempt to stream your resources. For more information,
see Verify SWF files.
Note: SWF files connecting to Flash Media Administration
Server cannot be verified.
ThrottleBoundaryRequestControls
the maximum number of concurrent boundary requests per recorded stream.
When streaming through a proxy server, the boundary information about
video segments are sent to the proxy server by request.
The default value is 8.
Example<ThrottleBoundaryRequest enable="false">8</ThrottleBoundaryRequest>
ThrottleDisplayIntervalControls
the interval at which the server displays the throttle queue length.
The default value is 64, which means the server displays the message
1 out of 64 times when the throttle queue is full.
Example<ThrottleDisplayInterva>64</ThrottleDisplayInterval>
ThrottleLoadsControls
the maximum number of concurrent segment loads per recorded stream.
When streaming through a proxy server, video segments are sent to
the proxy server by request. The default value is 8.
Example<ThrottleLoads enable="true">8</ThrottleLoads>
TunnelSpecifies
whether or not to tunnel all operations through a given HTTP proxy.
The default setting is false.
Example<Tunnel>false</Tunnel>
TTLSpecifies
in minutes how long each SWF file remains in the cache. The default value
is 1440 minutes (24 hours).
TypeSpecifies
the type of proxy being connected to. The value for this element
can be HTTP or SOCKS5. The default
is HTTP.
UnrestrictedAuthA
Boolean value that determines whether or not to allow sending the
user name/password combination with each HTTP redirect. Sending
the user name/password combination is useful only if the Allow element
permits redirections. The default setting is true.
Example<UnrestrictedAuth>true</UnrestrictedAuth>
UpdateIntervalSpecifies
the maximum time in minutes to wait for the server to scan the SWF folders
for updates when there is a miss in the cache. The default value
is 5 minutes.
UserAgentContainer
element.
The settings for clients vary according to whether Flash Player
platform is Windows or Macintosh. Setting the value 0x01 will
configure the player and platform for silent messages.
UserAgentExceptionsContainer
element.
Contains an element that specifies a user agent that should be
an exception to authentication. Use the to and from attributes
to indicate the lowest and highest versions to except.
Example<UserAgentExceptions>
<Exception to="WIN 9,0,28,0" from="WIN 9,0,28,0"</Exception>
</UserAgentExceptions>
UsernameSpecifies
the user name for connecting to the edge.
VerboseThis
element determines whether or not the server outputs verbose information during
HTTP operations.
Example<Verbose>false</Verbose>
VideoSampleAccessAllows
the client application to access the raw uncompressed video data
in a stream. By default, this element is disabled. To enable it,
set the enable attribute to true. In the tag, specify a list of
semicolon-delimited folders to which client applications have access.
When this element is enabled, all clients can access the video data
in streams in the specified folders. To enable access to all video
data streamed by the server, specify / in the tag.
The folder path is restricted to the application’s streams folder
or folders, so do not use absolute paths in the list of folders.
While you can also enable access through Server-Side ActionScript,
this element allows access to the data without requiring Server-Side
ActionScript. You can also override this element with the Access
plug‑in or Server-Side ActionScript.
ExampleIf
an application is configured to store streams in folders C:\low_quality and C:\high_quality,
the configuration to allow access to sample those streams is as
follows:
<VideoSampleAccess enabled="true">low_quality;high_quality</VideoSampleAccess>
VirtualDirectorySpecifies
virtual directory mappings for Server-Side ActionScript File objects.
For more information, see comments in the Application.xml file
and Mapping virtual directories to physical directories.
Example<VirtualDirectory>virtual_dir_name;physical_dir_path</VirtualDirectory>
WindowsPerAckControls how many messages can
be sent before receiving an acknowledgement from the other end.
Note: Adobe recommends that you do not change the value of this
element.
WriteBufferSizeSpecifies
in kilobytes the size of the write buffer. The default size is 16
KB.
Example<WriteBufferSize>16</WriteBufferSize>
XMLSocketContainer
element.
Contains an element that specifies how much data can be received
from the XML server (without receiving an end tag) before XMLSocket closes
the connection. This can be overridden by each XMLSocket by
specifying the property XML.maxUnprocessedChars,
but that number cannot exceed the number specified in this element.
Example<XMLSocket>
<MaxUnprocessedChars>4096</MaxUnprocessedChars>
</XMLSocket>
|
|
|