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

3 years agocore/formats: fix displayed NASoniton information
Kostya Shishkov [Mon, 31 Aug 2020 12:05:10 +0000 (14:05 +0200)]
core/formats: fix displayed NASoniton information

3 years agoaac: fix the window group advancement in joint-stereo reconstruction
Kostya Shishkov [Thu, 27 Aug 2020 14:51:55 +0000 (16:51 +0200)]
aac: fix the window group advancement in joint-stereo reconstruction

Reported by Philip Deljanov

3 years agoaac: add missing heading bit to escape value
Kostya Shishkov [Thu, 27 Aug 2020 08:51:18 +0000 (10:51 +0200)]
aac: add missing heading bit to escape value

Reported by Philip Deljanov

3 years agoaac: fix TNS filtering
Kostya Shishkov [Thu, 27 Aug 2020 08:41:14 +0000 (10:41 +0200)]
aac: fix TNS filtering

The specification says it should use initial zero filter state instead of
relying on neighbour coefficients.

Reported by Philip Deljanov

3 years agovx: update test after fixes
Kostya Shishkov [Sat, 22 Aug 2020 10:40:53 +0000 (12:40 +0200)]
vx: update test after fixes

3 years agovx: fix typo in pred_hor_down()
Kostya Shishkov [Sat, 22 Aug 2020 10:37:52 +0000 (12:37 +0200)]
vx: fix typo in pred_hor_down()

3 years agovx: fix plane prediction
Kostya Shishkov [Sat, 22 Aug 2020 10:37:33 +0000 (12:37 +0200)]
vx: fix plane prediction

3 years agovx: audio should have eight pulses in one word, not four
Kostya Shishkov [Sat, 15 Aug 2020 12:33:50 +0000 (14:33 +0200)]
vx: audio should have eight pulses in one word, not four

3 years agoActimagine VX demuxer and decoders
Kostya Shishkov [Mon, 10 Aug 2020 16:18:37 +0000 (18:18 +0200)]
Actimagine VX demuxer and decoders

3 years agomove LH codec into audio section
Kostya Shishkov [Thu, 6 Aug 2020 12:45:54 +0000 (14:45 +0200)]
move LH codec into audio section

3 years agonihav_registry/register: make CODEC_CAP_* public and document them
Kostya Shishkov [Sat, 25 Jul 2020 16:28:34 +0000 (18:28 +0200)]
nihav_registry/register: make CODEC_CAP_* public and document them

3 years agoon2avc: factor out common overlap code
Kostya Shishkov [Fri, 17 Jul 2020 12:15:36 +0000 (14:15 +0200)]
on2avc: factor out common overlap code

3 years agoon2avc: fix scalefactor reading for partially empty band group
Kostya Shishkov [Wed, 15 Jul 2020 16:23:48 +0000 (18:23 +0200)]
on2avc: fix scalefactor reading for partially empty band group

3 years agoavi: correct offsets in idx1 chunks if required
Kostya Shishkov [Wed, 15 Jul 2020 16:00:44 +0000 (18:00 +0200)]
avi: correct offsets in idx1 chunks if required

3 years agocore/formats: fix grayscale format returned by NAPixelFormaton::from_str()
Kostya Shishkov [Sat, 11 Jul 2020 17:06:29 +0000 (19:06 +0200)]
core/formats: fix grayscale format returned by NAPixelFormaton::from_str()

3 years agoremove trailing whitespace
Kostya Shishkov [Fri, 10 Jul 2020 19:43:02 +0000 (21:43 +0200)]
remove trailing whitespace

3 years agocore/scale: fix flipping of packed 16- and 32-bit images
Kostya Shishkov [Fri, 10 Jul 2020 16:32:14 +0000 (18:32 +0200)]
core/scale: fix flipping of packed 16- and 32-bit images

3 years agocinepakenc: ask for non-flipped image during negotiation
Kostya Shishkov [Fri, 10 Jul 2020 15:46:23 +0000 (17:46 +0200)]
cinepakenc: ask for non-flipped image during negotiation

3 years agoadd README.md and license
Kostya Shishkov [Fri, 10 Jul 2020 11:52:00 +0000 (13:52 +0200)]
add README.md and license

3 years agocore/muxers: fix copy-paste comments
Kostya Shishkov [Fri, 10 Jul 2020 10:12:59 +0000 (12:12 +0200)]
core/muxers: fix copy-paste comments

3 years agocore/codecs: fix wrong type in doc example
Kostya Shishkov [Fri, 10 Jul 2020 09:41:03 +0000 (11:41 +0200)]
core/codecs: fix wrong type in doc example

