Level up your Twilio API skills in TwilioQuest, an educational game for Mac, Windows, and Linux. Download Now

メニュー

Expand
Rate this page:

Thanks for rating this page!

We are always striving to improve our documentation quality, and your feedback is valuable to us. How could this documentation serve you better?

4.0 Changelog: Twilio Video Android

The Twilio Programmable Video SDKs use Semantic Versioning.

4.3.2 (September 16th, 2019)

Enhancement

  • Upgraded the Gradle plugin used to build the SDK to 3.5.0.

既知の問題

  • Network handoff, and subsequent connection renegotiation is not supported for IPv6 networks #72
  • Participant disconnect event can take up to 120 seconds to occur #80 #73
  • The SDK is not side-by-side compatible with other WebRTC based libraries #340
  • Codec preferences do not function correctly in a hybrid codec Group Room with the following codecs:
    • ISAC
    • PCMA
    • G722
    • VP9
  • Unpublishing and republishing a LocalAudioTrack or LocalVideoTrack might not be seen by Participants. As a result, tracks published after a Room.State.RECONNECTED event might not be subscribed to by a RemoteParticipant.
  • Using Camera2Capturer with a camera ID that does not support ImageFormat.PRIVATE capture outputs results in a runtime exception. Reference this issue for guidance on a temporary work around.

Size Report

ABI APK Size Impact
universal 22.5MB
armeabi-v7a 5MB
arm64-v8a 5.8MB
x86 6.1MB
x86_64 6.2MB

4.3.1 (August 23rd, 2019)

バグ修正

  • Fixed updating CameraCapturer.State when error occurs.

既知の問題

  • Network handoff, and subsequent connection renegotiation is not supported for IPv6 networks #72
  • Participant disconnect event can take up to 120 seconds to occur #80 #73
  • The SDK is not side-by-side compatible with other WebRTC based libraries #340
  • Codec preferences do not function correctly in a hybrid codec Group Room with the following codecs:
    • ISAC
    • PCMA
    • G722
    • VP9
  • Unpublishing and republishing a LocalAudioTrack or LocalVideoTrack might not be seen by Participants. As a result, tracks published after a Room.State.RECONNECTED event might not be subscribed to by a RemoteParticipant.
  • Using Camera2Capturer with a camera ID that does not support ImageFormat.PRIVATE capture outputs results in a runtime exception. Reference this issue for guidance on a temporary work around.

Size Report

ABI APK Size Impact
universal 22.5MB
armeabi-v7a 5MB
arm64-v8a 5.8MB
x86 6.1MB
x86_64 6.2MB

4.3.0 (August 5th, 2019)

Dominant Speaker Detection API

The Dominant Speaker Detection API sends events to your application every time the dominant speaker changes. You can use those events to improve the end user's experience by, for example, highlighting which participant is currently talking.

The Dominant Speaker Detection API is only available for Group Rooms. To enable dominant speaker detection, set the ConnectOptions.dominantSpeakerEnabled property to true. Use Room.getDominantSpeaker() to determine the current dominant speaker. Implement Room.Listener.onDominantSpeakerChanged() method to receive callbacks when the dominant speaker changes.

For more information, refer to the API docs and to the dominant speaker tutorial

This release is available here

 ConnectOptions connectOptions =
                new ConnectOptions.Builder(token)
                        .roomName(roomName)
                        .enableDominantSpeaker(true)
                        .build();
Room room = Video.connect(context, connectOptions, roomListener);

@Override
void onDominantSpeakerChanged(
                @NonNull Room room, @Nullable RemoteParticipant remoteParticipant) {
                // Handle dominant speaker change
        }

既知の問題

  • Network handoff, and subsequent connection renegotiation is not supported for IPv6 networks #72
  • Participant disconnect event can take up to 120 seconds to occur #80 #73
  • The SDK is not side-by-side compatible with other WebRTC based libraries #340
  • Codec preferences do not function correctly in a hybrid codec Group Room with the following codecs:
    • ISAC
    • PCMA
    • G722
    • VP9
  • Unpublishing and republishing a LocalAudioTrack or LocalVideoTrack might not be seen by Participants. As a result, tracks published after a Room.State.RECONNECTED event might not be subscribed to by a RemoteParticipant.

