Как да предавате поточно музика през няколко телефона през bluetooth

Опитвам се да свържа няколко телефона с Android, за да предавам поточно музика.

Настройката е такава,

Телефон A е свързан с телефон B.

Телефон B също е свързан с телефон C.

A <--> B <--> C

Искам да предавам поточно музика от A през B до C и да я чувам само на C.

Разгледах A2DP (тук), но изглежда само поддържа едно устройство наведнъж.

Има ли начин за поточно предаване с помощта на A2DP към B и след това да го изпратите до C?

Опитвам се да намеря решение, което не включва запазване на файла от A на B и след това стрийминг чрез A2DP. Файлът може да е голям и забавянето преди възпроизвеждане трябва да е кратко.

Има ли начини за поточно предаване на файла и след това за изпращане на този поток от B до C чрез A2DP?

Има ли други опции за стрийминг през Bluetooth? или други класове за поточно предаване, които мога да опитам и използвам, след като данните са в B?

Благодаря


person Dan    schedule 27.10.2015    source източник
comment
Освен използването на серийни връзки през bluetooth и писането на ваш собствен протокол за стрийминг, бих бил много изненадан, ако това беше възможно.   -  person Gerald Schneider    schedule 27.10.2015
comment
Започнах да правя това, но наистина се надявах да използвам нещо, което съществува.   -  person Dan    schedule 27.10.2015


Отговори (1)


Намерих класа AudioTrack и мисля, че това решава проблема ми.

Мога да изпратя музикалния файл като byte[] с помощта на BluetoothSocket и BluetoothServerSocket класове на толкова телефони, колкото ми трябват.

След като стигна до крайния телефон, създавам обект AudioTrack и записвам байтовете в него и възпроизвеждам музиката като поток.

Единственото ограничение е, че файлът трябва да е .wav файл и да има конкретна битова резолюция, честота на дискретизация и настройка на канал. След като реших кой искам да поддържам, просто конвертирах файловете, които исках да използвам с това уебсайтът и стриймингът проработиха.

Забележка: Това решение е много шумно. Търся как мога да поправя това.

person Dan    schedule 28.10.2015