fread를 memcpy로 대체하는 방법???

DSP보드를 이용해서 응용프로그램을 만들고 있는데,,,,
DSP특성상 FILE 포인터를 사용할 수 없습니다.
따라서 FILE 포인터에 의한 fread 함수를 memcpy로 대체하는 방법을 찾고 있습니다.
fseek(ptfile, *nb_octets_already_read, 0);
fread(&buffer[nb_octets_to_read_temp - NalRbspBytes], sizeof(char), NalRbspBytes, ptfile);
위 부분처럼 쓰지 않고 같은 기능을 구현할 수 있는 방법은 없을까요?
설명해드리자면,
ptfile은 FILE 포인터로 동영상파일을 가리키고 있습니다.
*nb_octets_already_read 이 부분은 동영상파일의 데이터중 이미 디코딩된 데이터의 크기로 int형 변수입니다.
따라서 fseek을 통해 다음 디코딩할 부분으로 위치하게 됩니다.
fread함수에서는 이전에 디코딩된 데이터 다음에 디코딩할 데이터를 ptfile로부터 읽어오는 부분이 됩니다.
저는 위 부분을 아래와 같이 대체해보았는데, 문제가 다음 데이터의 위치를 찾지 못합니다.
*read_SVC_DataFile_o = *read_SVC_DataFile_o + *nb_octets_already_read; // fseek 대체
memcpy(&buffer[nb_octets_to_read_temp - NalRbspBytes], read_SVC_DataFile_o,(NalRbspBytes ) * sizeof(unsigned char));//fread 대체
여기서 read_SVC_DataFile_o는 ptfile이 동영상파일을 가리키고 있는것처럼 동영상데이터를 버퍼에 담아두고 있는 변수입니다.
댓글 달기