Я пытаюсь загрузить видео в формате mp4 на YouTube и использую код со страницы разработчика. Я очень старался и в конце концов заглянул в исходный код. Теперь я, наконец, нахожусь в точке, где я вижу видео в моей студии-создателе. Проблема в том, что это черная миниатюра, она просто говорит об обработке и навсегда останется в этом состоянии (не завершила неделю спустя). Мои видео длиной около 10 минут, всего 13 МБ или около того, и я подозреваю, что код, который я получил со страницы Google, устарел и не обновлялся, что меня очень расстраивает.
Я пробовал разные фрагменты кода и редактировал параметры. Я получил свой код от: https://developers.google.com/youtube/v3/docs/videos/insert?apix=true
Это мой код на данный момент:
$client = new Google_Client();
$client->setApplicationName('API code samples');
$client->setScopes([
'https://www.googleapis.com/auth/youtube.upload'
]);
$client->setAuthConfig('assets/client_id.json');
$client->setAccessType('offline');
// Request authorization from the user.
$authUrl = $client->createAuthUrl();
printf("Open this link in your browser:\n%s\n", $authUrl);
print('Enter verification code: ');
$authCode = trim(fgets(STDIN));
// Exchange authorization code for an access token.
$accessToken = $client->fetchAccessTokenWithAuthCode($authCode);
$client->setAccessToken($accessToken);
// Define service object for making API requests.
$service = new Google_Service_YouTube($client);
// Define the $video object, which will be uploaded as the request body.
$video = new Google_Service_YouTube_Video();
// Add 'localizations' object to the $video object.
$localizations = new Google_Service_YouTube_VideoLocalization();
$video->setLocalizations($localizations);
$queryParams = [
'autoLevels' => true,
'notifySubscribers' => true,
'stabilize' => false,
'data' => file_get_contents("./content/$id/_$thread_name.mp4"),
'mimeType' => 'video/mp4',
'uploadType' => 'multipart'
];
$response = $service->videos->insert(
'snippet',
$video,
$queryParams
);
echo "https://youtu.be/".$response->id;
Я ожидаю, что мой код запустится, загрузите видео и потом дайте мне ссылку. В данный момент я не получаю никаких ошибок и получаю ссылку. Ссылка просто не показывает рабочее видео.
Пример видео, которое я загрузил (все они выглядят одинаково): https://youtu.be/iOB_i-ZD5io