Merge "Fix SupportedQualitiesVerificationTest" into androidx-main
diff --git a/camera/camera-video/api/current.txt b/camera/camera-video/api/current.txt
index 1661eea..729cb0a 100644
--- a/camera/camera-video/api/current.txt
+++ b/camera/camera-video/api/current.txt
@@ -27,7 +27,7 @@
@RequiresApi(21) public static final class FileDescriptorOutputOptions.Builder {
ctor public FileDescriptorOutputOptions.Builder(android.os.ParcelFileDescriptor);
method public androidx.camera.video.FileDescriptorOutputOptions build();
- method public androidx.camera.video.FileDescriptorOutputOptions.Builder setDurationLimit(@IntRange(from=0) long);
+ method public androidx.camera.video.FileDescriptorOutputOptions.Builder setDurationLimitMillis(@IntRange(from=0) long);
method public androidx.camera.video.FileDescriptorOutputOptions.Builder setFileSizeLimit(@IntRange(from=0) long);
method public androidx.camera.video.FileDescriptorOutputOptions.Builder setLocation(android.location.Location?);
}
@@ -39,7 +39,7 @@
@RequiresApi(21) public static final class FileOutputOptions.Builder {
ctor public FileOutputOptions.Builder(java.io.File);
method public androidx.camera.video.FileOutputOptions build();
- method public androidx.camera.video.FileOutputOptions.Builder setDurationLimit(@IntRange(from=0) long);
+ method public androidx.camera.video.FileOutputOptions.Builder setDurationLimitMillis(@IntRange(from=0) long);
method public androidx.camera.video.FileOutputOptions.Builder setFileSizeLimit(@IntRange(from=0) long);
method public androidx.camera.video.FileOutputOptions.Builder setLocation(android.location.Location?);
}
@@ -55,13 +55,13 @@
ctor public MediaStoreOutputOptions.Builder(android.content.ContentResolver, android.net.Uri);
method public androidx.camera.video.MediaStoreOutputOptions build();
method public androidx.camera.video.MediaStoreOutputOptions.Builder setContentValues(android.content.ContentValues);
- method public androidx.camera.video.MediaStoreOutputOptions.Builder setDurationLimit(@IntRange(from=0) long);
+ method public androidx.camera.video.MediaStoreOutputOptions.Builder setDurationLimitMillis(@IntRange(from=0) long);
method public androidx.camera.video.MediaStoreOutputOptions.Builder setFileSizeLimit(@IntRange(from=0) long);
method public androidx.camera.video.MediaStoreOutputOptions.Builder setLocation(android.location.Location?);
}
@RequiresApi(21) public abstract class OutputOptions {
- method @IntRange(from=0) public long getDurationLimit();
+ method @IntRange(from=0) public long getDurationLimitMillis();
method @IntRange(from=0) public long getFileSizeLimit();
method public android.location.Location? getLocation();
field public static final int DURATION_UNLIMITED = 0; // 0x0
diff --git a/camera/camera-video/api/public_plus_experimental_current.txt b/camera/camera-video/api/public_plus_experimental_current.txt
index 1661eea..729cb0a 100644
--- a/camera/camera-video/api/public_plus_experimental_current.txt
+++ b/camera/camera-video/api/public_plus_experimental_current.txt
@@ -27,7 +27,7 @@
@RequiresApi(21) public static final class FileDescriptorOutputOptions.Builder {
ctor public FileDescriptorOutputOptions.Builder(android.os.ParcelFileDescriptor);
method public androidx.camera.video.FileDescriptorOutputOptions build();
- method public androidx.camera.video.FileDescriptorOutputOptions.Builder setDurationLimit(@IntRange(from=0) long);
+ method public androidx.camera.video.FileDescriptorOutputOptions.Builder setDurationLimitMillis(@IntRange(from=0) long);
method public androidx.camera.video.FileDescriptorOutputOptions.Builder setFileSizeLimit(@IntRange(from=0) long);
method public androidx.camera.video.FileDescriptorOutputOptions.Builder setLocation(android.location.Location?);
}
@@ -39,7 +39,7 @@
@RequiresApi(21) public static final class FileOutputOptions.Builder {
ctor public FileOutputOptions.Builder(java.io.File);
method public androidx.camera.video.FileOutputOptions build();
- method public androidx.camera.video.FileOutputOptions.Builder setDurationLimit(@IntRange(from=0) long);
+ method public androidx.camera.video.FileOutputOptions.Builder setDurationLimitMillis(@IntRange(from=0) long);
method public androidx.camera.video.FileOutputOptions.Builder setFileSizeLimit(@IntRange(from=0) long);
method public androidx.camera.video.FileOutputOptions.Builder setLocation(android.location.Location?);
}
@@ -55,13 +55,13 @@
ctor public MediaStoreOutputOptions.Builder(android.content.ContentResolver, android.net.Uri);
method public androidx.camera.video.MediaStoreOutputOptions build();
method public androidx.camera.video.MediaStoreOutputOptions.Builder setContentValues(android.content.ContentValues);
- method public androidx.camera.video.MediaStoreOutputOptions.Builder setDurationLimit(@IntRange(from=0) long);
+ method public androidx.camera.video.MediaStoreOutputOptions.Builder setDurationLimitMillis(@IntRange(from=0) long);
method public androidx.camera.video.MediaStoreOutputOptions.Builder setFileSizeLimit(@IntRange(from=0) long);
method public androidx.camera.video.MediaStoreOutputOptions.Builder setLocation(android.location.Location?);
}
@RequiresApi(21) public abstract class OutputOptions {
- method @IntRange(from=0) public long getDurationLimit();
+ method @IntRange(from=0) public long getDurationLimitMillis();
method @IntRange(from=0) public long getFileSizeLimit();
method public android.location.Location? getLocation();
field public static final int DURATION_UNLIMITED = 0; // 0x0
diff --git a/camera/camera-video/api/restricted_current.txt b/camera/camera-video/api/restricted_current.txt
index 1661eea..729cb0a 100644
--- a/camera/camera-video/api/restricted_current.txt
+++ b/camera/camera-video/api/restricted_current.txt
@@ -27,7 +27,7 @@
@RequiresApi(21) public static final class FileDescriptorOutputOptions.Builder {
ctor public FileDescriptorOutputOptions.Builder(android.os.ParcelFileDescriptor);
method public androidx.camera.video.FileDescriptorOutputOptions build();
- method public androidx.camera.video.FileDescriptorOutputOptions.Builder setDurationLimit(@IntRange(from=0) long);
+ method public androidx.camera.video.FileDescriptorOutputOptions.Builder setDurationLimitMillis(@IntRange(from=0) long);
method public androidx.camera.video.FileDescriptorOutputOptions.Builder setFileSizeLimit(@IntRange(from=0) long);
method public androidx.camera.video.FileDescriptorOutputOptions.Builder setLocation(android.location.Location?);
}
@@ -39,7 +39,7 @@
@RequiresApi(21) public static final class FileOutputOptions.Builder {
ctor public FileOutputOptions.Builder(java.io.File);
method public androidx.camera.video.FileOutputOptions build();
- method public androidx.camera.video.FileOutputOptions.Builder setDurationLimit(@IntRange(from=0) long);
+ method public androidx.camera.video.FileOutputOptions.Builder setDurationLimitMillis(@IntRange(from=0) long);
method public androidx.camera.video.FileOutputOptions.Builder setFileSizeLimit(@IntRange(from=0) long);
method public androidx.camera.video.FileOutputOptions.Builder setLocation(android.location.Location?);
}
@@ -55,13 +55,13 @@
ctor public MediaStoreOutputOptions.Builder(android.content.ContentResolver, android.net.Uri);
method public androidx.camera.video.MediaStoreOutputOptions build();
method public androidx.camera.video.MediaStoreOutputOptions.Builder setContentValues(android.content.ContentValues);
- method public androidx.camera.video.MediaStoreOutputOptions.Builder setDurationLimit(@IntRange(from=0) long);
+ method public androidx.camera.video.MediaStoreOutputOptions.Builder setDurationLimitMillis(@IntRange(from=0) long);
method public androidx.camera.video.MediaStoreOutputOptions.Builder setFileSizeLimit(@IntRange(from=0) long);
method public androidx.camera.video.MediaStoreOutputOptions.Builder setLocation(android.location.Location?);
}
@RequiresApi(21) public abstract class OutputOptions {
- method @IntRange(from=0) public long getDurationLimit();
+ method @IntRange(from=0) public long getDurationLimitMillis();
method @IntRange(from=0) public long getFileSizeLimit();
method public android.location.Location? getLocation();
field public static final int DURATION_UNLIMITED = 0; // 0x0
diff --git a/camera/camera-video/src/androidTest/java/androidx/camera/video/OutputOptionsTest.kt b/camera/camera-video/src/androidTest/java/androidx/camera/video/OutputOptionsTest.kt
index dce6a36..12ef8da 100644
--- a/camera/camera-video/src/androidTest/java/androidx/camera/video/OutputOptionsTest.kt
+++ b/camera/camera-video/src/androidTest/java/androidx/camera/video/OutputOptionsTest.kt
@@ -118,12 +118,12 @@
fun canBuildOutputOptions() {
val outputOptions = FakeOutputOptions.Builder()
.setFileSizeLimit(FILE_SIZE_LIMIT)
- .setDurationLimit(DURATION_LIMIT)
+ .setDurationLimitMillis(DURATION_LIMIT)
.build()
assertThat(outputOptions).isNotNull()
assertThat(outputOptions.fileSizeLimit).isEqualTo(FILE_SIZE_LIMIT)
- assertThat(outputOptions.durationLimit).isEqualTo(DURATION_LIMIT)
+ assertThat(outputOptions.durationLimitMillis).isEqualTo(DURATION_LIMIT)
}
@Test
@@ -132,7 +132,7 @@
assertThat(outputOptions.location).isNull()
assertThat(outputOptions.fileSizeLimit).isEqualTo(OutputOptions.FILE_SIZE_UNLIMITED)
- assertThat(outputOptions.durationLimit).isEqualTo(OutputOptions.DURATION_UNLIMITED)
+ assertThat(outputOptions.durationLimitMillis).isEqualTo(OutputOptions.DURATION_UNLIMITED)
}
@Test
@@ -145,7 +145,7 @@
@Test
fun invalidDurationLimit_throwsException() {
assertThrows(IllegalArgumentException::class.java) {
- FakeOutputOptions.Builder().setDurationLimit(INVALID_DURATION_LIMIT)
+ FakeOutputOptions.Builder().setDurationLimitMillis(INVALID_DURATION_LIMIT)
}
}
diff --git a/camera/camera-video/src/androidTest/java/androidx/camera/video/RecorderTest.kt b/camera/camera-video/src/androidTest/java/androidx/camera/video/RecorderTest.kt
index 2f648b8..b7568be 100644
--- a/camera/camera-video/src/androidTest/java/androidx/camera/video/RecorderTest.kt
+++ b/camera/camera-video/src/androidTest/java/androidx/camera/video/RecorderTest.kt
@@ -597,7 +597,7 @@
val durationTolerance = 50L
val file = File.createTempFile("CameraX", ".tmp").apply { deleteOnExit() }
val outputOptions = FileOutputOptions.Builder(file)
- .setDurationLimit(durationLimitMs)
+ .setDurationLimitMillis(durationLimitMs)
.build()
val recording = recorder
diff --git a/camera/camera-video/src/main/java/androidx/camera/video/OutputOptions.java b/camera/camera-video/src/main/java/androidx/camera/video/OutputOptions.java
index 127b5a0..c7015d9 100644
--- a/camera/camera-video/src/main/java/androidx/camera/video/OutputOptions.java
+++ b/camera/camera-video/src/main/java/androidx/camera/video/OutputOptions.java
@@ -53,7 +53,7 @@
/**
* Gets the limit for the file size in bytes.
*
- * @return the file size limit in bytes or zero if it's unlimited.
+ * @return the file size limit in bytes or {@link #FILE_SIZE_UNLIMITED} if it's unlimited.
*/
@IntRange(from = 0)
public long getFileSizeLimit() {
@@ -64,7 +64,7 @@
* Returns a {@link Location} object representing the geographic location where the video was
* recorded.
*
- * @return The location object or {@code null} if no location was set.
+ * @return the location object or {@code null} if no location was set.
*/
@Nullable
public Location getLocation() {
@@ -74,11 +74,12 @@
/**
* Gets the limit for the video duration in milliseconds.
*
- * @return the video duration limit in milliseconds or zero if it's unlimited.
+ * @return the video duration limit in milliseconds or {@link #DURATION_UNLIMITED} if it's
+ * unlimited.
*/
@IntRange(from = 0)
- public long getDurationLimit() {
- return mOutputOptionsInternal.getDurationLimit();
+ public long getDurationLimitMillis() {
+ return mOutputOptionsInternal.getDurationLimitMillis();
}
/**
@@ -93,7 +94,7 @@
mRootInternalBuilder = builder;
// Apply default value
mRootInternalBuilder.setFileSizeLimit(FILE_SIZE_UNLIMITED);
- mRootInternalBuilder.setDurationLimit(DURATION_UNLIMITED);
+ mRootInternalBuilder.setDurationLimitMillis(DURATION_UNLIMITED);
}
/**
@@ -109,12 +110,12 @@
*
* @param fileSizeLimitBytes the file size limit in bytes.
* @return this Builder.
- * @throws IllegalArgumentException if the specified file size limit is less than zero.
+ * @throws IllegalArgumentException if the specified file size limit is negative.
*/
@NonNull
public B setFileSizeLimit(@IntRange(from = 0) long fileSizeLimitBytes) {
Preconditions.checkArgument(fileSizeLimitBytes >= 0, "The specified file size limit "
- + "should be greater than zero.");
+ + "can't be negative.");
mRootInternalBuilder.setFileSizeLimit(fileSizeLimitBytes);
return (B) this;
}
@@ -130,15 +131,15 @@
* unlimited}. If set with a negative value, an {@link IllegalArgumentException} will be
* thrown.
*
- * @param durationLimitMs the video duration limit in milliseconds.
+ * @param durationLimitMillis the video duration limit in milliseconds.
* @return this Builder.
- * @throws IllegalArgumentException if the specified duration limit is less than zero.
+ * @throws IllegalArgumentException if the specified duration limit is negative.
*/
@NonNull
- public B setDurationLimit(@IntRange(from = 0) long durationLimitMs) {
- Preconditions.checkArgument(durationLimitMs >= 0, "The specified duration limit "
- + "should be greater than zero.");
- mRootInternalBuilder.setDurationLimit(durationLimitMs);
+ public B setDurationLimitMillis(@IntRange(from = 0) long durationLimitMillis) {
+ Preconditions.checkArgument(durationLimitMillis >= 0, "The specified duration limit "
+ + "can't be negative.");
+ mRootInternalBuilder.setDurationLimitMillis(durationLimitMillis);
return (B) this;
}
@@ -154,7 +155,8 @@
* value is {@code null}.
*
* @throws IllegalArgumentException if the latitude of the location is not in the range
- * [-90, 90] or the longitude of the location is not in the range [-180, 180].
+ * {@code [-90, 90]} or the longitude of the location is not in the range {@code [-180,
+ * 180]}.
*/
@NonNull
public B setLocation(@Nullable Location location) {
@@ -184,7 +186,7 @@
abstract long getFileSizeLimit();
@IntRange(from = 0)
- abstract long getDurationLimit();
+ abstract long getDurationLimitMillis();
@Nullable
abstract Location getLocation();
@@ -197,7 +199,7 @@
abstract B setFileSizeLimit(@IntRange(from = 0) long fileSizeLimitBytes);
@NonNull
- abstract B setDurationLimit(@IntRange(from = 0) long durationLimitMs);
+ abstract B setDurationLimitMillis(@IntRange(from = 0) long durationLimitMillis);
@NonNull
abstract B setLocation(@Nullable Location location);
diff --git a/camera/camera-video/src/main/java/androidx/camera/video/Recorder.java b/camera/camera-video/src/main/java/androidx/camera/video/Recorder.java
index ad44acd..d36a8bb 100644
--- a/camera/camera-video/src/main/java/androidx/camera/video/Recorder.java
+++ b/camera/camera-video/src/main/java/androidx/camera/video/Recorder.java
@@ -1472,9 +1472,9 @@
mFileSizeLimitInBytes = OutputOptions.FILE_SIZE_UNLIMITED;
}
- if (recordingToStart.getOutputOptions().getDurationLimit() > 0) {
+ if (recordingToStart.getOutputOptions().getDurationLimitMillis() > 0) {
mDurationLimitNs = TimeUnit.MILLISECONDS.toNanos(
- recordingToStart.getOutputOptions().getDurationLimit());
+ recordingToStart.getOutputOptions().getDurationLimitMillis());
Logger.d(TAG, "Duration limit in nanoseconds: " + mDurationLimitNs);
} else {
mDurationLimitNs = OutputOptions.DURATION_UNLIMITED;