| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
| |
It was not an even number of sample size * num channels in some cases
|
| |
|
| |
|
|
|
|
| |
Fixes https://github.com/HandBrake/HandBrake/issues/815
|
|
|
|
| |
Fixes https://github.com/HandBrake/HandBrake/issues/798
|
|
|
|
|
|
|
|
| |
Add additional x264 encoder options dct-decimate=0 and fast-pskip=0 (same as no-dct-decimate=1 and no-fast-pskip=1).
In some special cases, reproduction of flat areas and subtle gradients may improve slightly. Generally speaking, any change should be visually imperceptible at these bit rates, but adding a few extra bits is always acceptable when encoding for production intermediate purposes. Negligible speed hit (1-2%) for the main Production presets.
On the contrary, these settings are worse than useless for Production Proxy presets, which are optimized for speed. 5% speed hit isn't worth the tradeoff for low resolution proxies that need to be generated quickly and won't be used for final export.
|
|
|
|
| |
Fixes https://github.com/HandBrake/HandBrake/issues/717
|
|
|
|
|
|
|
|
|
|
| |
Fixes https://github.com/HandBrake/HandBrake/issues/685
For some stream types, libav does not seek all streams within the file
to the same position. So we get data from streams that is prior to the
desired preview start position leaking through. The result, for example,
is a preview that has audio that starts from the beginning of the file
and video that starts much later at the desired start pos.
|
|
|
|
|
|
|
|
| |
software.
Production Max and Production Standard are high bit rate, short GOP (I/P), constant frame rate presets suitable for use as intermediate formats for video editing.
Production Proxy 1080p and Production Proxy 540p are high bit rate, Intra-only (I), constant frame rate presets suitable for use as low resolution proxy formats for video editing. The Proxy presets correspond to one-quarter (1/4) 2160p 4K Ultra HD and one-quarter (1/4) 1080p Full HD resolutions, respectively.
|
|
|
|
|
|
|
|
| |
Using Vimeo and YouTube compression guides for reference:
https://vimeo.com/help/compression
https://support.google.com/youtube/answer/1722171
Test videos visually inspected following recompression by these services.
|
|
|
|
|
|
|
|
| |
Fixes https://github.com/HandBrake/HandBrake/issues/673
If the end point is near the end of file and one of the streams reaches
eof before the end point is detected, the eof buffer for that stream was
not sent. Flush all streams when end point is reached.
|
|
|
| |
This provides compatibility with apple software
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a preset key AlignAVStart that enables this work-around. When
enabled, blank frames are inserted or frames are dropped to force
alignment of the initial timestamp of every audio and video stream.
Aligning the start times minimizes the impact of broken edit list
support in players.
Closes #763.
Squashed:
sync: improve alignment when passthru audio is present
presets: enable AlignAVStart for General and Gmail presets
LinGui: Improve AlignAVStart tooltip
sync: avoid inserting a black frame < nominal frame duration
sync: fix start alignment when doing p-to-p encoding
sync: add comments
|
|
|
|
| |
I forgot to run rebuild script for the presets list
|
|
|
|
| |
It was only used for scaling, it fails far too often and is only
faster on a limited selectoin of hardware.
|
|
|
|
|
|
|
|
|
|
|
| |
* Allow audio fallback to be "None"
When audio fallback is "None", a failure to do passthru will result in
no output audio track being added.
* simplify audio autopassthru fallback logic
Drop track when fallback codec is invalid instead of falling back to a
default. Since all presets have a fallback set, the default fallback
condition would only ever be triggered by an invalid setting.
|
|
|
|
| |
Fixes https://github.com/HandBrake/HandBrake/issues/779
|
|
|
|
|
| |
If a preset file is read that has a version where no specific changes to
the preset format were made, we did not perform an import even though
some later preset version has changes.
|
|
|
|
|
|
|
|
|
|
|
|
| |
This wrapper can be used to frame parallelize simple video filters. By
simple, I mean there can be no temporal context that is shared from one
frame to the next.
Wrap unsharp and lapsharp filters. unsharp required a small rework to
separate out temporary storage that is required when processing each
frame. We now need to duplicate this storage for each thread.
Closes #759.
|
|
|
|
| |
Simple runtime vs. compile time error, which Clang hid from me.
|
| |
|
| |
|
|
|
|
| |
Adds verystrong presets to unsharp and lapsharp filters. Adds mediumfine and mediumcoarse tunes to unsharp filter. Fixes some values.
|
| |
|
|
|
|
| |
This is an error that crept in when making nlmeans multithreaded
|
| |
|
|
|
|
| |
Closes #525.
|
|
|
|
|
|
| |
If the stream is damaged, a probe can fail due to bad data at the
start of the probe buffer. So try filling the probe buffer from
multiple start positions in the file.
|
|
|
|
| |
Was supposed to be 640 when converting a non-AC3 source track.
|
|
|
|
|
|
|
|
|
| |
On windows builds, there is an upstream bug in the lame
encoder that causes an extra output packet that has the same
timestamp as the second to last packet. This causes an error
during muxing. Drop the packet with the duplicate timestamp.
Fixes https://github.com/HandBrake/HandBrake/issues/726
|
|
|
|
|
| |
libav isn't guaranteed to set AVChapter.end. So don't use it. Use
AVChapter.start instead.
|
|
|
|
|
|
|
| |
Reader can skip data at the beginning of the file. We were not
informing decsrt how much was skipped when pts_to_start caused the skip.
Fixes https://forum.handbrake.fr/viewtopic.php?f=11&t=36258
|
|
|
|
|
| |
After encountering a bad setting, it was removing all filters starting
with the one with bad settings.
|
| |
|
|
|
|
|
|
|
| |
The threshold in bytes for when to give up trying to decode a frame was
too big for a lot of streams. It was made large to accomodate 4K raw
video. Instead of counting bytes, count frames fed to the decoder.
This is more consistant regardless of video resolution and codec.
|
|
|
|
|
| |
The samplerate was incorrectly copied to the job as a string instead of
an int which caused invalid sanitizing of audio settings.
|
|
|
|
|
|
|
|
| |
Setting this flag signals to libav to not wait for IDR or recovery
points before returning frames to us. Some videos have neither IDRs or
recovery points, so this fixes transcoding such video.
Fixes https://github.com/HandBrake/HandBrake/issues/456
|
|
|
|
|
|
| |
Raw video has no timestamps. But we drop frames in sync that have no
timestamps. So detect raw video and extrapolate timestamps from
framerate.
|
| |
|
| |
|
|
|
|
| |
function, fix build with icc mac compiler. Patch by jwardnh.
|
|
|
|
| |
Closes #625.
|
|
|
|
| |
opencl: cleaning more leaks
|
|
|
|
|
|
|
|
|
|
|
| |
* Remove Fontconfig on Windows
Let libass use its DirectWrite font provider backend instead of Fontconfig.
This eliminates Fontconfig's font cache generation delay that occurred
at the start of an encode after a system font was (un)installed or when
HandBrake was installed and used to burn text subtitles for the first time.
* Remove LibHB's dependency on Fontconfig when it's not used
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* subtitles: simplify and shorten subtitle descriptions
Generally, it eliminates parens to make things more readable.
I.e. it turns this:
English (Closed Caption)(Wide Screen)(Bitmap)(VOBSUB)
Into this:
English, Closed Caption [Wide Screen, VOBSUB]
* Revise punctuation per BradleyS request
* fix subtitle description formatting
* incorporate suggestions from PR
|
|
|
|
|
|
|
|
|
|
|
|
| |
* text subs: use generic font family names
Allows the platform more flexibility in choosing the "best" font for the
platform.
* rendersub: make font configurable per platform
Use Lucida Console for mono font on windows since it chooses ugly,
difficult to read Courier New when using monospace family name.
|
|
|
|
|
|
|
|
|
|
| |
* Fix spelling of 'source'
* Fix spelling of 'specify'
* Fix spelling of 'internal'
* Fix spelling of 'quitting'
|
| |
|