1# Files to create `iamf/obu` classes from proto definitions. 2 3package(default_visibility = ["//iamf/cli:__subpackages__"]) 4 5# keep-sorted start block=yes prefix_order=cc_library newline_separated=yes 6cc_library( 7 name = "arbitrary_obu_generator", 8 srcs = ["arbitrary_obu_generator.cc"], 9 hdrs = ["arbitrary_obu_generator.h"], 10 deps = [ 11 "//iamf/cli/proto:arbitrary_obu_cc_proto", 12 "//iamf/cli/proto_conversion:lookup_tables", 13 "//iamf/cli/proto_conversion:proto_utils", 14 "//iamf/common/utils:macros", 15 "//iamf/common/utils:map_utils", 16 "//iamf/obu:arbitrary_obu", 17 "//iamf/obu:obu_header", 18 "@com_google_absl//absl/base:no_destructor", 19 "@com_google_absl//absl/log", 20 "@com_google_absl//absl/status", 21 "@com_google_absl//absl/strings", 22 "@com_google_protobuf//:protobuf", 23 ], 24) 25 26cc_library( 27 name = "audio_element_generator", 28 srcs = ["audio_element_generator.cc"], 29 hdrs = ["audio_element_generator.h"], 30 deps = [ 31 "//iamf/cli:audio_element_with_data", 32 "//iamf/cli:channel_label", 33 "//iamf/cli:obu_with_data_generator", 34 "//iamf/cli/proto:audio_element_cc_proto", 35 "//iamf/cli/proto:param_definitions_cc_proto", 36 "//iamf/cli/proto_conversion:lookup_tables", 37 "//iamf/cli/proto_conversion:proto_utils", 38 "//iamf/common/utils:macros", 39 "//iamf/common/utils:map_utils", 40 "//iamf/common/utils:numeric_utils", 41 "//iamf/obu:audio_element", 42 "//iamf/obu:codec_config", 43 "//iamf/obu:param_definitions", 44 "//iamf/obu:types", 45 "@com_google_absl//absl/base:no_destructor", 46 "@com_google_absl//absl/container:flat_hash_map", 47 "@com_google_absl//absl/container:flat_hash_set", 48 "@com_google_absl//absl/log", 49 "@com_google_absl//absl/log:check", 50 "@com_google_absl//absl/status", 51 "@com_google_absl//absl/strings", 52 "@com_google_absl//absl/types:span", 53 "@com_google_protobuf//:protobuf", 54 ], 55) 56 57cc_library( 58 name = "audio_frame_generator", 59 srcs = ["audio_frame_generator.cc"], 60 hdrs = ["audio_frame_generator.h"], 61 deps = [ 62 "//iamf/cli:audio_element_with_data", 63 "//iamf/cli:audio_frame_with_data", 64 "//iamf/cli:channel_label", 65 "//iamf/cli:demixing_module", 66 "//iamf/cli:global_timing_module", 67 "//iamf/cli:parameters_manager", 68 "//iamf/cli/codec:aac_encoder", 69 "//iamf/cli/codec:encoder_base", 70 "//iamf/cli/codec:flac_encoder", 71 "//iamf/cli/codec:lpcm_encoder", 72 "//iamf/cli/codec:opus_encoder", 73 "//iamf/cli/proto:audio_frame_cc_proto", 74 "//iamf/cli/proto:codec_config_cc_proto", 75 "//iamf/cli/proto:test_vector_metadata_cc_proto", 76 "//iamf/cli/proto_conversion:channel_label_utils", 77 "//iamf/common/utils:macros", 78 "//iamf/obu:audio_frame", 79 "//iamf/obu:codec_config", 80 "//iamf/obu:parameter_data", 81 "//iamf/obu:types", 82 "@com_google_absl//absl/base:core_headers", 83 "@com_google_absl//absl/container:flat_hash_map", 84 "@com_google_absl//absl/container:flat_hash_set", 85 "@com_google_absl//absl/log", 86 "@com_google_absl//absl/log:check", 87 "@com_google_absl//absl/memory", 88 "@com_google_absl//absl/status", 89 "@com_google_absl//absl/status:statusor", 90 "@com_google_absl//absl/strings", 91 "@com_google_absl//absl/synchronization", 92 "@com_google_absl//absl/types:span", 93 "@com_google_protobuf//:protobuf", 94 ], 95) 96 97cc_library( 98 name = "codec_config_generator", 99 srcs = ["codec_config_generator.cc"], 100 hdrs = ["codec_config_generator.h"], 101 deps = [ 102 ":audio_frame_generator", 103 "//iamf/cli/proto:codec_config_cc_proto", 104 "//iamf/cli/proto_conversion:lookup_tables", 105 "//iamf/cli/proto_conversion:proto_utils", 106 "//iamf/common/utils:macros", 107 "//iamf/common/utils:map_utils", 108 "//iamf/common/utils:numeric_utils", 109 "//iamf/obu:codec_config", 110 "//iamf/obu/decoder_config:aac_decoder_config", 111 "//iamf/obu/decoder_config:flac_decoder_config", 112 "//iamf/obu/decoder_config:lpcm_decoder_config", 113 "//iamf/obu/decoder_config:opus_decoder_config", 114 "@com_google_absl//absl/base:no_destructor", 115 "@com_google_absl//absl/container:flat_hash_map", 116 "@com_google_absl//absl/log", 117 "@com_google_absl//absl/status", 118 "@com_google_absl//absl/strings", 119 "@com_google_protobuf//:protobuf", 120 ], 121) 122 123cc_library( 124 name = "ia_sequence_header_generator", 125 srcs = ["ia_sequence_header_generator.cc"], 126 hdrs = ["ia_sequence_header_generator.h"], 127 deps = [ 128 "//iamf/cli/proto:ia_sequence_header_cc_proto", 129 "//iamf/cli/proto_conversion:lookup_tables", 130 "//iamf/cli/proto_conversion:proto_utils", 131 "//iamf/common/utils:macros", 132 "//iamf/common/utils:map_utils", 133 "//iamf/obu:ia_sequence_header", 134 "@com_google_absl//absl/log", 135 "@com_google_absl//absl/status", 136 ], 137) 138 139cc_library( 140 name = "mix_presentation_generator", 141 srcs = ["mix_presentation_generator.cc"], 142 hdrs = ["mix_presentation_generator.h"], 143 deps = [ 144 "//iamf/cli/proto:mix_presentation_cc_proto", 145 "//iamf/cli/proto:param_definitions_cc_proto", 146 "//iamf/cli/proto:parameter_data_cc_proto", 147 "//iamf/cli/proto:user_metadata_cc_proto", 148 "//iamf/cli/proto_conversion:lookup_tables", 149 "//iamf/cli/proto_conversion:proto_utils", 150 "//iamf/common/utils:macros", 151 "//iamf/common/utils:map_utils", 152 "//iamf/common/utils:numeric_utils", 153 "//iamf/obu:mix_presentation", 154 "//iamf/obu:param_definitions", 155 "//iamf/obu:types", 156 "@com_google_absl//absl/base:no_destructor", 157 "@com_google_absl//absl/log", 158 "@com_google_absl//absl/status", 159 "@com_google_absl//absl/strings", 160 "@com_google_absl//absl/types:span", 161 "@com_google_protobuf//:protobuf", 162 ], 163) 164 165cc_library( 166 name = "parameter_block_generator", 167 srcs = ["parameter_block_generator.cc"], 168 hdrs = ["parameter_block_generator.h"], 169 deps = [ 170 "//iamf/cli:audio_element_with_data", 171 "//iamf/cli:channel_label", 172 "//iamf/cli:cli_util", 173 "//iamf/cli:demixing_module", 174 "//iamf/cli:global_timing_module", 175 "//iamf/cli:parameter_block_with_data", 176 "//iamf/cli:recon_gain_generator", 177 "//iamf/cli/proto:parameter_block_cc_proto", 178 "//iamf/cli/proto:parameter_data_cc_proto", 179 "//iamf/cli/proto_conversion:proto_utils", 180 "//iamf/common/utils:macros", 181 "//iamf/common/utils:numeric_utils", 182 "//iamf/common/utils:validation_utils", 183 "//iamf/obu:param_definitions", 184 "//iamf/obu:parameter_block", 185 "//iamf/obu:parameter_data", 186 "//iamf/obu:types", 187 "@com_google_absl//absl/container:flat_hash_map", 188 "@com_google_absl//absl/container:flat_hash_set", 189 "@com_google_absl//absl/log", 190 "@com_google_absl//absl/log:check", 191 "@com_google_absl//absl/status", 192 "@com_google_absl//absl/strings", 193 ], 194) 195 196# keep-sorted end 197