blob: 94e574550e45458b76957510f992a808f32bee0e [file] [log] [blame]
Nick Anthony2ae2a022022-01-20 03:43:21 -05001// Signature format: 4.0
2package androidx.camera.video {
3
4 @RequiresApi(21) @com.google.auto.value.AutoValue public abstract class AudioStats {
5 method public abstract int getAudioState();
6 method public abstract Throwable? getErrorCause();
7 method public boolean hasAudio();
8 method public boolean hasError();
9 field public static final int AUDIO_STATE_ACTIVE = 0; // 0x0
10 field public static final int AUDIO_STATE_DISABLED = 1; // 0x1
11 field public static final int AUDIO_STATE_ENCODER_ERROR = 3; // 0x3
12 field public static final int AUDIO_STATE_SOURCE_SILENCED = 2; // 0x2
13 }
14
15 @RequiresApi(21) public class FallbackStrategy {
16 method public static androidx.camera.video.FallbackStrategy higherQualityOrLowerThan(androidx.camera.video.Quality);
17 method public static androidx.camera.video.FallbackStrategy higherQualityThan(androidx.camera.video.Quality);
18 method public static androidx.camera.video.FallbackStrategy lowerQualityOrHigherThan(androidx.camera.video.Quality);
19 method public static androidx.camera.video.FallbackStrategy lowerQualityThan(androidx.camera.video.Quality);
20 }
21
22 @RequiresApi(21) public final class FileDescriptorOutputOptions extends androidx.camera.video.OutputOptions {
23 method public long getFileSizeLimit();
24 method public android.os.ParcelFileDescriptor getParcelFileDescriptor();
25 }
26
27 @RequiresApi(21) public static final class FileDescriptorOutputOptions.Builder {
28 ctor public FileDescriptorOutputOptions.Builder(android.os.ParcelFileDescriptor);
29 method public androidx.camera.video.FileDescriptorOutputOptions build();
30 method public androidx.camera.video.FileDescriptorOutputOptions.Builder setFileSizeLimit(long);
31 }
32
33 @RequiresApi(21) public final class FileOutputOptions extends androidx.camera.video.OutputOptions {
34 method public java.io.File getFile();
35 method public long getFileSizeLimit();
36 }
37
38 @RequiresApi(21) public static final class FileOutputOptions.Builder {
39 ctor public FileOutputOptions.Builder(java.io.File);
40 method public androidx.camera.video.FileOutputOptions build();
41 method public androidx.camera.video.FileOutputOptions.Builder setFileSizeLimit(long);
42 }
43
44 @RequiresApi(21) public final class MediaStoreOutputOptions extends androidx.camera.video.OutputOptions {
45 method public android.net.Uri getCollectionUri();
46 method public android.content.ContentResolver getContentResolver();
47 method public android.content.ContentValues getContentValues();
48 method public long getFileSizeLimit();
49 field public static final android.content.ContentValues EMPTY_CONTENT_VALUES;
50 }
51
52 public static final class MediaStoreOutputOptions.Builder {
53 ctor public MediaStoreOutputOptions.Builder(android.content.ContentResolver, android.net.Uri);
54 method public androidx.camera.video.MediaStoreOutputOptions build();
55 method public androidx.camera.video.MediaStoreOutputOptions.Builder setContentValues(android.content.ContentValues);
56 method public androidx.camera.video.MediaStoreOutputOptions.Builder setFileSizeLimit(long);
57 }
58
59 @RequiresApi(21) public abstract class OutputOptions {
60 method public abstract long getFileSizeLimit();
61 field public static final int FILE_SIZE_UNLIMITED = 0; // 0x0
62 }
63
64 @RequiresApi(21) @com.google.auto.value.AutoValue public abstract class OutputResults {
65 ctor public OutputResults();
66 method public abstract android.net.Uri getOutputUri();
67 }
68
69 @RequiresApi(21) public final class PendingRecording {
70 method @CheckResult public androidx.camera.video.Recording start(java.util.concurrent.Executor, androidx.core.util.Consumer<androidx.camera.video.VideoRecordEvent!>);
71 method @RequiresPermission(android.Manifest.permission.RECORD_AUDIO) public androidx.camera.video.PendingRecording withAudioEnabled();
72 }
73
74 @RequiresApi(21) public class Quality {
75 field public static final androidx.camera.video.Quality FHD;
76 field public static final androidx.camera.video.Quality HD;
77 field public static final androidx.camera.video.Quality HIGHEST;
78 field public static final androidx.camera.video.Quality LOWEST;
79 field public static final androidx.camera.video.Quality SD;
80 field public static final androidx.camera.video.Quality UHD;
81 }
82
83 @RequiresApi(21) public final class QualitySelector {
84 method public static androidx.camera.video.QualitySelector from(androidx.camera.video.Quality);
85 method public static androidx.camera.video.QualitySelector from(androidx.camera.video.Quality, androidx.camera.video.FallbackStrategy);
86 method public static androidx.camera.video.QualitySelector fromOrderedList(java.util.List<androidx.camera.video.Quality!>);
87 method public static androidx.camera.video.QualitySelector fromOrderedList(java.util.List<androidx.camera.video.Quality!>, androidx.camera.video.FallbackStrategy);
88 method public static android.util.Size? getResolution(androidx.camera.core.CameraInfo, androidx.camera.video.Quality);
89 method public static java.util.List<androidx.camera.video.Quality!> getSupportedQualities(androidx.camera.core.CameraInfo);
90 method public static boolean isQualitySupported(androidx.camera.core.CameraInfo, androidx.camera.video.Quality);
91 }
92
93 @RequiresApi(21) public final class Recorder implements androidx.camera.video.VideoOutput {
94 method public java.util.concurrent.Executor? getExecutor();
95 method public androidx.camera.video.QualitySelector getQualitySelector();
96 method public void onSurfaceRequested(androidx.camera.core.SurfaceRequest);
97 method public androidx.camera.video.PendingRecording prepareRecording(android.content.Context, androidx.camera.video.FileOutputOptions);
98 method @RequiresApi(26) public androidx.camera.video.PendingRecording prepareRecording(android.content.Context, androidx.camera.video.FileDescriptorOutputOptions);
99 method public androidx.camera.video.PendingRecording prepareRecording(android.content.Context, androidx.camera.video.MediaStoreOutputOptions);
100 field public static final androidx.camera.video.QualitySelector DEFAULT_QUALITY_SELECTOR;
101 }
102
103 @RequiresApi(21) public static final class Recorder.Builder {
104 ctor public Recorder.Builder();
105 method public androidx.camera.video.Recorder build();
106 method public androidx.camera.video.Recorder.Builder setExecutor(java.util.concurrent.Executor);
107 method public androidx.camera.video.Recorder.Builder setQualitySelector(androidx.camera.video.QualitySelector);
108 }
109
110 @RequiresApi(21) public final class Recording implements java.lang.AutoCloseable {
111 method public void close();
112 method public void pause();
113 method public void resume();
114 method public void stop();
115 }
116
117 @RequiresApi(21) @com.google.auto.value.AutoValue public abstract class RecordingStats {
118 method public abstract androidx.camera.video.AudioStats getAudioStats();
119 method public abstract long getNumBytesRecorded();
120 method public abstract long getRecordedDurationNanos();
121 }
122
123 @RequiresApi(21) public final class VideoCapture<T extends androidx.camera.video.VideoOutput> extends androidx.camera.core.UseCase {
124 method public T getOutput();
125 method public static <T extends androidx.camera.video.VideoOutput> androidx.camera.video.VideoCapture<T!> withOutput(T);
126 }
127
128 @RequiresApi(21) public interface VideoOutput {
129 method public void onSurfaceRequested(androidx.camera.core.SurfaceRequest);
130 }
131
132 @RequiresApi(21) public abstract class VideoRecordEvent {
133 method public androidx.camera.video.OutputOptions getOutputOptions();
134 method public androidx.camera.video.RecordingStats getRecordingStats();
135 }
136
137 @RequiresApi(21) public static final class VideoRecordEvent.Finalize extends androidx.camera.video.VideoRecordEvent {
138 method public Throwable? getCause();
139 method public int getError();
140 method public androidx.camera.video.OutputResults getOutputResults();
141 method public boolean hasError();
142 field public static final int ERROR_ENCODING_FAILED = 6; // 0x6
143 field public static final int ERROR_FILE_SIZE_LIMIT_REACHED = 2; // 0x2
144 field public static final int ERROR_INSUFFICIENT_STORAGE = 3; // 0x3
145 field public static final int ERROR_INVALID_OUTPUT_OPTIONS = 5; // 0x5
146 field public static final int ERROR_NONE = 0; // 0x0
147 field public static final int ERROR_NO_VALID_DATA = 8; // 0x8
148 field public static final int ERROR_RECORDER_ERROR = 7; // 0x7
149 field public static final int ERROR_SOURCE_INACTIVE = 4; // 0x4
150 field public static final int ERROR_UNKNOWN = 1; // 0x1
151 }
152
153 @RequiresApi(21) public static final class VideoRecordEvent.Pause extends androidx.camera.video.VideoRecordEvent {
154 }
155
156 @RequiresApi(21) public static final class VideoRecordEvent.Resume extends androidx.camera.video.VideoRecordEvent {
157 }
158
159 @RequiresApi(21) public static final class VideoRecordEvent.Start extends androidx.camera.video.VideoRecordEvent {
160 }
161
162 @RequiresApi(21) public static final class VideoRecordEvent.Status extends androidx.camera.video.VideoRecordEvent {
163 }
164
165}
166