Потоковое воспроизведение MP3 с Google Drive с помощью Node - PullRequest
0 голосов
/ 23 марта 2020

Я пытаюсь создать облачный mp3-плеер, который я мог бы использовать для прослушивания своей резервной коллекции диджеев, хранящейся на Google Drive. Причина, по которой я хочу создать свой собственный стример, состоит в том, чтобы иметь контроль над временем начала и окончания воспроизведения, чтобы я мог прослушивать трек в течение заданной продолжительности и затем переходить к следующему.

План атаки: Когда пользователь щелкает имя дорожки в пользовательском интерфейсе, он вызывает Nodejs backend, который вызывает Google Drive API и начинает загрузку файла. На каждом блоке данных передайте его во внешний интерфейс. Я настроил среду, в которой бэкэнд и интерфейс взаимодействуют через websocket для передачи чанков.

Я думал об использовании .m3u8, но я не знаю, могут ли файлы .m3u8 создаваться из чанков данных? Обычно в примерах люди преобразуют полный файл .mp3 в .m3u8, а не в чанки.

В качестве альтернативы я попытался вытолкнуть sh каждый чанк данных в FE, где я затем декодировал чанк в аудио, используя API веб-аудио. В этом методе звук немного хрустит и скачет - т.е. воспроизведение не плавное.

Мне не обязательно использовать ни .mp3, ни Google Drive. Причина, по которой я решил создать свой собственный стерамер

Не могли бы вы дать какие-нибудь советы о том, как добиться такой функции?

...