nihav.git
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

3 years agofix NATimeInfo::time_to_ts()
Kostya Shishkov [Sun, 25 Oct 2020 15:08:50 +0000 (16:08 +0100)]
fix NATimeInfo::time_to_ts()

3 years agoregistry: register AAC in MP4
Kostya Shishkov [Sat, 24 Oct 2020 16:19:35 +0000 (18:19 +0200)]
registry: register AAC in MP4

3 years agomov: some fixes for MP4 parsing
Kostya Shishkov [Sat, 24 Oct 2020 16:19:04 +0000 (18:19 +0200)]
mov: some fixes for MP4 parsing

3 years agoaac: parse extradata in esds format
Kostya Shishkov [Sat, 24 Oct 2020 16:18:28 +0000 (18:18 +0200)]
aac: parse extradata in esds format

3 years agoaac: allow intensity stereo in right channel
Kostya Shishkov [Sat, 24 Oct 2020 15:46:24 +0000 (17:46 +0200)]
aac: allow intensity stereo in right channel

3 years agocore/soundcvt: handle 8-bit signed audio
Kostya Shishkov [Fri, 23 Oct 2020 10:13:02 +0000 (12:13 +0200)]
core/soundcvt: handle 8-bit signed audio

3 years agomov: adjust signedness for certain kinds of audio
Kostya Shishkov [Fri, 23 Oct 2020 10:11:58 +0000 (12:11 +0200)]
mov: adjust signedness for certain kinds of audio

3 years agoavi: 8-bit audio is unsigned
Kostya Shishkov [Fri, 23 Oct 2020 10:11:13 +0000 (12:11 +0200)]
avi: 8-bit audio is unsigned

3 years agocore/scale: fill absent planes during scale process
Kostya Shishkov [Wed, 21 Oct 2020 16:22:18 +0000 (18:22 +0200)]
core/scale: fill absent planes during scale process

3 years agocore/scale: process only common components in packing/unpacking
Kostya Shishkov [Wed, 21 Oct 2020 16:21:50 +0000 (18:21 +0200)]
core/scale: process only common components in packing/unpacking

3 years agomov: parse stts chunk and fix seeking
Kostya Shishkov [Tue, 20 Oct 2020 16:58:46 +0000 (18:58 +0200)]
mov: parse stts chunk and fix seeking

3 years agocore/soundcvt: fix convertsion of certain sample types
Kostya Shishkov [Mon, 12 Oct 2020 16:40:28 +0000 (18:40 +0200)]
core/soundcvt: fix convertsion of certain sample types

3 years agoape: switch large filter to 16-bit data and add x86_64 optimisation
Kostya Shishkov [Mon, 12 Oct 2020 10:09:37 +0000 (12:09 +0200)]
ape: switch large filter to 16-bit data and add x86_64 optimisation

3 years agoeliminate some cargo-clippy warnings
Kostya Shishkov [Wed, 7 Oct 2020 14:13:03 +0000 (16:13 +0200)]
eliminate some cargo-clippy warnings

3 years agowavpack: ignore ext_int flag when comparing headers
Kostya Shishkov [Wed, 7 Oct 2020 12:36:49 +0000 (14:36 +0200)]
wavpack: ignore ext_int flag when comparing headers

3 years agotta: report sample-based duration
Kostya Shishkov [Wed, 7 Oct 2020 12:09:25 +0000 (14:09 +0200)]
tta: report sample-based duration

3 years agoape: report sample-based duration
Kostya Shishkov [Wed, 7 Oct 2020 12:09:03 +0000 (14:09 +0200)]
ape: report sample-based duration

3 years agoape: trim filter coefficients to 16-bit
Kostya Shishkov [Wed, 7 Oct 2020 12:01:38 +0000 (14:01 +0200)]
ape: trim filter coefficients to 16-bit

3 years agocore/io: introduce flush() call for ByteIO
Kostya Shishkov [Sun, 4 Oct 2020 10:43:15 +0000 (12:43 +0200)]
core/io: introduce flush() call for ByteIO

3 years agocinepakenc: switch to MD5-based test
Kostya Shishkov [Sun, 4 Oct 2020 10:05:20 +0000 (12:05 +0200)]
cinepakenc: switch to MD5-based test

