nihav.git
2 years agocodec_support/codecs: add negation for MV
Kostya Shishkov [Tue, 12 Oct 2021 13:41:59 +0000 (15:41 +0200)]
codec_support/codecs: add negation for MV

2 years agovp7: split off data for the upcoming VP8 decoder
Kostya Shishkov [Thu, 14 Oct 2021 14:20:04 +0000 (16:20 +0200)]
vp7: split off data for the upcoming VP8 decoder

2 years agocore/scale: support packed YUV formats unpacking
Kostya Shishkov [Wed, 6 Oct 2021 10:42:01 +0000 (12:42 +0200)]
core/scale: support packed YUV formats unpacking

2 years agocore/scale: fix check for checking formats subsampling differences
Kostya Shishkov [Wed, 6 Oct 2021 10:41:10 +0000 (12:41 +0200)]
core/scale: fix check for checking formats subsampling differences

2 years agocodec_support/imgwrite: convert packed YUV format before writing
Kostya Shishkov [Wed, 6 Oct 2021 10:40:15 +0000 (12:40 +0200)]
codec_support/imgwrite: convert packed YUV format before writing

2 years agorawvideo: calculate stride for packed data properly
Kostya Shishkov [Wed, 6 Oct 2021 10:39:31 +0000 (12:39 +0200)]
rawvideo: calculate stride for packed data properly

2 years agoavi: support raw YUV formats
Kostya Shishkov [Wed, 6 Oct 2021 10:39:14 +0000 (12:39 +0200)]
avi: support raw YUV formats

2 years agocore/scale: use BT.601 YUV by default in conversion
Kostya Shishkov [Wed, 6 Oct 2021 07:35:01 +0000 (09:35 +0200)]
core/scale: use BT.601 YUV by default in conversion

2 years agoavi: take into account the original orientation for raw video
Kostya Shishkov [Tue, 5 Oct 2021 13:58:47 +0000 (15:58 +0200)]
avi: take into account the original orientation for raw video

2 years agocore/scale: fix flipping of packed video buffer
Kostya Shishkov [Tue, 5 Oct 2021 13:35:01 +0000 (15:35 +0200)]
core/scale: fix flipping of packed video buffer

2 years agoImagination Pilots Matte Animation decoder
Kostya Shishkov [Tue, 5 Oct 2021 10:56:52 +0000 (12:56 +0200)]
Imagination Pilots Matte Animation decoder

2 years agoadd raw RGB support for AVI
Kostya Shishkov [Sun, 3 Oct 2021 16:37:30 +0000 (18:37 +0200)]
add raw RGB support for AVI

2 years agovp6enc: allow setting codec version
Kostya Shishkov [Thu, 30 Sep 2021 16:31:07 +0000 (18:31 +0200)]
vp6enc: allow setting codec version

2 years agovp6: handle partial golden frame update in alpha case
Kostya Shishkov [Sat, 2 Oct 2021 12:57:58 +0000 (14:57 +0200)]
vp6: handle partial golden frame update in alpha case

2 years agointroduce raw video "codec"
Kostya Shishkov [Sun, 19 Sep 2021 11:50:54 +0000 (13:50 +0200)]
introduce raw video "codec"

2 years agoYUV4MPEG demuxer
Kostya Shishkov [Sun, 19 Sep 2021 11:28:36 +0000 (13:28 +0200)]
YUV4MPEG demuxer

2 years agocore/formats: fix offsets in YUV pixel format parsing
Kostya Shishkov [Thu, 30 Sep 2021 13:52:42 +0000 (15:52 +0200)]
core/formats: fix offsets in YUV pixel format parsing

2 years agocore/frame: introduce NAVideoBuffer::from_raw_parts()
Kostya Shishkov [Thu, 30 Sep 2021 12:44:58 +0000 (14:44 +0200)]
core/frame: introduce NAVideoBuffer::from_raw_parts()

2 years agoVP6 encoder
Kostya Shishkov [Sun, 5 Sep 2021 15:32:38 +0000 (17:32 +0200)]
VP6 encoder

2 years agoavimux: always write positive height in stream properties
Kostya Shishkov [Wed, 29 Sep 2021 14:39:45 +0000 (16:39 +0200)]
avimux: always write positive height in stream properties

