web-dev-qa-db-fra.com

Google Drive - Streaming vidéo

Comment fonctionne la diffusion vidéo en continu de Google Drive? En interne, comment diffuse-t-il la vidéo, utilise-t-il la diffusion HTTP ou d’autres protocoles? Je suis très novice dans ce domaine et je me demandais si Google Drive pouvait être utilisé comme serveur de démonstration pour obtenir un flux vidéo et un affichage sur la page Web. Si quelqu'un pouvait me donner des informations à ce sujet, ce serait très utile.

10
metal7

OK, j'ai juste réussi à faire fonctionner ça comme suit -

Dans google drive, j'ai placé le fichier vidéo dans un dossier partagé publiquement, puis cliquez avec le bouton droit de la souris sur le fichier et sélectionnez Partager> Partager.

Google me donne alors un lien à partager qui ressemble à

https://docs.google.com/file/d/0B4BsAbG4atWHQzVfLUU3UnhhZTA/edit?usp=sharing

J'ai coupé ce que je devinais être l'ID de fichier de l'URL -

0B4BsAbG4atWHQzVfLUU3UnhhZTA

Et l'a ajouté à l'URL de metal7 pour créer un attribut src pour une balise source

<source src="https://drive.google.com/uc?export=download&id=0B4BsAbG4atWHQzVfLUU3UnhhZTA" type='video/webm'/>

Maintenant, j'ai une vidéo qui fonctionne avec le code HTML suivant.

<html>
<head>
    <title>Video Test</title>
</head>
<body>
    <video controls="controls">
        <source src="https://drive.google.com/uc?export=download&id=0B4BsAbG4atWHQzVfLUU3UnhhZTA" type='video/webm'/>
    </video>
</body>
</html>

Beaucoup de gens semblent suggérer de créer une application API afin d'obtenir l'ID de fichier, mais il semble que vous puissiez le deviner assez facilement. Cela dit, je serais intéressé de voir une documentation appropriée de Google à ce sujet. Je souhaite l’utiliser en production, mais j’ai le sentiment qu’il me faut lire davantage pour être confiant.

METTRE &AGRAVE; JOUR

J'ai lu un peu plus et je crains que la vidéo ne soit lue que sur les navigateurs connectés à un compte Google. J'ai passé beaucoup de temps à essayer de contourner ce problème (y compris la construction d'une application Google Drive avec l'API), j'ai bien peur que cela ne semble pas être possible.

N'utilisez pas Google Drive pour diffuser des vidéos au format HTML à moins de savoir que tous vos utilisateurs seront authentifiés avec Google.

15
Aidan Ewen

Utilisez l'URL comme ceci:

https://googledrive.com/Host/ {YOUR_VIDEO_ID}

par exemple. https://googledrive.com/Host/01bLAblaBla01BlaBLaBlaBLaBLA

Il fonctionne avec HTML5 (balise video) et autres, comme videojs, et plus encore ...

6
seq

J'ai fait des tests moi-même et la vidéo est transmise en streaming (via HTTP) aux clients publics tant que le fichier est partagé publiquement sur Google Drive.

Pour que le fichier soit lu en utilisant la diffusion HTTP en continu, vous pouvez utiliser la balise HTML5 video comme suit:

<video controls="controls">
    <!-- Safari -->
    <source src="https://drive.google.com/uc?export=download&id=0B0JMGMGgxp9WMEdWb1hyQUhlOWs" type='video/mp4'/>
    <!-- Chrome and FF -->
    <source src="https://drive.google.com/uc?export=download&id=0B0JMGMGgxp9WMEdWb1hyQUhlOWs" type='video/webm'/>
</video>

Cette méthode est expliquée plus loin dans: http://sourcey.com/html5-video-streaming-from-google-drive/

1
Kamo

En interne, lorsqu'il est affiché dans la visionneuse de pages Web de Google Drive, celui-ci diffuse des vidéos via HTTPS/443. Une seule connexion est établie pour la vidéo elle-même et cette connexion reste ouverte tant que la vidéo est diffusée en continu depuis Google Drive vers le client.

Google Drive utilise un appel HTTP CONNECT. Les en-têtes ressemblent à ceci:

CONNECT r3---sn-p5qlsu68.c.docs.google.com:443 HTTP/1.1
Host: r3---sn-p5qlsu68.c.docs.google.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)    Chrome/29.0.1547.57 Safari/537.36
1
Samuel Neff