问题标签 [mp4box]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1858 浏览

node.js - 如何在代码级别生成 mpd(MPEG Dash 清单)文件

如何在代码级别创建 MPEG Dash (mpd) 文件。我找不到这样做的方法。最好有一个 node js 示例。我可以在命令行中做到这一点。我使用了 MP4Box 工具但我需要在我的节点 js 应用程序中执行此操作。

0 投票
0 回答
88 浏览

ffmpeg - 使用 MP4box 创建字幕 mpd 文件

我正在为视频播放器创建一个 mpd 文件,现在我拥有涵盖视频、音频和语言设置的所有内容,但我正在努力解决字幕问题。

这是我用于音频和视频的命令:

0 投票
1 回答
236 浏览

ios - 如何为 iOS 设备支持的自适应流制作文件 .mpd

我想在 Ubuntu 服务器上做 DASH 自适应流。我使用 ffmpeg 和 MP4Box 将视频转换为 .mpd 文件。

下面是我用于转换和生成文件的命令

在浏览器端,我实现dash.js了视频播放器。问题是它适用于桌面/iPad 上的 Chrome、Firefox 和 Safari,但不适用于所有 iPhone。

如何解决?

0 投票
1 回答
506 浏览

javascript - 如何使用媒体源扩展将音频添加到视频流

我有一个 mp4 文件 sample.mp4。我使用 mp4box 将其转换为段和 mpd 使用如何使用 MP4Box 创建 mpd 文件 现在我的代码来自此。创建片段后,视频将在浏览器中播放。但是没有音频。

形成的文件如下: 使用 mp4box 将 sample.mp4 转换为 mpd 后形成的文件

我在这里有两个疑问。

首先,如何在 MSE(媒体源扩展)中使用 javascript 向该视频添加音频?视频正在静音播放。

其次,新的格式文件名为 sample_dash_track1_init.mp4 和 sample_dash_track2_init.mp4。当视频播放第一个文件及其片段时,第二个文件及其片段有什么用?

0 投票
1 回答
376 浏览

raspberry-pi - 树莓派 4 保存损坏的 h264 文件?

我已经能够毫无问题地记录 .h264 文件,无论是使用 raspivid 还是通过 Python,但无论我尝试什么,我都无法将它们转换为 .mp4、.mkv 或 .avi 文件。

我尝试使用 MP4box(在多个地方建议)和 mkvmerge 进行转换,但无济于事。

当我使用 MP4box(MP4box -add <source.h264> <dest.mp4>)时,我得到:

然后我尝试使用 VLC 播放这个文件,它没有报错,但显示乱码数据。

需要明确的是,相机工作正常(使用 Python 代码显示完美的视频,并且 raspistill 输出完美的 jpg 文件)。我也尝试了不同的相机。

尝试使用 mkvmerge :

这是在树莓派 4 上。

可以在此处找到示例文件:https ://filebin.net/c40usz0crhgggadf 创建于:raspivid -t 30000 -w 640 -h 480 -fps 25 -b 1200000 -p 0,0,640,480 -o pivideo.h264

0 投票
0 回答
280 浏览

javascript - 如何使用 mp4box.js 创建碎片文件

我知道你可以这样做来创建一个破折号文件:

但是在我通过cdn链接mp4box.js的javascript中,等价物(给出文件名,并将其转换为破折号文件)是什么?

我已经尝试查看文档,我会继续查看它们,但我确定他们没有展示如何以最有效的方式将 mp4box 与 js 一起使用,这让我很困惑。

我在这里查看这个,因为它似乎是我必须使用的一部分,但它甚至不包含它工作所需的一切:

文档 - > https://github.com/gpac/mp4box.js/

如果有人有任何想法,那就太好了。

0 投票
1 回答
266 浏览

ffmpeg - 仅使用 mp4box 为我的清单创建不同的质量

我在 slack 上问了一个问题,为什么我的短跑视频的质量和比特率没有改变,我得到了这个回复:You only have one quality in your manifest. there is no way for the player to choose a different one

那么如何才能创造出不同的“品质”呢?

我有一个 mp4box 命令,例如:

是否可以仅使用 mp4box 创建不同的“质量”,或者我是否必须使用 ffmpeg 之类的东西创建具有不同分辨率的相同视频,然后将它们输入到上述命令的输入中?

0 投票
0 回答
78 浏览

javascript - 使用 MP4box.js 和 onSegment 回调不调用 no websocket

所以我正在尝试使用 MP4Box.js。它在其自述页面上声明:它有一个演示:“一个执行即时碎片的播放器”。

然而,应该提供 MSE 的 onSegment 回调根本不会被调用:

现在把它放到一个 HTML 文件中会在 JavaScript 控制台中产生这个结果:

但之后什么也没有发生。为什么这里没有调用 onSegment?

0 投票
1 回答
219 浏览

javascript - 将非分段 mp4 重新编码为分段 mp4

我正在使用MediaSource扩展程序播放视频。但是,MediaSource 仅支持分段的 MP4 视频。

如何在 JavaScript 中将非分段 MP4 视频转换为分段 MP4 视频,以便我可以MediaSource用来播放视频?

MP4Box 对非分段视频的isFragmented布尔返回:false

如何使用 JavaScript 将 MP4 视频重新编码为片段?

0 投票
1 回答
51 浏览

powershell - 如何在另一个 powershell 命令中使用输出文件?

我首先使用自动编辑器剪掉静止的部分,然后使用 Mp4Box 添加我的介绍。

我不知道如何将自动编辑器的输出自动使用到 Mp4Box 中。

这就是我到目前为止所拥有的。

我尝试添加 $a 以使输出变为变量,但这不起作用。由于 Mp4Box 比自动编辑器快得多,因此我将脚本反转以进行测试。