2 years agovp6: add test for VP6A
Kostya Shishkov [Thu, 23 Sep 2021 11:36:10 +0000 (13:36 +0200)]
vp6: add test for VP6A

2 years agovp6: mark simple profile as multistream
Kostya Shishkov [Fri, 17 Sep 2021 14:38:26 +0000 (16:38 +0200)]
vp6: mark simple profile as multistream

2 years agovp6: split data into separate module
Kostya Shishkov [Sat, 4 Sep 2021 09:56:30 +0000 (11:56 +0200)]
vp6: split data into separate module

2 years agovp6: fix alpha support
Kostya Shishkov [Wed, 22 Sep 2021 16:35:57 +0000 (18:35 +0200)]
vp6: fix alpha support

2 years agocodec_support/imgwrite: flip alpha plane too
Kostya Shishkov [Wed, 22 Sep 2021 16:39:32 +0000 (18:39 +0200)]
codec_support/imgwrite: flip alpha plane too

2 years agosmc: fix repeat-two-blocks case
Kostya Shishkov [Tue, 10 Aug 2021 10:54:57 +0000 (12:54 +0200)]
smc: fix repeat-two-blocks case

2 years agosmc: ignore first byte
Kostya Shishkov [Tue, 10 Aug 2021 10:51:04 +0000 (12:51 +0200)]
smc: ignore first byte

Its value can be anything.

2 years agoadd MS variant of IMA ADPCM encoder
Kostya Shishkov [Sun, 8 Aug 2021 12:02:42 +0000 (14:02 +0200)]
add MS variant of IMA ADPCM encoder

2 years agoMS ADPCM encoder: fix test after sound conversion fixes
Kostya Shishkov [Sun, 8 Aug 2021 11:58:57 +0000 (13:58 +0200)]
MS ADPCM encoder: fix test after sound conversion fixes

2 years agozmbvenc: reduce range for the tests
Kostya Shishkov [Sun, 8 Aug 2021 11:00:52 +0000 (13:00 +0200)]
zmbvenc: reduce range for the tests

2 years agomake encoder test functions accept encoder-specific options
Kostya Shishkov [Sun, 8 Aug 2021 10:55:53 +0000 (12:55 +0200)]
make encoder test functions accept encoder-specific options

2 years agocodec_support: add compress_sample() for IMA ADPCM state
Kostya Shishkov [Sat, 7 Aug 2021 16:36:42 +0000 (18:36 +0200)]
codec_support: add compress_sample() for IMA ADPCM state

2 years agocodec_support: derive usual traits for IMA ADPCM state
Kostya Shishkov [Sat, 7 Aug 2021 16:30:52 +0000 (18:30 +0200)]
codec_support: derive usual traits for IMA ADPCM state

2 years agomsvideo1enc: speed-up encoding a bit
Kostya Shishkov [Sun, 27 Jun 2021 10:44:51 +0000 (12:44 +0200)]
msvideo1enc: speed-up encoding a bit

2 years agomsvideo1enc: get rid of small repeated allocation
Kostya Shishkov [Sat, 26 Jun 2021 16:44:17 +0000 (18:44 +0200)]
msvideo1enc: get rid of small repeated allocation

2 years agomov: mark segments start as seeking points
Kostya Shishkov [Thu, 24 Jun 2021 09:08:07 +0000 (11:08 +0200)]
mov: mark segments start as seeking points

2 years agomov: serve packets with equal timestamps if possible
Kostya Shishkov [Thu, 10 Jun 2021 15:20:15 +0000 (17:20 +0200)]
mov: serve packets with equal timestamps if possible

2 years agomov: skip iods box
Kostya Shishkov [Thu, 10 Jun 2021 14:01:28 +0000 (16:01 +0200)]
mov: skip iods box

2 years agoremove trailing whitespaces
Kostya Shishkov [Thu, 3 Jun 2021 13:28:02 +0000 (15:28 +0200)]
remove trailing whitespaces

2 years agozmbvenc: export changed palette
Kostya Shishkov [Thu, 3 Jun 2021 13:26:14 +0000 (15:26 +0200)]
zmbvenc: export changed palette

