MultiOnlyAudio
Created by pedro on 30/5/21.
Support multiple streams in rtmp and rtsp at same time. You must set the same number of ConnectChecker that you want use.
For example. 2 RTMP and 1 RTSP: stream1, stream2, stream3 (stream1 and stream2 are ConnectChecker for RTMP. stream3 is ConnectChecker for RTSP)
MultiOnlyAudio multiOnlyAudio = new MultiOnlyAudio(new ConnectChecker[]{ stream1, stream2 }, new ConnectChecker[]{ stream3 });
You can set an empty array or null if you don't want use a protocol new MultiOnlyAudio(new ConnectChecker[]{ stream1, stream2 }, null); //RTSP protocol is not used
In order to use start, stop and other calls you must send type of stream and index to execute it. Example (using previous example interfaces):
multiOnlyAudio.startStream(MultiType.RTMP, 1, endpoint); //stream2 is started multiOnlyAudio.stopStream(MultiType.RTSP, 0); //stream3 is stopped multiOnlyAudio.getStreamClient(MultiType.RTMP, 0).retry(delay, reason, backupUrl) //retry stream1
NOTE: If you call this methods nothing is executed:
multiOnlyAudio.startStream(endpoint); multiOnlyAudio.stopStream();
The rest of methods without MultiType and index means that you will execute that command in all streams. Read class code if you need info about any method.
Constructors
Functions
Mute microphone, can be called before, while and after stream.
Enable a muted microphone, can be called before, while and after stream.
Get mute state of microphone.
Get record state.
Same to call: prepareAudio(64 * 1024, 32000, true, false, false);
Call this method before use @startStream. If not you will do a stream without audio.
Set an audio effect modifying microphone's PCM buffer.
Set a callback to know errors related with Video/Audio encoders
Set the mode to calculate timestamp. By default CLOCK. Must be called before startRecord/startStream or it will be ignored.
Starts recording an AAC audio.
Need be called after @prepareVideo or/and @prepareAudio.
Stop record AAC audio started with @startRecord. If you don't call it file will be unreadable.
Stop stream started with @startStream.