在 iOS 移动应用程序中流式传输 Google Cloud Storage 中的视频对象

问题描述

如何流式传输 iOS 版 Google Cloud Storage 中的视频文件

如果我尝试在 iOS 中播放视频 URL,整个视频会被下载然后播放。这需要太长时间。我想以 10 秒的块流式传输视频。

解决方法

Google 的云存储允许您使用 Signed URLs 和前端或提供内容的应用将数据流式传输到移动设备。

首先在您的 Cloud Storage 对象中设置正确的 Content-Type 非常重要。如果没有,浏览器将下载文件而不是播放文件。

这是此方法的步骤:

  1. 首先,您需要使用 gcloud 命令创建要提供的内容的签名网址:
gsutil signurl -d 10m Desktop/private-key.json gs://example-bucket/cat.jpeg

或者也可以使用第三方库来完成。在 this 其他帖子中,他们展示了如何使用 python 来实现。

  1. 在要呈现内容的前端/应用上提供结果链接。这是一个 HTML 示例:
<!DOCTYPE html>
<html>
<body>
<video width="320" height="240" controls>
  <source src="video-signedurl.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
</body>