0
청크를 음성 인식 엔진에 제공해야합니다. 지금 내 프로그램은 읽고이 코드를 사용하여 8K 속도 ulaw 인코딩 된 원시 파일에서 데이터의 버퍼 덩어리 :C의 마이크에서 원시 데이터 청크 가져 오기
unsigned char buf[MAX_AUDIO_BUF_LEN];
FILE *fp;
int len;
AudioSamples epSamplesStruct;
/* Read in Audio File */
fopen_s(&fp, FILE_NAME, "rb");
if (fp == NULL) {
printf("AUDIO THREAD=> ERROR. Cannot open prompt file %s\n", FILE_NAME);
return 1;
}
/* loop while there are still buffers to be picked up from file */
while((len = fread(buf, 1, MAX_AUDIO_BUF_LEN, fp)) > 0) {
epSamplesStruct.samples = (void *) buf;
epSamplesStruct.len = len;
epSamplesStruct.type = L"audio/basic";
num_samples_read += len;
// Processing the audio...
}
epSampleStruct
는 인식 엔진에 전달되는 구조입니다.
이 코드를 변형하여 파일 대신 마이크에서 읽으 려합니다. 필자는 오디오 데이터 형식을 너무 많이 채택 할 수는 없습니다.이 인코딩은 ulaw로 인코딩되고 8k 속도로 유지되어야합니다.
어떻게 하시겠습니까? 건설적인 도움을 주셔서 감사합니다.
오디오 데이터 캡처는 OS에 크게 의존 할 수 있습니다. Windows 또는 Linux에 있습니까? - 편집 : fopen_s(), 그래서 가정합니다. – BlueCookie
@BlueCookie 저는 Windows를 실제로 사용합니다. – Dunaril