【问题标题】:how to get thumbnail url with Dailymotion api just after a video is uploaded上传视频后如何使用 Dailymotion api 获取缩略图 url
【发布时间】:2015-06-08 07:16:17
【问题描述】:

我刚上传视频后,正尝试使用 API 检索“thumbnail_url”。 但是,我检索到的“thumbnail_url”始终是这个 URL “Hhttp://s2.dmcdn.net/KtV-L.jpg”或“Hhttp://s2.dmcdn.net/KtV-L/x240-gK0.jpg” (当我使用 oEmbed API 时)。

另一方面,当我像以下 URL 一样手动将 URL 放入浏览器的地址栏中时,我可以获得我想要的“thumbnail_url”。 Hhttps://api.dailymotion.com/video/VIDEOID?fields=thumbnail_url

我的问题是; 上传视频后是否存在时间延迟或 Dailymotion API 是否需要更多时间来生成缩略图? 或者,检索我编码的缩略图网址的方法是否错误?

这里是获取缩略图网址的代码。 *作为先决条件,我已经获得了访问令牌,创建了一个视频并发布了。

///////////////   Publish a video   ///////////////

    $publishVideoAPI = "https://api.dailymotion.com/video/".$responseID;
    // Post data
    $dataPublish = array(
    "title" => $videotitle,
    "published" => true,
    "channel" => "shortfilms",
    "tags" => $tags,
    "access_token" => $accesstoken
    );
    $conn = curl_init();
    // Post method
    curl_setopt($conn, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($conn, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($conn, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($conn, CURLOPT_URL, $publishVideoAPI);
    curl_setopt($conn, CURLOPT_POST, true);
    curl_setopt($conn, CURLOPT_POSTFIELDS, $dataPublish);

    // execute
    $resPublish = curl_exec($conn);
echo "publish video<br />";
    var_dump($resPublish);
    // close
    curl_close($conn);


///////////////   Grab a thumbnail image of the video start   ///////////////

    // API
    $thumbnail = "https://api.dailymotion.com/video/".$responseID."?fields=thumbnail_url";

    // initialise session
    $conn = curl_init();

    // Get method
    curl_setopt($conn, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($conn, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($conn, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($conn, CURLOPT_HEADER, false);
    curl_setopt($conn, CURLOPT_URL, $thumbnail);

    // execute
    $res2 = curl_exec($conn);
echo "thumbnail url<br />";
    //var_dump($res2);
echo "<br /><br />";
    // close
    curl_close($conn);

$thumbnailData = json_decode( $res2 , true );
$thumbnailURL = $thumbnailData["thumbnail_url"];
echo $thumbnailURL;

【问题讨论】:

    标签: dailymotion-api


    【解决方案1】:

    我已经准备好执行这段代码了 GET方法这个url:https://api.dailymotion.com/video/'+videoID+'?fields=id,thumbnail_url,thumbnail_120_url

    比查找响应:

    {"id":"x2qwonn","thumbnail_url":"http://s2.dmcdn.net/Kra86.jpg","thumbnail_120_url":"http://s2.dmcdn.net/Kra86/x120 -aNB.jpg"}

    响应 = {"id":"x2qwonn","thumbnail_url":"http://s2.dmcdn.net/Kra86.jpg","thumbnail_120_url":"http://s2.dmcdn.net/Kra86 /x120-aNB.jpg"}

    thumbnail = response['thumbnail_120_url'].replace("\","")

    得到结果

    http://s2.dmcdn.net/Kra86/x120-aNB.jpg

    【讨论】:

      【解决方案2】:

      感谢您的回复。 我想通了,现在正确上传了缩略图。 正如您测试的那样,这段代码是正确的。 我上传的图像始终是 Dailymotion 提供的相同图像的原因是视频状态为“处理中”。 所以我放了10秒间隔的循环检查状态,只有当状态变为“已发布”时,才尝试抓取缩略图。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-07-30
        • 1970-01-01
        • 1970-01-01
        • 2018-03-25
        • 2020-05-16
        • 2018-06-09
        • 2011-06-18
        • 2011-05-25
        相关资源
        最近更新 更多