如果可能的话,如何使用VLC将mp4转换为webm?我应该选择哪种编解码器?我需要重新编码声音吗?
我正在尝试将html5视频放在一个闪存作为后备的网站上.据我所知,它是Firefox允许的唯一格式(webm)(除非你在Windows 7 64bit上?).Theora似乎工作,但从我的理解它有点旧,也需要一段时间才能正确渲染图片并且不提供缩略图:(
<video controls width="500">
<!-- if Firefox -->
<source src="video/45-theora.ogg" type="video/ogg" />
<!-- if Safari/Chrome-->
<source src="video/45.mp4" type="video/mp4" />
</video>
Run Code Online (Sandbox Code Playgroud)
哦,我在Mac OS Lion上,但如果它让某人更容易,我可以访问Windows 7,Vista和XP.
谢谢你的帮助!
实际上,我有一个带有JavaScript功能的HTML5页面,允许我播放一个wmv视频文件.我需要在播放视频时(暂停或不播放)拍摄快照,并以任何图像格式保存JPG或BMP.任何帮助将不胜感激.谢谢.
<!DOCTYPE HTML>
<html>
<head>
<title>HTML5 video</title>
<script type="text/javascript">
function checkPlay() {
var myVideo = document.getElementById("myVid");
var ytStr = '<iframe width="500" height="500" src="C:\XA0002.wmv" frameborder="0" allowfullscreen></iframe>';
try {
var canPlay = document.getElementsByTagName('video')[0].canPlayType("video/wmv");
if ((canPlay == "no") || (canPlay == "")) {
myVideo.innerHTML = ytStr;
}
new MediaElement(v, { success: function (media) { media.play(); } });
} catch (err) {
myVideo.innerHTML = ytStr;
}
}
</script>
</head>
<body onload="checkPlay()">
<div id="myVid"/>
</body>
</html>
Run Code Online (Sandbox Code Playgroud) 我的研究让我了解到Apple的媒体元素处理程序是一个单例,这意味着我在后台video播放时无法audio播放.我的任务是建立一个幻灯片演示框架,客户想要一个背景音轨,与子弹点匹配的定时音频画外音,以及可以是图像或视频的可变媒体 - 或多个媒体元素的定时循环.
当然,这些媒体都不适用于iOS.每个媒体元素都取消了之前的内容.
我最初的想法是在有视频存在时将配音音频嵌入到视频中,但是这个设置的现有Flash版本依赖于现有资产,因此我几乎必须使用已交付的内容.
这有什么解决方法吗?我正在iOS 4.3.5上测试.世界上最聪明的开发者都在这个网站上 - 我们必须能够想出一些东西.
编辑:我的iPad更新到iOS 5.0.1,问题仍然存在.
我正在使用视频标签在HTML5中创建应用程序,在用户选择视频文件的应用程序中我播放该文件.这一切都发生在本地,因为我只链接到用户机器中的那个文件.
我想只允许浏览器可以播放的格式在我的应用程序中播放,并显示不支持格式的错误.问题是不同的浏览器可以播放不同的格式.
我知道我可以检查浏览器并将其与我知道它可以播放的格式相匹配,但是如果浏览器更新以支持其他格式怎么办?我将不得不使用新信息更新我的应用程序,同时用户将无法播放支持的格式.有没有办法检查支持的视频格式?
我一直想知道DOCTYPE之前是否有空格,但我似乎无法在网上找到任何确切的信息.人们说不要这样做,但我看不出它可能会产生什么影响,或者即使规范说它必须是这样的.我无法弄清楚它是否会触发IE中的兼容模式或类似的烦人行为.
原因是,在我的(糟糕的asp.net)代码中,我更愿意写:
<%@ Page language="c#" Codepage="65001" AutoEventWireup="true" %>
<%@ OutputCache Location="None" VaryByParam="none" %>
<!doctype html>
Run Code Online (Sandbox Code Playgroud)
比:
<%@ Page language="c#" Codepage="65001" AutoEventWireup="true" %><%@ OutputCache Location="None" VaryByParam="none" %><!doctype html>
Run Code Online (Sandbox Code Playgroud)
因为第一个更整洁.但顶部的结果是渲染的html中有一些空白行.
不是一个大问题.我一直想知道它是否重要:)
我正在构建一个用于管理HTML5视频的jQuery插件.我正在尝试捕捉canplay和canplaythrough事件.在Chrome中,该事件被解雇没有问题.在Firefox中,有时触发它,有时它不是.
我在这里简化了我的代码:
$('#my_video').on('canplay canplaythrough', function(){
console.log('canplay event fired');
});
Run Code Online (Sandbox Code Playgroud)
我也尝试使用原生的javascript .addEventListener()并且它不起作用.
知道为什么没有在Firefox上调用该事件以及如何解决这个问题?
注意:请不要告诉我使用已经可用的插件,如jplayer和video-js,我知道它们存在并运行良好,但我必须构建一个内部解决方案.
我有一个视频元素:
var video = window.content.document.createElement("video");
video.width = width;
video.height = height;
video.style.backgroundColor = "black";
window.content.document.body.appendChild(video);
Run Code Online (Sandbox Code Playgroud)
我正在通过Firefox 上的getUserMedia()检索它的源代码:
window.navigator.getMedia = ( window.navigator.getUserMedia || window.navigator.webkitGetUserMedia || window.navigator.mozGetUserMedia || window.navigator.msGetUserMedia);
window.navigator.getMedia( //constraints, sucessCallback, errorCallback
{video: true, audio: false},
function(stream) {
if (window.navigator.mozGetUserMedia)
video.mozSrcObject = stream;
else
{
var vendorURL = window.URL || window.webkitURL;
video.src = vendorURL.createObjectURL(stream);
}
video.play();
},
function(err) {
console.log("Error: " + err);
}
);
Run Code Online (Sandbox Code Playgroud)
问题是我需要知道视频的"活动区域",并且它返回0:
video.onloadedmetadata = function(){
console.log(this.width + "x" +this.height);
console.log(this.videoWidth + "x" +this.videoHeight);
}
Run Code Online (Sandbox Code Playgroud)
那么,我该如何检索REAL值?:

