|
Воспроизведение видео в новых платформах Webkit | ☑ | ||
---|---|---|---|---|
0
tixis
15.02.21
✎
11:45
|
Как воспроизводить видео и отображать картинки в новых платформах, где используется webkit?
Пробовал для картинок использовать такой метод, но в обычных формах было HTML.УстановитьТекст(), в управляемых нет такого метода. И код ниже способен только картинки вывести (если заработает) а как выводить видео? СтрокаНТМL=" |<!DOCTYPE html> |<html> |<center> |"; СтрокаНТМL=СтрокаНТМL+" |<img src=""data:image/jpeg;base64, |"; СтрокаНТМL=СтрокаНТМL+Base64Строка(Новый ДвоичныеДанные(Стр)); СтрокаНТМL=СтрокаНТМL+" |"" style=""max-width:100%; height:auto""; align-items:center; alt="""" /> |</center> |</html> |"; |
|||
1
Kesim
15.02.21
✎
12:41
|
(0) Лощадь не моя, но работает, замени по тексту:
ТипВ = "video/mp4"; КодекВ = "avc1.42E01E, mp4a.40.2"; // <source src="_ПутьКВидео_" type="_ТипВидео_" codecs="_КодекВидео_"> ТекстХТМЛ_Видео = СтрЗаменить(html_VIDEO, "_ПутьКВидео_", ПутьКФайлу); ТекстХТМЛ_Видео = СтрЗаменить(ТекстХТМЛ_Видео, "_ТипВидео_", ТипВ); ТекстХТМЛ_Видео = СтрЗаменить(ТекстХТМЛ_Видео, "_КодекВидео_", КодекВ); /////////////////////////////////////////////////////////////////////////////////////////////// <html lang="en"> <head> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" charset="UTF-8"> <style> * { margin: 0; padding: 0; } </style> </head> <body> <div id="divVideoPlayerBox"> <video id="objPlayer" controls preload="none" muted> <source src="_ПутьКВидео_" type="_ТипВидео_" codecs="_КодекВидео_"> file not found </video> </div> <script> function playPause(strObjPlayer) { var objPlayer = document.getElementById(strObjPlayer); if (objPlayer.paused) { objPlayer.play(); } else { objPlayer.pause(); } } window.onload = function () { playPause('objPlayer'); } objPlayer.onclick = function() { playPause('objPlayer'); }; objPlayer.onloadeddata = function() { var dblProportonScreen = document.body.clientWidth / document.body.clientHeight; //alert(dblProportonScreen); var dblProportonPlayer = this.videoWidth / this.videoHeight; //alert(dblProportonPlayer); if (dblProportonScreen <= dblProportonPlayer) { objPlayer.style.width = "100%"; objPlayer.style.height = "auto"; } else { objPlayer.style.width = "auto"; objPlayer.style.height = "100%"; } }; </script> </body> </html> |
|||
2
tixis
15.02.21
✎
12:44
|
спасибо, ща попробую
|
|||
3
Вафель
15.02.21
✎
12:59
|
можно и инлайн
https://base64.guru/developers/html/video |
|||
4
tixis
15.02.21
✎
14:06
|
(1) а как присвоить этот шаблон элементу ПолеHTMLДокумента, раньше был метод УстановитьТекст(ТекстHTM), а теперь как?
|
|||
5
Вафель
15.02.21
✎
14:39
|
(4) имяпеременой = текст
|
|||
6
tixis
15.02.21
✎
15:49
|
(5) да, так работает, а как обновлять поле? т.е. у меня воспроизводится один файл, потом текстHTML перефорируется, вставляется другой файл, но на форме ничего не меняется.
не обновляются ни картинки ни видео, хоть через оповещение, хоть напрямую в цикле устанавливаю https://i.imgur.com/9FxZ7Il.png |
|||
7
Александр111
15.02.21
✎
15:55
|
перевод на русский из (3) Привет, команда,
я пытаюсь запустить тег видео Html5 с помощью base64. он работает нормально. Но у меня файлы большие вроде 100мб. Итак, я разделил на куски размером 10 МБ. Теперь я хочу воспроизвести первый фрагмент, и пока он воспроизводится, я хочу добавить второй фрагмент, например, до 10 фрагментов, которые нужно добавить. Является ли это возможным? Ответить Администратор, 4 июля 2019 в 18:09 # ↑ Привет! Если вы уверены, что это единственный способ достичь своей цели, я думаю, вы ищете MediaSource.addSourceBuffer () или SourceBuffer.appendBuffer (). Однако я рекомендую вам пересмотреть это решение, по крайней мере, потому, что может быть плохой идеей встраивать 10 МБ потенциально неиспользуемых данных в HTML-страницу. |
|||
8
tixis
15.02.21
✎
16:03
|
не понятно. мне не нужно дополнять что то , мне нужно как то обновить поле, чтобы на форме отображался новый html текст с новыми файлами
|
|||
9
Александр111
15.02.21
✎
16:05
|
первое видео должно полностью проиграть?
|
|||
10
Александр111
15.02.21
✎
16:05
|
если да, то нужно формировать очередь
|
|||
11
tixis
15.02.21
✎
16:10
|
смысл такой, что должна крутится реклама, файлы могут быть как картинки, так и видео.
Что такое SourceBuffer.appendBuffer() как это применимо в 1с? |
|||
12
Александр111
15.02.21
✎
16:15
|
var assetURL = 'frag_bunny.mp4';
// Need to be specific for Blink regarding codecs // ./mp4info frag_bunny.mp4 | grep Codec var mimeCodec = 'video/mp4; codecs="avc1.42E01E, mp4a.40.2"'; if ('MediaSource' in window && MediaSource.isTypeSupported(mimeCodec)) { var mediaSource = new MediaSource; //console.log(mediaSource.readyState); // closed video.src = URL.createObjectURL(mediaSource); mediaSource.addEventListener('sourceopen', sourceOpen); } else { console.error('Unsupported MIME type or codec: ', mimeCodec); } function sourceOpen (_) { //console.log(this.readyState); // open var mediaSource = this; var sourceBuffer = mediaSource.addSourceBuffer(mimeCodec); fetchAB(assetURL, function (buf) { sourceBuffer.addEventListener('updateend', function (_) { mediaSource.endOfStream(); video.play(); //console.log(mediaSource.readyState); // ended }); sourceBuffer.appendBuffer(buf); }); }; |
|||
13
Александр111
15.02.21
✎
16:17
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |