Class Publisher.Builder
- Enclosing class:
 Publisher
Publisher object. Instantiate a Builder object using the
 Publisher.Builder(Context context) constructor. Then call methods of the
 Builder instance to add settings for the publisher. (Note that the
 Publisher.Builder class inherits methods from the PublisherKit.Builder
 class.) Then call the build() method, which returns a Publisher object.
 
 Use the Session.publish(PublisherKit publisher) method to start streaming
 from the publisher into a session.
- 
Constructor Summary
ConstructorsConstructorDescriptionBuilder(android.content.Context context) Instantiates aPublisher.Builderobject. - 
Method Summary
Modifier and TypeMethodDescriptionallowAudioCaptureWhileMuted(boolean allow) If set to false, the microphone will be automatically switched off when all publishers have muted their audio.audioBitrate(int bitsPerSecond) Sets the desired bitrate for the published audio, in bits per second.audioTrack(boolean enabled) Sets whether to include an audio track in the published stream (true, the default) or not (false).build()Returns a newPublisherinstance based on thePublisher.Buildersettings.capturer(BaseVideoCapturer capturer) Sets the video capturer to use for the publisher.enableOpusDtx(boolean enable) frameRate(Publisher.CameraCaptureFrameRate frameRate) Sets the desired frame rate of the published video.Sets the name of the published video.publisherAudioFallbackEnabled(boolean enabled) Whether the stream will use the publisher audio-fallback feature (true) or not (false).renderer(BaseVideoRenderer renderer) Sets the video renderer to use for the publisher.resolution(Publisher.CameraCaptureResolution resolution) Sets the video resolution of the published video.scalableScreenshare(boolean enable) Whether to allow use of scalable video for a publisher that has the videoType set to PublisherKitVideoTypeScreen (true) or not (false, the default).subscriberAudioFallbackEnabled(boolean enabled) Whether the stream will use the subscriber audio-fallback feature (true) or not (false), for subscribers to the published stream.videoTrack(boolean enabled) Sets whether to include an video track in the published stream (true, the default) or not (false). 
- 
Constructor Details
- 
Builder
public Builder(android.content.Context context) Instantiates aPublisher.Builderobject. 
 - 
 - 
Method Details
- 
resolution
Sets the video resolution of the published video. Set this to a value defined in thePublisher.CameraCaptureResolutionenum - 
frameRate
Sets the desired frame rate of the published video. Set this to a value defined in thePublisher.CameraCaptureFrameRateenum. If the device does not support the specified frame rate, it will use the closest supported frame rate. Note that in sessions that use the OpenTok Media Router (sessions with the media mode set to routed), lowering the frame rate proportionally reduces the bandwidth the stream uses. However, in sessions that have the media mode set to relayed, lowering the frame rate does not reduce the stream's bandwidth. (See The OpenTok Media Router and media modes.) - 
name
Description copied from class:PublisherKit.BuilderSets the name of the published video. Thenameproperty for a stream published by this publisher will be set to this value (on all clients).- Overrides:
 namein classPublisherKit.Builder
 - 
audioTrack
Description copied from class:PublisherKit.BuilderSets whether to include an audio track in the published stream (true, the default) or not (false). Creating a publisher without an audio track can save CPU resources and reduce the bandwidth used by the stream.If you call this and pass in
false, the audio subsystem will not be initialized for the publisher, and calling thePublisherKit.setPublishAudio(boolean publishAudio)method will have no effect. If your application does not require the use of audio, it is recommended to use this Builder setting rather than use thePublisherKit.setPublishAudio(boolean publishAudio)method, which only temporarily disables the audio track.- Overrides:
 audioTrackin classPublisherKit.Builder
 - 
videoTrack
Description copied from class:PublisherKit.BuilderSets whether to include an video track in the published stream (true, the default) or not (false). Creating a publisher without a video track can save CPU resources and reduce the bandwidth used by the stream.If you call this and pass in
false, the video subsystem will not be initialized for the publisher, and calling thePublisherKit.setPublishVideo(boolean publishVideo)method will have no effect. If your application does not require the use of video, it is recommended to use this Builder setting rather than use thePublisherKit.setPublishVideo(boolean publishVideo)method, which only temporarily disables the video track.- Overrides:
 videoTrackin classPublisherKit.Builder
 - 
