내 실험은 다음과 같습니다. 먼저 matlab을 사용하여 44100의 비율로 지정된 웨이브 파일을 만들었습니다. 즉, 1의 지속성 조각에는 44100 개의 요소가 포함되어 있으며 이러한 요소가 표시됩니다 두 배로. 그런 다음 스마트 폰의 마이크를 사용하여 웨이브를 검색합니다. 그리고 웨이브를 복원하기 위해 샘플링 속도는 44100입니다. 그러나 audioRecord는 데이터를 바이트로 저장하지만 원하는 것은 double입니다. 합리적인 바이트에서 더블 사운드로 변환, 난 아직도 그 샘플링 속도 44100 1 또는 44100 * 4 바이트 4400 바이트를 기록해야합니다 audioRecord 의미합니다 혼란, 이중 4 바이트 포함되어 있기 때문에? 다른 실험을했습니다. 웨이브를 검색하고 .wav에 저장하는 레코딩 소프트웨어를 사용합니다. matlab의 wavread 및 java에서 각각 .wav를 읽습니다. 1 초에 , 우리는 44100 개 요소 및 아래 목록 수 : -0.00164794921875
1.52587890625E-4
2.74658203125E-4
을 -0.003326416015625
0.001373291015625
-4.2724609375E-4
0.00445556640625
9.1552734375E- 5
-9.1552734375E -4-
7.62939453125E -4-
-0.003997802734375
9.46044921875E -4- 0,123,800, -0.00103759765625
0.002471923828125
0.001922607421875
-0.00250244140625
8.85009765625E-4
-0.0032958984375
8.23974609375E-4
8.23974609375E-4
사람이 가지 audiorecord과 함께 1 초에 검색 얼마나 많은 요소를 알고 샘플링 속도는 44100입니까?audioRecord가 지정된 샘플링 속도로 데이터를 검색하는 방법
1
A
답변
3
AudioRecord의 기본값은 각 샘플 (ENCODING_PCM_16BIT
)에 대해 채널당 16 비트를 반환하는 것입니다.
이제 짧은 [] (16 비트) 또는 바이트 [] (8 비트) 버퍼를 지정할 수있는 두 가지 읽기 오버로드가 있습니다.
int read(short[] audioData, int offsetInShorts, int sizeInShorts)
int read(byte[] audioData, int offsetInBytes, int sizeInBytes)
그래서 1 초 모노 완충액 (1 개 채널) I는 byte[]
버퍼를 사용하지 않는 것 88200을 가질 것이다 길이 44100. 스테레오 (2 개 채널)의 short[]
버퍼 등 ..
있어야 어떤 이유로 AudioRecord 형식을 ENCODING_PCM_8BIT
으로 설정하지 않은 한 (모든 장치에서 지원할 수있는 것은 아닙니다). 이제 당신은 당신이 MATLAB에 기록한다 double
값이 short
값은 당신이 작성해야하므로 [-32768 to 32767]
에서 될 것 동안 [-1 to 1]
에서 정규화 double-precision normalized samples
을 깨닫게해야 복식에 그 짧은 값을 변환 할 경우
short에서 double로 숫자를 캐스팅하는 대신 변환 함수.
관련 문제
- 1. CUDA 앱에서 최적의 속도로 데이터를 구성하는 방법
- 2. 데이터베이스에서 데이터를 검색하는 방법
- 3. Alfresco에서 지정된 폴더의 문서를 검색하는 방법
- 4. 레일에서 user_level이 지정된 사용자를 검색하는 방법
- 5. AMR - 업 샘플링 방법
- 6. 저주파수에서의 사운드 샘플링
- 7. sqlite 안드로이드에서 데이터를 검색하는 방법
- 8. android OnGlobalLayoutListener 데이터를 검색하는 방법
- 9. XML에서 XML로 데이터를 검색하는 방법
- 10. 외래 키에서 데이터를 검색하는 방법
- 11. JDBC를 사용하여 데이터를 검색하는 방법
- 12. 테이블 뷰에서 데이터를 검색하는 방법
- 13. json 출력에서 데이터를 검색하는 방법
- 14. 아랍어 데이터를 영어로 검색하는 방법
- 15. Excel 파일에서 데이터를 검색하는 방법
- 16. 데이터베이스에서 데이터를 동적으로 검색하는 방법
- 17. 웹 사이트에서 데이터를 검색하는 방법
- 18. 이베이 getFeedback API에서 데이터를 검색하는 방법
- 19. mySql 테이블의 지정된 필드에서만 데이터를 검색하는 방법은 무엇입니까?
- 20. Motorola Milestone에서 AudioRecord가 작동하지 않습니다.
- 21. 특정 속도로 Android에서 데이터를 업데이트하려면 어떻게해야합니까?
- 22. Flex 앱이 지정된 프레임 속도로 실행될 수없는 경우 어떻게됩니까?
- 23. 속도로 $ {}의 토큰을 바꾸는 방법
- 24. SQL Server 데이터베이스에서 데이터를 검색하는 방법
- 25. CoreData를 사용하여 데이터베이스에서 데이터를 검색하는 방법
- 26. pcap 파일에서 H263/H264 데이터를 검색하는 방법.
- 27. java의 HttpServletRequest에서 원시 게시물 데이터를 검색하는 방법
- 28. PHP에서 @ xml 속성에서 데이터를 검색하는 방법
- 29. REST Webservice에서 새 데이터를 읽거나 검색하는 방법
- 30. rich를 사용하여 데이터베이스에서 데이터를 검색하는 방법 : inplaceselect
정말 고마워요 ~ 많이 도와주세요 ~ – jiayan