• Save
FMS Administration Seminar
Upcoming SlideShare
Loading in...5
×
 

FMS Administration Seminar

on

  • 3,089 views

Seminar about Flash Media Server (FMS) Administration)

Seminar about Flash Media Server (FMS) Administration)

Statistics

Views

Total Views
3,089
Views on SlideShare
3,079
Embed Views
10

Actions

Likes
4
Downloads
0
Comments
0

1 Embed 10

http://www.slideshare.net 10

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

FMS Administration Seminar FMS Administration Seminar Presentation Transcript

  •  
    • Introduction to Flash media server
    • Understanding configurations
    • Scaling options
    • What is a media server
      • Open socket server
      • Persistent connection with client
      • On that connection
        • Stream audio
        • Stream video
        • Stream text / data
    • What is flash media server
      • Adobe’s media server is called flash media server
      • Works with the RTMP protocol
      • Flash media streaming server
      • Flash media Interactive server
    • Versions
      • 1.0 released 9 July 2002
      • 1.5 released 27 March 2003
      • 2.0 released November 15 2005
        • Renamed to FMS and versions not reset
        • New coded On2’s VP6 in flash player 8 for the first time
      • 3.0 released 4 December 2007
      • 3.5 released 13 January 2009
      • 3.6 now in beta (closed beta)
    • Types of servers we have
      • RED5
      • WOWza
    • Special language
      • Client side – ActionScript 2/3 (3 preferred)
      • Server - Server-Side Media ActionScript
      • FMS API
        • Predefined functions (application level)
          • OnConnect
          • OnClientConnect
          • And more…
    • Create video/audio/text chats
    • Create games
    • Create games
    • Create Rich video based application
    • Create Rich audio applications
    • Supported OS’s
    • Installation of flash media server
    • Ports supported / best use
    • Connection test – coding example (flex)
    • Windows
      • Windows 2003
      • Windows 2008
      • Windows Vista
      • Windows 7
    • Linux
      • From 3.X +
    • Mac
      • No Mac version 
    • Supported ports (1935, 80)
    • Why not use 1935?
      • Client firewalls
      • Server firewalls
      • Routers blocking communications
    • Combine with IIS listening on port 80
    • Let’s install shall we
  • package { import flash.net.NetConnection; import flash.display.Sprite; import flash.text.TextField; import flash.events.NetStatusEvent;   public class FMS3Connect extends Sprite { private var nc:NetConnection; private var rtmpNow:String; private var msg:String; private var connectText:TextField; private var posX:Number;   function FMS3Connect () {   nc=new NetConnection(); nc.addEventListener (NetStatusEvent.NET_STATUS,checkConnect); rtmpNow="rtmpe://192.168.0.11/connect"; //rtmpNow="rtmpe:/connect"; nc.connect (rtmpNow); } private function checkConnect (event:NetStatusEvent):void { connectText=new TextField(); msg=event.info.code; connectText.width=250; connectText.text=msg; addChild (connectText); posX=connectText.stage.stageWidth; connectText.x=(posX/2)-((msg.length/2)*(6)); connectText.y=175; } } }
    • Understanding applications
      • What are applications
      • Why separate applications
    • Folder structure – get organized super fast
    • File structure inside application
    • Main.far / main.asc
      • What is a .far file
      • How can you edit this file?
      • Far utility
    • Folder/file Structure
    • Folder special configuration
      • When user needs FTP to upload files
      • End users uploading mp3 files the FMS should stream.
      • DO NOT give access to FMS default folder
      • Configuring the XML file
    • RTMP
      • Real-Time Messaging Protocol
    • RTMPE
      • Real-Time Messaging Protocol (Encrypted)
    • RTMPTE (RTMPS)
      • Real-Time Messaging Protocol (Encrypted)
      • Tunneling over HTTP (T)
    • Security best use
    • RTMP
      • proprietary protocol
      • Developed by Adobe
      • TCP based
      • Single persistent connection
      • Real time messaging allowed on this connection
      • Smooth delivery of audio/video
      • Ports: Default  1935 can work on  80
      • Sometimes firewalls blocks this connection (rare)
    • RTMPT (e, s)
      • HTTP based
      • Encapsulated and exchanged over HTTP
      • Larger packets (include headers)
      • Will go through every firewall
    • What are RSO’s
      • Remote shared objects
      • Controlled from place X shown on place Y and vice-versa
        • private var so:SharedObject;
        • var memberName:String= name_txt.text; so.setProperty("cliName", memberName);
    • When to use?
      • Remote controlled slide shows
      • Text chats
      • Mixer applications (DJ’s)
      • Live sales site
      • Customer service applications
    • Basic Shared object example (code)
    • Netstream
      • What is a NetStream?
        • Packets carrying mule 
      • Bundles sending over the NetStream
      • Connections Handling… (next slide)
    • Connections Handling
    • Flash media server administration console
      • Locating it in the start menu
      • Set admin password
    • Flash media server administration console
    • Configuration XML’s
    • Configuration XML’s (the old fashioned way)
      • Good old notepad / Notepad++ is the IDE
      • Great commenting
      • High level of customizing the server
      • FMS.INI
        • Admin credentials
        • Application Folders
        • Host ports
        • ############################################################### # This section contains configurable parameters in Server.xml # ############################################################### # IP address and port Flash Media Admin Server should listen on
        • # For example:
        • # SERVER.ADMINSERVER_HOSTPORT = :1111
        • SERVER.ADMINSERVER_HOSTPORT = :1111
    • FMS.INI continues
      • Paramaters
        • <HostPort>${SERVER.ADMINSERVER_HOSTPORT}</HostPort>
        • This means the configuration comes from XML
        • You can change the FMS.INI or poke your way through to the relevant XML.
    • Server.xml
        • 81 different tags for configuration
        • One you should care about the most:
          • <HostPort></HostPort>
    • Users.xml
      • Increase / decrease security
      • <allow> <deny> tags
      • Allow / deny domains
        • <Allow>www.sandlight.com, 12.34.5.678 </Allow>
    • Logger.xml
      • access.00.log – most recent log (convention)
      • Change time of logging
      • <history>
        • Default 5
        • When server reaches access.05.log starts over
      • <Time>
        • Time format – Local / UTC
    • Adaptor.XML
      • Network adaptor configuration (individual)
        • <HostPortList>
        • <HostPort>
        • <Allow> <Deny>
    • vHost.xml
      • Create additional virtual
      • hosts using the same server
    • Cluster in Streaming server
    • Load balancing in Interactive server
    • FMS Intelligent balancing
    • Edge / Origin
    • Magic custom created scaling
  •  
    • Exp/Imp URI
      • When should you use Explicit/implicit URI
    • Traffic Cop
      • When should you use it?
    • Server Auto Discover
    • Client Auto Discover
  •  
    • Server number is unlimited
    • Load balancer of your choice
    • Horizontal scaling
  •  
    • DB Server
      • Sql Server /mySQL / Sqlite3
      • Holds data on servers
        • How many servers in cluster
        • Allowed connections
        • Connected users
        • Bandwidth usage
    • DB Server
    • HTTP Service
      • Connects to the database and watches the data
      • Simple HTTP service via REST or SOAP
        • WhatIsMyServer():String
        • This method return a URI for the client machine
        • The client then connects to that URI
        • rtmp://server1:1935/
    • Http Service
  •  
    • Total Control
    • SWF validation
    • DB – Come play
    • Each application has it’s own event bubble
    • Event Types:
      • OnConnect – When client connects to the application
    • OnDisConnect
      • Client disconnected from the server
    • OnAppStart
      • Application initiated (from server or from client)
    • Custom events
      • Sync, client-data and more…
    • Inside stream.play();
      • myStream.play(&quot;name&quot;,start,length,reset,remoteConnection, virtualKey)
      • application.myStream.get(&quot;serSideStreamName&quot;)
      • application.myStream.play(&quot;newProduct&quot;)
    • Inside stream.play();
      • application.sandStream.get(&quot;sandlight&quot;)//Name if(application.sandStream) { application.sandStream.play(&quot;PepTalk&quot;)//Live application.sandStream.play(&quot;recordedTalk&quot;)//Recorded FLV application.sandStream.play(&quot;mp3:Blues&quot;)//MP3 }
    • Inside stream.play();
      • Params (Start Param)
      • application.sandStream.play(&quot;mp3:flaRock&quot;,-2)
      • -2 is default
      • Tries to play live first (find?)
      • After the live starts to play VOD (find?)
      • Creates a stream with the name and listens
    • Inside stream.play();
      • Params (Start Param)
      • application.sandStream.play(&quot;mp3:flaRock&quot;,-2)
      • -1
      • Tries to play live first (find?)
      • Creates a stream with the name and listens
    • Inside stream.play();
      • Params (Start Param)
      • application.sandStream.play(&quot;mp3:flaRock&quot;,-2)
      • 0
      • Starts playing the file at the start
    • Inside stream.play();
      • Params (Length Param)
      • application.sandStream.play(&quot;mp3:flaRock&quot;,-2, -1)
      • Play from beginnig to end
      • If 0 or greater is used then a preview is played
    • Inside stream.play();
      • Preview?
        • When you have a VOD application and you want to let your users play a sneak peak of the application.
    • Playing mp3 files
    • Create files
    • Read/write to and from files
    • Get data on files
      • Example application
      • Coding…
  •  
      • Yossi Cohen
    • [email_address]
    • 09-8850956, 054-5313092