반응형

Programming 151

안드로이드 Thread

interrupt() : 인터럽트를 거는 것. isInterrupted() : 인터럽트가 걸려있는지 확인하는 함수 join() : 쓰레드가 종료될때까지 대기하는 함수 위의 3개의 함수를 이용해서 쓰레드를 종료할 수 있음. Thread의 경우, run 함수 내부의 루틴이 모두 완료되면, 자동 종료되는 듯 하다. 종료된 이후에 IsAlive() 를 콜해도 죽었다고 나온다. 쓰레드의 모든 실행 루틴이 종료 한 이후에 다시 start를 하면 뻑이 난다. 그래서 다시 생성하고, start를 하였다. 예제 m_client_thread2 = new SvClientThread(this); // 쓰레드를 시작한다. m_client_thread2.start();

Programming/Android 2013.04.12

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

Google APIs - Key 발급 받는 방법

링크 : https://code.google.com/apis/console 1. 위의 링크된 사이트 접속 - 다음과 같은 화면이 나오면 로그인을 합니다. 접속하고 로그인 하면 처음으로 이런 화면이 나옵니다. 2. 일단 체크하고 Accept를 누릅니다. 3. 그럼 이런 화면이 나오는데 중간에 보면 Project ID 에 보시면 Register..라는 파란색 글씨가 나옵니다 이를 클릭합니다. 4. 그럼 다음과 같은 창이 뜹니다. 알파벳 소문자와 숫자아무거나 쓰시고, Choose this ID 버튼을 누릅니다. 5. 성공적으로 완료되었으면 좌측에 API Access 메뉴를 선택하고 6. 그럼 하단에 다름과 같은 버튼들이 보입니다. - 'Create new Brower key..' 를 선택합니다. 7. 6번을 ..

Programming/MFC-C++ 2013.01.09

[GUI] Radio Button, Button 배경색 글자색 변경

CTLCOLOR_BTN 버튼을 의미합니다. 정의 부분 찾아서 변경하시면 응용 가능합니다. static CBrush s_brush( RGB(255,255,255) ); -> 이게 삽질할 확률이 높습니다. 지역변수로 선언하면 안되니까, 전역 또는 스태틱으로 선언하시기 바랍니다. HBRUSH CInsertTaskDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); if ( nCtlColor == CTLCOLOR_BTN || nCtlColor == CTLCOLOR_STATIC) { static CBrush s_brush( RGB(255,255,255) ); pDC->..

Programming/MFC-C++ 2013.01.02
반응형