- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想创建一个更改为 MIDI 文件上的注释的视频。我正在录制 MIDI,然后将其输出为 wav。
在java中,我读取midi文件,根据演奏的音符创建图像。我正在计算音符之间的时间,并使用它来确定使用以下代码的帧数:
for(int i = 0; i < noteImages.size(); i++) {
for(int j = 0; j < frameRate * (noteLengths.get(i) / 1000); j++) {
videoFrames.add(noteImages.get(i));
frameCount++;
}
}
然后,我使用 ffmpeg 使用以下命令从带有音频的图像创建视频:
ffmpeg -r 60 -f image2 -i pic%05d.png -itsoffset 3 -i audio.wav -c:v libx264 -c:a aac -pix_fmt yuv420p -crf 23 -r 24 -shortest -y output.mp4
音频开始时正常,然后逐渐不同步。如果我在创建图像时使用更高的 fps,则效果不太明显,但我需要至少使用 300fps 才能使其接近,但它仍然不太正确。关于如何纠正这个问题有什么想法吗?
最佳答案
除以 1000 将导致舍入错误,除非长度已经是 1000 的倍数。
您必须仅在计算的最后一步进行舍入(以便误差始终小于一帧):
j < (frameRate * noteLengths.get(i)) / 1000
如果值可能大于 2×109,请使用长
乘法。
关于java - 音频漂移问题。以编程方式创建视频帧并与 java 中的 midi/音频同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46070456/
我希望创建能够快速重复的功能 - 大约 50 毫秒。然而,我需要在调用中尽可能保持一致性,并且我发现 NSTimer 有点不稳定。看来我可能会从 mach_absolute_time 找到一些保持时间
根据 API 文档以及之前的 SO threads , SystemClock.elapsedRealtime() 应该即使在设备处于 sleep 状态时也能保持准确的时间。这不是我观察到的。 我编写
我想开发在谷歌地图上绘制当前位置的应用程序。在这里,我通过 LocationManager(GPS 提供商和网络提供商)的 onLocationChanged 获取位置详细信息。我能够获取位置详细信息
我有一个使用 MKMapView 的简单 iPhone 应用程序。它有一个分段控件,可以调整要缩放的区域(街道、社区、城市、州、世界)。它工作正常,但如果我缩小到州级别并回到街道,我注意到中心点已经移
我正在尝试在连接到本地 NTP 服务器的 Mac 上获取实际的 NTP 漂移。 读取/var/db/ntp.drift 文件时,根据PPM to milliseconds conversion 得到-
我有一个 AWS Cloud Formation 堆栈。我启动并停止了该堆栈中的 EC2 实例。现在堆栈已漂移,下面是漂移结果。我该如何解决这个问题,因为预期和实际都是相同的。 最佳答案 我不相信这与
我是一名优秀的程序员,十分优秀!