xref: /aosp_15_r20/frameworks/base/proto/src/camera.proto (revision d57664e9bc4670b3ecf6748a746a57c557b6bc9e)
1*d57664e9SAndroid Build Coastguard Worker/*
2*d57664e9SAndroid Build Coastguard Worker * Copyright (C) 2020 The Android Open Source Project
3*d57664e9SAndroid Build Coastguard Worker *
4*d57664e9SAndroid Build Coastguard Worker * Licensed under the Apache License, Version 2.0 (the "License");
5*d57664e9SAndroid Build Coastguard Worker * you may not use this file except in compliance with the License.
6*d57664e9SAndroid Build Coastguard Worker * You may obtain a copy of the License at
7*d57664e9SAndroid Build Coastguard Worker *
8*d57664e9SAndroid Build Coastguard Worker *      http://www.apache.org/licenses/LICENSE-2.0
9*d57664e9SAndroid Build Coastguard Worker *
10*d57664e9SAndroid Build Coastguard Worker * Unless required by applicable law or agreed to in writing, software
11*d57664e9SAndroid Build Coastguard Worker * distributed under the License is distributed on an "AS IS" BASIS,
12*d57664e9SAndroid Build Coastguard Worker * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*d57664e9SAndroid Build Coastguard Worker * See the License for the specific language governing permissions and
14*d57664e9SAndroid Build Coastguard Worker * limitations under the License.
15*d57664e9SAndroid Build Coastguard Worker */
16*d57664e9SAndroid Build Coastguard Worker
17*d57664e9SAndroid Build Coastguard Workersyntax = "proto2";
18*d57664e9SAndroid Build Coastguard Worker
19*d57664e9SAndroid Build Coastguard Workerpackage android.stats.camera;
20*d57664e9SAndroid Build Coastguard Worker
21*d57664e9SAndroid Build Coastguard Workeroption java_package = "android.stats.camera";
22*d57664e9SAndroid Build Coastguard Workeroption java_outer_classname = "CameraProtos";
23*d57664e9SAndroid Build Coastguard Worker
24*d57664e9SAndroid Build Coastguard Worker/**
25*d57664e9SAndroid Build Coastguard Worker * CameraStreamProto from atoms.proto, duplicated here so that it's accessible from the
26*d57664e9SAndroid Build Coastguard Worker * logging code. Must be kept in sync with the definition in atoms.proto.
27*d57664e9SAndroid Build Coastguard Worker */
28*d57664e9SAndroid Build Coastguard Workermessage CameraStreamProto {
29*d57664e9SAndroid Build Coastguard Worker    // The stream width (in pixels)
30*d57664e9SAndroid Build Coastguard Worker    optional int32 width = 1;
31*d57664e9SAndroid Build Coastguard Worker    // The stream height (in pixels)
32*d57664e9SAndroid Build Coastguard Worker    optional int32 height = 2;
33*d57664e9SAndroid Build Coastguard Worker    // The format of the stream
34*d57664e9SAndroid Build Coastguard Worker    optional int32 format = 3;
35*d57664e9SAndroid Build Coastguard Worker    // The dataspace of the stream
36*d57664e9SAndroid Build Coastguard Worker    optional int32 data_space = 4;
37*d57664e9SAndroid Build Coastguard Worker    // The usage flag of the stream
38*d57664e9SAndroid Build Coastguard Worker    optional int64 usage = 5;
39*d57664e9SAndroid Build Coastguard Worker
40*d57664e9SAndroid Build Coastguard Worker    // The number of requests for this stream
41*d57664e9SAndroid Build Coastguard Worker    optional int64 request_count = 6;
42*d57664e9SAndroid Build Coastguard Worker    // The number of buffer error for this stream
43*d57664e9SAndroid Build Coastguard Worker    optional int64 error_count = 7;
44*d57664e9SAndroid Build Coastguard Worker    // The capture latency of first request for this stream
45*d57664e9SAndroid Build Coastguard Worker    optional int32 first_capture_latency_millis = 8;
46*d57664e9SAndroid Build Coastguard Worker
47*d57664e9SAndroid Build Coastguard Worker    // The maximum number of hal buffers
48*d57664e9SAndroid Build Coastguard Worker    optional int32 max_hal_buffers = 9;
49*d57664e9SAndroid Build Coastguard Worker    // The maximum number of app buffers
50*d57664e9SAndroid Build Coastguard Worker    optional int32 max_app_buffers = 10;
51*d57664e9SAndroid Build Coastguard Worker
52*d57664e9SAndroid Build Coastguard Worker    // Type of stream histogram
53*d57664e9SAndroid Build Coastguard Worker    // 1: Capture latency: bin size in milliseconds
54*d57664e9SAndroid Build Coastguard Worker    enum HistogramType {
55*d57664e9SAndroid Build Coastguard Worker        UNKNOWN = 0;
56*d57664e9SAndroid Build Coastguard Worker        CAPTURE_LATENCY = 1;
57*d57664e9SAndroid Build Coastguard Worker    }
58*d57664e9SAndroid Build Coastguard Worker    optional HistogramType histogram_type = 11;
59*d57664e9SAndroid Build Coastguard Worker    // The boundary values between histogram bins
60*d57664e9SAndroid Build Coastguard Worker    // Expected number of fields: 9
61*d57664e9SAndroid Build Coastguard Worker    repeated float histogram_bins = 12;
62*d57664e9SAndroid Build Coastguard Worker    // The frame counts for each histogram bins
63*d57664e9SAndroid Build Coastguard Worker    // Expected number of fields: 10
64*d57664e9SAndroid Build Coastguard Worker    repeated int64 histogram_counts = 13;
65*d57664e9SAndroid Build Coastguard Worker
66*d57664e9SAndroid Build Coastguard Worker    // The dynamic range profile of the stream
67*d57664e9SAndroid Build Coastguard Worker    optional int64 dynamic_range_profile = 14;
68*d57664e9SAndroid Build Coastguard Worker    // The stream use case
69*d57664e9SAndroid Build Coastguard Worker    optional int64 stream_use_case = 15;
70*d57664e9SAndroid Build Coastguard Worker    // The color space of the stream
71*d57664e9SAndroid Build Coastguard Worker    optional int32 color_space = 16;
72*d57664e9SAndroid Build Coastguard Worker}
73