⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 changes

📁 H.263的压缩算法
💻
字号:
		  Changes from version 3.1 to 3.2                  ===============================Encoder & Decoder:        Annex N, Reference Picture Selection, is supported on        pictures. 	Changes from TMN9 are incorporated.	H.263+ Annex D has been updated to (correctly) handle MV	extrapolation ranges for different mode combinations and UUI	settings. 	Annex O Temporal scalability can now be used in combination	with varying frameskip for P pictures. As a result the '-c'	and '-k' option inter-working has changed.         Required Intra updating is now supported, either per        picture or per macroblock. Both are configurable, using the        '-f' or '-j' options respectively. The Intra MB refresh is        performed as described in document Q15-E-37.	Fixes:  Problems reported with version 3.1 were fixed. For        new problems, comments, or contributions, please contact        mikeg@ee.ubc.ca. Decoder:	Error concealment on GOBs is supported if GOB headers are used.See Help (tmn -h) to enable modes.		  Changes from version 3.0 to 3.1                  ===============================Encoder & Decoder:	Changes from H.263+ Draft 20 are incorporated.	H.263+ Annex D (unrestricted motion vector) with RVLC is	implemented. H.263 Annex D can still be used (with option -D	1) to avoid PLUSPTYPE. 	Annex O Spatial (1- and 2-dimensional) and SNR scalability are	now supported.         Custom picture format (factor of 16, pixel aspect ratio 12:11        only) is supported.  	Bug fixes:  Bugs (including mode combination problems)        reported in version 3.0 were fixed. Please report new bugs to        mikeg@ee.ubc.ca Encoder:	TMN-8 rate control is implemented (TMN-5 rate control also available)        Full search motion estimation is available through        pre-processor definition (sim.h). Fast search is the default        method. Decoder:	TMN-8 Post Filter implementedSee Help (tmn -h) to enable modes.		  Changes from version 2.0 to 3.0		  ===============================Department of Electrical Engineering, University of British Columbia, CANADA (http:/www.ee.ubc.ca/image/)  is now the official maintainer ofthe Public Domain H.263+ encoder/decoder.Our H.263+ Coder supports the following H.263+ Annexes (All H.263Annexes are still supported), based on H.263+ draft 13 document:Annex I:    Advanced Intra Coding modeAnnex J:    Deblocking Filter modeAnnex M:    Improved PB-frames modeAnnex O:    Temporal (only) Scalability modeAnnex S:    Alternative Inter VLC modeAnnex T:    Modified Quantization modeThis is the first release of this code and might not run without errorwhen combining options. Encoder:*	New fast search motion estimation technique of TMN-8 is used.  New technique reduces	encoding time from 3:1 compared to  	Full Search with an average loss of less than 0.01 Db in PSNR.		   Changes from version 1.7 to 2.0		   ===============================Encoder & Decoder:*	Because of the possible patent infringements in all	implementations of H.263, I decided to remove the        GNU License introduced in version 1.7.	The software is now distributed under the same        "disclaimer of warranty" as the freely available 	MPEG-2 software. See the file DISCLAIM for details.Encoder:*	Usage is printed to stdout instead of stderr to 	enable piping to file on Win95 systems.			   Changes from version 1.6c to 1.7		   ================================Encoder & Decoder:*	Changed the copyright to put all the software under the GNU	General Public License. Permission has been granted from all	parties that have contributed to this version of the software.*	It is no longer necessary to compile separate versions	for encoding and decoding the different coding formats	(SQCIF, QCIF, CIF, 4CIF, 16CIF)Encoder:*	Removed all code coming from the Stanford PVRG group. This was	the bitstream functions and the VLC encoding. New bitstream	functions and new VLC-tables were written based the idea	from the MPEG-2 simulation group software.*	Added back the low-delay, variable frame rate, rate control 	from version 1.5.	To use the rate control from version 1.6, compile with	OFFLINE_RATE_CONTROL defined. Read more about the rate 	control methods in ratectrl.c.Decoder:*	Display for Windows 95/NT has been added. This works much	the same way as the X11 display: when the decoder is	run in a console window, a window displaying the decoded	frames pops up.*	Variable frame rate display has been added. In this	mode the decoder will read the frame rate from the bitstream.	This is now the default display mode.*	When decoding PB-frames the display rate should	be reasonably correct, provided the computer 	running the decoder is fast enough.		   Changes from version 1.6b to 1.6c		   =================================Encoder & Decoder:*	Fixed a bug in OBMC prediction for the P-frame in PB-mode 	when surrounding block is intra encoded. Decoder:*	Fixed a bug in packed 24-bit display mode.		   Changes from version 1.6a to 1.6b		   =================================Encoder & Decoder:*	Fixed a bug in OBMC prediction when the surrounding block	is intra encoded.Encoder:*	Fixed Temporal Reference in the PB-frames mode.	Changed some variable names related to frame skipping	to make them more understandable.*	Fixed a problem when Unrestricted MV mode was used	together with several GOB syncs per picture.Decoder:*	Is now able to handle stuffing in SAC mode (I hope)		   Changes from version 1.6 to 1.6a		   ================================Decoder:*	Support for display at 16 and 24 (32) bits colordepths. 	No dithering is used in these mode. Display looks	great, but speed is slower than in 8 bits mode.		   Changes from version 1.5 to 1.6		   ===============================Encoder & Decoder:*	The increased motion vector range has been included 	in the Unrestricted Motion Vector mode. This increases	performance considerably for sequences with large	amounts of camera motion. Note that in the Advanced	Prediction mode, motion vectors are still allowed to	point outside the picture, but the UMV mode is not	automatically turned on.*	Other changes in the final version of H.263:	+ back to old half pel interpolation scheme	+ calculation of chroma vectors in PB mode*	Bug-fixes and code clean-up:	+ most reported problems with version 1.5 	+ several others, but none essential for coding	  performance	Encoder:*	When using PB-frames the adaptive switch which turns	off PB-frames when they are not effective, has been	included. This is always used in the PB-frames mode, 	and encodes the next frames as two P-pictures instead 	of a PB-frame when this is more effective.*	The TMN5 rate control has been replaced by a simplified 	rate control with fixed frame rate and a quantizer 	change for each picture. Read the comments in 	ratectrl.c for more information.	(both algorithms above were used when generating	the anchors for the MPEG-4 test)*	It is possible to encode sequences which have been 	grabbed at frame rates below the reference frame	rate (25 or 30 Hz). Set DEF_ORIG_SKIP in config.h	or use option "-O <n>". Temporal Reference in	bitstream as well as encoding statistics are	adjusted to account for this.		   Changes from version 1.4 to 1.5		   ===============================Encoder & Decoder:*	Support for SQCIF (128x96), 4CIF (704x576) and 	16CIF (1408x1152) in addition to the already included	QCIF and CIF formats. Recompilation is still necessary	when the format is changed. Please note that these new 	modes have not been tested properly, and I expect the 	buffer regulation may not work very well for the 4CIF 	and 16CIF modes.The changes decided at the Boston meeting in June 95:*	Picture header:	- start code byte aligned	- changes in PTYPE (also changed since White Book version)	- CPM bit with PLCI and GLCI if CPM bit is present*	*Truncation* instead of rounding for two of the interpolated    	pels for the half-pel prediction*	PB-frames: 	- The reconstructed P-macroblock data is clipped 	  *before* it is used in the reconstruction of the          B-macroblock. (This was already done in the decoder	  so this is actually a bugfix in the encoder :-)	- When the bidirectional prediction-block is made by adding	  the reconstructed data from the previous and future frames,	  division with truncation instead of rounding is used.These changes do not affect the performance very much, max. +/- 1%for the different test sequences.Encoder:*	The problem with the strange "edge-artifacts" for PB-frames	in sequences with severe motion reported be Motorola, has been	solved with the bugfix I reported to the sg15.lbc.video	reflector: 	"When intra coding was chosen because P prediction was bad, 	I zeroed out the vector, but still did a PB-delta search. 	This caused very narrow edges being forward-predicted only, 	leading to the visible edges. One way to remove the bug is: 	Still zero out the vector in case intra is chosen because of 	bad prediction, but NOT do a PB-delta search."		   Changes from version 1.4 to 1.4a		   ================================Encoder:*	Changed the quantizer for the B-frame in PB-frame coding.	Fixed small SAC bug at the end of the bitstream.	Will no longer allow quantization parameter > 31.Decoder:* 	Fixed a bug when saving PB-frames with option o0 - 03 (wrong	numbering). Changed the framenumbering in the trace-file for 	decoding PB-frames.Encoder & decoder: *	Can now be compiled without changing anything with	Visual C++ 2.0 under Win32. Some cosmetic changes.		   Changes from version 1.3 to 1.4		   ===============================Encoder & Decoder:*	Syntax-based Arithmetic Coding mode (annex E). When 	option '-E' is used in the encoder, syntax-based 	arithmetic coding is used instead of VLC coding.	SAC was implemented by Patrick Mulroy and Wayne Ellis	at BT Labs. Thanks! *	In the PB-frame mode PB delta vectors have been added. 	These increase the PB-frames performance significantly for	difficult sequences like foreman and carphone. The inter-	leaving of P and B coefficients has been removed. Instead	a combination of MODB and CBPB in the macroblock header 	signals whether vectors and/or coefficients are present for 	the current macroblock.*	It is now possible to compile CIF versions of both the 	encoder and decoder. Note that separate CIF and QCIF	version will have to be compiled. See the Makefiles for	details. *	Other changes decided in Geneva included in this version:	- changed limits for PB frames bidir prediction	- removed stuffing bit in picture header in the PB data	- 6 bit run in escape coding / no more MRUN with SAC	- COD is no longer used in intra pictures	- GFID included in GOB header	- End Of Sequence code readable by decoder	- changed rounding of chroma vectorsDecoder:*	The decoder has a new option '-x' which will interpolate	the decoded image to double size before display.	This does not affect saved images, when another output	option than -o4 is used. Thanks to Anurag Bist at Rockwell	for the idea and outline for this option.			   Changes from version 1.1 to 1.3		   ===============================Encoder & Decoder:*	Unrestricted Motion Vector mode (annex D)	when option '-D' is used in the encoder, there are no	restrictions at all on the motion vectors around the	edges. This is fully decodable with the decoder.	The gain is very significant for sequences where the camera	moves (eg. foreman) or objects are moving at the edge of 	the picture.*	Advanced Prediction mode (annex F)	when option '-F' is used in the encoder, the advanced prediction	mode (overlapped block motion compensation = OBMC) with 16x16 	or 8x8 vectors are used. 16x16 or 8x8 vectors	are chosen as described in TMN5. This works fine together	with PB-frames, and is fully decodable with the decoder.	However, if option '-D' is not used, the unrestricted motion	vector mode is automatically turned on. This is because	of the complex limitations on the vectors near the edges of 	the pictures when OBMC is used. A significant gain for all 	sequences is observed with the advanced prediction mode. 	For low bitrates this gain is mostly subjective, but for higher	bitrates both subjective and objective.Encoder:*	use of PB-frames is now turned on with option '-G' (annex G :-)	instead of '-M'. *	When buffer regulation is used, DQUANT is not transmitted until	a coded MB is transmitted. In version 1.1, the MB at the start	of each slice was always coded and transmitted when the quantizer	changed, which was on nearly every slice.*	some not so very important bug-fixes and changes:	- a memory leak in the PB-frames mode	- non-initialized QP_mean	- other small fixes which I don't remember*	CodeOnePred() and CodeTwoPB() merged into CodeOneOrTwo().		   Changes from version 0.5 to 1.1		   ===============================Version history:Version 0.5 worked so well, I called the version with the new syntaxand buffer regulation v-1.0 (this was not released). This is v-1.1which includes PB-frames.Encoder & Decoder: *	Changes adopted at the Leidschendam meeting:	- picture start code	- new bits in PTYPE for options	- new MCBPC VLC table for intra pictures	- changed MCBPC VLC table for predicted frames	- new MV prediction at the top of a GOB *	PB-frames	option '-M' inserts one B-frame between consecutive P-frames	option '-Q' decides BQUANT 	option '-Z' decides BSCAN for B-frame	(see encoder file config.h for more info. on these new options)Encoder: *	Buffer regulation (thanks to Anurag Bist of Rockwell)	works both with and without PB-frames	option '-r <bits/sec>' overrides '-q'	option '-m' writes repeated frames to disk, so that the 	sequence of reconstructed frames is 25 (or 30) Hz. * 	option '-S <n>' is changed so that n is now the number 	of frames to skip for fixed framerate coding, not the distance	between coded frames as it used to beDecoder: *  	New output format: concatenated YUV which is the same format	the encoder uses. (option '-o5').

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -