]> git.nihav.org Git - nihav.git/log
nihav.git
7 weeks agocodec-support/h263: make H263RLSym and H263RLCodeDesc public
Kostya Shishkov [Mon, 14 Oct 2024 16:14:48 +0000 (18:14 +0200)]
codec-support/h263: make H263RLSym and H263RLCodeDesc public

This will allow creating codebooks of this type in other crates.

7 weeks agompa: generate correct audio info
Kostya Shishkov [Sun, 13 Oct 2024 16:16:01 +0000 (18:16 +0200)]
mpa: generate correct audio info

7 weeks agoadd MP3 codec tag for AVI/WAV
Kostya Shishkov [Sun, 13 Oct 2024 16:15:37 +0000 (18:15 +0200)]
add MP3 codec tag for AVI/WAV

7 weeks agoh264: fix mixed-up option definitions
Kostya Shishkov [Sat, 12 Oct 2024 11:33:11 +0000 (13:33 +0200)]
h264: fix mixed-up option definitions

7 weeks agoavi: fall back to the old index when ODML provides none
Kostya Shishkov [Thu, 10 Oct 2024 16:45:14 +0000 (18:45 +0200)]
avi: fall back to the old index when ODML provides none

2 months agoactually remove IMAX decoder and demuxer
Kostya Shishkov [Sat, 14 Sep 2024 09:39:39 +0000 (11:39 +0200)]
actually remove IMAX decoder and demuxer

2 months agoremove IMAX support
Kostya Shishkov [Sat, 14 Sep 2024 09:34:03 +0000 (11:34 +0200)]
remove IMAX support

It has been moved to na_game_tool.

2 months agoremove Highlander FMV support
Kostya Shishkov [Sat, 14 Sep 2024 09:31:37 +0000 (11:31 +0200)]
remove Highlander FMV support

It has been moved to na_game_tool.

2 months agoremove Arxel Tribe CNM decoding support
Kostya Shishkov [Sat, 14 Sep 2024 09:29:35 +0000 (11:29 +0200)]
remove Arxel Tribe CNM decoding support

It has been moved to na_game_tool.

3 months agoh264: koda
Kostya Shishkov [Tue, 6 Aug 2024 16:09:47 +0000 (18:09 +0200)]
h264: koda

3 months agomov: set block size when possible
Kostya Shishkov [Tue, 6 Aug 2024 16:08:14 +0000 (18:08 +0200)]
mov: set block size when possible

This seems to allow decoding of e.g. MS IMA ADPCM variant

3 months agosvq1: rework frame reconstruction
Kostya Shishkov [Tue, 6 Aug 2024 16:06:38 +0000 (18:06 +0200)]
svq1: rework frame reconstruction

Apparently the codec applies all deltas and only then clips the result.

3 months agosvq1: fix +-128 values in inter means codebook
Kostya Shishkov [Tue, 6 Aug 2024 16:04:45 +0000 (18:04 +0200)]
svq1: fix +-128 values in inter means codebook

Discovered by Peter Ross quite a while ago

4 months agosga: fix option name
Kostya Shishkov [Wed, 31 Jul 2024 16:32:37 +0000 (18:32 +0200)]
sga: fix option name

4 months agovx: fix audio support
Kostya Shishkov [Wed, 31 Jul 2024 16:23:45 +0000 (18:23 +0200)]
vx: fix audio support

Now that audio part can be demuxed too, the audio decoder can be tested.
Some parts of it were missing, some were a bit wrong, some things had
to be changed to support stereo properly.

4 months agovx: implement frame parsing
Kostya Shishkov [Mon, 29 Jul 2024 16:40:32 +0000 (18:40 +0200)]
vx: implement frame parsing

And support stereo audio properly while at it.

4 months agovx demuxer: set keyframe flags
Kostya Shishkov [Sun, 28 Jul 2024 14:17:48 +0000 (16:17 +0200)]
vx demuxer: set keyframe flags

4 months agovx demuxer: implement seeking
Kostya Shishkov [Sat, 27 Jul 2024 13:58:56 +0000 (15:58 +0200)]
vx demuxer: implement seeking

4 months agovx demuxer: FPS belong to a different header field
Kostya Shishkov [Sat, 27 Jul 2024 13:22:08 +0000 (15:22 +0200)]
vx demuxer: FPS belong to a different header field

4 months agovx demuxer: support stereo sound
Kostya Shishkov [Sat, 27 Jul 2024 13:19:30 +0000 (15:19 +0200)]
vx demuxer: support stereo sound

