aboutsummaryrefslogtreecommitdiffstats
path: root/utils/cec-compliance/cec-compliance.cpp
diff options
context:
space:
mode:
authorHans Verkuil <hverkuil-cisco@xs4all.nl>2021-06-04 08:57:58 +0200
committerHans Verkuil <hverkuil-cisco@xs4all.nl>2021-06-04 09:10:14 +0200
commit1d4b23f1db35077a12da43c3a93d74645281625c (patch)
treeae42fbe9f5f83db38c733e4983ec08f6b1451fe8 /utils/cec-compliance/cec-compliance.cpp
parentc379af4ae1b99ebbe40bcefc5447c2bf9ad15a06 (diff)
cec-compliance: move audio helper functions to cec-test-audio.cpp
Several audio helper functions that were in cec-compliance.cpp really belong to cec-test-audio.cpp. Move them. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Diffstat (limited to 'utils/cec-compliance/cec-compliance.cpp')
-rw-r--r--utils/cec-compliance/cec-compliance.cpp196
1 files changed, 0 insertions, 196 deletions
diff --git a/utils/cec-compliance/cec-compliance.cpp b/utils/cec-compliance/cec-compliance.cpp
index 84038d09..8321d933 100644
--- a/utils/cec-compliance/cec-compliance.cpp
+++ b/utils/cec-compliance/cec-compliance.cpp
@@ -296,202 +296,6 @@ const char *power_status2s(__u8 power_status)
}
}
-static std::string audio_format_code2s(__u8 format_code)
-{
- switch (format_code) {
- case 0:
- return "Reserved";
- case SAD_FMT_CODE_LPCM:
- return "L-PCM";
- case SAD_FMT_CODE_AC3:
- return "AC-3";
- case SAD_FMT_CODE_MPEG1:
- return "MPEG-1";
- case SAD_FMT_CODE_MP3:
- return "MP3";
- case SAD_FMT_CODE_MPEG2:
- return "MPEG2";
- case SAD_FMT_CODE_AAC_LC:
- return "AAC LC";
- case SAD_FMT_CODE_DTS:
- return "DTS";
- case SAD_FMT_CODE_ATRAC:
- return "ATRAC";
- case SAD_FMT_CODE_ONE_BIT_AUDIO:
- return "One Bit Audio";
- case SAD_FMT_CODE_ENHANCED_AC3:
- return "Enhanced AC-3";
- case SAD_FMT_CODE_DTS_HD:
- return "DTS-HD";
- case SAD_FMT_CODE_MAT:
- return "MAT";
- case SAD_FMT_CODE_DST:
- return "DST";
- case SAD_FMT_CODE_WMA_PRO:
- return "WMA Pro";
- case SAD_FMT_CODE_EXTENDED:
- return "Extended";
- default:
- return "Illegal";
- }
-}
-
-static std::string extension_type_code2s(__u8 type_code)
-{
- switch (type_code) {
- case 0:
- case 1:
- case 2:
- case 3:
- return "Not in use";
- case SAD_EXT_TYPE_MPEG4_HE_AAC:
- return "MPEG-4 HE AAC";
- case SAD_EXT_TYPE_MPEG4_HE_AACv2:
- return "MPEG-4 HE AAC v2";
- case SAD_EXT_TYPE_MPEG4_AAC_LC:
- return "MPEG-4 AAC LC";
- case SAD_EXT_TYPE_DRA:
- return "DRA";
- case SAD_EXT_TYPE_MPEG4_HE_AAC_SURROUND:
- return "MPEG-4 HE AAC + MPEG Surround";
- case SAD_EXT_TYPE_MPEG4_AAC_LC_SURROUND:
- return "MPEG-4 AAC LC + MPEG Surround";
- case SAD_EXT_TYPE_MPEG_H_3D_AUDIO:
- return "MPEG-H 3D Audio";
- case SAD_EXT_TYPE_AC_4:
- return "AC-4";
- case SAD_EXT_TYPE_LPCM_3D_AUDIO:
- return "L-PCM 3D Audio";
- default:
- return "Reserved";
- }
-}
-
-std::string short_audio_desc2s(const struct short_audio_desc &sad)
-{
- std::stringstream oss;
-
- if (sad.format_code != SAD_FMT_CODE_EXTENDED)
- oss << audio_format_code2s(sad.format_code);
- else
- oss << extension_type_code2s(sad.extension_type_code);
- oss << ", " << static_cast<int>(sad.num_channels) << " channels";
-
- oss << ", sampling rates (kHz): ";
- if (sad.sample_freq_mask & SAD_SAMPLE_FREQ_MASK_32)
- oss << "32,";
- if (sad.sample_freq_mask & SAD_SAMPLE_FREQ_MASK_44_1)
- oss << "44.1,";
- if (sad.sample_freq_mask & SAD_SAMPLE_FREQ_MASK_48)
- oss << "48,";
- if (sad.sample_freq_mask & SAD_SAMPLE_FREQ_MASK_88_2)
- oss << "88.2,";
- if (sad.sample_freq_mask & SAD_SAMPLE_FREQ_MASK_96)
- oss << "96,";
- if (sad.sample_freq_mask & SAD_SAMPLE_FREQ_MASK_176_4)
- oss << "176.4,";
- if (sad.sample_freq_mask & SAD_SAMPLE_FREQ_MASK_192)
- oss << "192,";
- if (sad.sample_freq_mask & (1 << 7))
- oss << "Reserved,";
- oss << "\b \b";
-
- if (sad.format_code == SAD_FMT_CODE_LPCM ||
- (sad.format_code == SAD_FMT_CODE_EXTENDED &&
- sad.extension_type_code == SAD_EXT_TYPE_LPCM_3D_AUDIO)) {
- oss << ", bit depth: ";
- if (sad.bit_depth_mask & SAD_BIT_DEPTH_MASK_16)
- oss << "16,";
- if (sad.bit_depth_mask & SAD_BIT_DEPTH_MASK_20)
- oss << "20,";
- if (sad.bit_depth_mask & SAD_BIT_DEPTH_MASK_24)
- oss << "24,";
- oss << "\b \b";
- } else if (sad.format_code >= 2 && sad.format_code <= 8)
- oss << " max bitrate (kbit/s): " << 8 * sad.max_bitrate;
-
- if (sad.format_code == SAD_FMT_CODE_EXTENDED) {
- switch (sad.extension_type_code) {
- case 4:
- case 5:
- case 6:
- case 8:
- case 10:
- oss << ", frame length: ";
- if (sad.frame_length_mask & SAD_FRAME_LENGTH_MASK_960)
- oss << "960,";
- if (sad.frame_length_mask & SAD_FRAME_LENGTH_MASK_1024)
- oss << "1024,";
- oss << "\b";
- break;
- }
-
- if (sad.extension_type_code == 8 || sad.extension_type_code == 10)
- oss << ", MPS";
- }
-
- return oss.str();
-}
-
-void sad_decode(struct short_audio_desc *sad, __u32 descriptor)
-{
- __u8 b1 = (descriptor >> 16) & 0xff;
- __u8 b2 = (descriptor >> 8) & 0xff;
- __u8 b3 = descriptor & 0xff;
-
- sad->num_channels = (b1 & 0x07) + 1;
- sad->format_code = (b1 >> 3) & 0x0f;
- sad->sample_freq_mask = b2;
-
- switch (sad->format_code) {
- case SAD_FMT_CODE_LPCM:
- sad->bit_depth_mask = b3 & 0x07;
- break;
- case 2:
- case 3:
- case 4:
- case 5:
- case 6:
- case 7:
- case 8:
- sad->max_bitrate = b3;
- break;
- case 9:
- case 10:
- case 11:
- case 12:
- case 13:
- sad->format_dependent = b3;
- break;
- case SAD_FMT_CODE_WMA_PRO:
- sad->wma_profile = b3 & 0x03;
- break;
- case SAD_FMT_CODE_EXTENDED:
- sad->extension_type_code = (b3 >> 3) & 0x1f;
-
- switch (sad->extension_type_code) {
- case 4:
- case 5:
- case 6:
- sad->frame_length_mask = (b3 >> 1) & 0x03;
- break;
- case 8:
- case 10:
- sad->frame_length_mask = (b3 >> 1) & 0x03;
- sad->mps = b3 & 1;
- break;
- case SAD_EXT_TYPE_MPEG_H_3D_AUDIO:
- case SAD_EXT_TYPE_AC_4:
- sad->format_dependent = b3 & 0x07;
- fallthrough;
- case SAD_EXT_TYPE_LPCM_3D_AUDIO:
- sad->bit_depth_mask = b3 & 0x07;
- break;
- }
- break;
- }
-}
-
const char *bcast_system2s(__u8 bcast_system)
{
switch (bcast_system) {

Privacy Policy