2 years agoavimux: write palette in stream header and palette change chunks
Kostya Shishkov [Thu, 3 Jun 2021 13:25:44 +0000 (15:25 +0200)]
avimux: write palette in stream header and palette change chunks

2 years agocinepakenc: fix multi-strip handling
Kostya Shishkov [Thu, 3 Jun 2021 12:20:22 +0000 (14:20 +0200)]
cinepakenc: fix multi-strip handling

2 years agoape: fix silent block condition
Kostya Shishkov [Wed, 2 Jun 2021 08:34:24 +0000 (10:34 +0200)]
ape: fix silent block condition

2 years agoLegend Entertainment Q format demuxer and decoder
Kostya Shishkov [Sun, 30 May 2021 15:21:18 +0000 (17:21 +0200)]
Legend Entertainment Q format demuxer and decoder

2 years agoZip Motion Blocks Video encoder
Kostya Shishkov [Sat, 22 May 2021 12:41:43 +0000 (14:41 +0200)]
Zip Motion Blocks Video encoder

2 years agoscale: allow copying 16-bit frames
Kostya Shishkov [Sat, 22 May 2021 10:26:42 +0000 (12:26 +0200)]
scale: allow copying 16-bit frames

2 years agodeflate: allow writing compressed data to byte-aligned chunks
Kostya Shishkov [Sat, 22 May 2021 10:25:23 +0000 (12:25 +0200)]
deflate: allow writing compressed data to byte-aligned chunks

2 years agocore: support DeflateMode option setting
Kostya Shishkov [Sat, 22 May 2021 10:24:05 +0000 (12:24 +0200)]
core: support DeflateMode option setting

2 years agodeflate: make Deflate Send-able
Kostya Shishkov [Sat, 22 May 2021 10:22:38 +0000 (12:22 +0200)]
deflate: make Deflate Send-able

2 years agoZip Motion Blocks Video decoder
Kostya Shishkov [Thu, 20 May 2021 15:48:37 +0000 (17:48 +0200)]
Zip Motion Blocks Video decoder

2 years agodeflate: add function for decoding just input chunk
Kostya Shishkov [Thu, 20 May 2021 15:37:36 +0000 (17:37 +0200)]
deflate: add function for decoding just input chunk

2 years agodeflate: fix copy block length check
Kostya Shishkov [Thu, 20 May 2021 15:34:45 +0000 (17:34 +0200)]
deflate: fix copy block length check

2 years agodeflate: better check for zlib header
Kostya Shishkov [Thu, 20 May 2021 15:33:45 +0000 (17:33 +0200)]
deflate: better check for zlib header

2 years agodeflate: fix align() in inflate
Kostya Shishkov [Thu, 20 May 2021 09:53:22 +0000 (11:53 +0200)]
deflate: fix align() in inflate

2 years agonihav_core: add deflate compression
Kostya Shishkov [Tue, 18 May 2021 16:19:24 +0000 (18:19 +0200)]
nihav_core: add deflate compression

2 years agodeflate: fix zlib stream magic detection
Kostya Shishkov [Tue, 18 May 2021 16:16:48 +0000 (18:16 +0200)]
deflate: fix zlib stream magic detection

2 years agoh264: make debug and release versions of MC functions for better performance
Kostya Shishkov [Thu, 13 May 2021 09:54:55 +0000 (11:54 +0200)]
h264: make debug and release versions of MC functions for better performance

2 years agoh264: use 6-bit state_idx in CABAC decoder (this eliminates boundary check)
Kostya Shishkov [Wed, 12 May 2021 16:29:34 +0000 (18:29 +0200)]
h264: use 6-bit state_idx in CABAC decoder (this eliminates boundary check)

3 years agoflac: fix header parsing for variable block length case
Kostya Shishkov [Tue, 13 Apr 2021 09:32:28 +0000 (11:32 +0200)]
flac: fix header parsing for variable block length case

3 years agoavi: do not set PTS for raw PCM with 1/rate timebase
Kostya Shishkov [Tue, 6 Apr 2021 16:52:38 +0000 (18:52 +0200)]
avi: do not set PTS for raw PCM with 1/rate timebase

