代码之家  ›  专栏  ›  技术社区  ›  marcosbeirigo

Android-播放assets文件夹中的声音时出现问题

  •  0
  • marcosbeirigo  · 技术社区  · 14 年前


    我使用以下命令加载文件:

    manager = context.getAssets();
    this.inputStream = manager.openFd(fileName).createInputStream();
    

    每当我试着播放这些文件时,声音都被弄乱了,像是混音之类的。
    你能帮我解决这个问题吗?提前谢谢

    3 回复  |  直到 14 年前
        1
  •  2
  •   marcosbeirigo    14 年前

    经过一番研究,我自己找到了雨篷。问题是我使用了以下方法来设置MediaPlayer的数据源:

    inputStream = manager.openFd(fileName).createInputStream();    
    player.setDataSource(inputStream.getFD());
    

    setDataSource(fd, 0, 0x7ffffffffffffffL); ,传递最小偏移量和此任意长度,使声音全部混合播放。
    使用以下代码时,一切正常:

    AssetFileDescriptor descriptor = manager.openFd(fileName);
    long start = descriptor.getStartOffset();
    long end = descriptor.getLength();
    player.setDataSource(descriptor.getFileDescriptor(), start,end);
    
        2
  •  2
  •   Baz    11 年前

    MediaPlayer p=MediaPlayer.create(this, R.raw.soundid);
    p.start();
    
        3
  •  0
  •   Peter Knego    14 年前
    1. 对于start,尝试消除一个潜在的问题:将inputStream与原始文件进行比较。

    2. 尝试直接打开和播放文件。