Преобразование аудиофайла при загрузке в облачное хранилище Google - PullRequest
0 голосов
/ 29 мая 2019

У меня есть приложение, в котором пользователи записывают аудио, а затем «отправляют» друг другу. Я пишу «отправить», потому что на самом деле файл хранится на сервере и просто предоставляется получателю, когда он хочет прослушать.

Моя проблема в том, что мне нужно переформатировать запись (в настоящее время .caf) в .mp3, чтобы они были меньше по размеру, и поэтому я мог воспроизводить их с помощью аудиоплеера, который я использую.

Мой вопрос: Можно ли при загрузке пользователя запустить облачную функцию, которая бы взяла файл .caf, преобразовала его и вместо него поместила файл .mp3? В документах не может найти нигде, где указано, будет ли новый файл иметь такой же или другой URL.

1 Ответ

1 голос
/ 29 мая 2019

Да, это было бы возможно, если бы существовала библиотека Node.js, которая выполняет преобразование из .caf в .mp3. Желательно, чтобы вы работали с библиотекой, которая обрабатывает асинхронные задачи с помощью обещаний.

Поскольку вы собираетесь написать другой файл (с другим расширением), URL для загрузки будет другим. Но это не должно быть проблемой для управления этой ситуацией: вы можете сгенерировать новый URL-адрес загрузки для mp3-файла и, например, сохранить его в базе данных (или сгенерировать этот URL-адрес на лету, как показано здесь в док).

В коллекции официальных примеров облачных функций вы найдете некоторые облачные функции, которые манипулируют файлами (и, в частности, для этого используют каталог tmp). Например, есть generate-thumbnail и умеренные изображения .

Однако , вы должны принять во внимание, что максимальное время выполнения функции облака составляет 9 минут. Поэтому, если для обработки некоторых ваших аудиофайлов потребуется более 9 минут, это будет проблемой.

...