Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0c3df631 authored by Jakub Tyszkowski's avatar Jakub Tyszkowski
Browse files

LeAudio: Rename codec configuration struct

Since this LTV types are defined as egeneral types
which are not LC3 specific, this struct is also not
LC3 specific.

Bug: 295972694
Test: atest --host bluetooth_le_audio_test bluetooth_le_audio_client_test bluetooth_test_broadcaster bluetooth_test_broadcaster_state_machine bluetooth_le_audio_codec_manager_test
Change-Id: I51553313246ee04ea7582555ad1bf6ea8bf4cc92
parent 7122b183
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -45,7 +45,7 @@ using ::bluetooth::audio::le_audio::LeAudioClientInterface;
using ::bluetooth::audio::le_audio::StartRequestState;
using ::bluetooth::audio::le_audio::StreamCallbacks;
using ::le_audio::set_configurations::SetConfiguration;
using ::le_audio::types::LeAudioLc3Config;
using ::le_audio::types::LeAudioCoreCodecConfig;

static ChannelMode le_audio_channel_mode2audio_hal(uint8_t channels_count) {
  switch (channels_count) {
@@ -502,7 +502,7 @@ bool hal_ucast_capability_to_stack_format(

  stack_capability = {
      .id = ::le_audio::set_configurations::LeAudioCodecIdLc3,
      .config = LeAudioLc3Config(
      .config = LeAudioCoreCodecConfig(
          {.sampling_frequency = sampling_freq_map[sample_rate_hz],
           .frame_duration = frame_duration_map[frame_duration_us],
           .audio_channel_allocation = audio_location_map[supported_channel],
@@ -556,7 +556,7 @@ bool hal_bcast_capability_to_stack_format(

  stack_capability = {
      .id = ::le_audio::set_configurations::LeAudioCodecIdLc3,
      .config = LeAudioLc3Config(
      .config = LeAudioCoreCodecConfig(
          {.sampling_frequency = sampling_freq_map[sample_rate_hz],
           .frame_duration = frame_duration_map[frame_duration_us],
           .audio_channel_allocation = audio_location_map[supported_channel],
+10 −10
Original line number Diff line number Diff line
@@ -186,15 +186,15 @@ struct codec_manager_impl {
        continue;
      }
      auto& adsp_config = adsp_audio_set_conf.confs[0];
      const types::LeAudioLc3Config lc3_config =
          std::get<types::LeAudioLc3Config>(adsp_config.codec.config);
      const types::LeAudioCoreCodecConfig core_config =
          std::get<types::LeAudioCoreCodecConfig>(adsp_config.codec.config);
      le_audio::broadcast_offload_config broadcast_config;
      broadcast_config.stream_map.resize(lc3_config.channel_count);
      broadcast_config.stream_map.resize(core_config.channel_count);
      broadcast_config.bits_per_sample =
          LeAudioCodecConfiguration::kBitsPerSample16;
      broadcast_config.sampling_rate = lc3_config.GetSamplingFrequencyHz();
      broadcast_config.frame_duration = lc3_config.GetFrameDurationUs();
      broadcast_config.octets_per_frame = *(lc3_config.octets_per_codec_frame);
      broadcast_config.sampling_rate = core_config.GetSamplingFrequencyHz();
      broadcast_config.frame_duration = core_config.GetFrameDurationUs();
      broadcast_config.octets_per_frame = *(core_config.octets_per_codec_frame);
      broadcast_config.blocks_per_sdu = 1;
      // Per LC3 spec, bitrate = (8000 * nbytes) / (frame duration in
      // milliseconds)
@@ -396,10 +396,10 @@ struct codec_manager_impl {
      return false;
    }

    const types::LeAudioLc3Config adsp_lc3_config =
        std::get<types::LeAudioLc3Config>(adsp_config.config);
    const types::LeAudioLc3Config target_lc3_config =
        std::get<types::LeAudioLc3Config>(target_config.config);
    const types::LeAudioCoreCodecConfig adsp_lc3_config =
        std::get<types::LeAudioCoreCodecConfig>(adsp_config.config);
    const types::LeAudioCoreCodecConfig target_lc3_config =
        std::get<types::LeAudioCoreCodecConfig>(target_config.config);

    if (adsp_lc3_config.sampling_frequency !=
            target_lc3_config.sampling_frequency ||
+3 −2
Original line number Diff line number Diff line
@@ -37,7 +37,7 @@ using types::CisState;
using types::CisType;
using types::DataPathState;
using types::LeAudioContextType;
using types::LeAudioLc3Config;
using types::LeAudioCoreCodecConfig;

/* LeAudioDeviceGroup Class methods implementation */
void LeAudioDeviceGroup::AddNode(
@@ -1293,7 +1293,8 @@ bool LeAudioDeviceGroup::IsAudioSetConfigurationSupported(
      /* TODO Make it no Lc3 specific */
      if (!CheckIfStrategySupported(
              strategy, audio_locations,
              std::get<LeAudioLc3Config>(ent.codec.config).GetChannelCount(),
              std::get<LeAudioCoreCodecConfig>(ent.codec.config)
                  .GetChannelCount(),
              device->GetLc3SupportedChannelCount(ent.direction))) {
        LOG_DEBUG(" insufficient device audio allocation: %lu",
                  audio_locations.to_ulong());
+2 −2
Original line number Diff line number Diff line
@@ -35,7 +35,7 @@ using le_audio::types::BidirectionalPair;
using le_audio::types::CisState;
using le_audio::types::DataPathState;
using le_audio::types::LeAudioContextType;
using le_audio::types::LeAudioLc3Config;
using le_audio::types::LeAudioCoreCodecConfig;

namespace le_audio {
std::ostream& operator<<(std::ostream& os, const DeviceConnectState& state) {
@@ -270,7 +270,7 @@ bool LeAudioDevice::ConfigureAses(
      ase->target_latency = ent.qos.target_latency;
      ase->codec_id = ent.codec.id;
      /* TODO: find better way to not use LC3 explicitly */
      ase->codec_config = std::get<LeAudioLc3Config>(ent.codec.config);
      ase->codec_config = std::get<LeAudioCoreCodecConfig>(ent.codec.config);

      /*Let's choose audio channel allocation if not set */
      ase->codec_config.audio_channel_allocation =
+2 −1
Original line number Diff line number Diff line
@@ -400,7 +400,8 @@ class PublishedAudioCapabilitiesBuilder {
           uint8_t audio_channel_counts) {
    if (setting.id != LeAudioCodecIdLc3) return;

    const LeAudioLc3Config config = std::get<LeAudioLc3Config>(setting.config);
    const LeAudioCoreCodecConfig config =
        std::get<LeAudioCoreCodecConfig>(setting.config);

    Add(setting.id, *config.sampling_frequency, *config.frame_duration,
        audio_channel_counts, *config.octets_per_codec_frame);
Loading