- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在为要上传的视频文件创建一个平台。为了让它们通过 Videojs 播放,我将/demux mkv/flv/3gp 文件转换为 mp4 文件。
我遇到的问题是,如果我对此类视频/mkv 文件进行解复用,我会收到错误消息 Video format or mime type not supported
,即使它是我计算机上的“工作”mp4 文件。
我想我知道 mkv 文件是容器,如果解复用它会保持相同的视频和音频编解码器,如果 Videojs/HTML5 不支持,则视频无法播放。如果我错了,请纠正我。
谁能告诉我为什么这个 mkv.mkv 到 mkv.mp4 的 demux 不能在我的浏览器中播放?
➜ ~ ffmpeg -i mkv.mkv -vcodec copy -acodec copy mkv.mp4
ffmpeg version 3.2.2 Copyright (c) 2000-2016 the FFmpeg developers
built with Apple LLVM version 8.0.0 (clang-800.0.42.1)
configuration: --prefix=/usr/local/Cellar/ffmpeg/3.2.2 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-libmp3lame --enable-libx264 --enable-libxvid --enable-opencl --disable-lzma --enable-vda
libavutil 55. 34.100 / 55. 34.100
libavcodec 57. 64.101 / 57. 64.101
libavformat 57. 56.100 / 57. 56.100
libavdevice 57. 1.100 / 57. 1.100
libavfilter 6. 65.100 / 6. 65.100
libavresample 3. 1. 0 / 3. 1. 0
libswscale 4. 2.100 / 4. 2.100
libswresample 2. 3.100 / 2. 3.100
libpostproc 54. 1.100 / 54. 1.100
Input #0, matroska,webm, from 'mkv.mkv':
Metadata:
ENCODER : Lavf53.24.2
Duration: 00:00:34.08, start: -1.400000, bitrate: 1232 kb/s
Stream #0:0: Video: mpeg4 (Simple Profile), yuv420p, 720x480 [SAR 1:1 DAR 3:2], 25 fps, 25 tbr, 1k tbn, 25 tbc (default)
Stream #0:1: Audio: aac (LC), 48000 Hz, 5.1, fltp (default)
Output #0, mp4, to 'mkv.mp4':
Metadata:
encoder : Lavf57.56.100
Stream #0:0: Video: mpeg4 (Simple Profile) ( [0][0][0] / 0x0020), yuv420p, 720x480 [SAR 1:1 DAR 3:2], q=2-31, 25 fps, 25 tbr, 16k tbn, 1k tbc (default)
Stream #0:1: Audio: aac (LC) ([64][0][0][0] / 0x0040), 48000 Hz, 5.1 (default)
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
frame= 887 fps=0.0 q=-1.0 Lsize= 5130kB time=00:00:35.45 bitrate=1185.4kbits/s speed= 668x
video:3447kB audio:1663kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.401607%
最佳答案
正如评论中提到的,您正在重新混合 MPEG-4 Part 2 视频,但您的浏览器不支持。您需要重新编码为 H.264:
ffmpeg -i input -c:v libx264 -c:a copy -movflags +faststart output.mp4
-movflags +faststart
添加以重新定位某些数据,以便无需事先完全下载文件即可开始播放。 -ac 2
将其缩混为立体声. -profile:v
和 -level
取决于您是否需要支持旧设备。 关于html - Videojs 不播放转换后的 mp4 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41949324/
我在一个网站上工作,我试图制作一个自定义主题播放列表来播放 YouTube 上托管的视频。我已经在网站的另一部分成功地一起使用了 VideoJS 和 VideoJS-YouTube,但是在引入 Vid
我有一个使用 symfony 的项目,我使用 encoreJS 作为前端。实际上我制作了一个视频列表播放器并且工作正常。但我想使用 videojs-playlist-ui 来制作 example 但是
我发现了videojs播放列表的各种插件。有些需要修改才能与最新版本一起运行。我还发现了可以运行youtube视频的插件。 我需要知道,是否可以同时运行两个插件。就像我想通过同一播放器运行音频,视频和
我正在使用一个允许我在 video-js 中显示广告的插件。 https://github.com/dirkjanm/videojs-preroll/blob/master/lib/videojs.a
我现在想出了这个解决方案: var myPlayer1 = _V_("ID1"); var myPlayer2 = _V_("ID2"); ... ... va
我正在尝试(已经几天)完成非常简单的任务:构建一个 javascript 文件,捆绑所有必要的部分以使用 Google IMA 广告播放视频,但我仍然面临一些错误(主要是 player.ads not
本文实例为大家分享了videojs+swiper实现淘宝商品详情轮播图的具体代码,供大家参考,具体内容如下 这个引用了videojs和swiper。实现效果类似淘宝商品详情中的轮播图,首张轮播为视
我正在使用 VideoJs(使用 HTML5 播放器)播放来自 DASH 或 HLS 源的实时内容。 我想知道实际播放内容与实际直播内容相差多少。 我该怎么做? 有一个 player.currentT
我已经设置了 videojs 播放器并获得了一个 HLS 流以通过 OBS 传输到播放器。当 OBS 正在运行并将视频发送到流时,播放器上会出现播放按钮,它看起来很正常,但是当没有任何内容流式传输到页
我使用videojs插件自定义视频播放器。 我有30个模态,每个模态(Youtube,Dailymotion,Vimeo)中都有一个不同的视频。 我添加了两个按钮next / prev,以在每个模式之
我正在其他域的iframe中从https://github.com/videojs/videojs-youtube加载/videojs-youtube/examples/simple.html示例页面
我对手动(单击按钮)使用videojs使用相同的html video标签(如果可能)触发播放不同的youtube url感兴趣。 我看到了这段代码,这使我希望这是可行的:http://jsfiddle
由于 JWPlayer 可笑的定价政策,我转向了 VideoJS。 问题是,当用户在 iOS 上启动视频时,它会切换 native 全屏。我希望控制面板在全屏模式下可用,但我还无法管理它。 代码:
我有最新的videojs(版本:7.6.6)。 是否可以使进度条可拖动? 当前状态:当我在进度条上移动鼠标时,第一件事是播放器等待下载几帧,然后移动。 想要:我可以将鼠标(单击状态 = mouseDo
我希望动态更改我的 VideoJS 播放器的视频源。我尝试了一种直接通过 DOM 更改源的方法,它确实改变了它,但播放器需要重新加载。所以看这里的官方API:http://docs.videojs.c
关闭。这个问题需要多问focused 。目前不接受答案。 想要改进此问题吗?更新问题,使其仅关注一个问题 editing this post . 已关闭 5 年前。 Improve this ques
所以我制作了一个脚本来在播放器之外显示当前时间,一切正常。问题是它以微秒为单位渲染,我想将其显示为 H:MM:SS 这是代码,以便您可以理解我在说什么: HTML T
我想制作一个播放列表,视频源和海报是动态加载的。这是我的代码 var myFunc = function(){ var myPlayer = this; var xmlhttp; xmlhttp =
我正在使用 VideoJS 播放文件服务器提供的视频。这些文件是 mp4 格式,并且在任何桌面浏览器上都可以正常工作(使用 Flash 后备)。但是,它们在移动设备上根本不起作用。作为引用,请随时查看
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 3 年前。 Improve this qu
我是一名优秀的程序员,十分优秀!