2017-08-15 2 views
0

Je suis avec succès un flux capturaient vidéo avec le code ci-dessous:Capture vidéo Cordova - comment obtenir des données blob?

 navigator.device.capture.captureVideo(

      //...after recorded vid 
      function(mediaFiles) { 
       var i, path, len; 
       for (i = 0, len = mediaFiles.length; i < len; i += 1) { 
        path = mediaFiles[i].fullPath; 
        app.f7.alert(path); 
       } 
      }, 

      //...couldn't get camera 
      function() { app.f7.alert('Sorry - your recording device could not be accessed', 'Error'); }, 

      //...config 
      {limit:2} 
     ); 

Ce que je ne peux pas comprendre comment de saisir les données blob de la vidéo enregistrée. J'ai le chemin d'accès au fichier enregistré localement, mais j'ai besoin de sauvegarder les données sur un serveur distant, donc j'ai besoin de ses données.

Le rappel de succès est passé un objet MediaFile encapsulant la vidéo capturée, mais the docs don't discuss tout moyen d'obtenir ses données brutes. Quelqu'un sait comment cela peut-il être réalisé?

Répondre

1

Parce que MediaFile vous donnera des informations sur le fichier lui-même, comme

name: The name of the file, without path information. (DOMString) 
fullPath: The full path of the file, including the name. (DOMString) 
type: The file's mime type (DOMString) 
lastModifiedDate: The date and time when the file was last modified. (Date) 
size: The size of the file, in bytes. (Number) 

MediaFileData donnera accès à

codecs: The actual format of the audio and video content. (DOMString) 
bitrate: The average bitrate of the content. The value is zero for images. (Number) 
height: The height of the image or video in pixels. The value is zero for audio clips. (Number) 
width: The width of the image or video in pixels. The value is zero for audio clips. (Number) 
duration: The length of the video or sound clip in seconds. The value is zero for images. (Number) 

Et pas le contenu de la vidéo. Si vous voulez lire son contenu, chargez-le en utilisant MediaFile.fullPath.

Pour charger une vidéo, consultez this post qui pourrait vous mettre sur la bonne voie.

+0

Merci. "charge le en utilisant MediaFile.fullPath" - c'est exactement ce que je demande comment faire. J'ai le chemin complet, mais je ne sais pas comment lire le contenu du fichier que le chemin pointe vers un blob. – Utkanos

+0

Voir https://stackoverflow.com/questions/37327992/cordova-file-plugin-to-load-video-source-from-ios-cache – Eric

+0

Merci. Je vais enquêter sur cela - bien que la question n'ait pas de réponse acceptée et les commentaires suggèrent que le PO n'a jamais résolu le problème. – Utkanos