2015-02-04 17 views
7

Có một số cách để ghi lại âm thanh trên Android mặc? Tôi đã sử dụng API AudioRecord và nó bị treo ứng dụng.Làm thế nào để ghi lại âm thanh trên android mặc

Tôi có làm gì sai không?

 short[] audioData = new short[minBufferSize]; 

     AudioRecord audioRecord = new AudioRecord(MediaRecorder.AudioSource.MIC, 
       11025, 
       AudioFormat.CHANNEL_CONFIGURATION_MONO, 
       AudioFormat.ENCODING_PCM_16BIT, 
       minBufferSize); 

     audioRecord.startRecording(); 

     while(recording){ 
      int numberOfShort = audioRecord.read(audioData, 0, minBufferSize); 
      for(int i = 0; i < numberOfShort; i++){ 
       dataOutputStream.writeShort(audioData[i]); 
      } 
     } 

     audioRecord.stop(); 
+0

"nó treo ứng dụng" - sử dụng LogCat để kiểm tra dấu vết ngăn xếp Java liên quan đến sự cố: https://stackoverflow.com/questions/23353173/unstuff-myapp-has-stopped-how-can-i- giải quyết này – CommonsWare

+0

Thật không may LogCat không hiển thị bất kỳ lỗi nào, ứng dụng chỉ gặp sự cố mà không có bất kỳ thông báo lỗi nào. Tôi không chắc liệu thiết bị Android có hỗ trợ ghi âm hay không, tôi muốn biết liệu có thiết bị nào hoạt động không. –

+0

Đã thử cách đây vài tháng, tôi gặp sự cố với mã hóa đã ngăn khởi động trình ghi phương tiện. Đã không thử nó một lần nữa kể từ khi, nhưng có lẽ nếu bạn cố gắng để thoát khỏi mã hóa nó có thể làm việc, như ai đó đề nghị tôi vào thời điểm đó. – Snow

Trả lời

6

AudioRecord được hỗ trợ và hoạt động trên Android Wear. Nếu bạn đang thử nghiệm trên trình mô phỏng, nó không thể hỗ trợ tốc độ mẫu bạn đang cung cấp, 11025, hãy thử một tỷ lệ khác như 8000.

Sau khi xây dựng AudioRecord, bạn nên kiểm tra trạng thái để xác nhận khởi tạo thành công trước khi cố gắng ghi.

audioRecord.getState() == AudioRecord.STATE_INITIALIZED 

Cũng đảm bảo bạn có quyền chính xác trong tệp kê khai. Bạn sẽ cần android.permission.RECORD_AUDIO ở mức tối thiểu và cũng có bất kỳ quyền nào đối với vị trí bạn đang viết tệp.

+2

Tôi quên đặt quyền âm thanh trong tệp kê khai. Bây giờ nó hoạt động, cảm ơn. –

+0

Bạn có thể truy cập âm thanh đã ghi như thế nào? – Amir

Các vấn đề liên quan