【问题标题】:Windows application on closeWindows 应用程序关闭
【发布时间】:2010-12-03 00:43:49
【问题描述】:

这个问题是关于 MIDI 应用程序在应用程序启动时会收到 MIDI 缓冲区突然溢出的问题。

任何人知道如何在程序接受传入数据之前清除从 MIDI Yoke 或 LoopBe 排队的任何 MIDI 数据?

【问题讨论】:

    标签: c++ c windows midi audio


    【解决方案1】:

    我很难准确理解您在问什么,但听起来您想在开始使用输入流之前刷新它。如果是这种情况,那么您可以在程序的启动代码(伪代码)的早期使用这样的简单循环:

    while input queue is not empty:
        buffer = read_from_queue()
        // Don't do anything with 'buffer'
    loop
    

    本质上,从输入队列中读取一点并将其丢弃,然后重复直到队列为空。如果不了解您的程序,我无法给出更详细的描述。

    【讨论】:

    • 那不是 MIDI 缓冲区,对吧?意思是,在启动应用程序时,在接受传入的 MIDI 事件之前刷新 MIDI 缓冲区。 Windows C/C++ API 上有这样的 MIDI 命令吗?
    猜你喜欢
    • 1970-01-01
    • 2012-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-04
    • 2016-10-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多