Unverified Commit 1207d450 authored by Hampton Maxwell's avatar Hampton Maxwell Committed by GitHub
Browse files

Merge pull request #1327 from ddudek/fix/android_volume_focus_change

Fix: volume should not change on onAudioFocusChange event
parents 30c30ec5 341260fe
Loading
Loading
Loading
Loading
+1 −0
Changes for CHANGELOG.md: 1 added line, 0 removed lines.
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
* Switch useTextureView to default to `true` [#1286](https://github.com/react-native-community/react-native-video/pull/1286)
* Re-add fullscreenAutorotate prop [#1303](https://github.com/react-native-community/react-native-video/pull/1303)
* Make seek throw a useful error for NaN values [#1283](https://github.com/react-native-community/react-native-video/pull/1283)
* Fix: volume should not change on onAudioFocusChange event [#1327](https://github.com/react-native-community/react-native-video/pull/1327)

### Version 3.2.0
* Basic fullscreen support for Android MediaPlayer [#1138](https://github.com/react-native-community/react-native-video/pull/1138)
+7 −4
Changes for android-exoplayer/src/main/java/com/brentvatne/exoplayer/ReactExoplayerView.java: 7 added lines, 4 removed lines.
Original line number Diff line number Diff line
@@ -109,6 +109,7 @@ class ReactExoplayerView extends FrameLayout implements
    private boolean isPaused;
    private boolean isBuffering;
    private float rate = 1f;
    private float audioVolume = 1f;

    private int minBufferMs = DefaultLoadControl.DEFAULT_MIN_BUFFER_MS;
    private int maxBufferMs = DefaultLoadControl.DEFAULT_MAX_BUFFER_MS;
@@ -454,10 +455,10 @@ class ReactExoplayerView extends FrameLayout implements
        if (player != null) {
            if (focusChange == AudioManager.AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK) {
                // Lower the volume
                player.setVolume(0.8f);
                player.setVolume(audioVolume * 0.8f);
            } else if (focusChange == AudioManager.AUDIOFOCUS_GAIN) {
                // Raise it back to normal
                player.setVolume(1);
                player.setVolume(audioVolume * 1);
            }
        }
    }
@@ -875,15 +876,17 @@ class ReactExoplayerView extends FrameLayout implements
    }

    public void setMutedModifier(boolean muted) {
        audioVolume = muted ? 0.f : 1.f;
        if (player != null) {
            player.setVolume(muted ? 0 : 1);
            player.setVolume(audioVolume);
        }
    }


    public void setVolumeModifier(float volume) {
        audioVolume = volume;
        if (player != null) {
            player.setVolume(volume);
            player.setVolume(audioVolume);
        }
    }