提问者:小点点

IBM语音到文本-如何将MP3音频文件转换为字节数组


IBM speech to text-我如何将MP3音频文件转换成字节数组,然后发送到IBM Watson服务器,使用speech to text API将音频转换成文本


共1个答案

匿名用户

您可以像这样将mp3转换为bytearray;

fun convert(context: Context): ByteArray {

        val outputFile = Environment.getExternalStoragePublicDirectory(DIRECTORY_DOWNLOADS).absolutePath + "/sample.mp3"

        var soundBytes = ByteArray(0)
        try {
            val inputStream = context.contentResolver.openInputStream(Uri.fromFile(File(outputFile)))
            soundBytes = IOUtils.toByteArray(inputStream)
        } catch (e: Exception) {
            e.printStackTrace()
        }

        return soundBytes
}

Java

public byte[] convert(Context context) {

    String outputFile =
            Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).getAbsolutePath() + "/sample.mp3";

    byte[] soundBytes = new byte[0];
    try {
        InputStream inputStream =
                context.getContentResolver().openInputStream(Uri.fromFile(new File(outputFile)));

        soundBytes = new byte[inputStream.available()];
        soundBytes = IOUtils.toByteArray(inputStream);

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

    return soundBytes;
}