본문 바로가기

github

(6)
보케 효과를 만들어 보기 #2 - 성능향상 이 글은 이전 "보케 효과를 만들어 보기 #1" 에 이어지는 글 입니다. 혹시 이 글을 이전 글 보다 먼저 보신 분은 먼저 앞선 글을 읽고 오시면 더 이해 하시기 편할 것으로 예상 됩니다. 향상된 보케(빛망울) 효과 이전 글 에 소개된 보케효과 알고리즘은 0.1 초판으로서 현재 마지막 0.1.7.31 버젼에 비해 많은 것들이 모자란 버젼 이었습니다만, 그간 짬짬히 여러 문제를 수정 하고 성능을 비약적으로 향상 하여 근대의 다중 코어 CPU ( x86 및 ARM 계열 모두 해당 됨 ) 들에서 가장 효과적인 구동을 하도록 발전 하였습니다. 그 중 몇가지 수정 사항은 먼저, 효과를 적용하면서 발생하던 메모리 누수 ( 제 실수 였습니다만 ) 를 제거 하고, OpenMP 의 효과적인 구동으로 각 CPU threa..
fltk-1.3.4.1-ts Mac OS 맥용 빌드 업데이트 ! 제가 FLTK-1.3.4-1 에서 clone 하여 사용 하고 있는 fltk-1.3.4-1-ts 판의 업데이트가 있었습니다. 보통 한 PC 에서만 쓰다 보니, 다른 PC 에서 쓰기 전 까지는 문제점을 못 발견 하는 것이 1인 개발자의 한계인 듯 합니다만 .. 어쨋든 간만에 맥에서 전체를 내려 받아 빌드 해 보니 문제가 많다는 점을 발견하고 대부분 수정 하였습니다.위치: https://github.com/rageworx/fltk-1.3.4-1-ts 맥이던 어디던 git 가 설치 되어 있다면 clone 을 해서 사용이 가능 합니다. 다만, Windows 에서 MSYS 와 MinGW-W64 를 이용해서 빌드 하신다면, config64.sh 를 한번 해 주셔서 configure 를 하신 다음 빌드 하시거나, cp..
[FLTK] ffmpeg library 붙이기 1단계 OK. 근래 ffmpeg 을 빌드 해서 BGRA 4bytes 픽셀 데이터를 얻어 화면에 뿌리는 작업을 하는 김에 FLTK 를 붙여 본 작업을 진행 하고 있습니다. 물론 이 작업은 순조롭게 진행 되어 2개의 후면 버퍼로 그리는데 지장 없이 완료 되었습니다. ffmpeg 의 기본 SDL 을 이용한 예제 보다 반응속도가 빠르고 frame skip 을 저해 하는 요소도 비동기적으로 설계된 부분덕분에 없는 편 입니다만, 화면을 처리 하는 부분이 thread 대신 timer 로 만들어 테스트 해서 초당 화면 렌더링 속도는 떨어지는 편 인 듯 합니다. 제작이 완료 되는 대로 사용된 ffmpeg 및 예제 소스는 제 gitHub resource 중에 포함 시키도록 하여 GPL/LGPL 에 따라 공개 하도록 하겠습니다.
FLTK 1.3.3 TS(Thread Safe) Project 현재 GUI 시장에서 사실 QT 와 같은 덩치가 큰 GUI 도 있겠지만, 간단한/가벼운 걸 만드는데 과연 저 무거운걸 써야 하나? 라는 고민을 해야 하는 사람에게 FLTK 는 꽤 좋은 선택일 것 입니다. 그러나, FLTK 는 구조상 Thread 상에서 GUI 갱신을 무자비 하게 되면 알수 없는 Lock up 에 걸리는 문제가 생깁니다. (이 부분은 Fl.cxx 내에 구현된 wait/flush 관련 부분의 고질적인 문제로 파악이 되고, 특히 Windows 의 경우 HDC 와 HWND 의 무결성 검사 부분이 많이 누락되어 있습니다. (TTF 처리 부분 역시) 그래서 개인적으로 FLTK 1.3.3 을 기준으로 일부 코드를 수정한 TS 모델을 진행 중 입니다. 그래서 이름이 FLTK-1.3.3-TS 이며, 이는..
HTTP/1.1 의 POST 때문에 살짝 고민한 문제 .... 이전에 만든 HTTP/1.0 용 socket source 를 POST 까지 되도록 버그를 수정 하면서 HTTP/1.1 으로 호환되게 변경 하다 보니 알수 없는 문제를 격었습니다. 바로 해당 서버(Apache2 + PHP5) 에서 $_POST[x] method 를 이용해서 넘어 온 것이 없는 듯이 인식 한다는 점 이었습니다만, 여러번의 시도 중 다음 header 인자가 중요하다는 것을 알았습니다. 바로 Content-Type 이 문제 였습니다. PHP5 에서 제대로 POST 되는 내용을 알려면 Content-Type 을 application/x-www-form-urlencoded 로 써야 인식을 하는 것 이었습니다. 기존엔 text/html 로 mime 을 지정해서 보냈더니 이걸 인식 못하는 문제를 이제 ..
Tiny DICOM 라이브러리 소개 지금 소개 하는 이 라이브러리는 제 gitHub 에 공개된 저장소의 소스코드 입니다. 의료용 으로 사용중인 DICOM tag 를 읽고 쓸 수 있도록 만든 작고 가벼운 라이브러리로서 저장소 복제를 통해 새로운 버젼을 만들어 개선을 하거나 용도에 맞게 변경이 가능합니다. 소스코드는 현재 Windows용 gcc 인 MinGW 와 Code::Blocks 에 맞춰져 있는 상태 입니다만 Linux (Embedded 포함) 이나 다른 platfrom 에 사용이 가능합니다. gitHub 는 버젼관리 도구로서 HG 를 사용 하고 있으나, 그냥 소스코드를 받기 위해서 ZIP 으로 압축 후 받을 수 있는 기능을 기본으로 지원 해 주고 있으므로 간단한 소개로 ZIP 다운로드를 통한 빌드를 소개 하고자 합니다. 소스 다운로드 ..