3 years agogdv: audio base is also 1/fps
Kostya Shishkov [Tue, 6 Apr 2021 15:56:14 +0000 (17:56 +0200)]
gdv: audio base is also 1/fps

3 years agocook: build multichannel map
Kostya Shishkov [Mon, 5 Apr 2021 16:33:32 +0000 (18:33 +0200)]
cook: build multichannel map

3 years agointroduce all_demuxers and all_{video,audio}_decoders features in crates missing...
Kostya Shishkov [Mon, 5 Apr 2021 11:46:25 +0000 (13:46 +0200)]
introduce all_demuxers and all_{video,audio}_decoders features in crates missing them

3 years agomake tests that rely on external demuxers use only those from external crates
Kostya Shishkov [Mon, 5 Apr 2021 10:34:44 +0000 (12:34 +0200)]
make tests that rely on external demuxers use only those from external crates

3 years agouse MaybeUninit properly
Kostya Shishkov [Mon, 5 Apr 2021 10:27:36 +0000 (12:27 +0200)]
use MaybeUninit properly

3 years agoupdate minimal rustc version in README.md
Kostya Shishkov [Sun, 4 Apr 2021 08:13:55 +0000 (10:13 +0200)]
update minimal rustc version in README.md

3 years agofix clippy warnings for update to rustc 1.46
Kostya Shishkov [Sun, 4 Apr 2021 08:06:18 +0000 (10:06 +0200)]
fix clippy warnings for update to rustc 1.46

3 years agonihav_registry: fix clippy warnings and tests in detect module
Kostya Shishkov [Sun, 4 Apr 2021 08:05:43 +0000 (10:05 +0200)]
nihav_registry: fix clippy warnings and tests in detect module

3 years agocinepak: codebooks should be per strip
Kostya Shishkov [Wed, 10 Mar 2021 16:49:02 +0000 (17:49 +0100)]
cinepak: codebooks should be per strip

3 years agosvq1: inter mode uses wraparound instead of clamping
Kostya Shishkov [Sat, 6 Mar 2021 11:46:25 +0000 (12:46 +0100)]
svq1: inter mode uses wraparound instead of clamping

3 years agogdv: decode 16-bit video
Kostya Shishkov [Wed, 24 Feb 2021 10:29:45 +0000 (11:29 +0100)]
gdv: decode 16-bit video

3 years agogdv: recognize 16-bit video streams
Kostya Shishkov [Wed, 24 Feb 2021 10:27:27 +0000 (11:27 +0100)]
gdv: recognize 16-bit video streams

3 years agoFable IMAX video support
Kostya Shishkov [Sun, 14 Feb 2021 11:53:02 +0000 (12:53 +0100)]
Fable IMAX video support

3 years agoFutureVision game formats support
Kostya Shishkov [Sat, 23 Jan 2021 14:27:38 +0000 (15:27 +0100)]
FutureVision game formats support

3 years agomov: support segmented files
Kostya Shishkov [Mon, 4 Jan 2021 13:13:54 +0000 (14:13 +0100)]
mov: support segmented files

3 years agoclearvideo: support overlapping mode
Kostya Shishkov [Thu, 31 Dec 2020 16:11:47 +0000 (17:11 +0100)]
clearvideo: support overlapping mode

3 years agoape: fix decoding of large value in 3.91-3.98
Kostya Shishkov [Fri, 25 Dec 2020 12:48:23 +0000 (13:48 +0100)]
ape: fix decoding of large value in 3.91-3.98

3 years agocore/soundcvt: fix u8->i16 test
Kostya Shishkov [Wed, 23 Dec 2020 10:45:16 +0000 (11:45 +0100)]
core/soundcvt: fix u8->i16 test

3 years agocore/soundcvt: clip output in f32->i32 conversion
Kostya Shishkov [Wed, 23 Dec 2020 10:41:45 +0000 (11:41 +0100)]
core/soundcvt: clip output in f32->i32 conversion

3 years agovivo: switch MD5-based tests
Kostya Shishkov [Tue, 22 Dec 2020 11:45:35 +0000 (12:45 +0100)]
vivo: switch MD5-based tests