Size Report

ABI APK Size Impact
universal 22.7MB
armeabi-v7a 5MB
arm64-v8a 5.9MB
x86 6.2MB
x86_64 6.3MB

4.2.0 (May 13th, 2019)

改善点

  • Added field enableAutomaticSubscription to ConnectOptions. enableAutomaticSubscription toggles automatic track subscription. If set to false, the LocalParticipant will receive notifications of track publish events, but will not automatically subscribe to them. If set to true, the LocalParticipant will automatically subscribe to tracks as they are published. If unset, the default is true. Note: This feature is only available for Group Rooms. Toggling the flag in a P2P room does not modify subscription behavior.

既知の問題

  • Network handoff, and subsequent connection renegotiation is not supported for IPv6 networks #72
  • Participant disconnect event can take up to 120 seconds to occur #80 #73
  • The SDK is not side-by-side compatible with other WebRTC based libraries #340
  • Codec preferences do not function correctly in a hybrid codec Group Room with the following codecs:
    • ISAC
    • PCMA
    • G722
    • VP9
  • Unpublishing and republishing a LocalAudioTrack or LocalVideoTrack might not be seen by Participants. As a result, tracks published after a Room.State.RECONNECTED event might not be subscribed to by a RemoteParticipant.

Size Report

ABI APK Size Impact
universal 22.5MB
armeabi-v7a 5MB
arm64-v8a 5.8MB
x86 6.1MB
x86_64 6.2MB

4.1.2 (April 26th, 2019)

バグ修正

  • Fixed stuck aspect ratio when switching orientations with ScreenCapturer.
  • Fixed a bug where media reconnection might fail when the loopback interface is mistakenly chosen as a preferred network interface.

既知の問題

  • Network handoff, and subsequent connection renegotiation is not supported for IPv6 networks #72
  • Participant disconnect event can take up to 120 seconds to occur #80 #73
  • The SDK is not side-by-side compatible with other WebRTC based libraries #340
  • Codec preferences do not function correctly in a hybrid codec Group Room with the following codecs:
    • ISAC
    • PCMA
    • G722
    • VP9
  • Unpublishing and republishing a LocalAudioTrack or LocalVideoTrack might not be seen by Participants. As a result, tracks published after a Room.State.RECONNECTED event might not be subscribed to by a RemoteParticipant.

Size Report

ABI APK Size Impact
universal 22.5MB
armeabi-v7a 5MB
arm64-v8a 5.8MB
x86 6.1MB
x86_64 6.2MB

4.1.1 (April 11th, 2019)

改善点

  • Fixed various Lint errors / warnings.

既知の問題

  • Network handoff, and subsequent connection renegotiation is not supported for IPv6 networks #72
  • Participant disconnect event can take up to 120 seconds to occur #80 #73
  • The SDK is not side-by-side compatible with other WebRTC based libraries #340
  • Codec preferences do not function correctly in a hybrid codec Group Room with the following codecs:
    • ISAC
    • PCMA
    • G722
    • VP9
  • Unpublishing and republishing a LocalAudioTrack or LocalVideoTrack might not be seen by Participants. As a result, tracks published after a Room.State.RECONNECTED event might not be subscribed to by a RemoteParticipant.

Size Report

ABI APK Size Impact
universal 22.5MB
armeabi-v7a 5MB
arm64-v8a 5.8MB
x86 6.1MB
x86_64 6.2MB

4.1.0 (April 3rd, 2019)

改善点

  • Added the AudioSink interface. When added to a LocalAudioTrack or RemoteAudioTrack, developers will receive a callback with the raw audio byte buffer from each audio frame. The example below demonstrates adding an AudioSink to a LocalAudioTrack.
AudioSink audioSink = (audioSample, encoding, sampleRate, channels) -> {
    Log.v("AudioSink", "Received audio frame");
};
localAudioTrack.addSink(audioSink);

The AudioSink can then be removed with the following code.

localAudioTrack.removeSink(audioSink);