4 months agosupport VX video in AVI
Kostya Shishkov [Sat, 27 Jul 2024 13:18:16 +0000 (15:18 +0200)]
support VX video in AVI

5 months agobinkaud: fix monaural RDFT decoding (and add a test while at it)
Kostya Shishkov [Tue, 2 Jul 2024 16:26:22 +0000 (18:26 +0200)]
binkaud: fix monaural RDFT decoding (and add a test while at it)

5 months agorawvideo: support packed RGB a bit better
Kostya Shishkov [Sun, 30 Jun 2024 12:09:38 +0000 (14:09 +0200)]
rawvideo: support packed RGB a bit better

5 months agoRadius Studio Video decoder
Kostya Shishkov [Sun, 30 Jun 2024 07:49:35 +0000 (09:49 +0200)]
Radius Studio Video decoder

5 months agoadd FOURCC for RPZA in AVI
Kostya Shishkov [Sun, 30 Jun 2024 06:36:12 +0000 (08:36 +0200)]
add FOURCC for RPZA in AVI

5 months agoadd another FOURCC for TrueMotion 1
Kostya Shishkov [Sun, 30 Jun 2024 06:35:06 +0000 (08:35 +0200)]
add another FOURCC for TrueMotion 1

5 months agoavi: fix handling of multiple palette changes in single 'pc' chunk
Kostya Shishkov [Thu, 27 Jun 2024 16:11:19 +0000 (18:11 +0200)]
avi: fix handling of multiple palette changes in single 'pc' chunk

5 months agoSierra RBT and SEQ formats support
Kostya Shishkov [Thu, 27 Jun 2024 15:47:11 +0000 (17:47 +0200)]
Sierra RBT and SEQ formats support

5 months agovmd: move samples into subdirectory
Kostya Shishkov [Wed, 26 Jun 2024 16:56:32 +0000 (18:56 +0200)]
vmd: move samples into subdirectory

5 months agoavi: descend into 'rec' lists
Kostya Shishkov [Mon, 24 Jun 2024 16:32:17 +0000 (18:32 +0200)]
avi: descend into 'rec' lists

6 months agoAcorn Super Moving Blocks Decoder
Kostya Shishkov [Tue, 28 May 2024 16:07:59 +0000 (18:07 +0200)]
Acorn Super Moving Blocks Decoder

6 months agonihav-acorn: fix common YUV2RGB table
Kostya Shishkov [Tue, 28 May 2024 16:07:59 +0000 (18:07 +0200)]
nihav-acorn: fix common YUV2RGB table

6 months agoaac: clear M/S flags
Kostya Shishkov [Tue, 7 May 2024 16:13:19 +0000 (18:13 +0200)]
aac: clear M/S flags

6 months agoadd some packetisers for WSS formats in ARMovie
Kostya Shishkov [Tue, 7 May 2024 16:12:27 +0000 (18:12 +0200)]
add some packetisers for WSS formats in ARMovie

6 months agoarmovie: zero-terminated string is not exactly an error
Kostya Shishkov [Sun, 5 May 2024 16:46:37 +0000 (18:46 +0200)]
armovie: zero-terminated string is not exactly an error

6 months agoarmovie: ignore zero video codec parameters
Kostya Shishkov [Sun, 5 May 2024 16:46:04 +0000 (18:46 +0200)]
armovie: ignore zero video codec parameters

6 months agoadd raw audio support in Acorn Replay Movie format
Kostya Shishkov [Sun, 5 May 2024 16:45:38 +0000 (18:45 +0200)]
add raw audio support in Acorn Replay Movie format

6 months agoremove stray whitespaces
Kostya Shishkov [Sun, 5 May 2024 16:43:15 +0000 (18:43 +0200)]
remove stray whitespaces

7 months agoarm_rawvideo: remove debug statement
Kostya Shishkov [Sat, 4 May 2024 16:15:00 +0000 (18:15 +0200)]
arm_rawvideo: remove debug statement

7 months agosupport raw video in ARMovie
Kostya Shishkov [Sat, 4 May 2024 14:58:57 +0000 (16:58 +0200)]
support raw video in ARMovie

7 months agoadd Acorn Moving Blocks HQ decoder
Kostya Shishkov [Tue, 30 Apr 2024 16:19:01 +0000 (18:19 +0200)]
add Acorn Moving Blocks HQ decoder

