CamStudio Screen Codec: Difference between revisions
Jump to navigation
Jump to search
m (screen capture category) |
(Samples) |
||
(One intermediate revision by one other user not shown) | |||
Line 2: | Line 2: | ||
* Name: CamStudio Screen Codec | * Name: CamStudio Screen Codec | ||
* Frame type: IP (conditional replenishment) | * Frame type: IP (conditional replenishment) | ||
* Samples: http://samples.mplayerhq.hu/V-codecs/CSCD/ | |||
* Website: http://www.camstudio.org/ | |||
This is very simple codec. First byte is header byte, bits 7-1 are compression method, bit 0 signs if this is keyframe. Second byte is reserved. The next bytes are compressed data. | This is very simple codec. First byte is header byte, bits 7-1 are compression method, bit 0 signs if this is keyframe. Second byte is reserved. The next bytes are compressed data. | ||
There are two possible compression methods: LZO (=0) and ZLib (=1). | There are two possible compression methods: LZO (=0) and ZLib (=1). |
Latest revision as of 10:20, 6 July 2010
- FourCC: CSCD
- Name: CamStudio Screen Codec
- Frame type: IP (conditional replenishment)
- Samples: http://samples.mplayerhq.hu/V-codecs/CSCD/
- Website: http://www.camstudio.org/
This is very simple codec. First byte is header byte, bits 7-1 are compression method, bit 0 signs if this is keyframe. Second byte is reserved. The next bytes are compressed data.
There are two possible compression methods: LZO (=0) and ZLib (=1).
Decoding algorithm:
header = getbyte(); method = header >> 1; keyframe = header & 1; getbyte(); switch (method){ case 0: unpack_lzo(data, buf); break; case 1: unpack_zlib(data, buf); break; } if(keyframe){ frame = unpacked data }else{ add deltas to previous frame }