2016-07-14 6 views
0

私は単純なlibPdプロジェクトを持っています。今、私は.wavファイルをダウンロードしていました。私は純粋なデータファイルを代わりに再生したいのです。 これは可能でしょうか? もしそうなら、どうすればいいですか?libPdでwavファイルを再生するには

これは私のプロジェクトです:

public class MainActivity extends AppCompatActivity { 

private Button kickButton, bassButton; 
private PdUiDispatcher dispatcher; 
private boolean isClicked; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 



    kickButton = (Button) findViewById(R.id.kickButton); 
    bassButton = (Button) findViewById(R.id.bassButton); 

    int sampleRat = AudioParameters.suggestSampleRate(); 
    try { 
     PdAudio.initAudio(sampleRat,0,2,8,true); 
     dispatcher = new PdUiDispatcher(); 
     PdBase.setReceiver(dispatcher); 

     File dir = getFilesDir(); 
     IoUtils.extractZipResource(getResources().openRawResource(R.raw.simplepatch),dir,true); 
     File pdPatch = new File(dir, "simplepatch.pd"); 
     PdBase.openPatch(pdPatch.getAbsolutePath()); 

    } catch (IOException e) { 
     e.printStackTrace(); 
    } 



    kickButton.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      isClicked = !isClicked; 

      float val = (isClicked) ? 1.0f : 0.0f; 
      PdBase.sendFloat("onOff", val); 
     } 
    }); 

} 

@Override 
protected void onResume() { 
    super.onResume(); 
    PdAudio.startAudio(this); 
} 

@Override 
protected void onPause() { 
    super.onPause(); 
    PdAudio.stopAudio(); 
} 
} 

Thaks !!

答えて

1

wavファイルを読み込んで再生するには、pdパッチとwavファイルを1つのzipファイルに圧縮する必要があります。あなたのJavaコードでは、zipファイルはsimplepatch.zip と呼ばれ、次にzipファイル内からsimplepatch.pdパッチを開きます。

File dir = getFilesDir(); 
IoUtils.extractZipResource(getResources().openRawResource(R.raw.simplepatch),dir,true); 
File pdPatch = new File(dir, "simplepatch.pd"); 
PdBase.openPatch(pdPatch.getAbsolutePath()); 

あなたがしなければならないのは、ファイルを再生し、simplepach.zipファイルにwavファイルを配置し、Androidアプリ内のボタンを使用しています。 それ用のサンプルPDのパッチは次のようになります。

click to view image

+0

うーん...私はPDパッチに含まれていないファイルopanカント? – Roish

関連する問題