7 months agoadd LinePack decoder
Kostya Shishkov [Fri, 26 Apr 2024 16:19:40 +0000 (18:19 +0200)]
add LinePack decoder

7 months agoAdd a crate for handling Acorn ReplayMovie formats
Kostya Shishkov [Thu, 25 Apr 2024 16:22:38 +0000 (18:22 +0200)]
Add a crate for handling Acorn ReplayMovie formats

7 months agoregistry: register known ARMovie codecs
Kostya Shishkov [Tue, 23 Apr 2024 16:55:35 +0000 (18:55 +0200)]
registry: register known ARMovie codecs

7 months agoregistry: add detection rule for ARMovie
Kostya Shishkov [Tue, 23 Apr 2024 16:54:34 +0000 (18:54 +0200)]
registry: add detection rule for ARMovie

7 months agocodec_support/test: add test_decoding_raw()
Kostya Shishkov [Tue, 23 Apr 2024 16:51:46 +0000 (18:51 +0200)]
codec_support/test: add test_decoding_raw()

This function will be used to test decoders with payload from raw streams
(i.e. it requries raw stream demuxers and packetisation steps).

7 months agocore: update NAPacketiser::parse_stream() documentation
Kostya Shishkov [Tue, 23 Apr 2024 16:50:29 +0000 (18:50 +0200)]
core: update NAPacketiser::parse_stream() documentation

7 months agoIntroduce NAPacketiser::attach_stream()
Kostya Shishkov [Tue, 23 Apr 2024 16:44:02 +0000 (18:44 +0200)]
Introduce NAPacketiser::attach_stream()

This allows packetisers to get initial stream information and act on it
during parsing process or returning a new stream.

8 months agoaac: fix intensity stereo reconstruction for ms_mask_present=0 case
Kostya Shishkov [Tue, 19 Mar 2024 14:11:12 +0000 (15:11 +0100)]
aac: fix intensity stereo reconstruction for ms_mask_present=0 case

9 months agonihav_itu: ignore high-profile extradata tail when it is not correct
Kostya Shishkov [Sun, 3 Mar 2024 13:59:46 +0000 (14:59 +0100)]
nihav_itu: ignore high-profile extradata tail when it is not correct

9 months agomov: fix seeking in audio track with unreported sample size
Kostya Shishkov [Mon, 5 Feb 2024 17:52:05 +0000 (18:52 +0100)]
mov: fix seeking in audio track with unreported sample size

10 months agocore/soundcvt: fix some cases where resampler skipped its work
Kostya Shishkov [Fri, 5 Jan 2024 17:08:05 +0000 (18:08 +0100)]
core/soundcvt: fix some cases where resampler skipped its work

11 months agoms-adpcm: fix decoding
Kostya Shishkov [Thu, 21 Dec 2023 15:12:57 +0000 (16:12 +0100)]
ms-adpcm: fix decoding

12 months agoEA muxer
Kostya Shishkov [Thu, 30 Sep 2021 11:49:50 +0000 (13:49 +0200)]
EA muxer

12 months agogifdec: fix transparent frame decoding
Kostya Shishkov [Sat, 11 Nov 2023 11:06:13 +0000 (12:06 +0100)]
gifdec: fix transparent frame decoding

12 months agoArxel CI2 video support
Kostya Shishkov [Thu, 9 Nov 2023 17:44:17 +0000 (18:44 +0100)]
Arxel CI2 video support

13 months agobinkmux: hopefully set audio codec flags correctly this time
Kostya Shishkov [Mon, 9 Oct 2023 16:55:10 +0000 (18:55 +0200)]
binkmux: hopefully set audio codec flags correctly this time

13 months agonihav_allstuff: register Bink muxer and encoders
Kostya Shishkov [Sat, 30 Sep 2023 09:44:01 +0000 (11:44 +0200)]
nihav_allstuff: register Bink muxer and encoders

13 months agoBink Audio encoder (version b for now)
Kostya Shishkov [Sat, 7 Oct 2023 16:51:41 +0000 (18:51 +0200)]
Bink Audio encoder (version b for now)

13 months agobinkaud: split out common data definitions for the future encoder
Kostya Shishkov [Sat, 30 Sep 2023 09:59:51 +0000 (11:59 +0200)]
binkaud: split out common data definitions for the future encoder

13 months agoBink muxer
Kostya Shishkov [Sat, 30 Sep 2023 09:43:02 +0000 (11:43 +0200)]
Bink muxer

