1 /*
2  * Copyright (C) 2023 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #include "native_avcodec_base.h"
17 
18 #ifdef __cplusplus
19 extern "C" {
20 #endif
21 
22 const char *OH_AVCODEC_MIMETYPE_VIDEO_AVC = "video/avc";
23 const char *OH_AVCODEC_MIMETYPE_VIDEO_MPEG4 = "video/mp4v-es";
24 const char *OH_AVCODEC_MIMETYPE_VIDEO_HEVC = "video/hevc";
25 const char *OH_AVCODEC_MIMETYPE_AUDIO_AAC = "audio/mp4a-latm";
26 const char *OH_AVCODEC_MIMETYPE_AUDIO_FLAC = "audio/flac";
27 const char *OH_AVCODEC_MIMETYPE_AUDIO_VORBIS = "audio/vorbis";
28 const char *OH_AVCODEC_MIMETYPE_AUDIO_MPEG = "audio/mpeg";
29 const char *OH_AVCODEC_MIMETYPE_IMAGE_JPG = "image/jpeg";
30 const char *OH_AVCODEC_MIMETYPE_IMAGE_PNG = "image/png";
31 const char *OH_AVCODEC_MIMETYPE_IMAGE_BMP = "image/bmp";
32 const char *OH_AVCODEC_MIMETYPE_AUDIO_VIVID = "audio/av3a";
33 const char *OH_AVCODEC_MIMETYPE_AUDIO_AMR_NB = "audio/3gpp";
34 const char *OH_AVCODEC_MIMETYPE_AUDIO_AMR_WB = "audio/amr-wb";
35 const char *OH_AVCODEC_MIMETYPE_AUDIO_OPUS = "audio/opus";
36 const char *OH_AVCODEC_MIMETYPE_AUDIO_G711MU = "audio/g711mu";
37 const char *OH_AVCODEC_MIMETYPE_AUDIO_APE = "audio/x-ape";
38 const char *OH_AVCODEC_MIMETYPE_VIDEO_VVC = "video/vvc";
39 const char *OH_AVCODEC_MIMETYPE_SUBTITLE_SRT = "application/x-subrip";
40 const char *OH_AVCODEC_MIMETYPE_AUDIO_LBVC = "audio/lbvc";
41 const char *OH_AVCODEC_MIMETYPE_SUBTITLE_WEBVTT = "text/vtt";
42 
43 const char *OH_ED_KEY_TIME_STAMP = "timeStamp";
44 const char *OH_ED_KEY_EOS = "endOfStream";
45 const char *OH_MD_KEY_TRACK_TYPE = "track_type";
46 const char *OH_MD_KEY_CODEC_MIME = "codec_mime";
47 const char *OH_MD_KEY_DURATION = "duration";
48 const char *OH_MD_KEY_BITRATE = "bitrate";
49 const char *OH_MD_KEY_MAX_INPUT_SIZE = "max_input_size";
50 const char *OH_MD_KEY_WIDTH = "width";
51 const char *OH_MD_KEY_HEIGHT = "height";
52 const char *OH_MD_KEY_PIXEL_FORMAT = "pixel_format";
53 const char *OH_MD_KEY_AUDIO_SAMPLE_FORMAT = "audio_sample_format";
54 const char *OH_MD_KEY_FRAME_RATE = "frame_rate";
55 const char *OH_MD_KEY_VIDEO_ENCODE_BITRATE_MODE = "video_encode_bitrate_mode";
56 const char *OH_MD_KEY_PROFILE = "codec_profile";
57 const char *OH_MD_KEY_AUD_CHANNEL_COUNT = "channel_count";
58 const char *OH_MD_KEY_AUD_SAMPLE_RATE = "sample_rate";
59 const char *OH_MD_KEY_I_FRAME_INTERVAL = "i_frame_interval";
60 const char *OH_MD_KEY_ROTATION = "rotation_angle";
61 const char *OH_MD_KEY_CODEC_CONFIG = "codec_config";
62 const char *OH_MD_KEY_REQUEST_I_FRAME = "req_i_frame";
63 const char *OH_MD_KEY_RANGE_FLAG = "range_flag";
64 const char *OH_MD_KEY_COLOR_PRIMARIES = "color_primaries";
65 const char *OH_MD_KEY_TRANSFER_CHARACTERISTICS = "transfer_characteristics";
66 const char *OH_MD_KEY_MATRIX_COEFFICIENTS = "matrix_coefficients";
67 const char *OH_MD_KEY_QUALITY = "quality";
68 const char *OH_MD_KEY_CHANNEL_LAYOUT = "channel_layout";
69 const char *OH_MD_KEY_BITS_PER_CODED_SAMPLE = "bits_per_coded_sample";
70 const char *OH_MD_KEY_AAC_IS_ADTS = "aac_is_adts";
71 const char *OH_MD_KEY_SBR = "sbr";
72 const char *OH_MD_KEY_COMPLIANCE_LEVEL = "compliance_level";
73 const char *OH_MD_KEY_IDENTIFICATION_HEADER = "identification_header";
74 const char *OH_MD_KEY_SETUP_HEADER = "setup_header";
75 const char *OH_MD_KEY_SCALING_MODE = "scale_type";
76 const char *OH_MD_MAX_INPUT_BUFFER_COUNT = "max_input_buffer_count";
77 const char *OH_MD_MAX_OUTPUT_BUFFER_COUNT = "max_output_buffer_count";
78 const char *OH_MD_KEY_VIDEO_IS_HDR_VIVID = "video_is_hdr_vivid";
79 
80 const char *OH_MD_KEY_TITLE = "title";
81 const char *OH_MD_KEY_ARTIST = "artist";
82 const char *OH_MD_KEY_ALBUM = "album";
83 const char *OH_MD_KEY_ALBUM_ARTIST = "album_artist";
84 const char *OH_MD_KEY_DATE = "date";
85 const char *OH_MD_KEY_COMMENT = "comment";
86 const char *OH_MD_KEY_GENRE = "genre";
87 const char *OH_MD_KEY_COPYRIGHT = "copyright";
88 const char *OH_MD_KEY_LANGUAGE = "language";
89 const char *OH_MD_KEY_DESCRIPTION = "description";
90 const char *OH_MD_KEY_LYRICS = "lyrics";
91 const char *OH_MD_KEY_TRACK_COUNT = "track_count";
92 
93 const char *OH_MD_KEY_AUDIO_COMPRESSION_LEVEL = "audio_compression_level";
94 const char *OH_MD_KEY_AUDIO_OBJECT_NUMBER = "audio_object_number_key";
95 const char *OH_MD_KEY_AUDIO_VIVID_METADATA = "audio_vivid_metadata_key";
96 
97 const char *OH_FEATURE_VIDEO_ENCODER_TEMPORAL_SCALABILITY = "feature_video_encoder_temporal_scalability";
98 const char *OH_FEATURE_VIDEO_ENCODER_LONG_TERM_REFERENCE = "feature_video_encoder_long_term_reference";
99 const char *OH_FEATURE_VIDEO_LOW_LATENCY = "feature_video_low_latency";
100 
101 const char *OH_FEATURE_PROPERTY_KEY_VIDEO_ENCODER_MAX_LTR_FRAME_COUNT =
102     "feature_property_video_encoder_max_ltr_frame_count";
103 const char *OH_MD_KEY_VIDEO_ENCODER_ENABLE_TEMPORAL_SCALABILITY = "video_encoder_enable_temporal_scalability";
104 const char *OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_SIZE = "video_encoder_temporal_gop_size";
105 const char *OH_MD_KEY_VIDEO_ENCODER_TEMPORAL_GOP_REFERENCE_MODE = "video_encoder_temporal_gop_reference_mode";
106 const char *OH_MD_KEY_VIDEO_ENCODER_LTR_FRAME_COUNT = "video_encoder_ltr_frame_count";
107 const char *OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_MARK_LTR = "video_encoder_per_frame_mark_ltr";
108 const char *OH_MD_KEY_VIDEO_PER_FRAME_IS_LTR = "video_per_frame_is_ltr";
109 const char *OH_MD_KEY_VIDEO_PER_FRAME_POC = "video_per_frame_poc";
110 const char *OH_MD_KEY_VIDEO_ENCODER_PER_FRAME_USE_LTR = "video_encoder_per_frame_use_ltr";
111 const char *OH_MD_KEY_VIDEO_CROP_TOP = "video_crop_top";
112 const char *OH_MD_KEY_VIDEO_CROP_BOTTOM = "video_crop_bottom";
113 const char *OH_MD_KEY_VIDEO_CROP_LEFT = "video_crop_left";
114 const char *OH_MD_KEY_VIDEO_CROP_RIGHT = "video_crop_right";
115 const char *OH_MD_KEY_VIDEO_STRIDE = "stride";
116 const char *OH_MD_KEY_VIDEO_SLICE_HEIGHT = "video_slice_height";
117 const char *OH_MD_KEY_VIDEO_PIC_WIDTH = "video_picture_width";
118 const char *OH_MD_KEY_VIDEO_PIC_HEIGHT = "video_picture_height";
119 const char *OH_MD_KEY_VIDEO_ENABLE_LOW_LATENCY = "video_enable_low_latency";
120 const char *OH_MD_KEY_VIDEO_ENCODER_QP_MAX = "video_encoder_qp_max";
121 const char *OH_MD_KEY_VIDEO_ENCODER_QP_MIN = "video_encoder_qp_min";
122 const char *OH_MD_KEY_VIDEO_ENCODER_QP_AVERAGE = "video_encoder_qp_average";
123 const char *OH_MD_KEY_VIDEO_ENCODER_MSE = "video_encoder_mse";
124 const char *OH_MD_KEY_DECODING_TIMESTAMP = "decoding_timestamp";
125 const char *OH_MD_KEY_BUFFER_DURATION = "buffer_duration";
126 const char *OH_MD_KEY_VIDEO_SAR = "video_sar";
127 const char *OH_MD_KEY_START_TIME = "start_time";
128 const char *OH_MD_KEY_TRACK_START_TIME = "track_start_time";
129 const char *OH_MD_KEY_VIDEO_DECODER_OUTPUT_COLOR_SPACE = "video_decoder_output_colorspace";
130 const char *OH_MD_KEY_VIDEO_DECODER_OUTPUT_ENABLE_VRR = "video_decoder_output_enable_vrr";
131 const char *OH_MD_KEY_CREATION_TIME = "creation_time";
132 
133 #ifdef __cplusplus
134 }
135 #endif
136