ffmpeg | branch: master | Manuel Lauss | Tue Jun 3
12:31:01 2025 +0200| [c06439073651c4cd1a3d2deb778490655da55d11] | committer:
Manuel Lauss
avcodec/sanm: remove codec4 block smoothing
it has a bug and its effects aren't that noticeable, esp. with
the smoothing applied to the whole pi
ffmpeg | branch: master | Manuel Lauss | Fri May 30
13:10:47 2025 +0200| [d9797544b45a6f2fbd334dd41194b95026555297] | committer:
Manuel Lauss
avcodec/sanm: codec31/32 support
codec31/32 are similar to codec1/3 (RLE coding) but with two 4-bit pixels
per byte; they are only used in the Sega-CD
ffmpeg | branch: master | Manuel Lauss | Fri May 30
12:34:23 2025 +0200| [b7662ddd15dc8f6db38065465a7a1087e0cae0ff] | committer:
Manuel Lauss
avcodec/sanm: fix codec33/34 tile generator
Some of the calculated values were wrong and/or assigned
to the wrong pixel of the 4x4 block.
Found during
ffmpeg | branch: master | Manuel Lauss | Tue Apr 29
12:42:40 2025 +0200| [7f0b7b049696eddef165d6c30ba9e0527555ccd7] | committer:
Manuel Lauss
avcodec/sanm: ignore codec48 compression type 6
Some videos of "StarWars - Making Magic" have this subcompression
type: data just consists
ffmpeg | branch: master | Manuel Lauss | Thu May 1
11:25:35 2025 +0200| [37064b2d1661ec93268777ed1a400a474b7c4ec7] | committer:
Manuel Lauss
avcodec/sanm: support "StarWars - Making Magic" video
Videos of "StarWars - Making Magic" consist of 640x480 codec3 frames
which es
ffmpeg | branch: master | Manuel Lauss | Tue Apr 29
13:23:31 2025 +0200| [9369ebf23806417a8f34d042bc7a280e43ff64a3] | committer:
Manuel Lauss
avcodec/sanm: recognize common FOBJ sizes
Change the size detection a bit to recognize common video sizes,
as the FOBJ codecs>=37 cannot always
ffmpeg | branch: master | Manuel Lauss | Tue Mar 11
12:39:21 2025 +0100| [a48dd03fd9c7a114e183c621c5ec84eb2c8b440b] | committer:
Manuel Lauss
avcodec/sanm: disable left/top for fullscreen codecs
The block-based codecs 37/47/48 work on the full frame, and there's no
existing LucasArts
ffmpeg | branch: master | Manuel Lauss | Tue Mar 11
13:26:08 2025 +0100| [fd9b92b216308f5d5c2722d497fb4d7661dd63cd] | committer:
Manuel Lauss
avcodec/sanm: better ANIMv1 engine support
- clear the front buffer with color 0 on the first FOBJ.
Fixes a lot of Rebel Assault 1 videos and Rebel
ffmpeg | branch: master | Manuel Lauss | Tue Mar 11
13:20:05 2025 +0100| [f6c6ba95fd69f51d7f30e8f201ff43050a53113f] | committer:
Manuel Lauss
avcodec/sanm: FOBJ left/top are signed values
The left/top parameters of a FOBJ are signed values. Adjust
codec1 code accordingly to not draw outside
ffmpeg | branch: master | Manuel Lauss | Wed Mar 12
16:16:29 2025 +0100| [fb951b26fde6ee6328b9b20bde8a92a8a8b5b423] | committer:
Manuel Lauss
avcodec/sanm: codec4/5/33/34 decoder
This codec works on 4x4 pixel tiles, which can be generated and read
from the datastream. They're both iden
ffmpeg | branch: master | Manuel Lauss | Mon Mar 17
17:39:44 2025 +0100| [950ad969fb3891ccbc872c05262009f152e678ab] | committer:
Manuel Lauss
avcodec/sanm: codec20 decoder
codec20 is raw uncompressed image data.
It exists in Rebel Assault 1 as a special format for STOR/FTCH
and is used again
ffmpeg | branch: master | Manuel Lauss | Fri Mar 14
22:17:21 2025 +0100| [b48bd23321d8eee916dbe7afce96a749d29333f4] | committer:
Manuel Lauss
avcodec/sanm: implement STOR/FTCH for ANIMv1
Handle STOR/FTCH the same way the RA1 game engine does:
On STOR, save the next following FOBJ (not the
ffmpeg | branch: master | Manuel Lauss | Tue Mar 11
13:55:51 2025 +0100| [e1fd6bc8b49be7cc83b7b8e4b81d58693e7cd6e4] | committer:
Manuel Lauss
avcodec/sanm: codec21 decoder
similar to codec23, this one alternatingly skips and writes bytes.
Signed-off-by: Manuel Lauss
> h
ffmpeg | branch: master | Manuel Lauss | Tue Mar 11
12:26:24 2025 +0100| [8a045260808be660818d58589fbb6b36dd0dfb5d] | committer:
Manuel Lauss
avcodec/sanm: codec37: reimplement comp4
Compression 4 code 0 means copy from delta buffer without mv,
AND start of a skip run. This gets rid of the
ffmpeg | branch: master | Manuel Lauss | Fri Mar 14
22:26:46 2025 +0100| [fd6bfaab55148a7e016fb77f31cf177d31e5568f] | committer:
Manuel Lauss
avcodec/sanm: ignore codec45
Codec45 is used in some RA2 videos on top of codec37.
It consists of 2 tables (768 and 32768 bytes), and datapackets
like
ffmpeg | branch: master | Manuel Lauss | Tue Mar 11
13:35:33 2025 +0100| [77b5a0c13422cb67c1194c3b423d18b2339b0499] | committer:
Manuel Lauss
avcodec/sanm: codec23 decoder
This codec alternatingly skips and changes existing pixels.
A second 16bit parameter in the FOBJ header indicates how to
ffmpeg | branch: master | Manuel Lauss | Tue Mar 11
13:02:14 2025 +0100| [aa2f2befaa786b4b0970c08b2837c07ff77ebabc] | committer:
Manuel Lauss
avcodec/sanm: fix codec3
codec3 is codec1 which writes zero values instead of skipping them.
This fixes a lot of RA1 videos.
Signed-off-by: Manuel
ffmpeg | branch: master | Manuel Lauss | Tue Mar 11
13:32:21 2025 +0100| [968ffbe64a6f8a93a84cb99cedae0fc4ba8c5fb9] | committer:
Manuel Lauss
avcodec/sanm: codec2 decoder
this codec consists of 4 byte packets: 2bytes delta-x, 1 byte delta-y
and 1 byte color to put at that spot.
Used in Rebel
ffmpeg | branch: master | Manuel Lauss | Tue Mar 11
12:31:37 2025 +0100| [93b0ca26acb912b8f080f221f6165542806bceb3] | committer:
Manuel Lauss
avcodec/sanm: better frame size detection for old codecs
The size of the video frame (FOBJ) of the old codecs (ANIMv0/1/2) can
very reliably be
ffmpeg | branch: master | Manuel Lauss | Sat Mar 15
10:32:20 2025 +0100| [46da5605b273be134df7303e81d563740290d619] | committer:
Michael Niedermayer
MAINTAINERS: add Manuel Lauss as sanm.c/smush.c Maintainer
As requested by Michael Niedermayer.
Signed-off-by: Manuel Lauss
Signed-off-by
ffmpeg | branch: master | Manuel Lauss | Tue Mar 4
18:07:17 2025 +0100| [114e9864e14d8fcd44a7c6f5c7d302764d7607b5] | committer:
Michael Niedermayer
avcodec/sanm: ignore unknown codecs in FOBJs
Don't error out, just ignore unknown codec numbers and pretend
decode succeeded. This is u
ffmpeg | branch: master | Manuel Lauss | Mon Jan 13
22:00:24 2025 +0100| [d68d311bcd76cf2ef4c8e3163170775686784727] | committer:
Michael Niedermayer
avcodec/sanm: codec37 buffers are private
codec37 operates on 2 buffers, which must be considered private to
the codec and must therefore not be
ffmpeg | branch: master | Manuel Lauss | Thu Jan 9
09:03:11 2025 +0100| [fff7737b3d4c06eba7c71329635fa2a351cc0351] | committer:
Michael Niedermayer
avcodec/sanm: implement codec37 subcodec1
RLE-compressed stream of motion vector indices and a special opcode
to fill a block with data from the
ffmpeg | branch: master | Manuel Lauss | Thu Jan 9
09:03:12 2025 +0100| [9a794897c39c300fd5d9c71c6db4c5017fb9ea5d] | committer:
Michael Niedermayer
avcodec/sanm: simplify codec37 subcodec 3/4 path
A flag in the codec header determines whether opcodes 0xfd/0xfe
are to be treated as special or
ffmpeg | branch: master | Manuel Lauss | Mon Dec 16
17:08:01 2024 +0100| [b22ce90d4228d1cb7727775cc848613ac31b97e9] | committer:
Marton Balint
avcodec/sanm: SMUSH codec48 decoder
Adds a decoder for the SMUSH codec48 video encoding, as is used by
the LucasArts game "Mysteries of the
ffmpeg | branch: master | Manuel Lauss | Tue Nov 26
13:08:48 2024 +0100| [d21134313fbf1dc68c1e054bae579096166ccc60] | committer:
Marton Balint
avformat/smush: read ANIMv2 a/v parameters
SMUSH ANIM files with subversion 2 provide additional fields for
framerate and samplerate, use them if
ffmpeg | branch: master | Manuel Lauss | Fri Nov 8
12:51:14 2024 +0100| [dc98e7989d81fce8201af83dd9bc6e4ef7bea227] | committer:
Anton Khirnov
libavcodec/sanm: clear codec47 diff buffers with specific color
The codec47 header provides colors to use to clear the
2 difference buffers. This
ffmpeg | branch: master | Manuel Lauss | Fri Nov 8
09:55:03 2024 +0100| [1e2a72ae1da97133ba4e2c8dcc78e663a2e9f349] | committer:
Anton Khirnov
libavcodec/sanm: add codec47 interpolation table support
Some codec47 frames come with an interpolation table:
Combining 2 adjacent pixels into a
ffmpeg | branch: master | Manuel Lauss | Fri Nov 8
12:51:15 2024 +0100| [a786dd4889ec82ddbddd869ad49a767a7b6cc42b] | committer:
Anton Khirnov
libavcodec/sanm: codec47: apply top offset also to diff buffers
SAN FRME objects specify width/height as well as offsets from top/left.
These offsets
ffmpeg | branch: master | Manuel Lauss | Fri Nov 8
09:55:04 2024 +0100| [85fec8d90f3768488c711f23013595100be861f8] | committer:
Anton Khirnov
libavcodec/sanm: fix XPAL handling
Outlaws' RAE.SAN file did not properly fade out in certain scenes,
but simply turned to black as soon as the
30 matches
Mail list logo