13 months agoBink Video encoder (only 'b' version for now)
Kostya Shishkov [Sat, 30 Sep 2023 09:40:32 +0000 (11:40 +0200)]
Bink Video encoder (only 'b' version for now)

13 months agobinkvid: move data tables into separate module
Kostya Shishkov [Sat, 30 Sep 2023 08:12:40 +0000 (10:12 +0200)]
binkvid: move data tables into separate module

This is preparation work for the upcoming encoder.

13 months agosmacker: add forgotten recursion depth check
Kostya Shishkov [Sat, 30 Sep 2023 09:46:18 +0000 (11:46 +0200)]
smacker: add forgotten recursion depth check

14 months agogifenc: support grayscale input directly
Kostya Shishkov [Mon, 11 Sep 2023 15:38:13 +0000 (17:38 +0200)]
gifenc: support grayscale input directly

14 months agogifenc: improve no-compression mode by keeping code lengths the same
Kostya Shishkov [Mon, 11 Sep 2023 10:08:52 +0000 (12:08 +0200)]
gifenc: improve no-compression mode by keeping code lengths the same

14 months agoGIF support
Kostya Shishkov [Sun, 10 Sep 2023 16:46:32 +0000 (18:46 +0200)]
GIF support

14 months agocore/scale: support copying paletted frames
Kostya Shishkov [Sat, 9 Sep 2023 07:33:36 +0000 (09:33 +0200)]
core/scale: support copying paletted frames

15 months agoadd (limited) support for Digital Pictures SGA format
Kostya Shishkov [Sat, 2 Sep 2023 15:45:27 +0000 (17:45 +0200)]
add (limited) support for Digital Pictures SGA format

15 months agozmbvenc: implement coarse but fast motion estimation and use it by default
Kostya Shishkov [Fri, 25 Aug 2023 16:57:22 +0000 (18:57 +0200)]
zmbvenc: implement coarse but fast motion estimation and use it by default

15 months agowav: try to read as much PCM data as possible
Kostya Shishkov [Fri, 25 Aug 2023 16:55:42 +0000 (18:55 +0200)]
wav: try to read as much PCM data as possible

Otherwise read_buf_some() may return random small buffer size that
is not even aligned to the sample size.

15 months agowav: allow demuxing custom block sizes
Kostya Shishkov [Fri, 25 Aug 2023 16:54:44 +0000 (18:54 +0200)]
wav: allow demuxing custom block sizes

15 months agocore/compr: fix documentation comments
Kostya Shishkov [Thu, 17 Aug 2023 16:20:27 +0000 (18:20 +0200)]
core/compr: fix documentation comments

15 months agoflashsv: the codec uses BGR24 format instead of RGB24
Kostya Shishkov [Sat, 12 Aug 2023 07:24:17 +0000 (09:24 +0200)]
flashsv: the codec uses BGR24 format instead of RGB24

15 months agoflashsv: whitespace fix
Kostya Shishkov [Sat, 12 Aug 2023 07:17:04 +0000 (09:17 +0200)]
flashsv: whitespace fix

15 months agoh264: more micro-optimisations
Kostya Shishkov [Fri, 11 Aug 2023 16:27:48 +0000 (18:27 +0200)]
h264: more micro-optimisations

* split IDCT function so it has only two parameters
* evade instantiating frame references for each MB or even sub-block
* other small code changes

15 months agoh264: prepare data references before decoding
Kostya Shishkov [Tue, 8 Aug 2023 12:39:17 +0000 (14:39 +0200)]
h264: prepare data references before decoding

This speeds up decoding by eliminating the need for refcounted accesses.

15 months agoh264: miscellaneous micro-optimisations
Kostya Shishkov [Mon, 7 Aug 2023 17:01:42 +0000 (19:01 +0200)]
h264: miscellaneous micro-optimisations

15 months agoh264: cache data before use in fill_deblock()
Kostya Shishkov [Sat, 5 Aug 2023 17:06:09 +0000 (19:06 +0200)]
h264: cache data before use in fill_deblock()

15 months agoh264: introduce frame pool for average block buffers in MT decoder
Kostya Shishkov [Sat, 5 Aug 2023 14:19:31 +0000 (16:19 +0200)]
h264: introduce frame pool for average block buffers in MT decoder

15 months agoh264: make a specific version of 4x4 bidirectional MC function
Kostya Shishkov [Sat, 5 Aug 2023 09:47:21 +0000 (11:47 +0200)]
h264: make a specific version of 4x4 bidirectional MC function

