Skip to content

An extension of the native netstream class that will better handle cache emptying and is backwards compatible with version of flash that had buffer monitoring issues.

Notifications You must be signed in to change notification settings

jakehilton/netstreamsmart

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 

Repository files navigation

netstreamsmart

An extension of the native netstream class that will better handle cache emptying and is backwards compatible with version of flash that had buffer monitoring issues.

Some version of the flash player incorrectly removed buffer notifications which would break applications that relied on this. This class will automate the buffer emptying and notification of the buffer empty.

It will automatically detach any camera or microphone source from the netstream, allow it to empty, then report when it has emptied and close the netstream.

It has an event,BUFFER_EMPTIED, that fires to notify the user of a buffer empty success.

Public properties that can be set:

  • buffer_empty_wait_limit: a uint property defining the number of seconds that the class will wait before firing off the buffer empty event. The default is 0 which means it will wait indefinitely for the netstream buffer to empty
  • disable_time_update: by default a timer will be initialized to report back when the time value updates. The default is false and so the timer will start and report.
  • enable_info_update: enable a timer will be initialized to report back netstream.info at a set interval. The default is false and so the timer will not start and report.
  • ns_info_rate: the rate at which the info updates are reported out. The default is 2000 (2 seconds)
  • format_netstream_info: it will format the netstream info into a JSON compatible dataset instead of the default netstream info object which doesn't support iterations

USAGE: It's a simple use case really.. just use it as you would the built in NetStream class.

To shutdown the netstream you would call the publishClose method to have it shutdown after a buffer empty or the finalizeClose to have it shutdown immediately and clean up the timer.

For example:

var nc:NetConnection;
var nss:NetStreamSmart = new NetStreamSmart(nc);

//to close:
 nss.publishClose(); //will let the buffers empty to the server naturally then close the netstream
 or
 nss.publishDispose(); //will let the buffers empty to the server naturally then dispose of the netstream
 or
 nss.close(); //will immediately disconnect sources and close the netstream
 or
 nss.dispose(); //will immediately disconnect sources and dispose the netstream

About

An extension of the native netstream class that will better handle cache emptying and is backwards compatible with version of flash that had buffer monitoring issues.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published