capturer
Sets the video capturer to use for the publisher. If you do not call this method, the publisher will use the default Publisher capturer.- Overrides:
 capturerin classPublisherKit.Builder
 - 
renderer
Sets the video renderer to use for the publisher. If you do not call this method, the publisher will use the default Publisher renderer.- Overrides:
 rendererin classPublisherKit.Builder
 - 
audioBitrate
Description copied from class:PublisherKit.BuilderSets the desired bitrate for the published audio, in bits per second. The supported range of values is 6,000 - 510,000. (Invalid values are ignored.) Set this value to enable high-quality audio (or to reduce bandwidth usage with lower-quality audio).The following are recommended settings:
- 8,000 - 12,000 for narrowband (NB) speech
 - 16,000 - 20,000 for wideband (WB) speech
 - 28,000 - 40,000 for full-band (FB) speech
 - 48,000 - 64,000 for full-band (FB) mono music
 - 64,000 - 128,000 for full-band (FB) stereo music
 
The default value is 40,000.
To set other audio settings, see the
AudioDeviceManagerclass.- Overrides:
 audioBitratein classPublisherKit.Builder- Parameters:
 bitsPerSecond- The desired bitrate of the audio, in bits per second.- Returns:
 - This Builder object.
 
 - 
enableOpusDtx
Description copied from class:PublisherKit.BuilderWhether to enable Opus DTX (true) or not (false, the default). Enabling Opus DTX can reduce bandwidth usage in streams that have long periods of silence.By default, Opus DTX is disabled. If this property is set to
true, Opus DTX will be enabled for the publisher.- Overrides:
 enableOpusDtxin classPublisherKit.Builder
 - 
subscriberAudioFallbackEnabled
Description copied from class:PublisherKit.BuilderWhether the stream will use the subscriber audio-fallback feature (true) or not (false), for subscribers to the published stream. The subscriber audio-fallback feature is available in sessions that use the the OpenTok Media Router. With the subscriber audio-fallback feature enabled (the default), when the OpenTok Media Router determines that a stream's quality has degraded significantly for a specific subscriber, it disables the video in that subscriber in order to preserve audio quality.The default setting is
true(the audio-fallback feature is enabled). When using the screen video type in a session that uses the OpenTok Media Server, the subscriber audio-fallback setting is set tofalseby default, so that the video does not drop out in subscribers.- Overrides:
 subscriberAudioFallbackEnabledin classPublisherKit.Builder- See Also:
 
 - 
publisherAudioFallbackEnabled
Description copied from class:PublisherKit.BuilderWhether the stream will use the publisher audio-fallback feature (true) or not (false). With the publisher audio-fallback feature enabled (the default), when publisher determines that a stream's quality has degraded significantly, it disables the video in order to preserve audio quality.The default setting is
false(the audio-fallback feature is disabled).- Overrides:
 publisherAudioFallbackEnabledin classPublisherKit.Builder- See Also:
 
 - 
allowAudioCaptureWhileMuted
Description copied from class:PublisherKit.BuilderIf set to false, the microphone will be automatically switched off when all publishers have muted their audio. Microphone will be automatically switched on again when at least one publisher unmutes their audio. If set to true, mic will always remain switched on even when all publishers have muted their audio. Be aware that when the microphone is switched off, callbacks like AudioLevel or AudioData will no longer be invoked for the publishers. The default value is false.- Overrides:
 allowAudioCaptureWhileMutedin classPublisherKit.Builder
 - 
build
Returns a newPublisherinstance based on thePublisher.Buildersettings.- Overrides:
 buildin classPublisherKit.Builder- Returns:
 - Returns a new 
PublisherKitinstance based on thePublisherKit.Buildersettings. 
 
 -