15 months agoh264: reduce number of arguments for mc_blocks()
Kostya Shishkov [Fri, 4 Aug 2023 16:55:18 +0000 (18:55 +0200)]
h264: reduce number of arguments for mc_blocks()

16 months agoh264: optimise check_filter() for AMD64
Kostya Shishkov [Fri, 4 Aug 2023 16:10:22 +0000 (18:10 +0200)]
h264: optimise check_filter() for AMD64

16 months agovp6dsp: SSE2 intrinsics version of bilinear motion compensation
Kostya Shishkov [Thu, 27 Jul 2023 16:07:18 +0000 (18:07 +0200)]
vp6dsp: SSE2 intrinsics version of bilinear motion compensation

This is an old patch picked up mostly because those intrinsics
are stable now.

16 months agofix clippy warnings
Kostya Shishkov [Wed, 26 Jul 2023 17:03:18 +0000 (19:03 +0200)]
fix clippy warnings

16 months agoh264: introduce inline assembly for CABAC get_bit() and bump compiler version
Kostya Shishkov [Wed, 26 Jul 2023 16:22:42 +0000 (18:22 +0200)]
h264: introduce inline assembly for CABAC get_bit() and bump compiler version

16 months agoswitch to rustc 1.69
Kostya Shishkov [Thu, 27 Jul 2023 16:00:34 +0000 (18:00 +0200)]
switch to rustc 1.69

16 months agoh264: fix warnings regarding uninitialised memory
Kostya Shishkov [Wed, 26 Jul 2023 16:21:07 +0000 (18:21 +0200)]
h264: fix warnings regarding uninitialised memory

16 months agocore/soundcvt: typo
Kostya Shishkov [Tue, 25 Jul 2023 16:31:01 +0000 (18:31 +0200)]
core/soundcvt: typo

16 months agormmux: fix test checksums
Kostya Shishkov [Tue, 25 Jul 2023 16:01:50 +0000 (18:01 +0200)]
rmmux: fix test checksums

Those were wrong in 353373a32fcbf842efb6fb11462b5c757b0d382e

16 months agoaac: fix intensity stereo direction
Kostya Shishkov [Wed, 19 Jul 2023 16:00:35 +0000 (18:00 +0200)]
aac: fix intensity stereo direction

16 months agoTrueMotion 1 encoder
Kostya Shishkov [Tue, 18 Jul 2023 16:54:02 +0000 (18:54 +0200)]
TrueMotion 1 encoder

Only 15-bit mode is supported.

16 months agotruemotion1data: signal delta table sizes
Kostya Shishkov [Tue, 18 Jul 2023 16:17:41 +0000 (18:17 +0200)]
truemotion1data: signal delta table sizes

16 months agotruemotion1: split off data tables for the upcoming encoder
Kostya Shishkov [Tue, 11 Jul 2023 16:49:59 +0000 (18:49 +0200)]
truemotion1: split off data tables for the upcoming encoder

16 months agoh264: clear frame refs on flush
Kostya Shishkov [Thu, 6 Jul 2023 16:30:20 +0000 (18:30 +0200)]
h264: clear frame refs on flush

16 months agocore/reorder: clear frame IDs in MTFrameReorderer on flush
Kostya Shishkov [Thu, 6 Jul 2023 16:30:04 +0000 (18:30 +0200)]
core/reorder: clear frame IDs in MTFrameReorderer on flush

17 months agomov: do not overwrite timebase with sample rate
Kostya Shishkov [Fri, 30 Jun 2023 16:11:11 +0000 (18:11 +0200)]
mov: do not overwrite timebase with sample rate

E.g. in AAC SBR case we may get timebase 2048/44100 with the nominal
sample rate being 22050 Hz.

17 months agomov: try to sync audio and video tracks when seeking
Kostya Shishkov [Wed, 28 Jun 2023 17:08:36 +0000 (19:08 +0200)]
mov: try to sync audio and video tracks when seeking

17 months agoaac: fix intensity and mid/side stereo reconstruction
Kostya Shishkov [Sat, 24 Jun 2023 09:44:59 +0000 (11:44 +0200)]
aac: fix intensity and mid/side stereo reconstruction

17 months agomov: set DTS to PTS when actual value is not available
Kostya Shishkov [Sat, 17 Jun 2023 14:04:54 +0000 (16:04 +0200)]
mov: set DTS to PTS when actual value is not available