javascript html5 firefox-addon html5-video firefox-addon-sdk
我正在通过ffmpeg编辑一个视频,我必须在这里继续查看时间戳,从几秒到几毫秒.我知道这样的命令:ffmpeg -i a.ogg -ss 00:01:02 -to 00:01:03 -c copy x2.ogg.它指向秒,但我想要毫秒.我该怎么办?
这一整天都在扼杀我,但我不知道如何让html5视频播放器在没有原生控件的情况下工作.
我想要没有任何控件,但如果我不包含它们,视频似乎不想播放,即使我在下面添加一些javascript试图强制它播放,它适用于iPhone和多个浏览器,但不是iPad这是奇怪的,任何想法?
如果它有帮助,这里有一些标记!
<video src="video.mp4" id="video" poster="image.jpg" onclick="this.play();"/></video>
$('#video').click(function(){
document.getElementById('video').play();
});
Run Code Online (Sandbox Code Playgroud) 我正在设计一个自定义HTML5视频播放器.因此,它将有自己的自定义滑块来模仿视频进度,所以我需要了解HTML5视频的整个缓冲shebang .
我看到了这篇文章:视频缓冲.它表示缓冲对象由几个时间范围组成,它们以开始时间的线性顺序排列.但我找不到以下内容:
说视频开始了.它自己一直持续到1:45(偶尔也会停滞,等待进一步的数据),之后我突然跳到32:45.现在过了一段时间,如果我跳回到1:27(在最初加载和播放的时间范围内,在我跳跃之前),它会立即开始播放,因为之前已经加载了吗?或者是因为我跳了一下,那部分会丢失并且必须再次取出?无论哪种方式,所有这些情况的行为是否一致?
假设我做了5或6次这样的跳转,每次等待几秒钟以便在跳转后加载一些数据.这是否意味着该buffered对象将存储所有这些时间范围?或者有些人会迷路?它是一种堆栈类型的东西,因为更多的范围由于进一步的跳跃而加载,早期的范围会弹出吗?
将检查buffered对象是否具有从0开始的一个时间范围(忘记直播流)并以视频持续时间长度结束,以确保整个视频资源已完全加载?如果没有,是否有某种方式可以知道整个视频已被下载,并且任何部分都是可搜索的,视频可以连续播放而不会有片刻的延迟?
W3C规范在这方面不是很清楚,我也找不到一个适当大的(比如一个多小时)远程视频资源来测试.
html5-video ×10
html5 ×6
javascript ×5
html ×2
ipad ×2
jquery ×2
asp.net ×1
buffering ×1
codec ×1
command ×1
doctype ×1
ffmpeg ×1
ios ×1
milliseconds ×1
snapshot ×1
video ×1
video-codecs ×1
vlc ×1
web ×1