Mercurial > mplayer.hg
changeset 8511:2b955a07fdcf
set keyframe flag at encoding
author | arpi |
---|---|
date | Sat, 21 Dec 2002 20:42:40 +0000 |
parents | 43a716922d41 |
children | 9c784bd027ad |
files | libmpcodecs/ve_qtvideo.c |
diffstat | 1 files changed, 5 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/libmpcodecs/ve_qtvideo.c Sat Dec 21 20:39:40 2002 +0000 +++ b/libmpcodecs/ve_qtvideo.c Sat Dec 21 20:42:40 2002 +0000 @@ -172,7 +172,7 @@ OSErr cres; long framesizemax; - UInt8 similarity; + UInt8 similarity=0; long compressedsize; int in_format=kYUVSPixelFormat; int width = mpi->width; @@ -216,6 +216,7 @@ &framesizemax ); printf("GetMaxCompressionSize returned:%i : MaxSize:%i\n",cres&0xFFFF,framesizemax); frame_comp=malloc(framesizemax); + desc = (ImageDescriptionHandle)NewHandleClear(MAX_IDSIZE); //memory where the desc will be stored (*desc)->idSize=MAX_IDSIZE; @@ -230,7 +231,7 @@ compressor, // codec component codecNormalQuality, //codecNormalQuality, codecMaxQuality, //codecNormalQuality, - 10*25, // keyframe rate + 10*30, // keyframe rate 0, 0, desc); @@ -251,11 +252,11 @@ 0); if(cres&0xFFFF)printf("CompressSequenceFrame returned:%i\n",cres&0xFFFF); +#if 0 printf("Size %i->%i \n",stride*height,compressedsize); -#if 0 printf("Ratio: %i:1\n",(stride*height)/compressedsize); #endif - mencoder_write_chunk(mux_v, compressedsize , 0x10); + mencoder_write_chunk(mux_v, compressedsize , similarity?0:0x10); if(((*desc)->idSize)>MAX_IDSIZE){ printf("FATAL! idSize=%d too big, increase MAX_IDSIZE in ve_qtvideo.c!\n",((*desc)->idSize));