问题标签 [audio-video-sync]

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 回答
1991 浏览

java - Xuggler 是否有更高级别的 API?

下载并使用 Xuggler 后,我的第一印象非常好;它支持一整套编解码器,上手相对轻松,入门教程视频非常清楚地解释了所有必要的概念。

然而,在玩了几天之后,我真的很想把所有的音频和视频都很好地同步起来。正常播放时很好,但是当我的外部硬盘驱动器旋转时添加暂停、搜索和偶尔的 6 秒暂停时,它绝对是一场噩梦。

我已经部分实现了一些东西,但它远非完美——你可以四处寻找几次,但过了一段时间它仍然会消失。

我不禁想到这是 Xuggler 的一个常见用例,肯定有人已经比我做得更好了。但是,唉,除了网站上的例子之外,我找不到任何例子。是否有更高级别的 API 来管理所有音频/视频同步问题,并且只提供一些更高级别的控制(播放、暂停、停止等)?如果那里没有任何东西,我自己做这件事没有问题,但我从来都不喜欢重新发明轮子(特别是如果我的新轮子很可能比旧轮子更糟糕!)

0 投票
1 回答
1128 浏览

ipad - A/V 同步问题 - Apple 的 HTTP Live Streaming

当我尝试从 iPad 2.0/1.0 中的 Safari 浏览器流式传输由 3rd 方多路复用器(Mainconcept/Elecard)生成的 TS 块时,我总是在一段时间内看到音频视频同步问题。

但相同的剪辑在 Windows PC 或 Macbook 的标准媒体播放器中播放良好。

我还观察到,当我尝试在 MACbook 中流式传输由 Media File Segmenter 工具生成的 TS 块时,iPad 中没有问题。

iPad 对第 3 方多路复用器的期望是什么?

例如:当我尝试在 Ipad 中流式传输一组 TS 块时,总块持续时间为 5 米 35 秒(包括所有 TS 块),我观察到音频在 2 米 40 秒后不同步。

以下是用于生成 TS 块的媒体管道

Video.mp4 (Source)-> Mainconcept MPEG4 DeMultiplexer-> Mainconcept MPEG Multiplxer-> Mainconcept Sink Filter (根据时间生成TS块)

有人可以分享一些关于 iPad HLS 行为的观点吗?iPad 是否需要一些额外的同步参数?

谢谢。

0 投票
1 回答
4465 浏览

video - 使用 Ffmpeg 同步解码的视频

我正在使用 Ffmpeg 解码和播放视频文件。我目前已经以 CPU 可以解码和显示它们的速度播放视频和音频。问题是我想使用系统时钟同步播放视频和音频。

我四处寻找一些帮助,但除了 dranger 的教程 05之外找不到任何实质性的东西,但我真的不明白他在做什么,因为我的程序与他的编写方式不同。

我正在使用 mjpeg 文件,因此每次解码一帧时似乎都会检索 pts,我已经将 pts 乘以 time_base,就像 dranger 所做的那样以秒为单位获得值,但分辨率似乎只有几秒钟,所以我得到了当视频以每秒 25 帧的速度运行时,值“6”25 次,然后“7”25 次。

没有更准确的值吗?或者获得更准确值的方法,如果是这样,我将如何同步到这个值?我正在使用 SDL 来显示值,所以我可以只使用我得到的值的 SDL_Delay() 吗?

谢谢你的时间,

无限化

0 投票
1 回答
1760 浏览

python - 如何:使用 gst 和 python 创建视频聊天,并在单个 gtk 窗口中显示发起者和接受者的视频

我正在使用 gst 和 python 开发视频聊天。在哪里,我想查看最终用户的网络摄像头,也想在一个 gtk 窗口中查看我自己的网络摄像头(类似于 empathy 视频聊天)。

为此,我使用了 gst.Tee 对象并创建了 2 个队列,一个将结果链接到本地​​ gtk 窗口,第二个队列将相同的视频流链接到会话对象。

