blob: 8824237fd2b7a6025c02824a1265811f179023f0 [file] [log] [blame]
# Files to interface between IAMF Tools and codec libraries when encoding and decoding substreams.
package(default_visibility = ["//iamf/cli:__subpackages__"])
# keep-sorted start block=yes prefix_order=cc_library newline_separated=yes
cc_library(
name = "aac_decoder",
srcs = ["aac_decoder.cc"],
hdrs = ["aac_decoder.h"],
deps = [
":aac_utils",
":decoder_base",
"//iamf/common:write_bit_buffer",
"//iamf/common/utils:macros",
"//iamf/common/utils:sample_processing_utils",
"//iamf/obu:codec_config",
"//iamf/obu/decoder_config:aac_decoder_config",
"@com_google_absl//absl/functional:any_invocable",
"@com_google_absl//absl/log",
"@com_google_absl//absl/status",
"@com_google_absl//absl/strings",
"@com_google_absl//absl/strings:string_view",
"@com_google_absl//absl/types:span",
"@fdk_aac//:aac_decoder_lib",
"@fdk_aac//:fdk_sys_lib",
],
)
cc_library(
name = "aac_encoder",
srcs = ["aac_encoder.cc"],
hdrs = ["aac_encoder.h"],
deps = [
":aac_utils",
":encoder_base",
"//iamf/cli:audio_frame_with_data",
"//iamf/cli/proto:codec_config_cc_proto",
"//iamf/common/utils:macros",
"//iamf/common/utils:numeric_utils",
"//iamf/common/utils:sample_processing_utils",
"//iamf/common/utils:validation_utils",
"//iamf/obu:codec_config",
"//iamf/obu/decoder_config:aac_decoder_config",
"@com_google_absl//absl/log",
"@com_google_absl//absl/status",
"@com_google_absl//absl/strings",
"@com_google_absl//absl/synchronization",
"@fdk_aac//:aac_encoder_lib",
"@fdk_aac//:fdk_sys_lib",
],
)
cc_library(
name = "aac_utils",
srcs = [],
hdrs = ["aac_utils.h"],
deps = ["@fdk_aac//:fdk_sys_lib"],
)
cc_library(
name = "decoder_base",
hdrs = ["decoder_base.h"],
deps = ["@com_google_absl//absl/status"],
)
cc_library(
name = "encoder_base",
srcs = ["encoder_base.cc"],
hdrs = ["encoder_base.h"],
deps = [
"//iamf/cli:audio_frame_with_data",
"//iamf/common/utils:macros",
"//iamf/obu:codec_config",
"@com_google_absl//absl/base:core_headers",
"@com_google_absl//absl/log",
"@com_google_absl//absl/status",
"@com_google_absl//absl/strings",
"@com_google_absl//absl/synchronization",
],
)
cc_library(
name = "flac_decoder",
srcs = ["flac_decoder.cc"],
hdrs = ["flac_decoder.h"],
deps = [
":decoder_base",
"@com_google_absl//absl/log",
"@com_google_absl//absl/status",
"@com_google_absl//absl/strings",
"@flac//:src",
],
)
cc_library(
name = "flac_decoder_stream_callbacks",
srcs = ["flac_decoder_stream_callbacks.cc"],
hdrs = ["flac_decoder_stream_callbacks.h"],
deps = [
":flac_decoder",
"@com_google_absl//absl/log",
"@flac//:src",
],
)
cc_library(
name = "flac_encoder",
srcs = ["flac_encoder.cc"],
hdrs = ["flac_encoder.h"],
deps = [
":encoder_base",
"//iamf/cli:audio_frame_with_data",
"//iamf/cli/proto:codec_config_cc_proto",
"//iamf/common/utils:macros",
"//iamf/common/utils:sample_processing_utils",
"//iamf/obu:codec_config",
"//iamf/obu/decoder_config:flac_decoder_config",
"@com_google_absl//absl/base:core_headers",
"@com_google_absl//absl/container:btree",
"@com_google_absl//absl/functional:any_invocable",
"@com_google_absl//absl/log",
"@com_google_absl//absl/status",
"@com_google_absl//absl/strings",
"@com_google_absl//absl/synchronization",
"@com_google_absl//absl/types:span",
"@flac//:src",
],
)
cc_library(
name = "lpcm_decoder",
srcs = ["lpcm_decoder.cc"],
hdrs = ["lpcm_decoder.h"],
deps = [
":decoder_base",
"//iamf/common/utils:macros",
"//iamf/common/utils:numeric_utils",
"//iamf/obu:codec_config",
"//iamf/obu/decoder_config:lpcm_decoder_config",
"@com_google_absl//absl/status",
"@com_google_absl//absl/strings",
"@com_google_absl//absl/types:span",
],
)
cc_library(
name = "lpcm_encoder",
srcs = ["lpcm_encoder.cc"],
hdrs = ["lpcm_encoder.h"],
deps = [
":encoder_base",
"//iamf/cli:audio_frame_with_data",
"//iamf/cli:cli_util",
"//iamf/common/utils:macros",
"//iamf/obu:codec_config",
"//iamf/obu/decoder_config:lpcm_decoder_config",
"@com_google_absl//absl/log",
"@com_google_absl//absl/status",
"@com_google_absl//absl/strings",
"@com_google_absl//absl/synchronization",
],
)
cc_library(
name = "opus_decoder",
srcs = ["opus_decoder.cc"],
hdrs = ["opus_decoder.h"],
deps = [
":decoder_base",
":opus_utils",
"//iamf/common/utils:macros",
"//iamf/common/utils:numeric_utils",
"//iamf/common/utils:sample_processing_utils",
"//iamf/obu:codec_config",
"//iamf/obu/decoder_config:opus_decoder_config",
"@com_google_absl//absl/functional:any_invocable",
"@com_google_absl//absl/log",
"@com_google_absl//absl/status",
"@com_google_absl//absl/strings",
"@com_google_absl//absl/types:span",
"@libopus",
],
)
cc_library(
name = "opus_encoder",
srcs = ["opus_encoder.cc"],
hdrs = ["opus_encoder.h"],
deps = [
":encoder_base",
":opus_utils",
"//iamf/cli:audio_frame_with_data",
"//iamf/cli/proto:codec_config_cc_proto",
"//iamf/common/utils:macros",
"//iamf/common/utils:numeric_utils",
"//iamf/common/utils:sample_processing_utils",
"//iamf/common/utils:validation_utils",
"//iamf/obu:codec_config",
"//iamf/obu/decoder_config:opus_decoder_config",
"@com_google_absl//absl/functional:any_invocable",
"@com_google_absl//absl/log",
"@com_google_absl//absl/status",
"@com_google_absl//absl/strings",
"@com_google_absl//absl/synchronization",
"@com_google_absl//absl/types:span",
"@libopus",
],
)
cc_library(
name = "opus_utils",
srcs = ["opus_utils.cc"],
hdrs = ["opus_utils.h"],
deps = [
"@com_google_absl//absl/status",
"@com_google_absl//absl/strings",
"@com_google_absl//absl/strings:string_view",
"@libopus",
],
)
# keep-sorted end