Как я могу принудительно добавить .mp4 или .расширение webm при загрузке видео?

#javascript #html #html5-video

#javascript #HTML #html5-видео

Вопрос:

Как я мог бы добавить расширение .mp4 или .webm? Это производит только такое впечатление

видео без расширения

HTML

 <input type="file" name="file[]" id="inpVid" accept="video/*">
<video style="width: 100%; max-width: 100%; margin-bottom: 10px;" controls id="vidURL">
  <source id="videoUrl" src="#" type="video/mp4">
</video>
 

СЦЕНАРИЙ

 <script>
    function changeVideoURL (element) {
      const videoURLElement = document.getElementById('videoUrl')
      const videoPlayer = document.getElementById('vidURL')
      if (element.files amp;amp; element.files[0]) {
        videoURLElement.src = URL.createObjectURL(element.files[0]);
        videoPlayer.load()
      }      
    }
    document.getElementById("inpVid").onchange = function() {
      changeVideoURL(this)
    }
</script>
 

Комментарии:

1. Это accept=".webm,.mp4" то, что вы хотите?

2. Я поставил это. Не работает.

Ответ №1:

Я думаю, это то, что вы ищете

<input type="file[]" id="inpVid" accept="video/mp4,video/webm" />

Комментарии:

1. Он по-прежнему не добавляется .mp4 в конце большого двоичного объекта:ссылка: ( результат изображения

2. Я думаю, что обновление результата после загрузки в большой двоичный объект выполняется на серверной части, а не из интерфейса. Использование accept="" атрибута во внешнем интерфейсе будет запрещать загрузку любых видео, отличных от указанных в значении атрибута.

3. <script> — это тот, кто загружает видео.

4. Я ошибся, blob не управляется серверной частью, как я упоминал в последнем комментарии. Но, однако, он создается внутри браузера и может использоваться только один раз в одном экземпляре браузера и в одном сеансе. Таким образом, он не представляет реальный URL-адрес видео