【问题标题】:How to recognize the audio stream format?如何识别音频流格式?
【发布时间】:2013-08-24 18:23:53
【问题描述】:

这里我有将音频流记录到文件的代码。问题是我想用正确的文件扩展名(主要是 .mp3 和 .aac)保存这个文件。我怎样才能做到这一点?

URLConnection conn = new URL(StringUrls[0]).openConnection();
            InputStream in = conn.getInputStream();

            BufferedOutputStream bufOutstream = new BufferedOutputStream(new FileOutputStream(new File(env.getExternalStorageDirectory()+"/temp.file")));

            byte[] buffer = new byte[4096];
            int len = in.read(buffer);
            while (len != -1) {
                bufOutstream.write(buffer, 0, len);
                len = in.read(buffer);

                if (Recorder.this.isCancelled) break;

            }
            bufOutstream.close();

【问题讨论】:

标签: java android mp3 aac


【解决方案1】:

一种方法是在您已经掌握二进制数据时查看它。根据File signatures table,MP3 和 AAC 都有独特的魔术头:

  • 49 44 33 MPEG-1 Audio Layer 3 (MP3) 音频文件
  • FF F1 用于 MPEG-4 高级音频编码 (AAC) 低复杂度 (LC) 音频
  • FF F9 用于 MPEG-2 高级音频编码 (AAC) 低复杂度 (LC) 音频

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-08
    • 1970-01-01
    • 2010-12-20
    • 1970-01-01
    相关资源
    最近更新 更多