3 years agorename register_all_codecs to register_all_decoders
Kostya Shishkov [Thu, 9 Jul 2020 16:57:29 +0000 (18:57 +0200)]
rename register_all_codecs to register_all_decoders

3 years agocore: implement Default for NATimePoint
Kostya Shishkov [Thu, 9 Jul 2020 08:48:44 +0000 (10:48 +0200)]
core: implement Default for NATimePoint

3 years agouse NATimePoint for seeking
Kostya Shishkov [Thu, 9 Jul 2020 08:42:42 +0000 (10:42 +0200)]
use NATimePoint for seeking

3 years agocore/frame: fix NATimePoint parsing from string
Kostya Shishkov [Thu, 9 Jul 2020 08:42:01 +0000 (10:42 +0200)]
core/frame: fix NATimePoint parsing from string

3 years agocore/frame: add None to NATimePoint and comparison functions to NATimeInfo
Kostya Shishkov [Thu, 9 Jul 2020 08:17:06 +0000 (10:17 +0200)]
core/frame: add None to NATimePoint and comparison functions to NATimeInfo

3 years agocore: add NATimePoint for time-related actions
Kostya Shishkov [Thu, 9 Jul 2020 07:36:02 +0000 (09:36 +0200)]
core: add NATimePoint for time-related actions

3 years agoRevert "core/formats: implement ToString instead of Display for NAChannelType"
Kostya Shishkov [Wed, 8 Jul 2020 16:51:29 +0000 (18:51 +0200)]
Revert "core/formats: implement ToString instead of Display for NAChannelType"

This reverts commit 81b94329a275bb92066404bd3bb2822c5bb3f424.

I forgot that implemented Display means automatic ToString() and not vice versa.

3 years agonihav_core/scale: fix ELBG palettisation in the same way as the generic version
Kostya Shishkov [Wed, 8 Jul 2020 15:26:54 +0000 (17:26 +0200)]
nihav_core/scale: fix ELBG palettisation in the same way as the generic version

3 years agocore/formats: add conversion to/from short string form for NAPixelFormaton
Kostya Shishkov [Tue, 7 Jul 2020 10:50:13 +0000 (12:50 +0200)]
core/formats: add conversion to/from short string form for NAPixelFormaton

3 years agocore/format: use common format parsing error
Kostya Shishkov [Mon, 6 Jul 2020 16:39:07 +0000 (18:39 +0200)]
core/format: use common format parsing error

3 years agocore/formats: implement ToString instead of Display for NAChannelType
Kostya Shishkov [Mon, 6 Jul 2020 16:34:39 +0000 (18:34 +0200)]
core/formats: implement ToString instead of Display for NAChannelType

3 years agocore: add short string formats for sonitons
Kostya Shishkov [Mon, 6 Jul 2020 16:30:28 +0000 (18:30 +0200)]
core: add short string formats for sonitons

3 years agodeflate: fix output indexing
Kostya Shishkov [Mon, 6 Jul 2020 16:00:14 +0000 (18:00 +0200)]
deflate: fix output indexing

3 years agoqtrle: use proper file for 24-bit test
Kostya Shishkov [Mon, 6 Jul 2020 12:23:35 +0000 (14:23 +0200)]
qtrle: use proper file for 24-bit test

3 years agomov: if audio extradata does not start with wave pass it in full
Kostya Shishkov [Mon, 6 Jul 2020 12:16:04 +0000 (14:16 +0200)]
mov: if audio extradata does not start with wave pass it in full

3 years agomov: take audio frame size/length into account while demuxing
Kostya Shishkov [Mon, 6 Jul 2020 12:15:38 +0000 (14:15 +0200)]
mov: take audio frame size/length into account while demuxing

3 years agoqtrle: fix 32-bit test
Kostya Shishkov [Mon, 6 Jul 2020 11:48:01 +0000 (13:48 +0200)]
qtrle: fix 32-bit test

3 years agoadd nihav_qt crate with some QuickTime codecs
Kostya Shishkov [Sat, 4 Jul 2020 16:30:01 +0000 (18:30 +0200)]
add nihav_qt crate with some QuickTime codecs

3 years agomov: fix video extradata reading
Kostya Shishkov [Fri, 3 Jul 2020 15:30:27 +0000 (17:30 +0200)]
mov: fix video extradata reading

3 years agomove QMF implementation into nihav_codec_support
Kostya Shishkov [Tue, 30 Jun 2020 08:46:02 +0000 (10:46 +0200)]
move QMF implementation into nihav_codec_support

