Добавление аудио файла с диска на слайды - PullRequest
0 голосов
/ 15 апреля 2020

Google недавно выпустил возможность вставлять аудиофайлы с вашего диска в слайды с различными вариантами воспроизведения.

Я не могу найти никакой документации о том, как вставить файл через Google Scripts, но могу это сделать через доступные пункты меню. Я попытался использовать метод insertVideo, но получил ошибку

"Исключение: параметры (DriveApp.File) не соответствуют сигнатуре метода для SlidesApp.Slide.insertVideo."

Вот Основная функция, которую я пытаюсь заставить работать (отказ от ответственности NOOB здесь):

function uploadAudioToCurrentSlide(){
   var presentation = SlidesApp.getActivePresentation();
   var currentSlide = presentation.getSlides()[0];
   var audioFile = DriveApp.getFileById('idofaudiofileindrive');
   currentSlide.insertVideo(audioFile);
   }

Любая помощь наиболее ценится!

1 Ответ

1 голос
/ 16 апреля 2020
  • Вы хотите вставить аудиофайл из Google Drive в Google Slides с помощью Google Apps Script.

Если мое понимание верно, как насчет этого ответа? Пожалуйста, подумайте об этом как об одном из нескольких возможных ответов.

Проблема и обходной путь:

Я думаю, что причина вашей проблемы в том, что объект файла напрямую используется для метода insertVideo. Аргумент insertVideo - это URL-адрес и видеообъект, который не является файловым объектом. При этом возникает такая ошибка.

  • На текущем этапе, когда используется метод insertVideo, требуется, чтобы видеоконтент являлся общедоступным URL-адресом YouTube.
  • Кроме того, кажется, что аудиофайл не может быть вставлен напрямую.

К сожалению, похоже, что это текущая спецификация. В качестве обходного пути, как насчет следующего потока?

  1. Сначала преобразуйте аудиофайл в видеофайл, такой как MP4. В качестве теста это можно сделать на другом сайте. Но я не уверен насчет типа вашего аудио файла. Я прошу прощения за это.
  2. Вставьте преобразованный файл 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.

Ссылки:

Если я неправильно понял ваш вопрос, и это не то направление, которое вы ожидаете, я приношу свои извинения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...