2011-05-01 52 views
1

我使用下面的代碼進行錄音:如何知道錄音的長度在Android的

Intent intent = new Intent(Intent.ACTION_GET_CONTENT); 
    intent.setType("audio/*"); 
    startActivityForResult(Intent.createChooser(intent, "Select audio source"), CardList.ACTIVITY_RECDAUDIO); 

當結果回來我請執行下列操作:

Uri u = intent.getData(); 
    String audioUri = u.getPath(); 
    InputStream in = new BufferedInputStream(this.getContentResolver().openInputStream(u)); 

我會想知道錄製的時間以秒爲單位。有沒有可能以某種方式查詢這個?如果一切都失敗了,我可以以編程方式播放剪輯並計時,但如果可能的話,我寧願採用更直接的方法。謝謝!

回答

3

我不知道這對你來說是否足夠快。但如果你不知道 - 你不必真的玩它。創建MediaPlayer實例並設置文件路徑和調用getDuration()就足夠了。

MediaPlayer mp = MediaPlayer.create(yourActivity, Uri.parse(path)); 
int duration = mp.getDuration(); 
0

我這樣做是通過使用我的輸入流:InputStream is.available()給我的長度。

相關問題