Changed the order of the setters for mediaRecorder in MediaRecorderBuilder.java to make it more readable. (#3181)
diff --git a/packages/camera/CHANGELOG.md b/packages/camera/CHANGELOG.md
index 3aec9b9..f6ff34d 100644
--- a/packages/camera/CHANGELOG.md
+++ b/packages/camera/CHANGELOG.md
@@ -1,3 +1,7 @@
+## 0.5.8+14
+
+* Changed the order of the setters for `mediaRecorder` in `MediaRecorderBuilder.java` to make it more readable.
+
## 0.5.8+13
* Added Dartdocs for all public APIs.
diff --git a/packages/camera/android/src/main/java/io/flutter/plugins/camera/media/MediaRecorderBuilder.java b/packages/camera/android/src/main/java/io/flutter/plugins/camera/media/MediaRecorderBuilder.java
index 57dc6e6..b2309c8 100644
--- a/packages/camera/android/src/main/java/io/flutter/plugins/camera/media/MediaRecorderBuilder.java
+++ b/packages/camera/android/src/main/java/io/flutter/plugins/camera/media/MediaRecorderBuilder.java
@@ -49,18 +49,18 @@
public MediaRecorder build() throws IOException {
MediaRecorder mediaRecorder = recorderFactory.makeMediaRecorder();
- // There's a specific order that mediaRecorder expects. Do not change the order
- // of these function calls.
- if (enableAudio) {
- mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
- mediaRecorder.setAudioEncodingBitRate(recordingProfile.audioBitRate);
- }
+ // There's a fixed order that mediaRecorder expects. Only change these functions accordingly.
+ // You can find the specifics here: https://developer.android.com/reference/android/media/MediaRecorder.
+ if (enableAudio) mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mediaRecorder.setVideoSource(MediaRecorder.VideoSource.SURFACE);
mediaRecorder.setOutputFormat(recordingProfile.fileFormat);
- if (enableAudio) mediaRecorder.setAudioEncoder(recordingProfile.audioCodec);
+ if (enableAudio) {
+ mediaRecorder.setAudioEncoder(recordingProfile.audioCodec);
+ mediaRecorder.setAudioEncodingBitRate(recordingProfile.audioBitRate);
+ mediaRecorder.setAudioSamplingRate(recordingProfile.audioSampleRate);
+ }
mediaRecorder.setVideoEncoder(recordingProfile.videoCodec);
mediaRecorder.setVideoEncodingBitRate(recordingProfile.videoBitRate);
- if (enableAudio) mediaRecorder.setAudioSamplingRate(recordingProfile.audioSampleRate);
mediaRecorder.setVideoFrameRate(recordingProfile.videoFrameRate);
mediaRecorder.setVideoSize(recordingProfile.videoFrameWidth, recordingProfile.videoFrameHeight);
mediaRecorder.setOutputFile(outputFilePath);
diff --git a/packages/camera/android/src/test/java/io/flutter/plugins/camera/media/MediaRecorderBuilderTest.java b/packages/camera/android/src/test/java/io/flutter/plugins/camera/media/MediaRecorderBuilderTest.java
index f60e85d..622b49b 100644
--- a/packages/camera/android/src/test/java/io/flutter/plugins/camera/media/MediaRecorderBuilderTest.java
+++ b/packages/camera/android/src/test/java/io/flutter/plugins/camera/media/MediaRecorderBuilderTest.java
@@ -69,13 +69,13 @@
InOrder inOrder = inOrder(recorder);
inOrder.verify(recorder).setAudioSource(MediaRecorder.AudioSource.MIC);
- inOrder.verify(recorder).setAudioEncodingBitRate(recorderProfile.audioBitRate);
inOrder.verify(recorder).setVideoSource(MediaRecorder.VideoSource.SURFACE);
inOrder.verify(recorder).setOutputFormat(recorderProfile.fileFormat);
inOrder.verify(recorder).setAudioEncoder(recorderProfile.audioCodec);
+ inOrder.verify(recorder).setAudioEncodingBitRate(recorderProfile.audioBitRate);
+ inOrder.verify(recorder).setAudioSamplingRate(recorderProfile.audioSampleRate);
inOrder.verify(recorder).setVideoEncoder(recorderProfile.videoCodec);
inOrder.verify(recorder).setVideoEncodingBitRate(recorderProfile.videoBitRate);
- inOrder.verify(recorder).setAudioSamplingRate(recorderProfile.audioSampleRate);
inOrder.verify(recorder).setVideoFrameRate(recorderProfile.videoFrameRate);
inOrder
.verify(recorder)
diff --git a/packages/camera/pubspec.yaml b/packages/camera/pubspec.yaml
index 5f2debb..de7d8b5 100644
--- a/packages/camera/pubspec.yaml
+++ b/packages/camera/pubspec.yaml
@@ -2,8 +2,7 @@
description: A Flutter plugin for getting information about and controlling the
camera on Android and iOS. Supports previewing the camera feed, capturing images, capturing video,
and streaming image buffers to dart.
-version: 0.5.8+13
-
+version: 0.5.8+14
homepage: https://github.com/flutter/plugins/tree/master/packages/camera
dependencies: