【问题标题】:Is JetCreator still maintained (and/or is JETPlayer deprecated?)JetCreator 是否仍在维护(和/或 JETPlayer 是否已弃用?)
【发布时间】:2014-01-05 04:55:56
【问题描述】:

我的 Android 应用需要同时同步播放多个音乐音轨(例如,一起播放的鼓音轨和人声音轨,但可以单独静音)。使用SoundPool 的努力没有结果——即使我连续两行调用SoundPool.play(),也总会引入可察觉的延迟。

JetPlayer 类似乎非常适合我的需要,但似乎也没有人使用它——文档最后一次更新是在四年前,维护者的网站已关闭,相关的 JetCreator 工具不能在现代版本的 Python、wxPython 上运行(因 wxPython C++ 断言而崩溃),没有明显的解决方法/常见问题解答。

问题: JetPlayer/JetCreator 是废弃软件,还是我应该继续努力让它运行?

推论:如果它仍在使用,任何人都可以就以下wxPython 错误提出建议吗?

  File "/usr/local/lib/wxPython-3.0.0.0/lib/python2.7/site-packages/wx-3.0-osx
  _cocoa/wx/_gdi.py", line 5317, in __init__
     _gdi_.AutoBufferedPaintDC_swiginit(self,_gdi_.new_AutoBufferedPaintDC(*args, **kwargs))
wx._core.PyAssertionError: C++ assertion "window->MacGetCGContextRef() != NULL" 
failed at /BUILD/wxPython-src-3.0.0.0/src/osx/carbon/dcclient.cpp(195) in wxPaintDCImpl(): using wxPaintDC without being in a native paint event

【问题讨论】:

    标签: android wxpython android-mediaplayer


    【解决方案1】:

    由于您的问题已经很老了,我希望我的回答仍然可以帮助您或其他任何人。

    为 JET Creator 安装 Python

    由于较新版本的 python 不支持读取 JETCreator,因此使用:

    • Python 版本 2.5.4 (python-2.5.4.msi)
    • wxPython 2.8 (wxPython2.8-win32-unicode-2.8.7.1-py25.exe)

    按照本教程 http://www.tutorialspoint.com/android/android_jetplayer.html 用于安装 python 和 wxpython。 安装 Python 和 JETCreator 可能非常棘手,因此您必须非常小心。 我不得不尝试几次,直到它正常工作。

    然后您可以从 github 或其他任何地方下载 DEMo-Data! JETCreator 读取 MIDI 文件并生成 JETfiles

    在 JETCreator 中,您现在可以为您的曲目设置 MUTE 标志。 您必须记住静音标志的“十进制数”,因为它们代表静音轨道的“二进制数”。你必须在你的 Android 项目中实现这个数字。

    在 eclipse 中使用你创建的数据:

    加载数据

        mJet = JetPlayer.getJetPlayer();
        mJet.setEventListener(this);
        AssetFileDescriptor afd = this.getResources().openRawResourceFd(R.raw.demo);
        mJet.loadJetFile(afd);
    

    呼叫 JETplayer

        mJet.clearQueue();
        mJet.queueJetSegment(0, 0, -1, 0, 0, (byte) 0);
        mJet.play();
    

    设置静音标志,例如:在 OnClickListener 上

        mJet.setMuteFlags(0b1110, false); //0b1110 = 14       
    

    停止时释放您的 JETPlayer

        mJet.release();
    

    如果有任何问题,请不要犹豫!

    PS:MIDI 文件不支持“人声”,因此无法播放人声。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-11
      • 2014-06-14
      • 1970-01-01
      相关资源
      最近更新 更多