既知の問題

  • Network handoff, and subsequent connection renegotiation is not supported for IPv6 networks #72
  • Participant disconnect event can take up to 120 seconds to occur #80 #73
  • The SDK is not side-by-side compatible with other WebRTC based libraries #340
  • Codec preferences do not function correctly in a hybrid codec Group Room with the following codecs:
    • ISAC
    • PCMA
    • G722
    • VP9
  • Unpublishing and republishing a LocalAudioTrack or LocalVideoTrack might not be seen by Participants. As a result, tracks published after a Room.State.RECONNECTED event might not be subscribed to by a RemoteParticipant.

Size Report

ABI APK Size Impact
universal 22.4MB
armeabi-v7a 5MB
arm64-v8a 5.8MB
x86 6.1MB
x86_64 6.2MB

4.0.2 (March 28th, 2019)

バグ修正

  • Fixed bug in Camera2Capturer.switchCamera which resulted in onCameraSwitched being invoked with a null camera ID #379

既知の問題

  • Network handoff, and subsequent connection renegotiation is not supported for IPv6 networks #72
  • Participant disconnect event can take up to 120 seconds to occur #80 #73
  • The SDK is not side-by-side compatible with other WebRTC based libraries #340
  • Codec preferences do not function correctly in a hybrid codec Group Room with the following codecs:
    • ISAC
    • PCMA
    • G722
    • VP9
  • Unpublishing and republishing a LocalAudioTrack or LocalVideoTrack might not be seen by Participants. As a result, tracks published after a Room.State.RECONNECTED event might not be subscribed to by a RemoteParticipant.

Size Report

ABI APK Size Impact
universal 22.4MB
armeabi-v7a 5MB
arm64-v8a 5.8MB
x86 6.1MB
x86_64 6.2MB

4.0.1 (March 19th, 2019)

バグ修正

  • Room.getStats() will raise a callback to the provided StatsObserver if called while Room.getState() == Room.State.RECONNECTING.
  • Fixed a crash related to stats gathering which could occur when insights reporting is enabled.
  • Fixed a crash related to media state summarization which could occur when disconnecting from a Room.
  • Fixed a crash related to stats gathering which could occur in the media monitor component.

既知の問題

  • Network handoff, and subsequent connection renegotiation is not supported for IPv6 networks #72
  • Participant disconnect event can take up to 120 seconds to occur #80 #73
  • The SDK is not side-by-side compatible with other WebRTC based libraries #340
  • Codec preferences do not function correctly in a hybrid codec Group Room with the following codecs:
    • ISAC
    • PCMA
    • G722
    • VP9
  • Unpublishing and republishing a LocalAudioTrack or LocalVideoTrack might not be seen by Participants.

Size Report

ABI APK Size Impact
universal 22.4MB
armeabi-v7a 5MB
arm64-v8a 5.8MB
x86 6.1MB
x86_64 6.2MB

4.0.0 (February 22, 2019)

改善点

  • Added new state Reconnecting to Room.State and new callbacks onReconnecting, onReconnected to Room.Listener. When the LocalParticipant experiences a network interruption in signaling or media, the room will transition to Reconnecting and Room.Listener will notify the developer of this new state via onReconnecting. If the connection is successfully restored, Room.Listener will notify the developer via onReconnected. However, if the connection could not be reestablished Room.Listener will notify the developer via onDisconnected.
  • Added and updated public API nullability annotations.
  • Changed OpusCodec.NAME and IsacCodec.NAME to lowercase

既知の問題

  • Network handoff, and subsequent connection renegotiation is not supported for IPv6 networks #72
  • Participant disconnect event can take up to 120 seconds to occur #80 #73
  • The SDK is not side-by-side compatible with other WebRTC based libraries #340
  • Codec preferences do not function correctly in a hybrid codec Group Room with the following codecs:
    • ISAC
    • PCMA
    • G722
    • VP9
  • Unpublishing and republishing a LocalAudioTrack or LocalVideoTrack might not be seen by Participants.

Size Report

ABI APK Size Impact
universal 22.3MB
armeabi-v7a 5MB
arm64-v8a 5.7MB
x86 6MB
x86_64 6.2MB
Rate this page:

ヘルプが必要ですか?

誰しもが一度は考える「コーディングって難しい」。そんな時は、お問い合わせフォームから質問してください。 または、Stack Overflow でTwilioタグのついた情報から欲しいものを探してみましょう。