3 years agomsvideo1enc: update test after changes in vector quantiser
Kostya Shishkov [Sun, 4 Oct 2020 10:00:12 +0000 (12:00 +0200)]
msvideo1enc: update test after changes in vector quantiser

3 years agointroduce stream and container duration
Kostya Shishkov [Sun, 4 Oct 2020 09:53:21 +0000 (11:53 +0200)]
introduce stream and container duration

3 years agowav: generate PTS for demuxed blocks
Kostya Shishkov [Sat, 3 Oct 2020 15:51:58 +0000 (17:51 +0200)]
wav: generate PTS for demuxed blocks

3 years agoape: allow larger than required seektables in files
Kostya Shishkov [Sat, 3 Oct 2020 15:34:44 +0000 (17:34 +0200)]
ape: allow larger than required seektables in files

3 years agoape: zero samples in silent frames
Kostya Shishkov [Sat, 3 Oct 2020 13:38:51 +0000 (15:38 +0200)]
ape: zero samples in silent frames

3 years agovx: remove trailing whitespaces
Kostya Shishkov [Sat, 3 Oct 2020 12:00:09 +0000 (14:00 +0200)]
vx: remove trailing whitespaces

3 years agowavpack: seek to the last frame before skipping frames
Kostya Shishkov [Sat, 3 Oct 2020 10:24:53 +0000 (12:24 +0200)]
wavpack: seek to the last frame before skipping frames

3 years agoflac: support seeking when no seektable is present
Kostya Shishkov [Sat, 3 Oct 2020 10:21:59 +0000 (12:21 +0200)]
flac: support seeking when no seektable is present

3 years agoape: move dotproduct+filter adaptation into a separate function
Kostya Shishkov [Sat, 3 Oct 2020 10:13:33 +0000 (12:13 +0200)]
ape: move dotproduct+filter adaptation into a separate function

3 years agocore/io: fix reading behaviour with e.g. BufReader
Kostya Shishkov [Wed, 30 Sep 2020 17:06:00 +0000 (19:06 +0200)]
core/io: fix reading behaviour with e.g. BufReader

3 years agofix some warnings (unneeded parentheses, missing dyn keyword)
Kostya Shishkov [Sun, 27 Sep 2020 11:24:03 +0000 (13:24 +0200)]
fix some warnings (unneeded parentheses, missing dyn keyword)

3 years agocore: fix clippy warnings
Kostya Shishkov [Thu, 10 Sep 2020 10:26:29 +0000 (12:26 +0200)]
core: fix clippy warnings

3 years agocore/io: switch FileReader and FileWriter to work with standard traits
Kostya Shishkov [Thu, 10 Sep 2020 10:18:57 +0000 (12:18 +0200)]
core/io: switch FileReader and FileWriter to work with standard traits

3 years agoadd nihav-llaudio crate with FLAC, Monkey's Audio, TTA and WavPack support
Kostya Shishkov [Mon, 31 Aug 2020 14:08:57 +0000 (16:08 +0200)]
add nihav-llaudio crate with FLAC, Monkey's Audio, TTA and WavPack support

3 years agocore/frame: add truncate() for NAAudioBuffer
Kostya Shishkov [Tue, 1 Sep 2020 10:53:11 +0000 (12:53 +0200)]
core/frame: add truncate() for NAAudioBuffer

3 years agocore/codecs: introduce a special error for failed checksum
Kostya Shishkov [Tue, 1 Sep 2020 08:45:03 +0000 (10:45 +0200)]
core/codecs: introduce a special error for failed checksum

3 years agocore/formats: add SND_S32P_FORMAT soniton
Kostya Shishkov [Tue, 1 Sep 2020 08:09:43 +0000 (10:09 +0200)]
core/formats: add SND_S32P_FORMAT soniton

3 years agocore: add allocation of 32-bit integer audio to alloc_audio_buffer()
Kostya Shishkov [Mon, 31 Aug 2020 12:35:16 +0000 (14:35 +0200)]
core: add allocation of 32-bit integer audio to alloc_audio_buffer()