3 years agonihav_core/deflate: fix handling large buffers
Kostya Shishkov [Sat, 27 Jun 2020 12:26:31 +0000 (14:26 +0200)]
nihav_core/deflate: fix handling large buffers

3 years agomov: better support for CBR audio
Kostya Shishkov [Fri, 26 Jun 2020 13:49:20 +0000 (15:49 +0200)]
mov: better support for CBR audio

3 years agomov: use block size for audio frames if it's available
Kostya Shishkov [Thu, 25 Jun 2020 13:44:24 +0000 (15:44 +0200)]
mov: use block size for audio frames if it's available

3 years agomov: parse and add audio extradata
Kostya Shishkov [Thu, 25 Jun 2020 13:01:12 +0000 (15:01 +0200)]
mov: parse and add audio extradata

3 years agomov: do not skip deflate stream header, inflate can do it automatically now
Kostya Shishkov [Thu, 25 Jun 2020 09:37:14 +0000 (11:37 +0200)]
mov: do not skip deflate stream header, inflate can do it automatically now

3 years agonihav_core/deflate: recognize deflated stream header in uncompress()
Kostya Shishkov [Thu, 25 Jun 2020 09:35:49 +0000 (11:35 +0200)]
nihav_core/deflate: recognize deflated stream header in uncompress()

3 years agomov: support compressed header
Kostya Shishkov [Wed, 24 Jun 2020 17:01:10 +0000 (19:01 +0200)]
mov: support compressed header

3 years agocodec_support/blockdsp: add halfpel interpolation functions
Kostya Shishkov [Tue, 23 Jun 2020 08:58:35 +0000 (10:58 +0200)]
codec_support/blockdsp: add halfpel interpolation functions

3 years agoregistry: mark Sorenson Video 3 as having B-frames
Kostya Shishkov [Tue, 23 Jun 2020 08:58:10 +0000 (10:58 +0200)]
registry: mark Sorenson Video 3 as having B-frames

3 years agoregister more Sorenson Video FOURCCs
Kostya Shishkov [Sun, 21 Jun 2020 16:00:14 +0000 (18:00 +0200)]
register more Sorenson Video FOURCCs

3 years agocore/bitreader: add get_data() for accessing bitreader input directly
Kostya Shishkov [Sun, 21 Jun 2020 15:46:15 +0000 (17:46 +0200)]
core/bitreader: add get_data() for accessing bitreader input directly

3 years agomake HAMShuffler generic
Kostya Shishkov [Tue, 16 Jun 2020 15:36:15 +0000 (17:36 +0200)]
make HAMShuffler generic

3 years agomsvideo1enc: switch to MD5-based test
Kostya Shishkov [Tue, 16 Jun 2020 14:43:08 +0000 (16:43 +0200)]
msvideo1enc: switch to MD5-based test

3 years agomsadpcmenc: switch to MD5-based test
Kostya Shishkov [Tue, 16 Jun 2020 14:42:50 +0000 (16:42 +0200)]
msadpcmenc: switch to MD5-based test

3 years agocodec_support/test: add test_encoding_md5() for testing encoders by output hash
Kostya Shishkov [Tue, 16 Jun 2020 14:41:40 +0000 (16:41 +0200)]
codec_support/test: add test_encoding_md5() for testing encoders by output hash

3 years agoavi: handle audio extradata shorter than chunk size
Kostya Shishkov [Tue, 16 Jun 2020 13:52:06 +0000 (15:52 +0200)]
avi: handle audio extradata shorter than chunk size

3 years agocommonfmt: fix or silence clippy warnings
Kostya Shishkov [Tue, 16 Jun 2020 13:06:54 +0000 (15:06 +0200)]
commonfmt: fix or silence clippy warnings

3 years agovivo: fix or silence clippy warnings
Kostya Shishkov [Tue, 16 Jun 2020 12:30:02 +0000 (14:30 +0200)]
vivo: fix or silence clippy warnings

3 years agoregistry: silence clippy warnings
Kostya Shishkov [Tue, 16 Jun 2020 12:15:54 +0000 (14:15 +0200)]
registry: silence clippy warnings

3 years agorealmedia: fix or silence clippy warnings
Kostya Shishkov [Tue, 16 Jun 2020 12:14:24 +0000 (14:14 +0200)]
realmedia: fix or silence clippy warnings

3 years agorad: fix or silence clippy warnings
Kostya Shishkov [Tue, 16 Jun 2020 11:00:32 +0000 (13:00 +0200)]
rad: fix or silence clippy warnings

