2014-05-07 7 views
11

Ich verwende diese URL:Dauer während der Wiedergabe von PlaylistItems zurückgegeben?

https://www.googleapis.com/youtube/v3/playlistItems? 
    playlistId=FLFe0SGNFqZ9E2owO5ZDZpeg& 
    part=snippet,contentDetails,status 

YouTube playlistItems zu holen.

Ich habe alle part Ich bin interessiert, aber ich fand keine Möglichkeit, die duration des Artikels zurückzugeben.

https://developers.google.com/youtube/v3/docs/playlistItems/list

Ist das möglich?

zur Zeit bin ich immer wieder nur ein Element wie folgt aus:

{ 
    "status": { 
    "privacyStatus": "public" 
    }, 
    "kind": "youtube#playlistItem", 
    "contentDetails": { 
    "videoId": "tL-Ba86UhoE" 
    }, 
    "snippet": { 
    "playlistId": "FLFe0SGeFqZ9E2owO5ZDZpwg", 
    "thumbnails": { 
     "default": { 
     "url": "https://i1.ytimg.com/vi/tL-BA86Uhoh/default.jpg", 
     "width": 120, 
     "height": 90 
     }, 
     "high": { 
     "url": "https://i1.ytimg.com/vi/tL-BA86Uhoh/hqdefault.jpg", 
     "width": 480, 
     "height": 360 
     }, 
     "medium": { 
     "url": "https://i1.ytimg.com/vi/tL-BA86Uhoh/mqdefault.jpg", 
     "width": 320, 
     "height": 180 
     } 
    }, 
    "title": "Music Video", 
    "resourceId": { 
     "kind": "youtube#video", 
     "videoId": "tL-BA86Uhoh" 
    }, 
    "channelId": "UCFe0SGNFqZ9E2owO5ZDZpwg", 
    "publishedAt": "2013-07-06T18:41:43.000Z", 
    "channelTitle": "channeltitle", 
    "position": 0, 
    "description": "Video for" 
    }, 
    "etag": "\"ePFRUfYBkeQ2ncpP9OLHvB0fDw4/CJiCG6tvFw4quQlzJq3gTrhvCNo\"", 
    "id": "FL-fX6VqgtTfCJWKNE4aVRODKSrRgEdGvw" 
}, 

überhaupt keine Zeitangabe. Ich würde es lieber vermeiden, YouTube zu überschwemmen, um die Dauer eines einzelnen Videos zurückzugeben.

Antwort

0

Verwenden Sie diese Funktion:

Browser [nur mit Youtube Api v3 verwendet]:

Sie einen anderen HTTP-Anfrage mit machen müssen:

https://www.googleapis.com/youtube/v3/videos?id= {Video-ID} & part = contentDetails & Schlüssel = {api Schlüssel}

und auf

contentDetails

Sie die Dauer

Php finden:

function getDuration($apiKey,$video_id){   
    $link='https://www.googleapis.com/youtube/v3/videos?id='.$video_id.'&part=contentDetails&key='.$apiKey; 
    $data = json_decode(file_get_contents($link),true); 
    $duration = $data['items'][0]['contentDetails']['duration']; 
    return $duration; 
} 
2

Verwenden Link, wie dies für die Dauer für viele Videos erhalten:

https://www.googleapis.com/youtube/v3/videos?part=contentDetails&id=idFirst,idSecond&key=YOUR_API_KEY 
+0

Die Frage wurde um playlistItems api gestellt. Wir können mehrere IDs übergeben, wenn wir eine Liste aus einer YouTube-Playlist erstellen müssen. –