How to initialize Linux as A2DP sink for a Bluetooth device?

174 Views Asked by At

Is there a Linux equivalent to Windows AudioPlaybackConnection I need to set the PC as an A2DP sink? In Windows using the following code would work

#include <winrt/Windows.Foundation.Collections.h>
#include <winrt/Windows.Media.Audio.h>
#include <iostream>

#pragma comment(lib, "windowsapp")
#pragma comment(lib, "ole32")

using namespace winrt::Windows::Media::Audio;

int main() {
  try {
    const auto conn = AudioPlaybackConnection::TryCreateFromId(L"DEVICE ID");
    conn.Start();
    const auto result = conn.Open();

    if (result.Status() != AudioPlaybackConnectionOpenResultStatus::Success) {
      std::cout << "Failed !" << std::endl;
      return -1;
    } else {
      std::cout << "Success" << std::endl;
      std::cin.get();
      conn.Close();
    }
  }

  catch (const winrt::hresult_error &e) {
    std::cout << e.message().c_str() << std::endl;
  }

  return 0;
}

How can I accomplish this in Linux, is it possible? Thanks

0

There are 0 best solutions below