Menu

Expand
Rate this page:

Changelog: Twilio Video Android 3.x

The Twilio Programmable Video SDKs use Semantic Versioning.

3.2.2 (January 8th, 2019)

Improvements

  • Fix Screenshare being negotiated as simulcast without the client actually using simulcast.

Known issues

  • 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

Size Report

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

3.2.1 (December 7th, 2018)

Bug Fixes

  • Fixed ICE connection failure after multiple network handovers

Known issues

  • 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

3.2.0 (November 29, 2018)

Improvements

  • Added IceCandidateStats to StatsReport which gives insight into individual ice candidates
  • Removed forced ice-restart when synced responses are processed
  • Improved the detection of, and recovery from media connection failures. Worst case recovery times have been reduced by up to 10 seconds.
  • Added handle to native audio track. This will assist developers when using advanced features like audio track sink.

Known issues

  • 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

3.1.0 (October 24, 2018)

Improvements

  • Added IceCandidatePairStats to StatsReport which gives insight into local and remote ice candidates
  • Reduced signaling traffic in Group Rooms when communicating with an ICE-lite agent.

Bug Fixes

  • Fixed a bug where the client could send additional ICE candidates after signaling the end of candidates, or mark candidates with a username from a future offer.

Known issues

  • 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

3.0.0 (October 4th, 2018)

3.0.0-beta1 has been promoted to 3.0.0. The 3.x SDK is now Generally Available (GA). The 1.x and 2.x Video Android SDK remain GA but will only receive critical bug fixes moving forward.

Known issues

  • 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

3.0.0-beta1 (September 27th, 2018)

Enhancements

  • The signaling Client has been updated to support version 2 of the Room Signaling Protocol (RSP).
  • Added ECS debugging support at the signaling layer that will help in troubleshooting ice server related issues.
  • Introduced a safer threading model in the signaling layer that prevents occasional crashes and missing Track subscription events.
  • The SDK no longer waits for pending events when closing a PeerConnection speeding up the teardown process.
  • Moved RoomState enum to Room.State.
  • onDisconnected will now return a unique error code when the Room is completed via the REST API.

Bug Fixes

  • The signaling Client is more lenient when encountering unexpected RSP messages.
  • Resolved a scenario where an ICE restart could be ignored after experiencing signaling glare.

Known issues

  • 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

3.0.0-preview3 (September 25, 2018)

Enhancements

  • The signaling Client has been updated to support version 2 of the Room Signaling Protocol (RSP).
  • Added ECS debugging support at the signaling layer that will help in troubleshooting ice server related issues.
  • Introduced a safer threading model in the signaling layer that prevents occasional crashes and missing Track subscription events.
  • The SDK no longer waits for pending events when closing a PeerConnection speeding up the teardown process.
  • Moved RoomState enum to Room.State.
  • onDisconnected will now return a unique error code when the Room is completed via the REST API.

Bug Fixes

  • The signaling Client is more lenient when encountering unexpected RSP messages.
  • Resolved a scenario where an ICE restart could be ignored after experiencing signaling glare.

Known issues

  • 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

3.0.0-preview2 (September 20th, 2018)

Features

  • Added flag to IceOptions abortOnIceServerTimeout that tells the client whether to continue or abort connecting to a Room when Ice fails to connect.
  • Added parameter to IceOptions iceServersTimeout that allows control of the timeout period when trying to retrieve Ice servers.
  • Added VideoTextureView. VideoTextureView is similar to VideoView but subclasses TextureView instead of SurfaceView. Unlike SurfaceView, TextureView does not create a separate window but behaves as a regular View. This key difference allows a TextureView to be moved, transformed, animated, etc. For more see the TextureView documentation. If you were previously using this gist, please update your applications to use the VideoTextureView provided with the SDK. NOTE: VideoTextureView can experience dead locking on API Level 19 or below due to a WebRTC bug. Use with discretion.

Enhancements

  • Adding a null video/audio codec to ConnectOptions will now throw an exception
  • Added @NonNull @Nullable annotations to a few additional classes.
  • Updated Room.Listener documentation to provide more clarity about when onRecording callbacks are received.
  • Switched CI provider for build, test, and release pipeline.

Bug Fixes

  • Fixed crash when disconnecting from a room.

Known issues

  • 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

3.0.0-preview1 (July 11th, 2018)

Improvements

  • Upgraded to WebRTC 67.
  • Upgraded to Java 8. Add the following snippet to your build.gradle to enable Java 8 features required to build the 3.x Video Android SDK:
    android {
        compileOptions {
            sourceCompatibility 1.8
            targetCompatibility 1.8
        }
    }
    
    • Added @Nullable and @NonNull to all public API fields, methods, and interfaces.
    • Updated internal capturer pipeline for CameraCapturer, ScreenCapturer, and Camera2Capturer.
    • Upgraded to Android NDK 16.

Bug Fixes

  • The SDK is compatible with Chrome 76+ in a Peer-to-Peer Room. #433
  • The SDK is compatible with Firefox 63+ in a Peer-to-Peer Room. #35

Known issues

  • 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
Rate this page:

Need some help?

We all do sometimes; code is hard. Get help now from our support team, or lean on the wisdom of the crowd by visiting Twilio's Stack Overflow Collective or browsing the Twilio tag on Stack Overflow.

Loading Code Sample...
        
        
        

        Thank you for your feedback!

        Please select the reason(s) for your feedback. The additional information you provide helps us improve our documentation:

        Sending your feedback...
        🎉 Thank you for your feedback!
        Something went wrong. Please try again.

        Thanks for your feedback!

        thanks-feedback-gif