public class StreamService extends Object implements IStreamService
BEAN_NAME| Constructor and Description |
|---|
StreamService() |
| Modifier and Type | Method and Description |
|---|---|
void |
closeStream()
Close stream
|
void |
closeStream(IConnection conn,
Number streamId)
Close stream.
|
Number |
createStream()
Create a stream and return a corresponding id.
|
Number |
createStream(Number streamId)
Create a stream and return a corresponding id.
|
void |
deleteStream(IStreamCapableConnection conn,
Number streamId)
Delete stream
|
void |
deleteStream(Number streamId)
Close the stream if not been closed.
|
IBroadcastScope |
getBroadcastScope(IScope scope,
String name)
Return broadcast scope object for given scope and child scope name.
|
void |
initStream(Number streamId)
Called by FMS.
|
void |
initStream(Number streamId,
Object idk)
Called by FMS.
|
void |
pause(Boolean pausePlayback,
int position)
Pause at given position.
|
void |
pauseRaw(Boolean pausePlayback,
int position)
Undocumented Flash Plugin 10 call, assuming to be the alias to pause(boolean, int)
|
void |
play(Boolean dontStop)
Play stream without initial stop
|
void |
play(String name)
Play stream with name
|
void |
play(String name,
int start)
Play stream with name from start position
|
void |
play(String name,
int start,
int length)
Play stream with name from start position and for given amount if time
|
void |
play(String name,
int start,
int length,
boolean flushPlaylist)
Publishes stream from given position for given amount of time
|
void |
play(String name,
int start,
int length,
Object reset)
Plays back a stream based on the supplied name, from the specified position for the given length of time.
|
void |
play2(Map<String,?> playOptions)
Dynamic streaming play method.
|
void |
play2(org.red5.io.utils.ObjectMap params)
Dynamic streaming play method.
|
void |
play2(String oldStreamName,
int start,
String transition,
int length,
double offset,
String streamName)
Dynamic streaming play method.
|
void |
publish(Boolean dontStop)
Publish
|
void |
publish(String name)
Publishes stream with given name
|
void |
publish(String name,
String mode)
Publishes stream with given name and mode
|
void |
receiveAudio(boolean receive)
Can recieve audio?
|
void |
receiveVideo(boolean receive)
Can recieve video?
|
void |
releaseStream(String streamName)
Called by FME.
|
void |
seek(int position)
Seek to position
|
static void |
sendNetStreamStatus(IConnection conn,
String statusCode,
String description,
String name,
String status,
Number streamId)
Send NetStream.Status to the client.
|
public Number createStream()
createStream in interface IStreamServicepublic Number createStream(Number streamId)
createStream in interface IStreamServicestreamId - Stream idpublic void initStream(Number streamId)
initStream in interface IStreamServicestreamId - Stream idpublic void initStream(Number streamId, Object idk)
initStream in interface IStreamServicestreamId - Stream ididk - I dont know what this is yetpublic void closeStream()
public void closeStream(IConnection conn, Number streamId)
public void streamBroadcastStart(IBroadcastStream stream) {
super.streamBroadcastStart(stream);
if (stream instanceof IClientBroadcastStream) {
int publishedStreamId = ((ClientBroadcastStream) stream).getStreamId();
Red5.getConnectionLocal().setAttribute(PUBLISHED_STREAM_ID_ATTRIBUTE, publishedStreamId);
}
}
public void streamPlaylistItemPlay(IPlaylistSubscriberStream stream, IPlayItem item, boolean isLive) {
super.streamPlaylistItemPlay(stream, item, isLive);
Red5.getConnectionLocal().setAttribute(WATCHED_STREAM_ID_ATTRIBUTE, stream.getStreamId());
}
When stream is closed, corresponding NetStream status will be sent to stream provider / consumers. Implementation is based on Red5's
StreamService.close()closeStream in interface IStreamServiceconn - client connectionstreamId - stream ID (number: 1,2,...)public void releaseStream(String streamName)
releaseStream in interface IStreamServicestreamName - stream namepublic void deleteStream(Number streamId)
deleteStream in interface IStreamServicestreamId - Stream idpublic void deleteStream(IStreamCapableConnection conn, Number streamId)
deleteStream in interface IStreamServiceconn - Stream capable connectionstreamId - Stream idpublic void pauseRaw(Boolean pausePlayback, int position)
pauseRaw in interface IStreamServicepausePlayback - Pause or resume flashposition - Pause positionpublic void pause(Boolean pausePlayback, int position)
pause in interface IStreamServicepausePlayback - Pause playback or notposition - Pause positionpublic void play(String name, int start, int length, Object reset)
name - - The name of a recorded file, or the identifier for live data. Ifstart - - The start time, in seconds. Allowed values are -2, -1, 0, or a positive number. The default value is -2, which looks for
a live stream, then a recorded stream, and if it finds neither, opens a live stream. If -1, plays only a live stream. If 0
or a positive number, plays a recorded stream, beginning start seconds in.length - - The duration of the playback, in seconds. Allowed values are -1, 0, or a positive number. The default value is -1, which
plays a live or recorded stream until it ends. If 0, plays a single frame that is start seconds from the beginning of a
recorded stream. If a positive number, plays a live or recorded stream for length seconds.reset - - Whether to clear a playlist. The default value is 1 or true, which clears any previous play calls and plays name
immediately. If 0 or false, adds the stream to a playlist. If 2, maintains the playlist and returns all stream messages at
once, rather than at intervals. If 3, clears the playlist and returns all stream messages at once.public void play(String name, int start, int length, boolean flushPlaylist)
play in interface IStreamServicename - Stream published namestart - Start positionlength - Playback lengthflushPlaylist - Flush playlist?public void play(String name, int start, int length)
play in interface IStreamServicename - Stream namestart - Start positionlength - Playback lengthpublic void play(String name, int start)
play in interface IStreamServicename - Stream namestart - Start positionpublic void play(String name)
play in interface IStreamServicename - Stream namepublic void play(Boolean dontStop)
play in interface IStreamServicedontStop - Stoppage flagpublic void play2(String oldStreamName, int start, String transition, int length, double offset, String streamName)
oldStreamName - oldstart - start postransition - type of transitionlength - length to playoffset - offsetstreamName - stream namepublic void play2(org.red5.io.utils.ObjectMap params)
params - play parameterspublic void play2(Map<String,?> playOptions)
streamName: String. The name of the stream to play or the new stream to switch to.
oldStreamName: String. The name of the initial stream that needs to be switched out. This is not needed and ignored
when play2 is used for just playing the stream and not switching to a new stream.
start: Number. The start time of the new stream to play, just as supported by the existing play API. and it has the
same defaults. This is ignored when the method is called for switching (in other words, the transition
is either NetStreamPlayTransition.SWITCH or NetStreamPlayTransitions.SWAP)
len: Number. The duration of the playback, just as supported by the existing play API and has the same defaults.
transition: String. The transition mode for the playback command. It could be one of the following:
NetStreamPlayTransitions.RESET
NetStreamPlayTransitions.APPEND
NetStreamPlayTransitions.SWITCH
NetStreamPlayTransitions.SWAP
NetStreamPlayTransitions:
APPEND : String = "append" - Adds the stream to a playlist and begins playback with the first stream.
APPEND_AND_WAIT : String = "appendAndWait" - Builds a playlist without starting to play it from the first stream.
RESET : String = "reset" - Clears any previous play calls and plays the specified stream immediately.
RESUME : String = "resume" - Requests data from the new connection starting from the point at which the previous connection ended.
STOP : String = "stop" - Stops playing the streams in a playlist.
SWAP : String = "swap" - Replaces a content stream with a different content stream and maintains the rest of the playlist.
SWITCH : String = "switch" - Switches from playing one stream to another stream, typically with streams of the same content.
playOptions - play optionspublic void publish(Boolean dontStop)
publish in interface IStreamServicedontStop - Whether need to stop firstpublic void publish(String name, String mode)
publish in interface IStreamServicename - Stream published namemode - Stream publishing modepublic void publish(String name)
publish in interface IStreamServicename - Stream published namepublic void seek(int position)
seek in interface IStreamServiceposition - Seek positionpublic void receiveVideo(boolean receive)
receiveVideo in interface IStreamServicereceive - Boolean flagpublic void receiveAudio(boolean receive)
receiveAudio in interface IStreamServicereceive - Boolean flagpublic IBroadcastScope getBroadcastScope(IScope scope, String name)
scope - Scope objectname - Child scope namepublic static void sendNetStreamStatus(IConnection conn, String statusCode, String description, String name, String status, Number streamId)
conn - connectionstatusCode - NetStream status codedescription - descriptionname - namestatus - The status - error, warning, or statusstreamId - stream idCopyright © 2005–2017 Red5. All rights reserved.