blob: d679d9c24f73715567be712aa4b36ef80f7bd429 [file] [log] [blame]
/*
* Copyright (C) 2017 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
syntax = "proto2";
option java_multiple_files = true;
package android.media;
import "frameworks/base/libs/incident/proto/android/privacy.proto";
/**
* An android.media.AudioAttributes object.
*/
message AudioAttributesProto {
option (android.msg_privacy).dest = DEST_AUTOMATIC;
optional Usage usage = 1;
optional ContentType content_type = 2;
// Bit representation of set flags.
optional int32 flags = 3;
repeated string tags = 4 [ (android.privacy).dest = DEST_EXPLICIT ];
}
enum ContentType {
// Content type value to use when the content type is unknown, or other than
// the ones defined.
CONTENT_TYPE_UNKNOWN = 0;
// Content type value to use when the content type is speech.
SPEECH = 1;
// Content type value to use when the content type is music.
MUSIC = 2;
// Content type value to use when the content type is a soundtrack,
// typically accompanying a movie or TV program.
MOVIE = 3;
// Content type value to use when the content type is a sound used to
// accompany a user action, such as a beep or sound effect expressing a key
// click, or event, such as the type of a sound for a bonus being received
// in a game. These sounds are mostly synthesized or short Foley sounds.
SONIFICATION = 4;
}
enum Usage {
// Usage value to use when the usage is unknown.
USAGE_UNKNOWN = 0;
// Usage value to use when the usage is media, such as music, or movie
// soundtracks.
MEDIA = 1;
// Usage value to use when the usage is voice communications, such as
// telephony or VoIP.
VOICE_COMMUNICATION = 2;
// Usage value to use when the usage is in-call signalling, such as with a
// "busy" beep, or DTMF tones.
VOICE_COMMUNICATION_SIGNALLING = 3;
// Usage value to use when the usage is an alarm (e.g. wake-up alarm).
ALARM = 4;
// Usage value to use when the usage is notification. Other notification
// usages are for more specialized uses.
NOTIFICATION = 5;
// Usage value to use when the usage is telephony ringtone.
NOTIFICATION_RINGTONE = 6;
// Usage value to use when the usage is a request to enter/end a
// communication, such as a VoIP communication or video-conference.
NOTIFICATION_COMMUNICATION_REQUEST = 7;
// Usage value to use when the usage is notification for an "instant"
// communication such as a chat, or SMS.
NOTIFICATION_COMMUNICATION_INSTANT = 8;
// Usage value to use when the usage is notification for a non-immediate
// type of communication such as e-mail.
NOTIFICATION_COMMUNICATION_DELAYED = 9;
// Usage value to use when the usage is to attract the user's attention,
// such as a reminder or low battery warning.
NOTIFICATION_EVENT = 10;
// Usage value to use when the usage is for accessibility, such as with a
// screen reader.
ASSISTANCE_ACCESSIBILITY = 11;
// Usage value to use when the usage is driving or navigation directions.
ASSISTANCE_NAVIGATION_GUIDANCE = 12;
// Usage value to use when the usage is sonification, such as with user
// interface sounds.
ASSISTANCE_SONIFICATION = 13;
// Usage value to use when the usage is for game audio.
GAME = 14;
// Usage value to use when feeding audio to the platform and replacing
// "traditional" audio source, such as audio capture devices.
VIRTUAL_SOURCE = 15;
// Usage value to use for audio responses to user queries, audio
// instructions or help utterances.
ASSISTANT = 16;
}