Кодирование аудио, частота дискретизации и перекодировка в Google Cloud - PullRequest
0 голосов
/ 18 декабря 2018

Можно ли выполнить поиск метаданных аудио для файла, хранящегося в Google Cloud, без необходимости его загрузки?При создании службы Google Speech-to-Text API вы передаете ей gs://bucket/file.flac, и я знаю команды sox и ffmpeg bash и Python для поиска метаданных локально хранимых файлов, но я не могу понятьспособ поиска метаданных аудиофайла в файле Google Cloud Storage.

Кроме того, если у меня есть gs://bucket/audio.wav, могу ли я перекодировать его с помощью sox / py-sox и записать новый audio.flac непосредственно в gs://bucket/audio.flac?Или мне нужно скачать audio.wav, чтобы перекодировать его?

Любые мысли или указания приветствуются.

1 Ответ

0 голосов
/ 20 декабря 2018

Нет, невозможно получить доступ к нужным метаданным прямо в облачном хранилище Google.Использование команды gsutil ls -L gs://[bucket_name]/[file_name] запросит метаданные этого файла в корзине.Вы можете изменить эти метаданные , но не те, на которые вы ссылаетесь.Вам нужно будет загрузить файлы, перекодировать их и загрузить их снова.

Вы не можете выполнить эту операцию перекодирования в облачном хранилище, вам нужно будет загрузить файл и обработать его так, как вы хотели раньше.загрузить его снова в ваше ведро.Однако вот обходной путь, если он работает для вас:

Создание облачной функции, запускаемой при загрузке вашего файла.Затем извлеките файл, который вы только что загрузили, и выполните любую операцию с ним (например, перекодирование в .flac).После этого загрузите его снова (осторожно! Если вы дадите новому файлу то же имя и расширение, он перезапишет старый файл в корзине).

В вашей библиотеке Cloud Functions используют Python 3.7, который дляв настоящее время не поддерживается библиотека py-sox , поэтому вам нужно будет найти другую.

...