Я пытаюсь реализовать следующие вещи:
- (1) Возможность воспроизведения локального видео из памяти телефона после того, как вы его выбрали (iPhone)это то, что я пробовал)
- (2) Автозапуск inline-видео, когда определенный процент видео-плеера отображается на экране и может включать звук при нажатии на видео
(1) Что касается первого вопроса, я могу получить videoUrl, но он не воспроизводится.Я прочитал в другом посте, что вы должны удалить / private / часть строки, чтобы иметь возможность воспроизводить видео из локального хранилища телефона.Я попробовал это без какого-либо успеха.Однако я надеюсь, что решение близко, потому что у меня есть videoURL.
(2) Что касается моего второго вопроса, видео воспроизводится автоматически, но оно воспроизводится сразу, и я не могу включить видеозвукнажав на видео.Учебник, которому я следовал, чтобы реализовать это, вот этот.https://medium.com/@JordanBenge/ionic-4-autoplay-videos-on-scroll-6eb00213cdb4. Однако та часть, в которой вы можете решить, когда должно воспроизводиться видео [inViewportOptions] = "{threshold: [0, 0.65], part: true}", выдает ошибку, когда я пытаюсь ее реализовать.в моем HTML-файле.
(1) Это мой html.file:
<div tappable (tap)="changeVideoAudio(video?.id)">
<video [hidden]="hideChosenVideo"
inViewport
(inViewportAction)="onIntersection($event)"
playsinline loop
[muted]="'muted'" preload="auto" muted="muted"
poster="{{chosenVideoHolder}}"
id="video1" class="video-media">
<source src="{{chosenVideoHolder}}" type="video/mp4" src="">
</video>
</div>
TS файл для включения звука:
public changeVideoAudio(id: string) {
let vid: any = document.getElementById('media-' + id);
vid.muted = !vid.muted;
}
(2)
Чтобы получить видео из локальной памяти телефона:
his.camera.getPicture(cameraOptions).then(async (videoUrl) => {
f (videoUrl){
let stringConv = String(videoUrl);
let test123 = stringConv.replace('/private/', '');
this.chosenVideoHolder = test123;
}
});
HTML-файл
<video [hidden]="hideChosenVideo"
inViewport
(inViewportAction)="onIntersection($event)"
playsinline loop
[muted]="'muted'" preload="auto" muted="muted"
poster="{{chosenVideoHolder}}"
[id]="'media-' + video?.id">
<source src="{{chosenVideoHolder}}" type="video/mp4" src="">
</video>
Подводя итог, что яв надежде получить помощь - это то, что я должен изменить, чтобы воспроизвести выбранное мной локальное видео из памяти телефона.Я не уверен, что проблема в HTML-файле или TS-файле при получении videoURL.
Для другой проблемы кажется, что я неправильно использую inViewportOptions.Есть ли способ, которым я могу перенастроить или есть другой способ реализации такого рода решения?