3 years agovivo: fix reconstruction and flag parsing
Kostya Shishkov [Tue, 22 Dec 2020 11:39:12 +0000 (12:39 +0100)]
vivo: fix reconstruction and flag parsing

3 years agocodec_support/h263: pred_quant mode implies that AC coefficients should be predicted...
Kostya Shishkov [Tue, 22 Dec 2020 11:22:56 +0000 (12:22 +0100)]
codec_support/h263: pred_quant mode implies that AC coefficients should be predicted before quantisation too

3 years agoallstuff: register nihav-vivo crate
Kostya Shishkov [Sun, 20 Dec 2020 17:57:34 +0000 (18:57 +0100)]
allstuff: register nihav-vivo crate

3 years agovivo: improve decoding
Kostya Shishkov [Sun, 20 Dec 2020 17:43:57 +0000 (18:43 +0100)]
vivo: improve decoding

3 years agocodec_support/h263: add intra block reconstruction mode with unquantised DCs
Kostya Shishkov [Sun, 20 Dec 2020 17:41:06 +0000 (18:41 +0100)]
codec_support/h263: add intra block reconstruction mode with unquantised DCs

3 years agocodec_support/h263: add IDCT from Annex W
Kostya Shishkov [Sun, 20 Dec 2020 17:39:27 +0000 (18:39 +0100)]
codec_support/h263: add IDCT from Annex W

3 years agoaac: issue a warning instead of an error on window sequence mismatch
Kostya Shishkov [Wed, 16 Dec 2020 08:56:08 +0000 (09:56 +0100)]
aac: issue a warning instead of an error on window sequence mismatch

3 years agofix or silence clippy warnings
Kostya Shishkov [Wed, 16 Dec 2020 08:51:41 +0000 (09:51 +0100)]
fix or silence clippy warnings

3 years agomov: improve audio seeking (hopefully)
Kostya Shishkov [Tue, 15 Dec 2020 17:56:29 +0000 (18:56 +0100)]
mov: improve audio seeking (hopefully)

3 years agoh264: split out main chroma MC cases
Kostya Shishkov [Tue, 15 Dec 2020 14:22:23 +0000 (15:22 +0100)]
h264: split out main chroma MC cases

3 years agomov: skip common atoms in video codec extradata
Kostya Shishkov [Mon, 14 Dec 2020 16:11:38 +0000 (17:11 +0100)]
mov: skip common atoms in video codec extradata

3 years agomov: fix track duration rescaling
Kostya Shishkov [Sun, 13 Dec 2020 13:10:06 +0000 (14:10 +0100)]
mov: fix track duration rescaling

3 years agomov: parse mdhd chunk
Kostya Shishkov [Sat, 12 Dec 2020 16:53:11 +0000 (17:53 +0100)]
mov: parse mdhd chunk

3 years agomostly working ITU H.264 decoder
Kostya Shishkov [Tue, 3 Nov 2020 09:47:39 +0000 (10:47 +0100)]
mostly working ITU H.264 decoder

3 years agoadd complex frame reorderer for upcoming H.264
Kostya Shishkov [Sat, 12 Dec 2020 13:45:18 +0000 (14:45 +0100)]
add complex frame reorderer for upcoming H.264

3 years agomov: calculate DTS
Kostya Shishkov [Sat, 12 Dec 2020 12:51:57 +0000 (13:51 +0100)]
mov: calculate DTS

3 years agomov: introduce an option to print file structure
Kostya Shishkov [Sat, 12 Dec 2020 09:32:34 +0000 (10:32 +0100)]
mov: introduce an option to print file structure

3 years agocodec_support/data: fix GenericCache internal size
Kostya Shishkov [Sat, 5 Dec 2020 09:25:05 +0000 (10:25 +0100)]
codec_support/data: fix GenericCache internal size

3 years agomaximum FLAC order is 32
Kostya Shishkov [Sat, 28 Nov 2020 11:01:33 +0000 (12:01 +0100)]
maximum FLAC order is 32

3 years agomov: hopefully fix audio PTS and seeking
Kostya Shishkov [Sun, 25 Oct 2020 16:52:04 +0000 (17:52 +0100)]
mov: hopefully fix audio PTS and seeking