C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[17367] Re:Re:Re:Re:TJPEGImage에는 헤더가 없나요?
김동욱 [] 1136 읽음    2002-04-10 09:42
자상하게 답변해 주시니 정말 감사합니다.

실은 간단한 동영상을 위해서 jpg그림을 겹쳐서 저장하려고 했는데.......

동작은 잘되긴하지만 너무 허접이라 ....^^;;

혹시 동영상만드는 방법을 아시는 고수님 있으면 가르쳐주세요.

avi는 파일 크기에서 문제가 있을것 같고 영상을 저장 할때는 아무래도 압축 저장을

해야하지 않을까요?

유영인 [Chris] 님이 쓰신 글 :
: 단순히, 파일 사이즈와 팔레트를 원하신다면, 다음과 같은 방법은 어떠신가요..?
:
:
: 1) 파일 사이즈
: 파일 크기는 빌더의 fseek의 도움말의 example 을 보시면 filesize 를 구할 수 있는 방법이 나와 있습니다. API도 있고요. 편하신것으로 사용하시면 될 것 같네요. 해당 JPEG 파일의 크기를 알면 되겠지요.
:
:
: 2) 팔레트
: 기본적으로 JPEG는 GetPalette라는 메소드를 가지고 있습니다. 아래는 그 GetPalette의 소스입니다. 델파이 입니다.
:
: function TJPEGImage.GetPalette: HPalette;
: var
:   DC: HDC;
: begin
:   Result := 0;
:   if FBitmap <> nil then
:     Result := FBitmap.Palette
:   else if FTempPal <> 0 then
:     Result := FTempPal
:   else if FPixelFormat = jf24Bit then // check for 8 bit screen
:   begin
:     DC := GetDC(0);
:     if (GetDeviceCaps(DC, BITSPIXEL) * GetDeviceCaps(DC, PLANES)) <= 8
: then
:     begin
:       // next line is bug fix - re:
: borland.public.delphi.vcl.components
:       // Steven Trefethen 21 Aug 1997
:       if FTempPal <> 0 then DeleteObject(FTempPal);
:       FTempPal := CreateHalftonePalette(DC);
:       Result := FTempPal;
:     end;
:     ReleaseDC(0, DC);
:   end;
: end;
:
:
:
: 이곳으로 가시면, 더욱 깊이있는 정보를 얻으실 수 있습니다.
:
: http://www.wotsit.org/
:
:
:
: 김동욱 님이 쓰신 글 :
: : 답변 감사합니다.
: :
: : 파일 크기나 팔레트등의 정보는 어떻게 알 수 있나요?
: :
: : FFC000까지의 데이터는 무었인가 궁금하네요?
: :
: : 이런 자료는 어떻게 찾나요?
: :
: : ??????
: :
: : 요즘 저의 무식함이 더욱 돋보이는것 같군요.
: :
: : 오늘 하루도 건강하시고 즐거운 하루되세요.
: :
: : 유영인 [Chris] 님이 쓰신 글 :
: : : Jpeg는 헤더를 알아낸다 하더라도, Bitmap과 같이 손쉬운 처리를 할 수 없습니다. 양자화 및 마커, 허프만 기법등을 사용하여 데이터를 손실, 혹은 복구하여야 합니다. 아무튼 Jpeg에도 헤더는 있습니다. FFC000 다음부터 시작하는 코드가 Header 입니다.
: : :
: : : unsigned short Height;     // Height
: : : unsigned short Width;      // Width
: : : unsigned char  Number;     // 헤더 갯수. 이 숫자만큼 아래 정보가 반복됩니다.
: : :
: : : unsigned char  ID[3];      // 헤더 이름.
: : : unsigned char  H[3];       // 가로 연산 인자
: : : unsigned char  V[3];       // 세로 연산 인자
: : : unsigned char  dTable[3];  // 양자화 테이블 번호
: : :
: : : Jpeg가 가지고 있는 테이블 정보만 약 5개 정도가 됩니다. 이 것들을 전부 알아야 디코딩이 가능하며, 단순히 헤더 정보만 원하실때는, 헤더정보에서 필요하신 부분만 따로 빼내는 식으로 코딩하시는 것이 더 빠른 작업을 하실 수 있을 것 같네요.
: : :
: : :
: : : 김동욱 님이 쓰신 글 :
: : : : TJPEGImage에는 BITMAPINFO와 같은 헤더가 없나요?
: : : :
: : : : 엄청 궁금한데 설명된곳이 없네요.
: : : :
: : : : 아시는 분있으면 가르쳐 주세요.
: : : :
: : : : 즐거운 하루 되세요.

+ -

관련 글 리스트
17306 TJPEGImage에는 헤더가 없나요? 김동욱 883 2002/04/08
17308     Re:TJPEGImage에는 헤더가 없나요? 유영인 [Chris] 1340 2002/04/08
17319         Re:Re:TJPEGImage에는 헤더가 없나요? 김동욱 973 2002/04/09
17326             Re:Re:Re:TJPEGImage에는 헤더가 없나요? 유영인 [Chris] 1104 2002/04/09
17367                 Re:Re:Re:Re:TJPEGImage에는 헤더가 없나요? 김동욱 1136 2002/04/10
17379                     Re:Re:Re:Re:Re:TJPEGImage에는 헤더가 없나요? 유영인 [Chris] 960 2002/04/10
17424                         Re:Re:Re:Re:Re:Re:TJPEGImage에는 헤더가 없나요? 김동욱 1048 2002/04/11
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.