[英]Android - Problem playing sounds from assets folder
我在資產文件夾中存儲了5個mp3文件。 文件均為25 KB。
我使用以下方式加載文件:
manager = context.getAssets();
this.inputStream = manager.openFd(fileName).createInputStream();
每當我嘗試播放文件時,聲音都會像被混在一起一樣被弄亂。 我已經對該應用程序進行了zipalign,但是沒有結果。
安妮對此問題有幫助嗎? 提前致謝
經過一番研究,我自己找到了遮陽篷。 問題是我正在使用以下方法來設置MediaPlayer的數據源:
inputStream = manager.openFd(fileName).createInputStream();
player.setDataSource(inputStream.getFD());
Wich只是對setDataSource(fd, 0, 0x7ffffffffffffffL);
的調用setDataSource(fd, 0, 0x7ffffffffffffffL);
,傳遞最小偏移量和此任意長度,導致聲音混合播放。
使用以下代碼時,一切工作正常:
AssetFileDescriptor descriptor = manager.openFd(fileName);
long start = descriptor.getStartOffset();
long end = descriptor.getLength();
player.setDataSource(descriptor.getFileDescriptor(), start,end);
您也可以嘗試從res / raw文件夾播放它們:
MediaPlayer p=MediaPlayer.create(this, R.raw.soundid);
p.start();
首先,嘗試消除一個潛在的問題:將inputStream與原始文件進行比較。
嘗試直接打開和播放文件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.