3 years agoms: fix or silence clippy warnings
Kostya Shishkov [Tue, 16 Jun 2020 10:49:20 +0000 (12:49 +0200)]
ms: fix or silence clippy warnings

3 years agoindeo: fix or silence clippy warnings
Kostya Shishkov [Tue, 16 Jun 2020 10:40:52 +0000 (12:40 +0200)]
indeo: fix or silence clippy warnings

3 years agogame: fix or silence clippy warnings
Kostya Shishkov [Tue, 16 Jun 2020 10:12:22 +0000 (12:12 +0200)]
game: fix or silence clippy warnings

3 years agoduck: fix or silence clippy warnings
Kostya Shishkov [Tue, 16 Jun 2020 10:11:32 +0000 (12:11 +0200)]
duck: fix or silence clippy warnings

3 years agocodec_support: fix or silence clippy warnings
Kostya Shishkov [Tue, 16 Jun 2020 10:10:57 +0000 (12:10 +0200)]
codec_support: fix or silence clippy warnings

3 years agocore: fix or silence clippy warnings
Kostya Shishkov [Tue, 16 Jun 2020 10:08:29 +0000 (12:08 +0200)]
core: fix or silence clippy warnings

3 years agocinepakenc: switch default quantisation mode to median cut
Kostya Shishkov [Mon, 15 Jun 2020 17:06:27 +0000 (19:06 +0200)]
cinepakenc: switch default quantisation mode to median cut

3 years agocinepakenc: take into account the number of quantised entries
Kostya Shishkov [Mon, 15 Jun 2020 17:03:16 +0000 (19:03 +0200)]
cinepakenc: take into account the number of quantised entries

3 years agocodec_support/vq: make ELBG report the number of meaningful codewords
Kostya Shishkov [Mon, 15 Jun 2020 16:56:59 +0000 (18:56 +0200)]
codec_support/vq: make ELBG report the number of meaningful codewords

3 years agocodec_support/vq: use 1% improvement as a threshold in ELBG loop
Kostya Shishkov [Mon, 15 Jun 2020 16:47:32 +0000 (18:47 +0200)]
codec_support/vq: use 1% improvement as a threshold in ELBG loop

3 years agocodec_support/vq: calculate full cluster distortion instead of an average
Kostya Shishkov [Mon, 15 Jun 2020 16:46:08 +0000 (18:46 +0200)]
codec_support/vq: calculate full cluster distortion instead of an average

3 years agocodec_support/vq: do not move empty group centroid
Kostya Shishkov [Mon, 15 Jun 2020 16:45:11 +0000 (18:45 +0200)]
codec_support/vq: do not move empty group centroid

3 years agoavimux: pad odd frame chunks
Kostya Shishkov [Mon, 15 Jun 2020 12:40:13 +0000 (14:40 +0200)]
avimux: pad odd frame chunks

3 years agomov: do not generate palette for color table ID -1
Kostya Shishkov [Mon, 15 Jun 2020 12:39:32 +0000 (14:39 +0200)]
mov: do not generate palette for color table ID -1

3 years agoavi: fix index parsing
Kostya Shishkov [Mon, 15 Jun 2020 12:38:47 +0000 (14:38 +0200)]
avi: fix index parsing

3 years agocinepakenc: add missing field in NAVideoInfo used in test
Kostya Shishkov [Mon, 15 Jun 2020 12:38:24 +0000 (14:38 +0200)]
cinepakenc: add missing field in NAVideoInfo used in test

3 years agocinepakenc: fix V1-only intra mode
Kostya Shishkov [Mon, 15 Jun 2020 12:37:15 +0000 (14:37 +0200)]
cinepakenc: fix V1-only intra mode

3 years agocinepak: fix inter-frames decoding
Kostya Shishkov [Mon, 15 Jun 2020 12:34:33 +0000 (14:34 +0200)]
cinepak: fix inter-frames decoding

3 years agoadd A-law and mu-law decoders
Kostya Shishkov [Sun, 14 Jun 2020 16:35:09 +0000 (18:35 +0200)]
add A-law and mu-law decoders

3 years agomov: fix bitdepth handling
Kostya Shishkov [Sun, 14 Jun 2020 15:44:00 +0000 (17:44 +0200)]
mov: fix bitdepth handling

3 years agoregistry: add common QuickTime codecs
Kostya Shishkov [Sat, 13 Jun 2020 12:34:41 +0000 (14:34 +0200)]
registry: add common QuickTime codecs