如何使用音频或视频将SRC放在附加的html中?

shadow_blade

我正在尝试将源文件添加为mp3或html中的视频。

因此,如果用户在选择选项中选择“音频”。我的html将为视频附加一个音频src html。

这是我的例子。

  $(document).ready(function() {
     
    var previewBox = document.getElementById("myAudio");
    
    $("#photo").change(function(event) {
      tmppath = URL.createObjectURL(event.target.files[0]);
      previewBox.src = URL.createObjectURL(event.target.files[0]);
      $(this).removeAttr("disabled");
    });
  
    $("#component_type").change(function () {

        var component_value = $("#component_type :selected").val();

        if (component_value == 0) {
          $('#audio_preview').empty();
          $("#audio_preview").append(
             '<audio controls id="myAudio" preload="metadata"> '+
              '<source id = "myAudioSrc" src="" >' +
              'Your browser does not support the audio element.'+
             '</audio>'
           );
         }else if (component_value == 1) {
          $('#audio_preview').empty();
          $("#audio_preview").append(
             '<video controls id="myAudio" preload="metadata"> '+
              '<source id = "myAudioSrc" src="" >' +
              'Your browser does not support the audio element.'+
             '</video>'
           );
        }else{
          console.log("Wala to");
        }

    });
    
});
<html>
<head>
  <title>Bootstrap Example</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js"></script>
</head>
<body>
<div class="form-group">
    
    <div class="form-body">
        <div class="form-group">
            <label class="control-label col-md-3" id="label-photo">Upload</label>
            <div class="col-md-9">
                <input id="photo" name="photo" required="required" type="file" class="form-control upload_valid" accept="audio/mpeg3">
                <span id="upload_warning" class="help-block"></span>
            </div>
        </div>
    </div>

    <div class="col-md-9">
      <select name= "component_type" class="form-control" id="component_type">
        <option value="" selected disabled>Choose Set</option>
        <option value="0" >Audio</option>
        <option value="1" >Video</option>
      </select>
        <span class="help-block"></span>
    </div>
    
    <div class="form-group" id="audio-preview">
      <div class="form-group">
        <div id="audio_preview">
          <audio controls id="myAudio" preload="metadata">
            <source id = "myAudioSrc" src="" >
            Your browser does not support the audio element.
          </audio>
        </div>
      </div>
    </div>
</div>
</body>
</html>

我的目标是,当用户选择“音频输入”时,选择该用户上传的文件时,它应该具有该用户上传内容的预览。与Video相同,因此,如果用户选择Video,则html表单应删除Audio html并将其更改为Video html,以便用户可以预览视频。

追加音频或视频后,如何使它成为源?有没有办法做到这一点?

罗里·麦克罗森(Rory McCrossan)

您不需要用户选择文件类型,就可以从所选文件的MIME类型中检测到它。如果是音频文件,则可以创建一个<audio />元素并开始播放,并且对<video />元素也是如此。

下面分别适用于mp3和mp4文件,可能也适用于其他文件,但这就是我所要做的。

$(document).ready(function() {
  $("#photo").change(function(event) {
    let file = this.files[0];
    let mime = file.type;
    
    let $player;
    if (/^audio/.test(mime)) { // audio
      $player = $('<audio autoplay controls />');
    } else if (/^video/.test(mime)) { // video
      $player = $('<video autoplay />');
    } else {
      console.log('Invalid file selected...');
      return;
    }
    
    $('#preview').empty().append($player);
    $player[0].src = URL.createObjectURL(file);
  });
});
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js"></script>

<div class="form-group">
  <div class="form-body">
    <div class="form-group">
      <label class="control-label col-md-3" id="label-photo">Upload</label>
      <div class="col-md-9">
        <input id="photo" name="photo" required="required" type="file" class="form-control upload_valid" accept="audio/*, video/*">
        <span id="upload_warning" class="help-block"></span>
      </div>
    </div>
  </div>

  <div class="form-group" id="preview"></div>
</div>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将音频文件附加到视频

来自分类Dev

如何将RTP(音频/视频流)添加到发起的SIP呼叫中(使用JAIN)

来自分类Dev

如何使用 ffmpeg 从我的网络摄像头将音频和视频录制到文件中?

来自分类Dev

如何使用 ffmpeg(批处理)将新音频(不混合)添加到视频中?

来自分类Dev

Libstreaming:如何从SurfaceView屏幕导航(将视频和音频流发送到wowza)到Android Phonegap中的HTML页面

