void parse_adts_bitstream(AAC_HEAP *heap, BIT_BUFFER *buff)
{
ADTS_FRAME *curFrame = malloc(sizeof(ADTS_FRAME));
ADTS_HEADER *header = &(curFrame->header);
/* Update ADTS First frame pointer */
if(curFrame != NULL)
{
heap->adts = curFrame;
memset(curFrame, 0, sizeof(ADTS_FRAME));
}
else
{
fprintf(stdout, "\nError : malloc failure.. ");
exit(0);
}
/* Parse all frame and get bitstream information */
while (buff->nBytesRead < buff->bufferSize)
{
/* Get ADTS Header Information */
header->fix.syncword = (short)getbits(12, buff);
header->fix.id = (char)getbits(1, buff);
header->fix.layer = (char)getbits(2, buff);
header->fix.protection_absent = (char)getbits(1, buff);
header->fix.profile_ObjectType = (char)getbits(2, buff);
header->fix.sampling_frequency_index = (char)getbits(4, buff);
header->fix.private_bit = (char)getbits(1, buff);
header->fix.channel_configuration = (char)getbits(3, buff);
header->fix.original_copy = (char)getbits(1, buff);
header->fix.home = (char)getbits(1, buff);
header->var.copyright_identification_bit = (char)getbits(1, buff);
header->var.copyright_identification_start = (char)getbits(1, buff);
header->var.aac_frame_length = (short)getbits(13, buff);
header->var.adts_buffer_fullness = (short)getbits(11, buff);
header->var.number_of_raw_data_blocks_in_frame = (char)getbits(2, buff);
/* Get frame data */
curFrame->data = getdata(header->var.aac_frame_length - ADTS_FRAME_LENGTH, buff);
curFrame->data -= ADTS_FRAME_LENGTH;
/* Parse raw data block */
if (header->var.number_of_raw_data_blocks_in_frame >= 0)
{
heap->rdb = curFrame->data;
parse_raw_data_block(heap,buff);
}
/* Allocate Memory for next Frame */
curFrame->next = NULL;
if (buff->nBytesRead < buff->bufferSize)
{
curFrame->next = malloc(sizeof(ADTS_FRAME));
if(curFrame->next != NULL)
curFrame = (ADTS_FRAME*)curFrame->next;
else
{
fprintf(stdout, "\nError : malloc failure.. ");
exit(0);
}
}
}
return;
}
CXX0017 : 오류 기호 "노드가"난 내 프로젝트를 디버깅 할 때 내가이 오류를 "1 시계", 에 직면하고있다에서 찾을 수 없습니다. 내 programm에서 "node"변수를 사용하지 않았습니다. 왜이 오류가 발생합니까? "parse_raw_data_block (heap, buff)"-이 함수를 호출 할 때이 오류가 발생했습니다.이 함수 오류가 발생하면 오류가 발생합니다. 도와주세요.CXX0017 : 오류 기호 "노드"을 (를) 찾을 수 없습니다
CXX0017 : 오류 기호 "노드"를 찾지 못했습니다. 오류는 이것뿐입니다. 디버그 할 때 노드와 같은 변수를 사용하지 않았습니다. "bs_info.exe의 0x002f2ea7에서 처리되지 않은 예외가 있습니다. 0xC0000005 : 0x0cbbb6b4 위치를 읽는 액세스 위반" 휴식을 취한 다음 오류를 보았습니다. – dhimanta
아무도 나를 도와주지 못했습니다. – dhimanta