Cordova видео захват - как получить данные 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}
);
Что я не могу понять, так это как получить данные BLOB-объектов сохраненного видео. У меня есть путь к локально сохраненному файлу, но мне нужно сохранить данные на удаленном сервере, поэтому мне нужны его данные.
Обратный вызов успеха передается MediaFile
объект инкапсулирует захваченное видео, но в документах не обсуждаются способы получения его необработанных данных. Кто-нибудь знает, как этого можно достичь?
1 ответ
Потому что MediaFile предоставит вам информацию о самом файле, такую как
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 даст доступ к
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)
И не содержание видео. Если вы хотите прочитать его содержимое, загрузите его с помощью MediaFile.fullPath.
Чтобы загрузить видео, просмотрите этот пост, который может поставить вас на правильный путь.