- Вы хотите вставить аудиофайл из Google Drive в Google Slides с помощью Google Apps Script.
Если мое понимание верно, как насчет этого ответа? Пожалуйста, подумайте об этом как об одном из нескольких возможных ответов.
Проблема и обходной путь:
Я думаю, что причина вашей проблемы в том, что объект файла напрямую используется для метода insertVideo
. Аргумент insertVideo
- это URL-адрес и видеообъект, который не является файловым объектом. При этом возникает такая ошибка.
- На текущем этапе, когда используется метод
insertVideo
, требуется, чтобы видеоконтент являлся общедоступным URL-адресом YouTube. - Кроме того, кажется, что аудиофайл не может быть вставлен напрямую.
К сожалению, похоже, что это текущая спецификация. В качестве обходного пути, как насчет следующего потока?
- Сначала преобразуйте аудиофайл в видеофайл, такой как MP4. В качестве теста это можно сделать на другом сайте. Но я не уверен насчет типа вашего аудио файла. Я прошу прощения за это.
- Вставьте преобразованный файл MP4 на Google Диск с помощью Slides API.
Когда используется Slides API, вы можете вставить видеофайл с Google Drive в Google Slides. В этом примере сценария используется «CreateVideoRequest» метода batchUpdate API-интерфейса Slides.
Пример сценария:
Перед запуском сценария включите API-интерфейс Slides в службах Advanced Google. .
function myFunction() {
var fileId = "###"; // Please set the file ID of the converted video file on Google Drive.
var presentation = SlidesApp.getActivePresentation();
var currentSlide = presentation.getSlides()[0];
var resource = {requests: [{createVideo: {source: "DRIVE", id: fileId, elementProperties: {pageObjectId: currentSlide.getObjectId()}}}]};
Slides.Presentations.batchUpdate(resource, presentation.getId());
}
Примечание:
- Когда вы можете загрузить аудиофайл на YouTube и опубликовать его для общего доступа, вы можете использовать свой сценарий, используя URL-адрес YouTube.
Ссылки:
Если я неправильно понял ваш вопрос, и это не то направление, которое вы ожидаете, я приношу свои извинения.