来自分类Dev

将src文件动态插入到音频标签中,并将src名称存储在html代码中

来自分类Dev

如何将视频序列与音频同步

来自分类Dev

如何从视频中完全删除音频通道

来自分类Dev

如何使用音频保存GPUImage过滤的视频?

来自分类Dev

HTML-将音频对象放在右上角

来自分类Dev

使用Windows Media Foundation中的Sink Writer将音频样本添加到视频中

来自分类Dev

如何使用ffmpeg将音频/视频文件与具有偏移量的音频文件混合?

来自分类Dev

如何将类放在Html.Dropdownlist中?

来自分类Dev

如何允许将js放在HTML文件中

来自分类Dev

如何将类放在Html.Dropdownlist中?

来自分类Dev

如何将javascript放在html文件中

来自分类Dev

如何将 html href 按钮放在 php 代码中

来自分类Dev

如何将ffmpeg中的两个音频/视频文件与画中画合并

来自分类Dev

如何在Windows 10中将视频和音频轨道添加到MediaPlaybackItem

来自分类Dev

如何使用html / php将视频嵌入网站中,从而使访问者无法下载视频?

来自分类Dev

如何使用ffmpeg将Vorbis音频和VP8视频混合为WebM格式?

来自分类Dev

在使用ffmpeg通过视频时,如何将音频转码为较低的比特率?

来自分类Dev

如何使用mpg123将音频从.mov视频提取到.wav文件?

来自分类Dev

如何在html5音频和视频播放器中回显php数组?

来自分类Dev

如何使用JavaScript正确创建HTML5音频和视频

来自分类Dev

html5 音频/视频播放在 chrome 上产生错误

来自分类Dev

如何使用Blaze将事件附加到流星0.8中的模板的生成的html

来自分类Dev

我如何使用jQuery将跨度附加到HTML中的跨度?

来自分类Dev

使用FFMpeg循环控制音频和视频的音量,并且仅在特定的时间段内将较短的音频添加到视频中

Related 相关文章

  1. 1

    将音频文件附加到视频

  2. 2

    如何将RTP(音频/视频流)添加到发起的SIP呼叫中(使用JAIN)

  3. 3

    如何使用 ffmpeg 从我的网络摄像头将音频和视频录制到文件中?

  4. 4

    如何使用 ffmpeg(批处理)将新音频(不混合)添加到视频中?

  5. 5

    Libstreaming:如何从SurfaceView屏幕导航(将视频和音频流发送到wowza)到Android Phonegap中的HTML页面

  6. 6

    将src文件动态插入到音频标签中,并将src名称存储在html代码中

  7. 7

    如何将视频序列与音频同步

  8. 8

    如何从视频中完全删除音频通道

  9. 9

    如何使用音频保存GPUImage过滤的视频?

  10. 10

    HTML-将音频对象放在右上角

  11. 11

    使用Windows Media Foundation中的Sink Writer将音频样本添加到视频中

  12. 12

    如何使用ffmpeg将音频/视频文件与具有偏移量的音频文件混合?

  13. 13

    如何将类放在Html.Dropdownlist中?

  14. 14

    如何允许将js放在HTML文件中

  15. 15

    如何将类放在Html.Dropdownlist中?

  16. 16

    如何将javascript放在html文件中

  17. 17

    如何将 html href 按钮放在 php 代码中

  18. 18

    如何将ffmpeg中的两个音频/视频文件与画中画合并

  19. 19

    如何在Windows 10中将视频和音频轨道添加到MediaPlaybackItem

  20. 20

    如何使用html / php将视频嵌入网站中,从而使访问者无法下载视频?

  21. 21

    如何使用ffmpeg将Vorbis音频和VP8视频混合为WebM格式?

  22. 22

    在使用ffmpeg通过视频时,如何将音频转码为较低的比特率?

  23. 23

    如何使用mpg123将音频从.mov视频提取到.wav文件?

  24. 24

    如何在html5音频和视频播放器中回显php数组?

  25. 25

    如何使用JavaScript正确创建HTML5音频和视频

  26. 26

    html5 音频/视频播放在 chrome 上产生错误

  27. 27

    如何使用Blaze将事件附加到流星0.8中的模板的生成的html

  28. 28

    我如何使用jQuery将跨度附加到HTML中的跨度?

  29. 29

    使用FFMpeg循环控制音频和视频的音量,并且仅在特定的时间段内将较短的音频添加到视频中

热门标签

归档