我在我的Android应用程序中录制MPEG 4音频并将文件上传到我的网络服务器。我已经尝试过mp4和m4a文件扩展名,但我还没有找到将音频文件嵌入网页的方法。有没有一种简单的方法可以做到这一点,还是我会更好地使用不同的音频格式?
编辑05/04/2014 11:09
感谢您的回复。我的应用程序是一个笔记应用程序,它允许我在我的Android手机上录制语音笔记。这是我用来录制音符的代码:
final MediaRecorder mRecorder = new MediaRecorder();
mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
mFileName = sdcard + savename + ".mp4";
mRecorder.setOutputFile(mFileName);
mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
try {
mRecorder.prepare();
} catch (IOException e) {
Log.e(LOG_TAG, "prepare() failed");
}
mRecorder.start();
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this);
alertDialogBuilder.setTitle("Voice Recorder");
alertDialogBuilder
.setMessage("Click stop to save.")
.setCancelable(false)
.setPositiveButton("Stop",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) { mRecorder.stop();
mRecorder.release();
}
});
AlertDialog alertDialog = alertDialogBuilder.create();
alertDialog.show();
这在Android手机上工作正常,音频文件保存到我的SD卡,我可以通过手机播放。我也可以更改行" mFileName = sdcard + savename +" .mp4";" to" mFileName = sdcard + savename +" .m4a";"并且手机上的音频仍能正常播放。
但是,当我将mp4或m4a音频文件上传到我的网络服务器并尝试将其嵌入网页时,我无法找到播放音频的方法。在Chrome中通过链接到文件Quicktime打开并可以从那里播放,但这在Internet Explorer中不起作用,我宁愿将声音嵌入网页而不是启动另一个应用程序。
感谢您提供任何帮助。
答案 0 :(得分:0)
在我与SoundJS的合作中,我发现Android上支持mp4。通常在移动设备上,需要在用户发起的事件(触摸)内启动声音回放。如果您想了解更多信息,Mobile Safe Tutorial可能会有用。
希望有所帮助。