3

Я загрузил mp4-видео, используя (aws-sdk) в своем ионном мобильном приложении. Это мир кода.Загружено видео mp4 не может воспроизводить плеер HTML5

$cordovaFile.readAsDataUrl(first, file).then(function(success) { 
    AWS.config.region = 'eu-west-1'; 
    AWS.config.update({ 
       accessKeyId: '', 
       secretAccessKey: '' 
    }); 

    var bucket = new AWS.S3({ 
        params: { 
         Bucket: 'www.bucket-new' 
        } 
       }); 

    var params = { 
        Key: "test.mp4", 
        ContentEncoding: 'base64', 
        ContentType: 'video/mp4', 
        Body: success 
       }; 

    bucket.upload(params).on('httpUploadProgress', function(evt) { 
        console.log('sucess'); 
        $scope.uploading = true; 
        $scope.progress = parseInt((evt.loaded * 100)/evt.total) + '%'; 
        console.log("Uploaded :: " + $scope.progress); 
        $scope.$apply(); 
       }).send(function(err, data) { 
        $scope.uploading = false; 
        $scope.$apply(); 
       }); 
}) 

Видео успешно загружено. Но загруженное видео не может воспроизводиться на проигрывателе html5.

<video controls="controls" preload="metadata" autoplay="autoplay" webkit-playsinline="webkit-playsinline" class="videoPlayer"><source src="https://s3-eu-west-1.amazonaws.com/www.test-uploads/test.mp4" type="video/mp4"/></video> 

При загрузке видео с использованием aws s3 dashbord, что видео было успешно воспроизведено на этом проигрывателе? В чем проблема при загрузке видео через приложение (с помощью AWS-SDK)

+0

Пробовал напрямую обращаться к видео, а ошибки говорят, что bucket 'www.test-uploads' не существует. – zer00ne

+0

, если у вас есть ведро, не существует сообщения, а затем проверьте свои права ... – Offbeatmammal

+0

@ Неверное мнение верно. Я могу загрузить его успешно. biut загруженный файл, закодированный в base64 – ding7890

ответ

1

Я здесь у вас есть вопрос плагин загрузки файла Cordova

$ cordovaFile.readAsDataURL (путь, файл)

функция readAsDataURL поддерживается , но медиатип в Chrome зависит от расширения имени входа, в IE всегда есть пустой (то же, что и в текстовой форме в соответствии со спецификацией), в виде медиатипа в Firefox всегда application/octet-stream. Например, если содержимое АБВГДЕЖ затем Firefox возвращает data:application/octet-stream;base64,YWJjZGVmZw==, IE возвращает data:;base64,YWJjZGVmZw==, Chrome возвращает data:<mediatype depending on extension of entry name>;base64,YWJjZGVmZw==

ещё details

Затем загруженный файл идентификаторов в формате base64.

Для загрузки файла используйте этот метод. Затем вы можете загружать двоичные данные видео.

$cordovaFile.readAsArrayBuffer(first, file) 
     .then(function(success) { 

---Code--- 

}) 
Смежные вопросы