gst.Tee 完成了任务,但也降低了视频聊天的速度,视频比音频晚。(我为音频会话使用了不同的流)

在这里,代码片段:

我将如何加快视频聊天(例如,如果我使用单个接收器并仅显示接受者的视频,效果会很好)?

还有其他方法可以做到这一点吗?

谢谢!

0 投票
1 回答
2350 浏览

linux - 从电视调谐器/网络摄像头录制,gstreamer 和音频/视频不同步

我有一张显示为/dev/video1. 我正在尝试将一些旧 VHS 磁带数字化。电视调谐器不做音频,我有一根线连接到我的麦克风。

这是我用来捕获视频和音频并将其保存到文件的 gstreamer 管道。我正在使用运动 jpeg,因为我不希望它丢帧和丢失内容。稍后我会更好地重新编码。

这一切都很好。我有播放有视频和音频的文件。但是,有时在播放输出文件时,音频和视频会不同步。它发生在视频中的同一位置,在许多不同的媒体播放器(totem、mplayer)上。所以我认为这是我如何保存和记录文件的问题。

我可以对管道做些什么来降低它出现音频/视频同步问题的可能性吗?我是 gstreamer 和视频/音频编解码器的新手,所以我可能在这里做一些愚蠢的事情(请指出!)。有没有更好的视频/音频/复用器编解码器?

0 投票
1 回答
1542 浏览

ffmpeg - ffmpeg video-concatenation - 音频/视频轨道同步

我想连接随机格式的不同视频文件。首先,我将它们转换为 flv,将每个视频的帧速率调整为最低的相关视频。下一步是对它们进行解码并删除标题(但不是序列中第一个视频的标题,然后我将它们与 cat 连接,最后对结果序列进行编码。

但是从序列部分到序列部分,视频和音频轨道越来越不同步。

很高兴有任何想法。

0 投票
1 回答
5100 浏览

ffmpeg - 与 ffmpeg 的音视频同步

我有非常奇怪的视频文件。它有音频/视频同步问题。视频很快,音频很好。视频有奇怪的帧速率:26.07 fps。

如何使用 ffmpeg 修复视频流。在视频开始时,同步正常,但在视频流结束时,还剩下大约 5 分钟的音频,并且正在播放黑屏。

这是 ffmpeg -i video.avi 的输出

0 投票
1 回答
7191 浏览

streaming - 使用 gstreamer 组合音频和视频流

我正在使用 gstreamer over RTP 流将 mp4(mpeg-4) 文件从一个设备流式传输到另一个设备。基本上,我将 mp4 文件拆分为其音频和视频文件,然后将其全部发送到流式传输的其他设备。现在,我想将 mp4 文件保存到另一台设备的磁盘中,但我的问题是我可以单独保存音频和视频文件,并且无法单独播放。

我对如何组合音频和视频 rtp 流以形成我的 mp4 文件并将其保存到另一个设备中的文件感到困惑。

以下是命令行代码:

发件人(服务器)

收货人(客户)

0 投票
2 回答
1425 浏览

audio - 如何保持音视频(GEM)同步?

这是设置:

我有一个持续时间相同的视频文件和一个音频文件。视频文件通过 播放,[pix_film]音频文件通过播放[readsf~],然后两者都被用户交互触发的几种效果扭曲。

如何保持视频和音频同步?

0 投票
2 回答
2210 浏览

android - 如果我在 mp4parser 中合并更多视频,音频和视频未正确同步

我使用 mp4parser 将视频与动态暂停合并并录制视频捕获,最长录制时间为 6 秒。在以最小暂停/录制录制视频时预览其工作正常,如果我尝试超过 3 次暂停/录制意味着最后一个视频文件没有与音频正确合并。在视频开始时同步正常,但在结束时视频挂起,音频在屏幕上播放,剩余文件持续时间约为 1 秒。

我的录音管理器

视频工具

我的参考代码项目链接是

https://github.com/jwfing/AndroidVideoKit