【问题标题】:About attempting to sync audio and video关于尝试同步音频和视频
【发布时间】:2013-12-03 03:09:18
【问题描述】:

我有一个使用 SDL2/SDL_mixer 和其他几个声音库的小项目。我已经尝试了一段时间来同步我的音频和视频,但未能成功实现它。这些东西都是新手,所以请原谅穷人的逻辑和编码。起初我想在每帧之后将延迟设置为 SDL_Delay(30),然后在该范围内设置一些其他数字。不太对。然后我尝试通过获取 Ticks 来做到这一点。如果滴答声之间的增量

【问题讨论】:

    标签: c audio video sdl-2


    【解决方案1】:

    同步音频和视频的基本方法是选择一个用作计时器源并根据该计时器呈现另一个。最简单的通常是音频,但由于它通常在前面缓冲,因此您需要一些方法来测量音频流中实际从扬声器发出的时间。一旦你明白了,只需等待音频到达下一个视频帧的正确时间并显示它。

    【讨论】:

    • 知道如何使用 SDL 音频 API 完成此操作吗?您填写了一个缓冲区,所以看不到您如何知道缓冲的数量或当前位置?
    • @paulm: 看看 mplayer 的 ao_sdl 模块是怎么做的。
    • SSL“拉取”方法可能只是避免了明显的缓冲,并且仅在需要音频之前调用您的回调。我不知道。您可能应该问一个关于如何在 SDL API 中确定音频缓冲深度的新问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-12-16
    • 2016-05-26
    • 2018-07-10
    • 1970-01-01
    • 1970-01-01
    • 2012-03-16
    • 2012-07-11
    相关资源
    最近更新 更多