<?xml version ="1.0"?>
<!-- This is a sample /Library/QuickTimeStreaming/Config/streamingserver.xml file -->
<!-- The Document Type Definition (DTD) for the file -->
<!DOCTYPE CONFIGURATION [
<!ELEMENT CONFIGURATION (SERVER, MODULE*)>
<!ELEMENT SERVER (PREF|LIST-PREF)*>
<!ELEMENT MODULE (PREF|LIST-PREF)*>
<!ATTLIST MODULE
	NAME CDATA #REQUIRED>
<!ELEMENT PREF (#PCDATA)>
<!ATTLIST PREF
	NAME CDATA #REQUIRED
	TYPE (UInt8|SInt8|UInt16|SInt16|UInt32|SInt32|UInt64|SInt64|Float32|Float64|Bool16|Bool8|CharArray) "CharArray">
<!ELEMENT LIST-PREF (VALUE*)>
<!ELEMENT VALUE (#PCDATA)>
<!ATTLIST LIST-PREF
	NAME CDATA #REQUIRED
	TYPE  (UInt8|SInt8|UInt16|SInt16|UInt32|SInt32|UInt64|SInt64|Float32|Float64|Bool16|Bool8|CharArray) "CharArray">
]>
<CONFIGURATION>

<SERVER>
	<!-- Port(s) for accepting client connections -->
	<!-- NOTE: Add port 80 to the list of "rtsp_port"'s -->
	<!-- if you are streaming across the internet -->
	<!-- and want clients behind firewalls to be -->
	<!-- able to connect to the streaming server -->
	<LIST-PREF NAME="rtsp_port" TYPE="UInt16">
		<VALUE>7070</VALUE>
		<VALUE>554</VALUE>
		<VALUE>8000</VALUE>
		<VALUE>8001</VALUE>
	</LIST-PREF>

	<!-- The text to display as the login entity "realm" by the client is defined by default_authorization_realm -->
	<!-- if the default realm is not defined here, then the default realm is set to "Streaming Server" -->
	<!-- the realm used in a response can also be dynamically set by authorizating modules -->
	<PREF NAME="default_authorization_realm">Streaming Server</PREF>

	<!-- when behind a round robin DNS, the client needs to be told the specific -->
	<!-- ip address of the matching handling its request. this pref tells the server -->
	<!-- to report its IP address in the reply to the HTTP GET request when -->
	<!-- tunneling RTSP through HTTP. -->
	<PREF NAME="do_report_http_connection_ip_address" TYPE="Bool16">disabled</PREF>

	<!-- "scaling factor" to appropriately scale the buffer size. -->
	<!-- Using the bitrate of the movie as a guide, the server will set the TCP send -->
	<!-- buffer to fit this number of seconds of data. -->
	<PREF NAME="tcp_seconds_to_buffer" TYPE="Float32">.5</PREF>

	<!-- Maximum size the send buffer can be set to. -->
	<PREF NAME="max_tcp_buffer_size" TYPE="UInt32">200000</PREF>

	<!-- Minimum size the send buffer can be set to. -->
	<PREF NAME="min_tcp_buffer_size" TYPE="UInt32">8192</PREF>

	<!-- Either "true" or "false". This toggles error -->
	<!-- logging on and off. -->
	<PREF NAME="error_logging" TYPE="Bool16">true</PREF>

	<!-- if screen_logging is true, all content for the error log will be -->
	<!-- written to the terminal window. Note that in order to see these messages -->
	<!-- onscreen, the server must be launched from the command-line, and must be -->
	<!-- launched in foreground mode (triggered by the addition of the -d flag). -->
	<PREF NAME="screen_logging" TYPE="Bool16">true</PREF>

	<!-- This controls how much information is to be -->
	<!-- logged in the error log. A value of 0 means only log fatal errors. 1  -->
	<!-- means log fatal errors and warnings. 2 means log fatal errors, warnings, -->
	<!-- and asserts. 3 means log fatal errors, warnings, asserts, and debug messages. -->
	<PREF NAME="error_logfile_verbosity" TYPE="UInt32">3</PREF>

	<!-- Maximum allowed size in bytes for the error log. A -->
	<!-- value of 0 means unlimited -->
	<PREF NAME="error_logfile_size" TYPE="UInt32">256000</PREF>

	<!-- Amount of time in days between rolls of the -->
	<!-- error log. A value of 0 means unlimited. -->
	<PREF NAME="error_logfile_interval" TYPE="UInt32">7</PREF>

	<!-- error log. A value of 0 means unlimited. -->
	<PREF NAME="error_logfile_dir">/Library/QuickTimeStreaming/Logs</PREF>

	<!-- Name of the error log file. -->
	<PREF NAME="error_logfile_name">Error</PREF>
	
	<!-- Path to the pid file. Mac OSX and Darwin unixes only. -->
	<PREF NAME="pid_file">/var/run/QuickTimeStreamingServer.pid</PREF>
	
	<!-- Path to the folder containing dynamic loadable server modules -->
	<PREF NAME="module_folder">/Library/QuickTimeStreaming/Modules</PREF>

	<!-- If the server discovers it is serving more than its -->
	<!-- allowed maximum bandwidth (using the average bandwidth computation) it -->
	<!-- will attempt to disconnect the most recently connected clients until the -->
	<!-- average bandwidth drops to acceptable levels. However, it will not -->
	<!-- disconnect clients if they've been connected for longer than this time, -->
	<!-- in seconds. If this value is set to 0, it will never disconnect clients. -->
	<PREF NAME="safe_play_duration" TYPE="UInt32">600</PREF>

	<!-- This is the interval in seconds between computations of the server's average bandwidth. -->
	<PREF NAME="average_bandwidth_update" TYPE="UInt32">60</PREF>

	<!-- The interval in seconds between updates of the -->
	<!-- server's total bytes and current bandwidth statistics. -->
	<PREF NAME="total_bytes_update" TYPE="UInt32">1</PREF>

	<!-- if this is true, the server will automatically restart itself if it crashes. -->
	<PREF NAME="auto_restart" TYPE="Bool16">true</PREF>

	<!-- If this is true, the server will stop when an assert condition is hit. -->
	<PREF NAME="break_on_assert" TYPE="Bool16">false</PREF>

	<!-- This tells the server what IP address it should accept -->
	<!-- client connections on. A value of 0 means all IP addresses currently -->
	<!-- enabled for the machine. -->
	<PREF NAME="bind_ip_addr">0</PREF>

	<!-- Path to the root folder for movies. -->
	<PREF NAME="movie_folder">/Library/QuickTimeStreaming/Movies</PREF>

	<!-- Maximum amount of bandwidth the server is allowed to serve. -->
	<!-- value is in kilobits/sec. While this limit is exceeded, new client requests. -->
	<!-- for additional streams will be responded to with the RTSP error 453, "Not Enough Bandwidth". -->
	<PREF NAME="maximum_bandwidth" TYPE="SInt32">102400</PREF>

	<!-- Maximum number of concurrent connections allowed by the server -->
	<PREF NAME="maximum_connections" TYPE="SInt32">1000</PREF>

	<!-- Amount of time in seconds the server will wait before -->
	<!-- disconnecting idle RTP clients. This timer is reset each time the server -->
	<!-- receives an RTCP status packet from the client. -->
	<PREF NAME="rtp_timeout" TYPE="UInt32">120</PREF>

	<!-- rtsp_timeout is the timeout that gets reported to the client. This is the actual timeout value -->
	<PREF NAME="real_rtsp_timeout" TYPE="UInt32">180</PREF>

	<!-- Amount of time in seconds the server will wait before -->
	<!-- disconnecting idle RTSP clients. This timer is reset each time the server -->
	<!-- receives a new RTSP request from the client. -->
	<PREF NAME="rtsp_timeout" TYPE="UInt32">0</PREF>

	<!-- Run as this user -->
	<PREF NAME="run_user_name"></PREF>

	<!-- Member of this group -->
	<PREF NAME="run_group_name"></PREF>

	<!-- The following 8 prefs implement the server's thinning algorithm. -->
	<!-- They are all in milliseconds -->
	
	<!-- If a packet is this late, it is dropped -->
	<PREF NAME="drop_all_packets_delay" TYPE="SInt32">2500</PREF>

	<!-- If a video packet is this late, it is dropped -->
	<PREF NAME="drop_all_video_delay" TYPE="SInt32">1750</PREF>

	<!-- If a packet is this late, the server thins the stream as much as possible -->
	<PREF NAME="thin_all_the_way_delay" TYPE="SInt32">1500</PREF>

	<!-- If a packet is this late, thin some more -->
	<PREF NAME="always_thin_delay" TYPE="SInt32">750</PREF>

	<!-- If a packet is this late, we might thin some more -->
	<PREF NAME="start_thinning_delay" TYPE="SInt32">0</PREF>

	<!-- If a packet is this late, start thicking -->
	<PREF NAME="start_thicking_delay" TYPE="SInt32">250</PREF>

	<!-- If a packet is this late (negative means it is ahead of time), restore full quality -->
	<PREF NAME="thick_all_the_way_delay" TYPE="SInt32">-2000</PREF>

	<!-- The server checks packet delay differences this often -->
	<PREF NAME="quality_check_interval" TYPE="UInt32">1000</PREF>

	<!-- If this is true, the server will add its source address to its transport. -->
	<!-- headers. This is necessary on certain networks where the source address -->
	<!-- is not necessarily known.  -->
	<PREF NAME="append_source_addr_in_transport" TYPE="Bool16">false</PREF>

	<!-- The server appends its own IP addr into the Transport: header. -->
	<!-- If you want an alternate address placed there, use this pref to specify -->
	<!-- the address.  -->
	<PREF NAME="alt_transport_src_ipaddr" TYPE="UInt32"></PREF>

	<!-- Reliable UDP: maximum interval between when a retransmit is supposed -->
	<!-- to be sent and when it actually gets sent. -->
	<!-- Lower values means smoother flow but slower server performance -->
	<PREF NAME="max_retransmit_delay" TYPE="UInt32">500</PREF>

	<!-- Reliable UDP: if the client doesn't explicitly say what its window is, -->
	<!-- the server will use this as a default value. In K bytes -->
	<PREF NAME="small_window_size" TYPE="UInt32">24</PREF>

	<!-- Reliable UDP: if the client doesn't explicitly say what its window is, -->
	<!-- the server will use this as a default value. In K bytes -->
	<PREF NAME="medium_window_size" TYPE="UInt32">48</PREF>
	
	<!-- Reliable UDP: if the client doesn't explicitly say what its window is, -->
	<!-- the server will use this as a default value. In K bytes -->
	<PREF NAME="large_window_size" TYPE="UInt32">64</PREF>

	<!-- Reliable UDP: if the client doesn't explicitly say what its window is, -->
	<!-- the server will use the small_window_size if the bit rate is below this threshold in kbps -->
	<PREF NAME="window_size_threshold" TYPE="UInt32">200</PREF>

	<!-- Reliable UDP: if the client doesn't explicitly say what its window is, -->
	<!-- the server will use the small_window_size if the bit rate is below this threshold in kbps -->
	<PREF NAME="window_size_max_threshold" TYPE="UInt32">1000</PREF>

	<!-- Reliable UDP: For debugging only. This turns on massive -->
	<!-- server logging of reliable udp acking -->
	<PREF NAME="ack_logging_enabled" TYPE="Bool16">false</PREF>

	<!-- Reliable UDP: Time in msec between server checks for incoming RTCP packets. -->
	<!-- Longer interval means better server performance but grosser -->
	<!-- mis-estimates of packet round-trip-times -->
	<PREF NAME="rtcp_poll_interval" TYPE="UInt32">100</PREF>

	<!-- Reliable UDP: Size in Kbytes for the RTCP UDP socket receive buffers. -->
	<!-- This in general needs to be big to absorb bursts of RTCP ACKs. -->
	<!-- Lower value may mean ACKs will get dumped by the kernel. -->
	<PREF NAME="rtcp_rcv_buf_size" TYPE="UInt32">768</PREF>
	
	<!-- This is also the minimum time the server will wait between sending packet data to a client -->
	<PREF NAME="send_interval" TYPE="UInt32">50</PREF>

	<!-- The server tries to get ahead of clients. This is the farthest ahead -->
	<!-- in seconds that the server can go. -->
	<PREF NAME="max_send_ahead_time" TYPE="UInt32">25</PREF>

	<!-- Reliable UDP: Is Reliable UDP slow start enabled. Having this off may lead to an initial -->
	<!-- burst of packet loss due to mis-estimate of the client's available bandwidth. Having it -->
	<!-- on may lead to premature thinning. -->
	<PREF NAME="reliable_udp_slow_start" TYPE="Bool16">true</PREF>

	<!-- Turn on or off the SDP file deleter: files are deleted after the SDP t= endtime passes -->
    <PREF NAME="auto_delete_sdp_files" TYPE="Bool16">false</PREF>

	<!-- Set this to be the authentication scheme you want the server to use. -->
	<!-- "basic", "digest", and "none" are the currently supported values. -->
    <PREF NAME="authentication_scheme">digest</PREF>

	<!-- feature removed -->
    <PREF NAME="sdp_file_delete_interval_seconds" TYPE="UInt32">10</PREF>

	<!-- Enabled / disable reliable UDP protocol. -->
    <PREF NAME="reliable_udp" TYPE="Bool16">true</PREF>

    <!-- If reliable UDP is enabled, specify the directories in which -->
    <!-- it is enabled. Directories should be relative to the movies -->
    <!-- folder, with a leading slash but no trailing slash. For example: -->
    <!-- /reliable_udp_dir -->
    <PREF NAME="reliable_udp_dirs">/</PREF>

    <!-- Enable printfs of some interesting stats about each reliable UDP client -->
    <PREF NAME="reliable_udp_printfs" TYPE="Bool16">false</PREF>
    
    <!-- Enable debugging error messages in RTSP error response -->
    <PREF NAME="RTSP_error_message" TYPE="Bool16">false</PREF>
    
    <!-- If value is greater than zero, then the server creates run_num_threads threads -->
    <!-- If value is zero, the server creates a thread for each processor -->
    <!-- This setting is used to override the default behavior - one thread per process --> 
    <PREF NAME="run_num_threads" TYPE="UInt32">0</PREF>
    
	<!-- Rate at which to overbuffer: number of times the data rate -->
	<PREF NAME="overbuffer_rate" TYPE="Float32">2.0</PREF>

	<!-- Enables debugging of the RTSP protocol (used for developer debugging) -->
    <PREF NAME="RTSP_debug_printfs" TYPE="Bool16">false</PREF>
    
	<!-- The monitor status file is for updating the file  -->
    <!-- used by an external monitor application. -->
    <PREF NAME="enable_monitor_stats_file" TYPE="Bool16">true</PREF>
    <PREF NAME="monitor_stats_file_interval_seconds" TYPE="UInt32">10</PREF>
    <PREF NAME="monitor_stats_file_name" >server_status</PREF>
    
	<!-- RTP packet debugging options (used for developer debugging) -->
    <PREF NAME="enable_packet_header_printfs" TYPE="Bool16" >false</PREF>
    <PREF NAME="packet_header_printf_options" >rtp;rr;sr;app;ack;</PREF>    
</SERVER>

<MODULE NAME="QTSSAccessLogModule">
	<!-- Amount of time in days between rolls of the  -->
	<!-- access log. A value of 0 means unlimited. -->
	<PREF NAME="request_logfile_interval" TYPE="UInt32">7</PREF>

	<!-- Maximum allowed size in bytes for the access log. A -->
	<!-- value of 0 means unlimited. -->
	<PREF NAME="request_logfile_size" TYPE="UInt32">10240000</PREF>

	<!-- Path to directory where access logs are stored. -->
	<PREF NAME="request_logfile_dir">/Library/QuickTimeStreaming/Logs</PREF>

	<!-- Name of the access log file. -->
	<PREF NAME="request_logfile_name">StreamingServer</PREF>
	
	<!-- Either "true" or "false". Logs date time field -->
	<!-- in GMT if true and in localtime if false-->
     <PREF NAME="request_logtime_in_gmt" TYPE="Bool16">true</PREF>

	<!-- Either "true" or "false". This toggles access. -->
	<!-- logging on and off. -->
	<PREF NAME="request_logging" TYPE="Bool16">true</PREF>
</MODULE>

<MODULE NAME="QTSSFileModule">
	<!-- This URL will be included in the dynamically generated SDP -->
	<!-- returned to the client. Typically, this should be set to your default web URL. -->
	<PREF NAME="sdp_url"></PREF>

	<!-- This email address will be included in the dynamically -->
	<!-- generated SDP returned to the client. -->
	<PREF NAME="admin_email"></PREF>
	
	<!-- File module accepts the rtsp Speed header, which controls the overall -->
	<!-- play rate. This is the maximum rate it will allow -->
    <PREF NAME="max_allowed_speed" TYPE="Float32">4.000000</PREF>
    
    <!-- When sending packets to the client, the connection may sometimes get -->
    <!-- flow controlled. When that happens, the server periodically checks to -->
    <!-- see if the condition has been lifted. This is how often it checks -->
    <PREF NAME="flow_control_probe_interval" TYPE="UInt32">10</PREF>
    
	<!-- These options control the use of private/shared file   -->
    <!-- buffers in the QTSSFileModule. These options allow for -->
    <!-- performance tuning of buffering, -->
    <PREF NAME="enable_shared_file_buffers" TYPE="Bool16">true</PREF>
    <PREF NAME="enable_private_file_buffers" TYPE="Bool16">true</PREF>
    <PREF NAME="num_shared_buffer_increase_per_session" TYPE="UInt32">2</PREF>
    <PREF NAME="shared_buffer_unit_k_size" TYPE="UInt32">32</PREF>
    <PREF NAME="private_buffer_unit_k_size" TYPE="UInt32">32</PREF>
    <PREF NAME="num_shared_buffer_units_per_buffer" TYPE="UInt32">0</PREF>
    <PREF NAME="num_private_buffer_units_per_buffer" TYPE="UInt32">1</PREF>
    <PREF NAME="max_shared_buffer_units_per_buffer" TYPE="UInt32">8</PREF>
    <PREF NAME="max_private_buffer_units_per_buffer" TYPE="UInt32">8</PREF>
    <PREF NAME="add_seconds_to_client_buffer_delay" TYPE="Float32">0.000000</PREF>
    
	<!-- These options allow you to enable/disable recording of SDP files for debugging.  -->
    <PREF NAME="record_movie_file_sdp" TYPE="Bool16">false</PREF>
    <PREF NAME="enable_movie_file_sdp" TYPE="Bool16">false</PREF>

    <!-- If this is true, the server will allow streaming of files that have invalid hint track references -->
    <PREF NAME="allow_invalid_hint_track_refs" TYPE="Bool16">false</PREF>
</MODULE>

<MODULE NAME="QTSSMP3StreamingModule">
	<!-- Set this to false if you would like to disable native MP3 streaming -->
	<PREF NAME="mp3_streaming_enabled" TYPE="Bool16">true</PREF>
	
	<!-- This is the broadcaster application's password -->
	<PREF NAME="mp3_broadcast_password"> </PREF>
	
	<!-- This is the number of bytes we read from a broadcaster before sending to clients -->
	<!-- You can use this for performance tuning. -->
    <PREF NAME="mp3_broadcast_buffer_size" TYPE="UInt32" >8192</PREF>
    
	<!-- This is the number of milliseconds we will wait for flow control to be -->
	<!-- lifted blocked clients. -->
	<!-- You can use this for performance tuning. -->
    <PREF NAME="mp3_max_flow_control_time" TYPE="SInt32" >10000</PREF>
    
	<!-- This is the name of the log file excluding the ".log" ending -->
    <PREF NAME="mp3_request_logfile_name" >mp3_access</PREF>
    
	<!-- Path to directory where access logs are stored. -->
	<PREF NAME="mp3_request_logfile_dir">/Library/QuickTimeStreaming/Logs</PREF>

	<!-- Either "true" or "false". This toggles -->
	<!-- mp3 access logging on and off. -->
	<PREF NAME="mp3_request_logging" TYPE="Bool16">true</PREF>

	<!-- Maximum allowed size in bytes for the access log. A -->
	<!-- value of 0 means unlimited. -->
	<PREF NAME="mp3_request_logfile_size" TYPE="UInt32">10240000</PREF>
	
	<!-- Amount of time in days between rolls of the  -->
	<!-- access log. A value of 0 means unlimited. -->
	<PREF NAME="mp3_request_logfile_interval" TYPE="UInt32">7</PREF>

	<!-- Either "true" or "false". Logs date time field -->
	<!-- in GMT if true and in localtime if false-->
    <PREF NAME="mp3_request_logtime_in_gmt" TYPE="Bool16">true</PREF>
</MODULE>

<MODULE NAME="QTSSWebStatsModule">
	<!-- This sets the URL for the server's web stats page. If this -->
	<!-- is set to "stats" for instance, if you request: -->
	<!-- http://my.server.com:554/stats in a web browser, the server will respond -->
	<!-- with current status information. -->
	<PREF NAME="web_stats_url"></PREF>
</MODULE>

<MODULE NAME="QTSSHttpFileModule">
	<!-- Module enabled or disabled -->
	<PREF NAME="http_xfer_enabled" TYPE="Bool16" >false</PREF>
	<!-- Path to the http download folder. All files -->
	<!-- that are requested from this folder are sent via HTTP -->
	<PREF NAME="http_folder">/Library/QuickTimeStreaming/Movies/http</PREF>
	<!-- Either "true" or "false". This toggles http module -->
	<!-- logging on and off. -->
	<PREF NAME="http_logging" TYPE="Bool16">true</PREF>
	<!-- Name of the http module log file. -->
	<PREF NAME="http_logfile_name">Http</PREF>
	<!-- Path to directory where http module logs are stored. -->
	<PREF NAME="http_logfile_dir">/Library/QuickTimeStreaming/Logs</PREF>
	<!-- Maximum allowed size in bytes for the http module log. A -->
	<!-- value of 0 means unlimited. -->
	<PREF NAME="http_logfile_size" TYPE="UInt32">256000</PREF>
	<!-- Amount of time in days between rolls of the  -->
	<!-- http module log. A value of 0 means unlimited. -->
	<PREF NAME="http_logfile_interval" TYPE="UInt32">7</PREF>	
</MODULE>

<MODULE NAME="QTSSReflectorModule">
	<!-- The reflector imposes time delays between groups,  -->
	<!-- or "buckets" of clients for a given multicast. This value is the number -->
	<!-- of clients to put in one bucket. -->
	<PREF NAME="reflector_bucket_size" TYPE="UInt32">16</PREF>

	<!-- This value is the number of milliseconds to delay each bucket of clients. -->
	<PREF NAME="reflector_delay" TYPE="UInt32">100</PREF>

	<!-- This tells the reflector whether it should append a '.sdp' to the end -->
	<!-- of URLs when looking for a .sdp file -->
	<PREF NAME="allow_non_sdp_urls" TYPE="Bool16">true</PREF>

 	<!-- Turn on or off a broadcaster RTSP push to the server -->
    <PREF NAME="enable_broadcast_push" TYPE="Bool16">true</PREF>

 	<!-- Turn on or off a broadcaster Announce of an SDP file to the server -->
     <PREF NAME="enable_broadcast_announce" TYPE="Bool16">true</PREF>
     
  	<!-- Force announced SDPs to this maximum duration in seconds. 0 = infinite duration. -->
     <PREF NAME="max_broadcast_announce_duration_secs" TYPE="UInt32">0</PREF>
     
   	<!-- Turns on or off accepting setups on an existing broadcast stream -->
     <PREF NAME="allow_duplicate_broadcasts" TYPE="Bool16">false</PREF>

   	<!-- Turns on or off checking static ports in sdp files against a valid range -->
    <!-- If an sdp file is played and it contains a port outside the min to max static sdp range then an invalid media error is returned to the client. -->
    <!-- Announced broadcasts will also receive the invalid media error from the server for setups on an invalid static port. -->
	<PREF NAME="enforce_static_sdp_port_range" TYPE="Bool16">false</PREF>
	
  	<!-- The maximum value for a static port. See enforce_static_sdp_port_range -->
   	<!-- Ports in the range 6970 to 9999 are expected to be available for use by the server.  --> 
  	<!-- If enforce_static_sdp_port_range is true a warning will be logged  -->
  	<!-- when the minimum_static_sdp_port and maximum_static_sdp_port range crosses the server 6970 to 9999 range.  -->
	<PREF NAME="maximum_static_sdp_port" TYPE="UInt16">65535</PREF>

  	<!-- The minimum value for a static port. See enforce_static_sdp_port_range -->
  	<!-- Ports in the range 6970 to 9999 are expected to be available for use by the server.  --> 
  	<!-- If enforce_static_sdp_port_range is true a warning will be logged  -->
  	<!-- when the minimum_static_sdp_port and maximum_static_sdp_port range crosses the server 6970 to 9999 range.  -->
	<PREF NAME="minimum_static_sdp_port" TYPE="UInt16">20000</PREF>
	
	<!-- If no packets for the current SSRC are received in timeout seconds, use the next SSRC we see  -->
  	<!-- This timeout is only in use when use_one_SSRC_per_stream is true  -->
	<PREF NAME="timeout_stream_SSRC_secs" TYPE="UInt32">30</PREF>

  	<!-- Only reflect packets from a single SSRC -->
  	<!-- Setting this value to false allows all packets from any source to be passed to the clients -->
	<PREF NAME="use_one_SSRC_per_stream" TYPE="Bool16">true</PREF>

  	<!-- When a broadcaster RTSP session goes down also teardown the clients watching the stream -->
	<PREF NAME="kill_clients_when_broadcast_stops" TYPE="Bool16">false</PREF>

  	<!-- These options allow you to configure buffering for the relector module. -->
    <PREF NAME="reflector_bucket_offset_delay_msec" TYPE="UInt32">73</PREF>
    <PREF NAME="reflector_buffer_size_sec" TYPE="UInt32">10</PREF>
    <PREF NAME="reflector_use_in_packet_receive_time" TYPE="Bool16">false</PREF>
    <PREF NAME="reflector_in_packet_max_receive_sec" TYPE="UInt32">60</PREF>
    <PREF NAME="enable_rtp_play_info" TYPE="Bool16" >false</PREF>
    <PREF NAME="timeout_broadcaster_session_secs" TYPE="UInt32">20</PREF>
    <PREF NAME="authenticate_local_broadcast" TYPE="Bool16">false</PREF>
	<PREF NAME="disable_overbuffering" TYPE="Bool16">false</PREF>
		
	<!-- Maximum content length (in K bytes) of the SDP that is announced -->
	<!-- A value of 0 indicates that no maximum is imposed -->
	<PREF NAME="max_announced_sdp_length_kbytes" TYPE="UInt32">0</PREF>

	<!-- allow broadcasts - broadcasts are reflected only if this is set to true -->
	<PREF NAME="allow_broadcasts" TYPE="Bool16">true</PREF>
	
	<!-- Redirect broadcasts if URI begins with the keyword -->
	<PREF NAME="redirect_broadcast_keyword"></PREF>
	<!-- Redirect broadcasts to this directory if the the URI begins with the "redirect_broadcast_keyword" -->
	<PREF NAME="redirect_broadcasts_dir"></PREF>

	<!-- List of directories from which to allow broadcasts. -->
	<!-- Can be relative to the "movie_folder" or to the "redirect_broadcasts_dir" -->
	<!-- The latter directory will be used if the URI also has the "redirect_broadcast_keyword" prefix -->
	<!-- Can also be an absolute file system path -->
	<PREF NAME="broadcast_dir_list"></PREF>

</MODULE>

<MODULE NAME="QTSSFlowControlModule">
	<!-- If a client reports loss percentages greater than loss_thin_tolerance, -->
	<!-- over the course of num_losses_to_thin consecutive RTCP (status) packets, the -->
	<!-- server will drop the bitrate of stream. -->
	<PREF NAME="loss_thin_tolerance" TYPE="UInt32">30</PREF>

	<PREF NAME="num_losses_to_thin" TYPE="UInt32">3</PREF>

	<!-- If a client reports loss percentages less than loss_thick_tolerance, over -->
	<!-- the course of num_losses_to_thick consecutive RTCP (status) packets, the -->
	<!-- server will increase the bitrate of the stream. -->
	<PREF NAME="loss_thick_tolerance" TYPE="UInt32">5</PREF>

	<PREF NAME="num_losses_to_thick" TYPE="UInt32">6</PREF>

	<!-- After this number of RTCP packets where the client is reporting degrading quality, -->
	<!-- the server will drop the bitrate of the stream -->
	<PREF NAME="num_worses_to_thin" TYPE="UInt32">2</PREF>
</MODULE>

<MODULE NAME="QTSSRelayModule">
	<!-- Relay preferences file. This file should be in the documented .rcf (Relay config file) -->
	<!-- format. The Relay will use this to load up all relay streams -->
	<PREF NAME="relay_prefs_file">/Library/QuickTimeStreaming/Config/relayconfig.xml</PREF>

	<!-- enter this URL into a web browser and get a web page with current stats on -->
	<!-- your active relays -->
	<PREF NAME="relay_stats_url"></PREF>
</MODULE>

<MODULE NAME="QTSSAccessModule">
	<!-- The file name for the AccessModule's access file as it appears in controlled directories. -->
	<PREF NAME="modAccess_qtaccessfilename">qtaccess</PREF>

	<!-- The default path and file name for the AccessModule's groups list -->
	<PREF NAME="modAccess_groupsfilepath">/Library/QuickTimeStreaming/Config/qtgroups</PREF>

	<!-- The default path and file name for the AccessModule's user list -->
	<PREF NAME="modAccess_usersfilepath">/Library/QuickTimeStreaming/Config/qtusers</PREF>
</MODULE>

<MODULE NAME="QTSSAdminModule">
	<!-- The delay processing a new admin request until this many milliseconds has passed -->
	<PREF NAME="RequestTimeIntervalMilli" TYPE="UInt32">50</PREF>
	
	<!-- Only requests from 127.0.0.1 are allowed if LocalAccessOnly is true -->
	<!-- If this is set to false, then IP addresses as defined by the IPAccessList may make requests -->
	<PREF NAME="LocalAccessOnly" TYPE="Bool16">true</PREF>
	
	<!-- Require Admin requests to authenticate with the server -->
	<PREF NAME="Authenticate" TYPE="Bool16">true</PREF>
	
	<!-- turn on or off admin request processing -->
	<PREF NAME="enable_remote_admin" TYPE="Bool16">true</PREF>

	<!-- A list of IP addresses that are allowed to make admin requests. -->
	<!-- LocalAccessOnly must be set to false before network addresses will be accepted. -->
	<!-- A wildcard of * is allowed for designating ranges. *.*.*.* means all addresses. -->
	<PREF NAME="IPAccessList">127.0.0.*</PREF>
	
	<!-- The user has to belong to this group in order to be authorized -->
	<!-- by the admin module for admin protocol requests -->	
	<PREF NAME="AdministratorGroup">admin</PREF>
</MODULE>

<MODULE NAME="QTSSRefMovieModule" >
	<!-- Set refmovie_xfer_enabled to false to disable RTSP ref movie generation -->
	<PREF NAME="refmovie_xfer_enabled" TYPE="Bool16">true</PREF>
    
	<!-- refmovie_rtsp_port is the RTSP port used in the generated RTSP ref movie address -->
	<PREF NAME="refmovie_rtsp_port" TYPE="UInt16">554</PREF>
</MODULE>

</CONFIGURATION>
