11abddd9f6225298066094e20a6c29061b6af4590Nick Chalko/* 21abddd9f6225298066094e20a6c29061b6af4590Nick Chalko * Copyright (C) 2015 The Android Open Source Project 31abddd9f6225298066094e20a6c29061b6af4590Nick Chalko * 41abddd9f6225298066094e20a6c29061b6af4590Nick Chalko * Licensed under the Apache License, Version 2.0 (the "License"); 51abddd9f6225298066094e20a6c29061b6af4590Nick Chalko * you may not use this file except in compliance with the License. 61abddd9f6225298066094e20a6c29061b6af4590Nick Chalko * You may obtain a copy of the License at 71abddd9f6225298066094e20a6c29061b6af4590Nick Chalko * 81abddd9f6225298066094e20a6c29061b6af4590Nick Chalko * http://www.apache.org/licenses/LICENSE-2.0 91abddd9f6225298066094e20a6c29061b6af4590Nick Chalko * 101abddd9f6225298066094e20a6c29061b6af4590Nick Chalko * Unless required by applicable law or agreed to in writing, software 111abddd9f6225298066094e20a6c29061b6af4590Nick Chalko * distributed under the License is distributed on an "AS IS" BASIS, 121abddd9f6225298066094e20a6c29061b6af4590Nick Chalko * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 131abddd9f6225298066094e20a6c29061b6af4590Nick Chalko * See the License for the specific language governing permissions and 141abddd9f6225298066094e20a6c29061b6af4590Nick Chalko * limitations under the License. 151abddd9f6225298066094e20a6c29061b6af4590Nick Chalko */ 161abddd9f6225298066094e20a6c29061b6af4590Nick Chalko 176ebde20b03db4c0d57f67acaac11832b610b966bNick Chalkosyntax = 'proto2'; 186ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko 1965fda1eaa94968bb55d5ded10dcb0b3f37fb05f2Nick Chalkopackage com.android.tv.tuner.data; 201abddd9f6225298066094e20a6c29061b6af4590Nick Chalko 2165fda1eaa94968bb55d5ded10dcb0b3f37fb05f2Nick Chalkooption java_package = "com.android.tv.tuner.data"; 221abddd9f6225298066094e20a6c29061b6af4590Nick Chalkooption java_outer_classname = "Channel"; 231abddd9f6225298066094e20a6c29061b6af4590Nick Chalko 241abddd9f6225298066094e20a6c29061b6af4590Nick Chalkoimport "track.proto"; 251abddd9f6225298066094e20a6c29061b6af4590Nick Chalko 261abddd9f6225298066094e20a6c29061b6af4590Nick Chalko// Holds information about a channel used in the tuners. 271abddd9f6225298066094e20a6c29061b6af4590Nick Chalkomessage TunerChannelProto { 281abddd9f6225298066094e20a6c29061b6af4590Nick Chalko optional TunerType type = 1; 291abddd9f6225298066094e20a6c29061b6af4590Nick Chalko optional string short_name = 2; 301abddd9f6225298066094e20a6c29061b6af4590Nick Chalko optional string long_name = 3; 311abddd9f6225298066094e20a6c29061b6af4590Nick Chalko optional int32 frequency = 4; 321abddd9f6225298066094e20a6c29061b6af4590Nick Chalko optional string modulation = 5; 331abddd9f6225298066094e20a6c29061b6af4590Nick Chalko optional string filepath = 6; 341abddd9f6225298066094e20a6c29061b6af4590Nick Chalko optional int32 program_number = 7; 351abddd9f6225298066094e20a6c29061b6af4590Nick Chalko optional int32 virtual_major = 8; 361abddd9f6225298066094e20a6c29061b6af4590Nick Chalko optional int32 virtual_minor = 9; 371abddd9f6225298066094e20a6c29061b6af4590Nick Chalko optional int64 channel_id = 10; 381abddd9f6225298066094e20a6c29061b6af4590Nick Chalko optional string description = 11; 391abddd9f6225298066094e20a6c29061b6af4590Nick Chalko optional int32 tsid = 12; 401abddd9f6225298066094e20a6c29061b6af4590Nick Chalko optional int32 video_pid = 13; 411abddd9f6225298066094e20a6c29061b6af4590Nick Chalko optional VideoStreamType video_stream_type = 14; 421abddd9f6225298066094e20a6c29061b6af4590Nick Chalko optional int32 pcr_pid = 15; 431abddd9f6225298066094e20a6c29061b6af4590Nick Chalko repeated AtscAudioTrack audio_tracks = 16; 441abddd9f6225298066094e20a6c29061b6af4590Nick Chalko repeated int32 audio_pids = 17; 451abddd9f6225298066094e20a6c29061b6af4590Nick Chalko repeated AudioStreamType audio_stream_types = 18; 461abddd9f6225298066094e20a6c29061b6af4590Nick Chalko optional int32 audio_track_index = 19; 471abddd9f6225298066094e20a6c29061b6af4590Nick Chalko repeated AtscCaptionTrack caption_tracks = 20; 481abddd9f6225298066094e20a6c29061b6af4590Nick Chalko optional bool has_caption_track = 21; 491abddd9f6225298066094e20a6c29061b6af4590Nick Chalko optional AtscServiceType service_type = 22 [default = SERVICE_TYPE_ATSC_DIGITAL_TELEVISION]; 506ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko optional bool recording_prohibited = 23; 516ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko optional string video_format = 24; 521abddd9f6225298066094e20a6c29061b6af4590Nick Chalko} 531abddd9f6225298066094e20a6c29061b6af4590Nick Chalko 541abddd9f6225298066094e20a6c29061b6af4590Nick Chalko// Enum describing the types of tuner. 551abddd9f6225298066094e20a6c29061b6af4590Nick Chalkoenum TunerType { 561abddd9f6225298066094e20a6c29061b6af4590Nick Chalko TYPE_TUNER = 0; 571abddd9f6225298066094e20a6c29061b6af4590Nick Chalko TYPE_FILE = 1; 586ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko TYPE_NETWORK = 2; 591abddd9f6225298066094e20a6c29061b6af4590Nick Chalko} 601abddd9f6225298066094e20a6c29061b6af4590Nick Chalko 611abddd9f6225298066094e20a6c29061b6af4590Nick Chalko// Enum describing the types of video stream. 621abddd9f6225298066094e20a6c29061b6af4590Nick Chalkoenum VideoStreamType { 631abddd9f6225298066094e20a6c29061b6af4590Nick Chalko // ISO/IEC 11172 Video (MPEG-1) 641abddd9f6225298066094e20a6c29061b6af4590Nick Chalko MPEG1 = 0x01; 651abddd9f6225298066094e20a6c29061b6af4590Nick Chalko // ISO/IEC 13818-2 (MPEG-2) Video 661abddd9f6225298066094e20a6c29061b6af4590Nick Chalko MPEG2 = 0x02; 671abddd9f6225298066094e20a6c29061b6af4590Nick Chalko // ISO/IEC 14496-2 (MPEG-4 H.263 based) 681abddd9f6225298066094e20a6c29061b6af4590Nick Chalko H263 = 0x10; 691abddd9f6225298066094e20a6c29061b6af4590Nick Chalko // ISO/IE 14496-10 (H.264 video) 701abddd9f6225298066094e20a6c29061b6af4590Nick Chalko H264 = 0x01b; 711abddd9f6225298066094e20a6c29061b6af4590Nick Chalko // ISO/IE 23008-2 (H.265 video) 721abddd9f6225298066094e20a6c29061b6af4590Nick Chalko H265 = 0x024; 731abddd9f6225298066094e20a6c29061b6af4590Nick Chalko} 741abddd9f6225298066094e20a6c29061b6af4590Nick Chalko 751abddd9f6225298066094e20a6c29061b6af4590Nick Chalko// Enum describing the types of audio stream. 761abddd9f6225298066094e20a6c29061b6af4590Nick Chalkoenum AudioStreamType { 771abddd9f6225298066094e20a6c29061b6af4590Nick Chalko // ISO/IEC 11172 Audio (MPEG-1) 781abddd9f6225298066094e20a6c29061b6af4590Nick Chalko MPEG1AUDIO = 0x03; 791abddd9f6225298066094e20a6c29061b6af4590Nick Chalko // ISO/IEC 13818-3 Audio (MPEG-2) 801abddd9f6225298066094e20a6c29061b6af4590Nick Chalko MPEG2AUDIO = 0x04; 811abddd9f6225298066094e20a6c29061b6af4590Nick Chalko // ISO/IEC 13818-7 Audio with ADTS transport syntax 821abddd9f6225298066094e20a6c29061b6af4590Nick Chalko MPEG2AACAUDIO = 0x0f; 831abddd9f6225298066094e20a6c29061b6af4590Nick Chalko // ISO/IEC 14496-3 (MPEG-4 LOAS multi-format framed audio) 841abddd9f6225298066094e20a6c29061b6af4590Nick Chalko MPEG4LATMAACAUDIO = 0x11; 851abddd9f6225298066094e20a6c29061b6af4590Nick Chalko // Dolby Digital Audio (ATSC) 861abddd9f6225298066094e20a6c29061b6af4590Nick Chalko A52AC3AUDIO = 0x81; 871abddd9f6225298066094e20a6c29061b6af4590Nick Chalko // Dolby Digital Plus Audio (ATSC)ISO/IEC 14496-2Video (MPEG-1) 881abddd9f6225298066094e20a6c29061b6af4590Nick Chalko EAC3AUDIO = 0x87; 891abddd9f6225298066094e20a6c29061b6af4590Nick Chalko} 901abddd9f6225298066094e20a6c29061b6af4590Nick Chalko 911abddd9f6225298066094e20a6c29061b6af4590Nick Chalko// Enum describing ATSC service types 921abddd9f6225298066094e20a6c29061b6af4590Nick Chalko// See ATSC Code Points Registry. 931abddd9f6225298066094e20a6c29061b6af4590Nick Chalkoenum AtscServiceType { 941abddd9f6225298066094e20a6c29061b6af4590Nick Chalko SERVICE_TYPE_ATSC_RESERVED = 0x0; 951abddd9f6225298066094e20a6c29061b6af4590Nick Chalko SERVICE_TYPE_ANALOG_TELEVISION_CHANNELS = 0x1; 961abddd9f6225298066094e20a6c29061b6af4590Nick Chalko SERVICE_TYPE_ATSC_DIGITAL_TELEVISION = 0x2; 971abddd9f6225298066094e20a6c29061b6af4590Nick Chalko SERVICE_TYPE_ATSC_AUDIO = 0x3; 981abddd9f6225298066094e20a6c29061b6af4590Nick Chalko SERVICE_TYPE_ATSC_DATA_ONLY_SERVICE = 0x4; 991abddd9f6225298066094e20a6c29061b6af4590Nick Chalko SERVICE_TYPE_SOFTWARE_DOWNLOAD = 0x5; 1001abddd9f6225298066094e20a6c29061b6af4590Nick Chalko SERVICE_TYPE_UNASSOCIATED_SMALL_SCREEN_SERVICE = 0x6; 1011abddd9f6225298066094e20a6c29061b6af4590Nick Chalko SERVICE_TYPE_PARAMETERIZED_SERVICE = 0x7; 1021abddd9f6225298066094e20a6c29061b6af4590Nick Chalko SERVICE_TYPE_ATSC_NRT_SERVICE = 0x8; 1031abddd9f6225298066094e20a6c29061b6af4590Nick Chalko SERVICE_TYPE_EXTENDED_PARAMERTERIZED_SERVICE = 0x9; 1041abddd9f6225298066094e20a6c29061b6af4590Nick Chalko} 105