我想有多个音轨为一个单一的video
文件类似于这个https://codepen.io/eabangalore/pen/NZjrNd(他们正在使用自己的js与videojs
)
我有要切换的音轨列表:
var usersAudioTrackList = ["https://cdnjs.cloudflare.com/ajax/libs/ion-sound/3.0.7/sounds/glass.mp3","https://cdnjs.cloudflare.com/ajax/libs/ion-sound/3.0.7/sounds/door_bump.mp3","https://cdnjs.cloudflare.com/ajax/libs/ion-sound/3.0.7/sounds/camera_flashing_2.mp3"]
我已阅读文档,但不理解:https://docs.videojs.com/tutorial-audio-tracks.html
请参阅codepen https://codepen.io/eabangalore/pen/pXPbwp?editors=1010(因为下面的代码不工作)。
尝试了类似以下的操作:
第一个
**问题:**我希望获得与此https://codepen.io/eabangalore/pen/NZjrNd类似的结果
Codepen(工作代码):https://codepen.io/eabangalore/pen/pXPbwp?editors=1010
请帮我提前致谢!!
4条答案
按热度按时间mzsu5hc01#
看起来您正在将空的曲目数据推送到播放列表中。请尝试:
5us2dqdw2#
我想你完全误解了这个概念视频有音频轨道en和西班牙语。
在这里,他们从视频中提取音轨,然后根据浏览器语言,如果是英语或西班牙语,他们会播放正确的视频和正确的音频。你要做的是播放一个titanic视频,它有自己的音频glass.mp3,你想把你的叮声glass.mp3上。如果你想做音频混合使用Audacity音频审计工具,而不是JavaScript。https://www.youtube.com/watch?v=iDf8BV8kj8Q
f4t66c6m3#
我认为您忽略了文档中的一个重要警告:Video.js仅存储曲目表示形式.切换要播放得音频曲目不由Video.js处理,必须在其他地方处理-例如,videojs-contrib-hls处理切换音频曲目以支持通过UI进行曲目选择.
Videojs播放您提供的视频文件,仅此而已。该视频文件应包含所有必要的音频轨道和视频轨道。这在您提供的codepen中得到了进一步证明,因为您没有看到指向声音文件的外部源链接,只有链接到视频本身。视频文件的结构和创建与几个轨道内置为不同的语言,他们已经提供。这就是您需要做的。您看到的和您创建的那些音轨定义只是告诉videojs视频文件中存在这些音轨,以便您可以在存在的音轨之间切换,而不是向播放中添加全新的音频文件。
或者,正如引用中提到的,还有其他库声称他们可以做这类事情,但这不是videojs试图解决的问题。
e4yzc0pl4#
根据文档,您需要执行以下步骤:
1.首先从列表中的轨迹创建轨迹对象:
1.通过循环播放曲目列表,将该曲目添加到播放机的音频曲目列表:
因此,在tracklist上循环时,您需要将曲目传递给
player