Class DefaultBandwidthMeter

  • All Implemented Interfaces:
    BandwidthMeter, TransferListener

    @Deprecated
    public final class DefaultBandwidthMeter
    extends Object
    implements BandwidthMeter, TransferListener
    Deprecated.
    com.google.android.exoplayer2 is deprecated. Please migrate to androidx.media3 (which contains the same ExoPlayer code). See the migration guide for more details, including a script to help with the migration.
    Estimates bandwidth by listening to data transfers.

    The bandwidth estimate is calculated using a SlidingPercentile and is updated each time a transfer ends. The initial estimate is based on the current operator's network country code or the locale of the user, as well as the network connection type. This can be configured in the DefaultBandwidthMeter.Builder.

    • Field Detail

      • DEFAULT_INITIAL_BITRATE_ESTIMATES_WIFI

        public static final ImmutableList<Long> DEFAULT_INITIAL_BITRATE_ESTIMATES_WIFI
        Deprecated.
        Default initial Wifi bitrate estimate in bits per second.
      • DEFAULT_INITIAL_BITRATE_ESTIMATES_2G

        public static final ImmutableList<Long> DEFAULT_INITIAL_BITRATE_ESTIMATES_2G
        Deprecated.
        Default initial 2G bitrate estimates in bits per second.
      • DEFAULT_INITIAL_BITRATE_ESTIMATES_3G

        public static final ImmutableList<Long> DEFAULT_INITIAL_BITRATE_ESTIMATES_3G
        Deprecated.
        Default initial 3G bitrate estimates in bits per second.
      • DEFAULT_INITIAL_BITRATE_ESTIMATES_4G

        public static final ImmutableList<Long> DEFAULT_INITIAL_BITRATE_ESTIMATES_4G
        Deprecated.
        Default initial 4G bitrate estimates in bits per second.
      • DEFAULT_INITIAL_BITRATE_ESTIMATES_5G_NSA

        public static final ImmutableList<Long> DEFAULT_INITIAL_BITRATE_ESTIMATES_5G_NSA
        Deprecated.
        Default initial 5G-NSA bitrate estimates in bits per second.
      • DEFAULT_INITIAL_BITRATE_ESTIMATES_5G_SA

        public static final ImmutableList<Long> DEFAULT_INITIAL_BITRATE_ESTIMATES_5G_SA
        Deprecated.
        Default initial 5G-SA bitrate estimates in bits per second.
      • DEFAULT_INITIAL_BITRATE_ESTIMATE

        public static final long DEFAULT_INITIAL_BITRATE_ESTIMATE
        Deprecated.
        Default initial bitrate estimate used when the device is offline or the network type cannot be determined, in bits per second.
        See Also:
        Constant Field Values
      • DEFAULT_SLIDING_WINDOW_MAX_WEIGHT

        public static final int DEFAULT_SLIDING_WINDOW_MAX_WEIGHT
        Deprecated.
        Default maximum weight for the sliding window.
        See Also:
        Constant Field Values
    • Method Detail

      • setNetworkTypeOverride

        public void setNetworkTypeOverride​(@NetworkType
                                           @com.google.android.exoplayer2.C.NetworkType int networkType)
        Deprecated.
        Overrides the network type. Handled in the same way as if the meter had detected a change from the current network type to the specified network type internally.

        Applications should not normally call this method. It is intended for testing purposes.

        Parameters:
        networkType - The overriding network type.
      • onTransferInitializing

        public void onTransferInitializing​(DataSource source,
                                           DataSpec dataSpec,
                                           boolean isNetwork)
        Deprecated.
        Description copied from interface: TransferListener
        Called when a transfer is being initialized.
        Specified by:
        onTransferInitializing in interface TransferListener
        Parameters:
        source - The source performing the transfer.
        dataSpec - Describes the data for which the transfer is initialized.
        isNetwork - Whether the data is transferred through a network.
      • onTransferStart

        public void onTransferStart​(DataSource source,
                                    DataSpec dataSpec,
                                    boolean isNetwork)
        Deprecated.
        Description copied from interface: TransferListener
        Called when a transfer starts.
        Specified by:
        onTransferStart in interface TransferListener
        Parameters:
        source - The source performing the transfer.
        dataSpec - Describes the data being transferred.
        isNetwork - Whether the data is transferred through a network.
      • onBytesTransferred

        public void onBytesTransferred​(DataSource source,
                                       DataSpec dataSpec,
                                       boolean isNetwork,
                                       int bytesTransferred)
        Deprecated.
        Description copied from interface: TransferListener
        Called incrementally during a transfer.
        Specified by:
        onBytesTransferred in interface TransferListener
        Parameters:
        source - The source performing the transfer.
        dataSpec - Describes the data being transferred.
        isNetwork - Whether the data is transferred through a network.
        bytesTransferred - The number of bytes transferred since the previous call to this method.
      • onTransferEnd

        public void onTransferEnd​(DataSource source,
                                  DataSpec dataSpec,
                                  boolean isNetwork)
        Deprecated.
        Description copied from interface: TransferListener
        Called when a transfer ends.
        Specified by:
        onTransferEnd in interface TransferListener
        Parameters:
        source - The source performing the transfer.
        dataSpec - Describes the data being transferred.
        isNetwork - Whether the data is transferred through a network.