4

我的黑客马拉松团队在过去 12 个小时内一直在使用 Google Glass 和 Mirror API 播放视频,特别是使用 PHP 库。

我们尝试将视频附加到时间线项目,并且我们尝试使用捆绑选项,但都不会流式传输视频。

我没有要显示的错误消息,并且根据 Google 文档,我们可以看到的代码是正确的。

更多细节:

  • 我们正在使用 API 访问托管在 AWS 上的视频
  • 我们还使用托管在其他网站上的视频以及较小尺寸的视频(我们的目标是使用 20+MB 的视频)进行了测试

如果有人可以提供一些指导,我们将不胜感激!谢谢!

编辑

这是我们使用的代码结构,直接来自 PHP 库:

function insertAttachment($service, $itemId, $contentType, $attachment) {

  try {

    $params = array(

        'data' => $attachment,

        'mimeType' => $contentType,

        'uploadType' => 'media');

    return $service->timeline_attachments->insert($itemId, $params);

  } catch (Exception $e) {

    print 'An error ocurred: ' . $e->getMessage();

    return null;

  }

}

这是尝试让视频流式传输的最新迭代:

       $bundle_view = $app->view();
       $bundle_view->appendData(array('total' => count($response['search']), 'video'=>$response['search'][0]));
       $bundle_html = $app->view()->fetch('bundle_home.twig');
       $new_timeline_item = new Google_TimelineItem();


       $new_timeline_item->setHtml($bundle_html);
       //$new_timeline_item->setBundleId($response['search'][0]['id']);
       $new_timeline_item->isBundleCover = 'true';
       $notification = new Google_NotificationConfig();
       $notification->setLevel("DEFAULT");
       $new_timeline_item->setNotification($notification);

       $post_result = insert_timeline_item($mirror_service, $new_timeline_item, null, null);

       error_log(print_r($post_result->getId(), true));

       $new_timeline_item->setHtmlPages("<article><section> <video src='http://www.w3schools.com/html/movie.mp4' controls> </section></article>");

       /**
       foreach ($response['search'] as $video) {
           $item = $video['videos'][0];
           $v_item = new Google_MediaFileUpload('video/vnd.google-glass.stream-url', $item, true);

           $params = array(
               'data' => $v_item,
               'mimeType' => 'video/*',
               'uploadType' => 'resumable');

           $mirror_service->timeline_attachments->insert($post_result->getId(), $params);
       }
       **/
       insert_timeline_item($mirror_service, $new_timeline_item, null, null);

在 Gist 中可能更容易阅读:https ://gist.github.com/kgardnr/1f2ce243f91cedaf9c92

4

2 回答 2

1

似乎是在使用视频元素的 setHTMLPages 中,这是一个被阻止的 HTML 元素。这是问题的根本原因吗?

于 2013-07-26T18:39:59.890 回答
0

目前无法通过 HTML 附加流式视频,我不相信您可以在其上渲染任何内容。根据我的经验,库中包含的(或根本不包含)也不是很好(至少不是 .NET ......我假设 PHP 是相同的)。

我所要做的就是自己构建网络请求,如下所述:流视频部分中的https://developers.google.com/glass/timeline

于 2013-07-27T01:46:37.940 回答