Реализация: субтитры

В следующих примерах показано, как использовать API данных YouTube (v3) для выполнения функций, связанных с субтитрами.

Получить список дорожек субтитров для видео

Чтобы получить список дорожек субтитров, доступных для определенного видео, вызовите метод captions.list . Задайте для параметра videoId значение идентификатора видео YouTube, который однозначно идентифицирует видео, для которого вы получаете субтитры. Ваш запрос должен быть авторизован с использованием OAuth 2.0.

Приведенный ниже запрос извлекает список подписей к видео на канале Google Stories на YouTube:

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.captions.list?
part=snippet
&videoId=PRU2ShMzQRg

Примеры кода см. в документации по методу captions.list .

Создать дорожку с субтитрами

Этот запрос нельзя протестировать с помощью обозревателя API, так как обозреватель API не поддерживает возможность загрузки файлов, что является требованием для этого метода.

Вы можете использовать метод API captions.insert , чтобы загрузить новую дорожку субтитров для видео. При загрузке трека необходимо указать значение для следующих свойств ресурса caption :

  • snippet.videoId — идентифицирует видео, к которому добавляется дорожка субтитров.
  • snippet.language — язык субтитров.
  • snippet.name — название дорожки субтитров.

При загрузке дорожки субтитров доступны следующие дополнительные параметры:

  • Если вы установите для параметра sync значение true , YouTube проигнорирует любые временные коды, содержащиеся в загруженном файле субтитров, и создаст новые временные коды для субтитров.

    Вы должны установить для параметра sync значение true , если вы загружаете стенограмму, в которой нет временных кодов, или если вы подозреваете, что временные коды в вашем файле неверны, и хотите, чтобы YouTube попытался их исправить.

  • Если вы установите для свойства snippet.isDraft ресурса caption значение true , дорожка не будет видна публично.

Примеры кода см. в документации по методу captions.insert .

Скачать дорожку с субтитрами

Этот запрос нельзя протестировать с помощью обозревателя API, так как обозреватель API не поддерживает возможность загрузки файлов.

Чтобы загрузить определенную дорожку субтитров, вызовите метод captions.download . Задайте для параметра id идентификатор дорожки субтитров YouTube, который однозначно идентифицирует загружаемую дорожку субтитров. Ваш запрос должен быть авторизован с использованием OAuth 2.0.

API v3 поддерживает следующие параметры:

  • Чтобы указать, что дорожка субтитров должна быть возвращена в определенном формате, установите значение параметра tfmt , чтобы определить нужный формат. В определении параметра перечислены поддерживаемые значения.

  • Чтобы получить перевод дорожки субтитров, задайте для параметра tlang двухбуквенный код языка ISO 639-1 , определяющий нужный язык субтитров. Перевод создается с помощью машинного перевода, такого как Google Translate.

Примеры кода см. в документации по методу captions.download .

Обновить дорожку субтитров

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

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

Приведенный ниже запрос извлекает список подписей к видео на канале Google Stories на YouTube:

Запрос обновляет статус черновика дорожки субтитров на true , что означает, что дорожка не будет видна публично. Чтобы выполнить запрос в обозревателе API, необходимо установить значение свойства id , чтобы идентифицировать дорожку субтитров.

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.captions.update?
part=snippet

Примеры кода см. в документации по методу captions.update .

Удалить дорожку субтитров

В этом примере показано, как удалить дорожку субтитров. В примере есть следующие шаги:

  • Шаг 1. Получите идентификатор дорожки с субтитрами.

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

  • Шаг 2: Удалить трек

    Вызовите метод captions.delete , чтобы удалить конкретное видео. В запросе параметр id указывает идентификатор дорожки субтитров удаляемой дорожки. Запрос должен быть авторизован с использованием OAuth 2.0. Если вы тестируете этот запрос в обозревателе API, вам нужно будет заменить значение параметра id действительным идентификатором дорожки субтитров.

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.captions.delete?
    id=CAPTION_TRACK_ID