2017-05-22 2 views
0

Je passe de notre lecteur vidéo de source vidéo normale à un flux vidéo progressif fragmenté en utilisant mpeg-dash. Lorsque vous utilisez mpeg-dash plutôt que de lier une source vidéo réelle, vous liez un fichier manifeste mpeg-dash qui contient toutes les informations sur chaque morceau et permet à votre lecteur d'échanger des morceaux en tant que changements de bande passante. Maintenant, tout cela semble assez simple, mais je travaille également sur la création d'URL blob pour masquer notre emplacement de fichier source et je rencontre des problèmes. Comment cela fonctionne-t-il puisque toute la documentation que je peux trouver sur les réponses de blob est soit entièrement dans JS ou retourne un XMLHttpRequest.URL de blob vidéo Javascript et MPEG-Dash

Vous pouvez voir un exemple ici dans la documentation de dash.js qui fait exactement ce que je veux http://mediapm.edgesuite.net/dash/public/nightly/samples/dash-if-reference-player/index.html si vous inspectez l'élément, il a une URL de blob et charge en morceaux, mais je ne trouve pas de docs sur la façon de faire. Donc essentiellement ma question est, comment pouvez-vous obtenir un fichier manifeste mpeg-dash pour fonctionner en conjonction avec le système d'URL blob pour obscurcir les URL source.

Répondre

2

Je travaille également sur la mise en place urls blob pour obscurcir notre fichier emplacement source

je vous assure que vous n'êtes pas utile tout obscurcir. Les données doivent provenir de quelque part. Il est trivial de déterminer d'où, peu importe comment vous pensez que vous l'occultez côté client.

Ne vous embêtez pas avec ça. Comment cela fonctionne-t-il puisque toute la documentation que je peux trouver sur les réponses blob est soit entièrement dans JS, soit retourne une requête XMLHttpRequest. La raison pour laquelle vous voyez blob avec les lecteurs DASH basés sur le Web, c'est qu'ils utilisent les extensions MediaSource (MSE) pour obtenir les données en premier lieu. Le lecteur vidéo a effectivement une source de blob qui est gérée par le navigateur. Votre JavaScript télécharge les morceaux et les envoie au navigateur pour être exécuté dans le codec et être envoyé à l'élément vidéo.

Il existe un exemple MSE décent sur MDN: https://developer.mozilla.org/en-US/docs/Web/API/MediaSource