hello , tôi muốn sử dụng mediaRecorder để ghi âm giọng nói. tôi muốn lưu định dạng là amr.những gì là tốt setAudioEncodingBitRate trên giọng nói kỷ lục
this.mediaRecorder = new MediaRecorder();
this.mediaRecorder.setAudioChannels(1);
this.mediaRecorder.setAudioSamplingRate(8000);
this.mediaRecorder.setAudioEncodingBitRate(16);
this.mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
this.mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.RAW_AMR);
this.mediaRecorder.setOutputFile(this.file.getAbsolutePath());
this.mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
i sử dụng this.mediaRecorder.setAudioEncodingBitRate (16), một số thiết bị là ok
mediaRecorder.setAudioEncodingBitRate (12500), somedevice là ok
nhưng tôi xóa mediaRecorder.setAudioEncodingBitRate một số thiết bị ok
để câu hỏi của tôi cách nhận mặc định AudioEncodingBitRate. thông số nào tôi cần sử dụng?
nhưng tôi muốn lưu các định dạng amr – pengwang
tốt, sau đó chỉ cần loại bỏ nếu chi nhánh và Ust mã từ phần khác. AMR_NB = Thu hẹp, điều đó có nghĩa là bạn không thể sử dụng mẫu lấy mẫu cao hơn 8k dẫn đến chất lượng ghi kém hơn. Khi sử dụng bộ mã hóa AMR, bạn nên sử dụng định dạng THREE_GPP. –
Tôi vẫn nghĩ rằng vấn đề chính của bạn là phương thức setAudioEncodingBitRate. bạn cần chỉ định tốc độ bit ở đây. Tốc độ bit = bit/giây. 12 bit/giây không phải là giá trị mà bạn có thể sử dụng để mã hóa tín hiệu âm thanh. [ở đây] (http://en.wikipedia.org/wiki/Bit_rate) bạn tìm thấy bitrate chung cho Audio. Ví dụ. 800 bit/giây là tối thiểu cần thiết để nhận ra lời nói. –