2014-01-05 2 views
5

Для моего Android-приложения требуется несколько музыкальных нот треков для одновременной и синхронной воспроизведения (например, трек ударных и трек вокала, который играет вместе, но который может быть индивидуально отключен). Усилия с SoundPool были бесплодными - даже если я звоню SoundPool.play() в двух последовательных линиях, всегда присутствует заметная задержка.Поддерживается ли JetCreator (и/или JETPlayer устарел?)

Класс 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 

ответ

0

Как ваш вопрос довольно старый я надеюсь, что мой ответ до сих пор помогает вам или кому-либо еще.

Установка Python для JET Творца

Как читать JETCreator не поддерживается в более новых версиях питона, поэтому использование:

  • Python версии 2.5.4 (питон-2.5.4.msi)
  • WxPython 2.8 (wxPython2.8-win32-юникод-2.8.7.1-py25.exe)

этого руководство http://www.tutorialspoint.com/android/android_jetplayer.html для установки python и wxpython. Установка Python и JETCreator может быть довольно сложной, поэтому вы должны быть очень осторожны. Я должен был попробовать несколько раз, пока он не работал правильно.

Вы можете загрузить DEMo-Data из github или в другое место! JETCreator читает в файлах MIDI и производит JETfiles

В JETCreator вы можете теперь установить MUTE-флаги для своих треков. Вы должны помнить «дезимальное число» muteflag, поскольку они представляют «двоичное число» приглушенных дорожек. Вы должны реализовать этот номер в своем проекте Android.

Используйте созданные данные в затмении:

НАГРУЗКИ данных

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(); 

SET MUTE flages, например.: В на OnClickListener

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

Relesae ваш JETPlayer при остановке

mJet.release(); 

Если есть какие-либо вопросы, не стесняйтесь спрашивать!

PS: MIDI-файлы не поддерживают «человеческий голос», и вокал не может воспроизводиться.

Смежные вопросы