반응형

Programming/MFC-C++ 69

[C++, C] 파일의 중간 부분 데이터 변경하기

바이너리 파일(물론 텍스트도 가능 할 것이다)에서 중간에 있는 값을 변경해야 하는 경우 fopen 과 fwrite, fsetpos 함수를 사용하여 변경할 수 있다. 테스트를 위한 코드로서 가장 중요한 것은 코드는 fopen("D:\\TEST.TXT", "rb+"); FILE* fp; fp = fopen("D:\\TEST.TXT", "wb"); if(fp) { for(int i=0; i< 10; i++) { fwrite(&i, sizeof(int), 1, fp); } fclose(fp); } fp = fopen("D:\\TEST.TXT", "rb+"); if(fp) { fpos_t filepos = sizeof(int)*3; fsetpos(fp, &filepos); int i=10; int nco = fw..

Programming/MFC-C++ 2013.04.25

CFileDialog 불러오기 저장하기

//파일 불러오기 CFileDialog FileDlg(TRUE, NULL,NULL, OFN_READONLY, "동영상 파일(*.avi;*.wmv;*.mp4;*.mkv;)|*.avi;*.mp4;*.wmv;*.mkv;|All Files(*.*)|*.*||"); if (FileDlg.DoModal() == IDOK) { } CFileDialog FileDlg(TRUE, NULL,NULL, OFN_READONLY, "이미지 파일(*.jpg;*.bmp;*.png;)|*.jpg;*.bmp;*.png;|All Files(*.*)|*.*||"); if (FileDlg.DoModal() == IDOK) { } //파일 저장하기 CFileDialog dlg(FALSE, "", NULL, OFN_OVERWRITEPROMPT..

Programming/MFC-C++ 2013.04.19

Wave 출력 및 waveOutClose 함수, Callback 함수와의 연동

waveOutClose - 장치를 닫는 함수 인데, 희안하게도 Callback 함수에 WOM_CLOSE 메시지가 전달되지 않았다. 계속 무한 삽질 끝에, 알아낸 사실.. 본 소스에서만 그런지 모르겠지만, 일반적으로 Callback에서 웨이브 WOM_DONE 메시지 전달 시 새로운 음성 데이터를 Write한다. 이런식으로 결국 wave 장치에는 출력해야할 데이터가 쌓이게 된다. 이런 경우 waveOutClose 함수를 콜해도 제대로 작동하지 않고, 모든 음성 데이터가 출력되고 난 후에 동작한다. 이를 해결하기 위해, Callback 함수에서 종료를 원하는지 판단하여 만약 사용자가 종료를 원할 경우에는 새로 장치에 waveOutWrite 하지 않고, 그냥 아무동작 없이 지나가면 waveOutClose 함수가..

Programming/MFC-C++ 2013.04.18

FFMpeg x264 Header 패킷 분석

FFmpeg 에서 디버깅 메시지 출력하게하는 함수 av_log_set_level(AV_LOG_DEBUG); x264로 인코딩할 경우에 데이터는 NAL이라는 것으로 사용되는 것 같음. 분석 결과 0x00 0x00 0x00 0x01 또는 0x00 0x00 0x01 로 시작되는 것이 Start Code 같음. 키 프레임의 경우 총 3~4개의 NAL로 구성되어있는 듯함. 처음 프레임의 경우에는 인코더 정보에 대한 문자열을 포함하여 4개의 NAL로 구성되며, 다음부터 키프레임은, 3개의 NAL로 구성된다. Start Code 뒤에 0x67, 0x68, 0x41, 0x01, 0x65, 0x06 이런식으로 나오는데 분석 결과 0x06 : NAL_SEI 맨 처음 프레임에서 나오는데, uuid와 기타 코덱 정보를 가지고..

Programming/MFC-C++ 2013.04.02

Kinect for Window & OpenNI 동시 설치 및 사용하기

ㅇ 설치 준비 사항 1. Kinect 장비 ( window 용 or xbox 용) 2. Kinect for Windows SDK 와 Developer Toolkit 여기서 사용한 버전은 1.6 다운로드 링크 : http://go.microsoft.com/fwlink/?LinkID=262831 웹페이지 링크 : http://www.microsoft.com/en-us/kinectforwindows/develop/developer-downloads.aspx 3. OpenNI v1.5.4.0 (32bit) http://www.openni.org/openni-sdk/openni-sdk-history-2/ 4. NiTE v1.5.2.21 ( 32bit) http://www.openni.org/openni-sdk/o..

Programming/MFC-C++ 2013.03.26

ffmpeg 관련 정보

FFMpeg Tutorial http://dranger.com/ffmpeg/tutorial01.html Video & Audio Encoding, Decoding Example http://ffmpeg.org/doxygen/trunk/api-example_8c-source.html FFMpeg VC++ 6.0에서 컴파일 방법 http://www.codeproject.com/Tips/111468/FFmpeg-Tutorial Visual C++ 컴파일 관련한 방법 http://ffmpeg.org/platform.html#Microsoft-Visual-C_002b_002b FFmpeg을 이용하여 개발 시 유용할 듯 함.. 통밥에서 오는 삘~~~ http://ffmpeg.zeranoe.com/blog/?p=16..

Programming/MFC-C++ 2013.02.16
반응형