Youtube API: отображение миниатюр каждого видео?

Привет, может ли кто-нибудь помочь мне с правильным способом получения изображения default.jpg для каждого видео с каналов, которые я загружаю?

<?php
$url = 'http://gdata.youtube.com/feeds/api/users/utahblaze/uploads?orderby=updated&max-results=8';
$xml = simplexml_load_file($url);
foreach ($xml->entry as $entry) :

    $kids = $entry->children('http://search.yahoo.com/mrss/');
    $attributes = $kids->group->content[0]->attributes();
    $flv = $attributes['url'];
    $attributes = $kids->group->player->attributes();
    $link = $attributes['url']; 
?>

<a href="<?=$link?>">test</a?
<?php endforeach; ?>

person acctman    schedule 15.02.2012    source источник
comment
Что такое default.jpg, уменьшенное изображение 480 x 360?   -  person salathe    schedule 16.02.2012
comment
@salathe нет, я думаю, что он меньше, вероятно, что-то вроде 100x80 или что-то в этом роде.   -  person acctman    schedule 16.02.2012


Ответы (3)


Вот пример того, как вы можете получить URL-адрес изображения видео, используя класс GData Youtube Zend Framework.

<?php 
$yt = new Zend_Gdata_YouTube();
$query = $yt->newVideoQuery();
$query->videoQuery = 'cat';
$query->startIndex = 10;
$query->maxResults = 20;
$query->orderBy = 'viewCount';

$videoFeed = $yt->getVideoFeed($query);

foreach ($videoFeed as $videoEntry) : ?>
    <div class="video"> 
        <span>Title: <?php echo $videoEntry->getVideoTitle();?><span><br />
        <span>Description:<?php echo $videoEntry->getVideoDescription();?> </span> <br/>
        <?php $videoThumbnails = $videoEntry->getVideoThumbnails(); ?>
        <img alt="video-thumbnail" src="<?php echo $videoThumbnails[0]['url'];?>" />
    </div>
<?php endforeach; ?>

Как видите, метод getVideoThumbnails() дает вам массив миниатюр для этого видео и их URL внутри. Надеюсь это поможет.

person markdrake    schedule 16.02.2012

Пробовали ли вы использовать класс GData вместо того, чтобы напрямую работать с API Youtube? Я бы порекомендовал вам использовать официальный класс, который включен в пакет zend framework, так как вам будет проще извлекать определенные данные из видеопотоков. http://framework.zend.com/manual/en/zend.gdata.youtube.html

person markdrake    schedule 15.02.2012
comment
не могли бы вы помочь мне с примером, я не понимаю, как он может получить идентификатор или миниатюру изображения - person acctman; 16.02.2012

Вот хороший класс PHP для встраивания видео и плейлистов Youtube. Он дает вам миниатюры и всю другую информацию / элементы, связанные с видео.

Уроки YouTube по PHP

person user398341    schedule 07.03.2012