Commit graph

230 commits

Author SHA1 Message Date
DataHoarder a5f6939824
Abort initial run of one-shot 2022-07-02 20:58:31 +02:00
DataHoarder ddc941f245
Fix initial resume 2022-07-02 17:59:09 +02:00
DataHoarder 33062e1f9a
Fix chunk slicing 2022-07-02 17:49:16 +02:00
DataHoarder 25151d85f0
Added resume workers information 2022-07-02 17:13:36 +02:00
DataHoarder a33040fd85
Added --one-shot-resume for distributed Av1an usage 2022-07-02 00:05:42 +02:00
Zen 7af57610c8
vmaf_percentile to 1, default vmaf rate to 1 (#641)
* vmaf_percentile to 1, default vmaf rate to 1

* fix default

Co-authored-by: Redzic <yusufredzic@gmail.com>
2022-06-25 19:44:15 +00:00
redzic 1a1c679c73
Change progress bar characters (#640) 2022-06-22 21:45:10 +00:00
redzic dfdc2c6703
Fix clippy warnings (#639) 2022-06-20 19:53:07 +00:00
Y0ba 22281844bb
Fix x265 2-pass params (#636)
* Fix x265 2-pass params

* Add --level-idc in x265 default params
2022-06-05 21:42:36 +00:00
redzic edc6acd657
Do not call parse_encoded_frames in first pass (#637)
* Do not call parse_encoded_frames in first pass

* Remove now redundant checks in aom/vpx parsing

* Fix/add notes in tests
2022-06-05 20:17:57 +00:00
Y0ba b8272ae22d
Don't panic if ffmpeg fails to count frames (#634)
* Don't panic if ffmpeg fails to count frames

* Fix formatting
2022-06-05 18:59:50 +00:00
Josh Holmer fe585ac24c
Use std::available_parallelism instead of num_cpus (#633)
* Explicitly set minimum rust version

* Use std::available_parallelism instead of num_cpus
2022-05-21 08:55:43 +00:00
Josh Holmer 460fa3c105
Improve selection of HDR content (#632)
Currently this only applies to grain synth generation,
but the prior implementation of HDR detection only looked at the props
on the input video. Those may not necessarily be set correctly even if
the user is encoding to HDR, so we want to prioritize looking at the
encoder params, then fallback to checking the input if the user has not
set a transfer characteristic on the encoder.
2022-05-16 18:26:14 +00:00
Josh Holmer fa738555c8
Log video info at the start of encode (#629) 2022-05-11 17:52:24 +00:00
Josh Holmer 3003f646c9
Zones fixes (#624)
* Fix formatting of zones help text

* Fix issue where wrong number of frames are read in scenechange with zones active

* Fix scenechange progress bar when zones active
2022-05-01 03:35:59 +00:00
Josh Holmer ec9331283c
Improvements to grain synth gamma handling (#622)
- Fixes BT.1886 to use the more correct formula and gamma
- Simplify the `mid_tone` function
- Add quickcheck tests around `to_linear`/`from_linear`
2022-04-26 01:23:37 +00:00
redzic 270b3ba3cb
Consolidate import style in rustfmt.toml (#619) 2022-04-20 20:24:55 +00:00
Josh Holmer fc4bf94278
Warn if scene change frame count does not match (#618) 2022-04-20 16:57:48 +00:00
GaveUp f0d3f0ece9
Remove data streams when encoding audio (#616) 2022-04-17 05:40:01 +00:00
Josh Holmer 55df40362b
Error and retry chunk if frame count mismatches (#612)
I can't think of a situation where someone would want this issue to be
ignored, so we should treat it as any other encoder error and perform 3
retries, then exit if it continues to fail. This probably indicates some
kind of issue with decoding or applying filters to that chunk.
2022-04-17 03:51:23 +00:00
Josh Holmer 11d2b91215
Upgrade to edition 2021 (#610) 2022-04-10 16:46:49 +00:00
Josh Holmer 02ffc86601
Use published ffmpeg-next (#609) 2022-04-10 16:32:03 +00:00
redzic bd9a1fa9c2
Fix extra splits and zones handling with split method none (#607)
* Fix extra splits and zones handling with split method none

* Fix clippy warning
2022-04-03 20:23:47 +00:00
redzic e5dd06c6dd
Include whether lsmash and ffms2 were found in version info (#606) 2022-04-03 18:37:34 +00:00
redzic 154a9141f5
Fix ffmpeg filter escaping (#602) 2022-03-29 13:04:41 +00:00
Josh Holmer 84d46bb40c
Add zones support (#598)
* Add zones support

Currently implemented:
- Overriding the selected encoder & number of passes
- Overriding or adding video params
- Overriding photon noise setting
- Overriding min/max scene length

Closes #267

* Error if zoned encoder does not support output pixel format

* Fix crash if zones change number of passes

* Set passes to 1 for zones with rt mode
2022-03-28 15:23:08 +00:00
Josh Holmer e9ad35b1ca
Silence remaining clippy lints (#595)
We intentionally transmute here for performance reasons.
2022-03-18 01:39:24 +00:00
redzic b0bb4687ee
Update dependencies (#589) 2022-03-12 13:37:29 +00:00
redzic 9242b036d0
Remove writes to memory in sse4.1 parsing code, fix edge case (#588) 2022-03-11 19:21:12 +00:00
Zen 09e552b413
Multiple input files (#582)
* Multiple input files

* clippy fix

* reset logger for each input file

* remove comment
2022-03-07 14:22:24 +00:00
Zen ed289eca66
fix indicatif (#583) 2022-03-04 08:34:35 +00:00
Jeremy Lee Shields f5ec4891be
Lastrosade sc only (#574)
* Add command line arg for sc-only

* added arg to settings.rs

* Add check and kill after split_routine()

Deletes the temporary directory, it would be better if it was never created in the first place.

* Initialize sc_only in EncodeArgs

* cargo fmt

* Integration test

* Make -s a requirement

* cargo fmt

* Add -s as requirement to sc-only via clap

* revert f7688ca

* Fix me not reading errors

* revert db4fb3b

* Cargo fmt

* Added --scenes as a requirement for --sc-only with clap

* Update wording

* Trying to fix the weird integration bug

* Revert 393b380

* Condition on test failure

* Github actions again

* Filename in actions
2022-03-02 05:33:31 +00:00
redzic 6634bc77f8
Update to ffmpeg 5.0 (#575)
* Update to ffmpeg 5.0
2022-02-22 22:17:37 +02:00
redzic 6c70e2c0cc
Update dependencies (#571) 2022-02-11 23:03:37 +00:00
Josh Holmer c78d01528d
Update several dependencies (#568)
Notably:
- parking_lot
- sysinfo
and many patch version bumps
2022-02-07 05:39:01 +00:00
redzic c7f38747bb
Fix progress bar size estimate (#566) 2022-02-03 22:18:04 +00:00
redzic 9dc898a67e
Update rav1e and vapoursynth (#565) 2022-02-01 06:52:08 +00:00
redzic d5fe2d233b
Future proof SVT-AV1 version parsing (#562)
* Future proof SVT-AV1 version parsing

* Fix

* Completely fix the parsing
2022-01-31 16:56:38 +00:00
redzic e7b2d08379
Update SVT-AV1 target quality params for v0.9.0 (#557)
* Update SVT-AV1 target quality params for v0.9.0

* Add version check for SVT-AV1

* Fix clippy warning

* Fix args for memmem::find
2022-01-30 23:08:11 +00:00
Josh Holmer 88ed5a131a
Warn about slowness when using "select" chunk method (#560)
Partially addresses #559
2022-01-28 15:16:09 +00:00
redzic be82f3bec9
Fix mkvmerge on network drives for windows (#558) 2022-01-24 02:50:55 +00:00
Josh Holmer 5b2b4fbbb9
Display chunk index instead of worker index in verbose mode (#550)
* Display chunk index instead of worker index in verbose mode

The chunk index would be much more useful for users who are using
verbose mode. Worker index is easily derived from counting the lines,
and is not particularly useful.

* Pass padding around instead of recalculating it

* Add assert and comment

Co-authored-by: Redzic <yusufredzic@gmail.com>
2022-01-19 01:42:41 +00:00
Josh Holmer 351d19accb
Rework log levels to be more useful (#546)
- Update log levels so that the log file contains more verbose
  information by default, while leaving the stderr progress indicator
  relatively uncluttered
- Explicitly set the log level to `error` for all dependencies
- rav1e scenechange info has been moved to `--log-level trace`
- Avoid outputting colors if stderr is not a tty
- Fix a crash when using `--quiet`
2022-01-18 23:20:01 +00:00
redzic d893cd5aad
Update vapoursynth and other dependencies (#540) 2022-01-17 08:24:52 +00:00
redzic 36fbff1dcd
Update version to 0.3.1 (#541) 2022-01-17 07:16:42 +00:00
Zen ff1aaded35
Encoder mode/rate check (#532)
* Encoder mode/rate check

* Tweak

Co-authored-by: Redzic <yusufredzic@gmail.com>
2022-01-16 04:28:37 +00:00
redzic b54b1f713b
Call fix_path for mkvmerge concat (#533)
* Call fix_path for mkvmerge concat

* Fix formatting
2022-01-16 00:25:20 +00:00
redzic a3eea86652
Fix mkvmerge concat (#523) 2022-01-11 06:17:46 +00:00
KesavaViswanadha 66c82051c9
Fixed mkvmerge on windows by allowing for commands over 32767 characters to be executed. (#521)
* Fixed mkvmerge on windows by allowing for commands over 32767 characters to be executed.

* Fix formatting

* Fix errors

* Fix clippy warnings

Co-authored-by: Kesava Viswanadha <kviswanadha@berkeley.edu>
Co-authored-by: Redzic <yusufredzic@gmail.com>
2022-01-09 00:59:23 +00:00
redzic 38c1db6c0d
Display possible vspipe errors when ffmpeg pipe is present (#519)
* Display possible errors vspipe when ffmpeg pipe is present

* Fix clippy warnings
2022-01-07 23:03:39 +00:00