2011-08-19 8 views
5

Sto cercando di caricare un video su YouTube utilizzando l'API di PHP datiOttenere l'URL del video dopo il caricamento di un video su YouTube utilizzando dati API - php

$yt = new Zend_Gdata_YouTube($httpClient); 
$myVideoEntry = new Zend_Gdata_YouTube_VideoEntry(); 

$filesource = $yt->newMediaFileSource('mytestmovie.mov'); 
$filesource->setContentType('video/quicktime'); 
$filesource->setSlug('mytestmovie.mov'); 

$myVideoEntry->setMediaSource($filesource); 

$myVideoEntry->setVideoTitle('My Test Movie'); 
$myVideoEntry->setVideoDescription('My Test Movie'); 
// Note that category must be a valid YouTube category ! 
$myVideoEntry->setVideoCategory('Comedy'); 

// Set keywords, note that this must be a comma separated string 
// and that each keyword cannot contain whitespace 
$myVideoEntry->SetVideoTags('cars, funny'); 

// Optionally set some developer tags 
$myVideoEntry->setVideoDeveloperTags(array('mydevelopertag', 
              'anotherdevelopertag')); 

// Optionally set the video's location 
$yt->registerPackage('Zend_Gdata_Geo'); 
$yt->registerPackage('Zend_Gdata_Geo_Extension'); 
$where = $yt->newGeoRssWhere(); 
$position = $yt->newGmlPos('37.0 -122.0'); 
$where->point = $yt->newGmlPoint($position); 
$myVideoEntry->setWhere($where); 

// Upload URI for the currently authenticated user 
$uploadUrl = 
    'http://uploads.gdata.youtube.com/feeds/users/default/uploads'; 

// Try to upload the video, catching a Zend_Gdata_App_HttpException 
// if availableor just a regular Zend_Gdata_App_Exception 

try { 
    $newEntry = $yt->insertEntry($myVideoEntry, 
           $uploadUrl, 
           'Zend_Gdata_YouTube_VideoEntry'); 
} catch (Zend_Gdata_App_HttpException $httpException) { 
    echo $httpException->getRawResponseBody(); 
} catch (Zend_Gdata_App_Exception $e) { 
    echo $e->getMessage(); 
} 

Qualcuno sa come ottenere l'URL del video caricato dall'oggetto $ newEntry.

Qualsiasi aiuto sarà apprezzato :)

+0

È possibile trovare la risposta qui: http://groups.google.com/group/youtube-api-gdata/browse_thread/filetto/554bc26279925643. –

risposta

4

Prova questa:

try { 
      $newEntry = $yt->insertEntry($myVideoEntry, $uploadUrl, 
    'Zend_Gdata_YouTube_VideoEntry'); 
      $id = $newEntry->getVideoId(); // YOUR ANSWER IS HERE :) 
      echo $id; 
    } 
+0

:) grazie haha ​​che è stato abbastanza facile .. non lo trova nel riferimento API .. l'hai preso nel ref Zend API ?? – Abhishek

+0

Ho riscontrato lo stesso problema e avevo bisogno di seguire questa soluzione alternativa per risolvere il problema: https://groups.google.com/forum/?fromgroups=#!topic/youtube-api-gdata/fYbKwNP5Dj8 – Andrew

Problemi correlati