]> granicus.if.org Git - handbrake/log
handbrake
7 years agoMacGui: do not duplicate the subtitle source track each time the job is read again...
Damiano Galassi [Fri, 17 Mar 2017 14:01:00 +0000 (15:01 +0100)]
MacGui: do not duplicate the subtitle source track each time the job is read again from disk.

7 years agoMacGui: improve the job description in the queue.
Damiano Galassi [Fri, 17 Mar 2017 14:00:26 +0000 (15:00 +0100)]
MacGui: improve the job description in the queue.

7 years agoWinGui: Add a new option to play Sound when queue or single encode completes
sr55 [Thu, 16 Mar 2017 21:00:37 +0000 (21:00 +0000)]
WinGui: Add a new option to play Sound when queue or single encode completes

7 years agoWinGui: Add option to show progress percentage in app title bar, and the task tray...
sr55 [Thu, 16 Mar 2017 20:26:05 +0000 (20:26 +0000)]
WinGui: Add option to show progress percentage in app title bar, and the task tray header and system tray tooltip. (Configured via preferences).  #630

7 years agoMacGui: end the textfields editing before adding a job to queue or creating a preset...
Damiano Galassi [Thu, 16 Mar 2017 10:03:25 +0000 (11:03 +0100)]
MacGui: end the textfields editing before adding a job to queue or creating a preset, so all the current job settings will be saved.

7 years agolibhb: initialize sleep prevention reasonForActivity CFStringRef inside a function...
Damiano Galassi [Wed, 15 Mar 2017 17:10:02 +0000 (18:10 +0100)]
libhb: initialize sleep prevention reasonForActivity CFStringRef inside a function, fix build with icc mac compiler. Patch by jwardnh.

7 years agoMacGui: add a message in the panel to select the external app.
Damiano Galassi [Wed, 15 Mar 2017 15:33:46 +0000 (16:33 +0100)]
MacGui: add a message in the panel to select the external app.

7 years agoMacGui: remove two unused vars.
Damiano Galassi [Wed, 15 Mar 2017 15:32:36 +0000 (16:32 +0100)]
MacGui: remove two unused vars.

7 years agoMacGui: fix a possible race condition with the multiprocess queue when editing a...
Damiano Galassi [Wed, 15 Mar 2017 15:31:57 +0000 (16:31 +0100)]
MacGui: fix a possible race condition with the multiprocess queue when editing a job.

7 years agoqsv: fixing variable re-use (#627)
maximd33 [Tue, 14 Mar 2017 23:22:31 +0000 (00:22 +0100)]
qsv: fixing variable re-use (#627)

Closes #625.

7 years agoopencl: cleaning more leaks (#628)
maximd33 [Tue, 14 Mar 2017 23:20:29 +0000 (00:20 +0100)]
opencl: cleaning more leaks (#628)

opencl: cleaning more leaks

7 years agoLinGui: fix audio copy mask updates
John Stebbins [Sun, 12 Mar 2017 19:50:25 +0000 (13:50 -0600)]
LinGui: fix audio copy mask updates

Updates to the mask would not be applied till it was saved to a preset

7 years agoLinGui: Update translations
John Stebbins [Sun, 12 Mar 2017 17:17:16 +0000 (11:17 -0600)]
LinGui: Update translations

New translations come from transifex HandBrake 1.0.0 project.
https://ataaw.transifex.com/victorr2007/handbrake-100/

(cherry picked from commit c6896fe967b0a5c95c645646c2a7a9c60e7cc52b)

7 years agoAdds FR localisation to the desktop file (#552)
Olivier Humbert [Sun, 12 Mar 2017 16:49:46 +0000 (17:49 +0100)]
Adds FR localisation to the desktop file (#552)

7 years agoRemove Fontconfig on Windows (#610)
Oleg Oshmyan [Sun, 12 Mar 2017 16:31:36 +0000 (18:31 +0200)]
Remove Fontconfig on Windows (#610)

* 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

7 years agolibvpx: fix building with our pthreadw32 contrib
John Stebbins [Sat, 11 Mar 2017 20:38:19 +0000 (13:38 -0700)]
libvpx: fix building with our pthreadw32 contrib

7 years agosubtitles: simplify and shorten subtitle descriptions (#591)
John Stebbins [Fri, 10 Mar 2017 19:56:55 +0000 (12:56 -0700)]
subtitles: simplify and shorten subtitle descriptions (#591)

* 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

7 years agoHarfBuzz: disable Fontconfig (#609)
Oleg Oshmyan [Fri, 10 Mar 2017 19:54:32 +0000 (21:54 +0200)]
HarfBuzz: disable Fontconfig (#609)

HarfBuzz uses Fontconfig only in command-line utilities, which we don't need.

7 years agoActually set Fontconfig configuration path (#611)
Oleg Oshmyan [Fri, 10 Mar 2017 19:53:33 +0000 (21:53 +0200)]
Actually set Fontconfig configuration path (#611)

Option --with-fcpath does not exist and never did.
We had a patch that added it, but the patch has been removed.
Use the standard option instead.

7 years agotext subs: use generic font family names (#614)
John Stebbins [Fri, 10 Mar 2017 19:47:50 +0000 (12:47 -0700)]
text subs: use generic font family names (#614)

* 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.

7 years agoFix various spelling mistakes (#613)
Sebastian Ramacher [Fri, 10 Mar 2017 16:31:17 +0000 (17:31 +0100)]
Fix various spelling mistakes (#613)

* Fix spelling of 'source'

* Fix spelling of 'specify'

* Fix spelling of 'internal'

* Fix spelling of 'quitting'

7 years agoopencl: fixing more resource leaks
maxd [Fri, 10 Mar 2017 10:03:57 +0000 (11:03 +0100)]
opencl: fixing more resource leaks

7 years agocontrib: Update to libvpx 1.6.1.
Bradley Sepos [Sat, 4 Mar 2017 13:13:23 +0000 (08:13 -0500)]
contrib: Update to libvpx 1.6.1.

Closes #518.

7 years agox265: bump to version 2.3 (#437)
John Stebbins [Fri, 10 Mar 2017 16:10:14 +0000 (09:10 -0700)]
x265: bump to version 2.3 (#437)

* x265: bump to version 2.2

Encoder enhancements
----------------------------------
1. Enhancements to TU selection algorithm with early-outs for improved
speed; use --limit-tu to exercise.
2. New motion search method SEA (Successive Elimination Algorithm)
supported now as –me 4
3. Bit-stream optimizations to improve fields in PPS and SPS for
bit-rate savings through --[no-]opt-qp-pps,
--[no-]opt-ref-list-length-pps, and --[no-]multi-pass-opt-rps.
4. Enabled using VBV constraints when encoding without WPP.
5. All param options dumped in SEI packet in bitstream when info
selected.
6. x265 now supports POWERPC-based systems. Several key functions also
have optimized ALTIVEC kernels.

API changes
-------------------
1. Options to disable SEI and optional-VUI messages from bitstream made
more descriptive.
2. New option --scenecut-bias to enable controlling bias to mark
scene-cuts via cli.
3. Support mono and mono16 color spaces for y4m input.
4. --min-cu-size of 64 no-longer supported for reasons of visual quality
(was crashing earlier anyways.)
5. API for CSV now expects version string for better integration of x265
into other applications.

Bug fixes
--------------
1. Several fixes to slice-based encoding.
2. --log2-max-poc-lsb‘s range limited according to HEVC spec.
3. Restrict MVs to within legal boundaries when encoding.

* x265: bump to version 2.3

Encoder enhancements
----------------------------------
1. New SSIM-based RD-cost computation for improved visual quality,
   and efficiency; use --ssim-rd to exercise.
2. Multi-pass encoding can now share analysis information from prior
   passes (in addition to rate-control information) to improve performance
   and quality of subsequent passes; to your multi-pass command-lines that
   use the --pass option, add --multi-pass-opt-distortion to share
   distortion information, and --multi-pass-opt-analysis to share other
   analysis information.
3. A dedicated thread pool for lookahead can now be specified with
   --lookahead-threads.
4. --dynamic-rd dynamically increase analysis in areas where the bitrate
   is being capped by VBV; works for both CRF and ABR encodes with VBV
   settings.
5. The number of bits used to signal the delta-QP can be optimized with
   the --opt-cu-delta-qp option; found to be useful in some scenarios for
   lower bitrate targets.
6. Experimental feature option:–aq-motion adds new QP offsets based on
   relative motion of a block with respect to the movement of the frame.

API changes
-------------------
1. Reconfigure API now supports signalling new scaling lists.
2. x265 application’s csv functionality now reports time (in milliseconds)
   taken to encode each frame.
3. --strict-cbr enables stricter bitrate adherence by adding filler bits
   when achieved bitrate is lower than the target; earlier, it was only
   reacting when the achieved rate was higher.
4. --hdr can be used to ensure that max-cll and max-fall values are
   always signaled (even if 0,0).

Bug fixes
--------------
1. Fixed incorrect HW thread counting on MacOS platform.
2. Fixed scaling lists support for 4:4:4 videos.
3. Inconsistent output fix for --opt-qp-pss by removing last slice’s
   QP from cost calculation.
4. VTune profiling (enabled using ENABLE_VTUNE CMake option) now also
   works with 2017 VTune builds.

* x265: remove unnecessary module.defs defines

7 years agoLinGui: fix video preset slider updates
John Stebbins [Thu, 9 Mar 2017 19:39:47 +0000 (12:39 -0700)]
LinGui: fix video preset slider updates

Fixes https://github.com/HandBrake/HandBrake/issues/621

7 years agoopencl: Fix resource leak.
maxd [Wed, 8 Mar 2017 19:08:32 +0000 (20:08 +0100)]
opencl: Fix resource leak.

Closes #617 and closes #618.

7 years agolibav: a more robust fix for aac encoder crash
John Stebbins [Wed, 8 Mar 2017 16:31:14 +0000 (09:31 -0700)]
libav: a more robust fix for aac encoder crash

7 years agoMacGui: fix "add titles to queue" toolbar item size
Damiano Galassi [Wed, 8 Mar 2017 10:17:06 +0000 (11:17 +0100)]
MacGui: fix "add titles to queue" toolbar item size

7 years agoWinGui: Remove disk space warning from browser and allow the low level to be configur...
sr55 [Sun, 5 Mar 2017 22:02:26 +0000 (22:02 +0000)]
WinGui: Remove disk space warning from browser and allow the low level to be configurable in options. Resolves #590

7 years agoWinGui: Add support in the UI for QSV 10bit H.265 encoder.
sr55 [Sun, 5 Mar 2017 19:48:35 +0000 (19:48 +0000)]
WinGui: Add support in the UI for QSV 10bit H.265 encoder.

7 years agoqsv: only main10 profile supported for HEVC 10b encode
maxd [Tue, 28 Feb 2017 17:27:59 +0000 (18:27 +0100)]
qsv: only main10 profile supported for HEVC 10b encode

7 years agoqsv: added HEVC 10-bit as encoder, should help for GUI integration
maxd [Tue, 28 Feb 2017 17:15:00 +0000 (18:15 +0100)]
qsv: added HEVC 10-bit as encoder, should help for GUI integration

7 years agoqsv: libav's patch fix
maxd [Wed, 8 Feb 2017 12:39:21 +0000 (13:39 +0100)]
qsv: libav's patch fix

7 years agoqsv: adding hevc10 support starting from KBL platform
maxd [Wed, 8 Feb 2017 12:17:00 +0000 (13:17 +0100)]
qsv: adding hevc10 support starting from KBL platform

7 years agoWinGui: Rework of the preset system
sr55 [Sat, 4 Mar 2017 17:22:26 +0000 (17:22 +0000)]
WinGui: Rework of the preset system
- Better support for categories.
- Switched from a List to Treeview Control.
- Remember the expansion state of each group
- Put User Presets on top after next save.
Closes #445

7 years agoqsv: adding hevc decode support
maxd [Fri, 3 Feb 2017 19:32:14 +0000 (20:32 +0100)]
qsv: adding hevc decode support

7 years agoconfigure: Modernize Python in configure.py.
cclauss [Sun, 8 Jan 2017 10:23:45 +0000 (11:23 +0100)]
configure: Modernize Python in configure.py.

file is a Python built-in (https://docs.python.org/2/library/functions.html?highlight=file#file) so it should be avoided as a variable name.
Use "with open" syntax to automate file close where possible.
os.getenv() will return None if the key is not in os.environ.
Use ternary if to simplify conditional assignment where it improves, not hinders, readability.

Closes #500.

7 years agoscripts: Modernize Python.
qarkai [Sat, 10 Sep 2016 12:57:27 +0000 (15:57 +0300)]
scripts: Modernize Python.

Replace getopt with argparse
Remove useless globals
Fix PEP8 warnings
Replace top() with native list index
Handle Expat exceptions

Closes #321.

7 years agocontrib: Remove x265 Windows XP support.
Bradley Sepos [Sat, 4 Mar 2017 11:49:53 +0000 (06:49 -0500)]
contrib: Remove x265 Windows XP support.

We stopped supporting XP awhile back. Removal is necessary for NUMA. Closes #539.

7 years agoUnbreak non-mingw cross.
Wouter van Kesteren [Thu, 2 Mar 2017 20:21:40 +0000 (21:21 +0100)]
Unbreak non-mingw cross.

Strings in python are immutable and it results in:

Traceback (most recent call last):
  File "make/configure.py", line 1592, in <module>
    action.run()
  File "make/configure.py", line 287, in run
    self._action()
  File "make/configure.py", line 506, in _action
    self.systemf[0] = self.systemf[0].upper()
TypeError: 'str' object does not support item assignment

7 years agosync: fix small video dejitter error
John Stebbins [Fri, 3 Mar 2017 21:19:36 +0000 (14:19 -0700)]
sync: fix small video dejitter error

This very small error snowballs into a crash in x264 :-p

If the amount of jitter on the first frame in the queue was small
(about 1 tick) then jitter would not be removed from that frame.
This extra tick of jitter can appear on different frames depending
on when frame arrives and how much has been queued.  This very small
amount of randomness lead to problems in the VFR filter.  A frame
duration difference as small as 1 tick can lead to an extra frame
getting duplicated when doing CFR.  When doing 2 pass encoding, this
extra frame causes x264 to crash at the end of the 2nd pass.

7 years agoMacGui: forgot an else block in the previous commit
Damiano Galassi [Thu, 2 Mar 2017 17:10:18 +0000 (18:10 +0100)]
MacGui: forgot an else block in the previous commit

7 years agoMacGui: do not remove a job from the queue if the rescan to the main window fails.
Damiano Galassi [Thu, 2 Mar 2017 17:06:21 +0000 (18:06 +0100)]
MacGui: do not remove a job from the queue if the rescan to the main window fails.

7 years agolibav: simplify patch for corrupt raw video
John Stebbins [Wed, 1 Mar 2017 15:00:15 +0000 (08:00 -0700)]
libav: simplify patch for corrupt raw video

7 years agowork: set orig_vrate correctly
John Stebbins [Tue, 28 Feb 2017 21:59:06 +0000 (14:59 -0700)]
work: set orig_vrate correctly

It was getting set to the title's rate instead of the rate that the
filter chain sets.

An incorrect vrate causes x265 rate control breakage.

Fixes https://github.com/HandBrake/HandBrake/issues/600

7 years agobatch: Support --min-duration when doing batch scans
John Stebbins [Mon, 27 Feb 2017 20:05:12 +0000 (13:05 -0700)]
batch: Support --min-duration when doing batch scans

Fixes https://github.com/HandBrake/HandBrake/issues/501

7 years agolibav: gracefully handle a broken AVI index
John Stebbins [Mon, 27 Feb 2017 19:01:35 +0000 (12:01 -0700)]
libav: gracefully handle a broken AVI index

Fixes https://github.com/HandBrake/HandBrake/issues/439

7 years agolibav: fix rawvideo in mkv corruption
John Stebbins [Sun, 26 Feb 2017 23:39:59 +0000 (16:39 -0700)]
libav: fix rawvideo in mkv corruption

fixes https://github.com/HandBrake/HandBrake/issues/128

7 years agovfr: fix invalid read/write
John Stebbins [Sun, 26 Feb 2017 19:42:01 +0000 (12:42 -0700)]
vfr: fix invalid read/write

Probably the cause of crash seen in nightly builds

fixes https://github.com/HandBrake/HandBrake/issues/597

7 years agoRevise NEWS.markdown for 1.0.3.
Bradley Sepos [Sat, 25 Feb 2017 20:56:07 +0000 (15:56 -0500)]
Revise NEWS.markdown for 1.0.3.

7 years agoUpdate NEWS
sr55 [Sat, 25 Feb 2017 18:33:35 +0000 (18:33 +0000)]
Update NEWS

7 years agoencca_aac: fix a small leak
Damiano Galassi [Fri, 24 Feb 2017 18:15:54 +0000 (19:15 +0100)]
encca_aac: fix a small leak

7 years agoencca_aac: use the libhb list helper functions to append buffers
Damiano Galassi [Fri, 24 Feb 2017 18:15:12 +0000 (19:15 +0100)]
encca_aac: use the libhb list helper functions to append buffers

7 years agoencca_aac: no need to pad manually the remaining data
Damiano Galassi [Fri, 24 Feb 2017 18:14:04 +0000 (19:14 +0100)]
encca_aac: no need to pad manually the remaining data

7 years agoencca_aac: flush all the remaining packets from encoders
Damiano Galassi [Fri, 24 Feb 2017 18:13:41 +0000 (19:13 +0100)]
encca_aac: flush all the remaining packets from encoders

7 years agoaudio_resample: fix mapping of mono to single channel (#593)
John Stebbins [Fri, 24 Feb 2017 17:28:33 +0000 (10:28 -0700)]
audio_resample: fix mapping of mono to single channel (#593)

* audio_resample: fix mapping of mono to single channel

libav's mixer code can't map single channel layouts to other single
channel layouts. And we were asking it to map e.g. front left to front
center because out MONO mixdown == libav front center.  So when we
request MONO and the source is any single channel, change our output
layout to match the input.

fixes
https://forum.handbrake.fr/viewtopic.php?f=12&t=36016&sid=c5993fa7375792a940152c8adda19a54

* Incorporate Rodeo's suggestions

* fix grammar

7 years agoMacGui: fix a typo.
Damiano Galassi [Fri, 24 Feb 2017 08:26:22 +0000 (09:26 +0100)]
MacGui: fix a typo.

7 years agoMacGui: set a sort descriptor by default in the titles selection table.
Damiano Galassi [Fri, 24 Feb 2017 08:26:08 +0000 (09:26 +0100)]
MacGui: set a sort descriptor by default in the titles selection table.

7 years agolibav: fix latm aac decoder hang
John Stebbins [Fri, 24 Feb 2017 00:39:06 +0000 (17:39 -0700)]
libav: fix latm aac decoder hang

Don't return EAGAIN from decoders.

When waiting for codec parameters, the decoder returned EAGAIN which was
meant to be interpreted as "send more data". But the new libav decoder
API changed the definition of EAGAIN to mean "send the same packet
again".  So hang.

7 years agolibav: fix reading wmv larger than 2G
John Stebbins [Fri, 24 Feb 2017 00:09:23 +0000 (17:09 -0700)]
libav: fix reading wmv larger than 2G

fixes https://github.com/HandBrake/HandBrake/issues/587

7 years agolibav: fix crash when encoding aac at high bitrate
John Stebbins [Thu, 23 Feb 2017 22:49:25 +0000 (15:49 -0700)]
libav: fix crash when encoding aac at high bitrate

Fixes https://github.com/HandBrake/HandBrake/issues/510

7 years agoencx265: fix compiler warning
John Stebbins [Wed, 22 Feb 2017 22:17:34 +0000 (15:17 -0700)]
encx265: fix compiler warning

7 years agoencx265: fix 2 pass encoding when framerate is wrong
John Stebbins [Wed, 22 Feb 2017 20:33:16 +0000 (13:33 -0700)]
encx265: fix 2 pass encoding when framerate is wrong

x265 expects the framerate specified to be the same for both passes. So
we must set the same value even when we compute that the actual
framerate differs from what the file's header says.

7 years agoMacGui: preserve the output file name if auto naming is not enabled and the source...
Damiano Galassi [Wed, 22 Feb 2017 14:05:21 +0000 (15:05 +0100)]
MacGui: preserve the output file name if auto naming is not enabled and the source is not a stream. Revert to the 0.10.x behaviour.

7 years agolibav: fix mkv seek crash
John Stebbins [Tue, 21 Feb 2017 22:38:53 +0000 (15:38 -0700)]
libav: fix mkv seek crash

Remove hopelessly broken code that attempted to rewind the seek point to
a position in the file where subtitles in every subtitle track after
the seek time are after the computed position.

7 years agodvd: add widescreen/letterbox/pan&scan/4:3 to vobsub description
John Stebbins [Thu, 13 Oct 2016 18:50:05 +0000 (11:50 -0700)]
dvd: add widescreen/letterbox/pan&scan/4:3 to vobsub description

7 years agodvd: add widescreen vobsubs when letterbox is permitted
John Stebbins [Thu, 13 Oct 2016 18:18:22 +0000 (11:18 -0700)]
dvd: add widescreen vobsubs when letterbox is permitted

We were only adding subtitle tracks specifically designed for letterbox
when letterbox is permitted.  We should also add the subtitle tracks
that are specifically designed for wide screen.

7 years agovfr: add cfr frame drop debugging logs
John Stebbins [Thu, 22 Sep 2016 18:57:56 +0000 (11:57 -0700)]
vfr: add cfr frame drop debugging logs

These logs can be enabled by uncommenting HB_DEBUG_CFR_DROPS at the top
of the file.

If you have any sources that use progressive frame upsampling that you
would like to test with this new frame drop algo, enable these debug
logs to get full details of what frames are dropped and passed.

They show which frames are dropped and the metrics that the decision to
drop is based on.  They also show which frames are passed and the
cadence of passed vs. dropped frames.

7 years agovfr: simplify and improve CFR frame dropping algo
John Stebbins [Wed, 21 Sep 2016 22:36:07 +0000 (15:36 -0700)]
vfr: simplify and improve CFR frame dropping algo

The new algo caches extra frames so it can select a "best" frame to drop
from a list. A metric for each buffer is calculated as it is added to
the list. The metric indicates how much the frame differes from the
previous frame. The one with the lowest metric is selected for dropping
when a drop is required.

The old algo tried to latch on to a pattern without keeping any extra
frames. When "in sync" it would drop the buffer that fit the pattern.
But this only worked for a few specific patterns I had tested with and
did not work for all possible patterns (e.g. issue 50 where 1 in 5
needed to be dropped to convert 29.97 to 23.976).

fixes https://github.com/HandBrake/HandBrake/issues/50

7 years agodecavcodec: drop initial_padding audio samples
John Stebbins [Tue, 21 Feb 2017 17:51:33 +0000 (10:51 -0700)]
decavcodec: drop initial_padding audio samples

These are samples that were not in the original source and were added by
the encoder.  To get a faithful reproduction of the source, they must be
dropped.

7 years agolibav: extract initial_padding from mp4 edit list
John Stebbins [Tue, 21 Feb 2017 17:50:58 +0000 (10:50 -0700)]
libav: extract initial_padding from mp4 edit list

7 years agolibav: fix mp4 edit list delay rounding error
John Stebbins [Tue, 21 Feb 2017 17:39:01 +0000 (10:39 -0700)]
libav: fix mp4 edit list delay rounding error

The error was small, but could result in a 1ms shift for every
generation of remuxing.

7 years agoencavcodecaudio: set encoder time_base to 90khz
John Stebbins [Tue, 21 Feb 2017 17:33:10 +0000 (10:33 -0700)]
encavcodecaudio: set encoder time_base to 90khz

Setting the time_base to 90khz reduces rounding errors when converting
back and forth from the default which was sample_rate.

7 years agoencavcodecaudio: fix dropping of final input packet
John Stebbins [Tue, 21 Feb 2017 17:31:37 +0000 (10:31 -0700)]
encavcodecaudio: fix dropping of final input packet

When exactly input_samples were left in the input buffer, we were
dropping them when they could be encoded.

7 years agoopencl: better release of OpenCL context to avoid more leaks
maxd [Thu, 9 Feb 2017 20:04:59 +0000 (21:04 +0100)]
opencl: better release of OpenCL context to avoid more leaks

7 years agoopencl: fixing leaks for clBuffers
maxd [Sat, 4 Feb 2017 19:31:31 +0000 (20:31 +0100)]
opencl: fixing leaks for clBuffers

7 years agoencca_aac: factory encoder delay into timestamps
John Stebbins [Mon, 20 Feb 2017 17:53:01 +0000 (10:53 -0700)]
encca_aac: factory encoder delay into timestamps

And set audio init_delay so that we can record the encoder delay in the
output container.

7 years agolibav: explicitly write encoder delay and preroll to mp4
John Stebbins [Mon, 20 Feb 2017 17:49:44 +0000 (10:49 -0700)]
libav: explicitly write encoder delay and preroll to mp4

This will make it possible to read encoder delay back and drop the
samples appropriately.

Writing preroll sample group to the mp4 fixes post-processing of the
file with Apple tools.  If the roll sample group is not present, Apple
tools will apply an implicit rule to remove encoder delay which results
in the delay being dropped twice.

7 years agolibav: revise edit list offset patch
John Stebbins [Sun, 19 Feb 2017 22:03:02 +0000 (15:03 -0700)]
libav: revise edit list offset patch

No functional difference

7 years agopreset: fix application of anamorphic "Off"
John Stebbins [Sun, 19 Feb 2017 15:36:20 +0000 (08:36 -0700)]
preset: fix application of anamorphic "Off"

7 years agosync: fix sync problem with delayed streams
John Stebbins [Sat, 18 Feb 2017 21:11:17 +0000 (14:11 -0700)]
sync: fix sync problem with delayed streams

If a stream is delayed by a large amount and the first timestamp from
the stream is AV_NOPTS_VALUE, sync assumed a 0 timestamp which caused
loss of sync.  Drop the buffer instead.

7 years agodecavcodec: fix comment
John Stebbins [Sat, 18 Feb 2017 21:10:51 +0000 (14:10 -0700)]
decavcodec: fix comment

7 years agoEnabled "Per monitor DPI awareness"
Waterflames [Sat, 18 Feb 2017 13:11:57 +0000 (14:11 +0100)]
Enabled "Per monitor DPI awareness"

This commit adds entries to app.config and app.manifest to enable per
monitor DPI awareness in Windows 10. The application will behave as
before on platforms that do not support this.

The implementation was done using official Microsoft documentation:
https://github.com/Microsoft/WPF-Samples/tree/master/PerMonitorDPI

7 years agoWinGui: Fix a logic error in 8vs10bit video encoder detection in the advanced view.
sr55 [Fri, 17 Feb 2017 19:11:19 +0000 (19:11 +0000)]
WinGui: Fix a logic error in 8vs10bit video encoder detection in the advanced view.

7 years agoqsv: fix init_delay reference
John Stebbins [Thu, 16 Feb 2017 04:44:20 +0000 (21:44 -0700)]
qsv: fix init_delay reference

Missed changing this when moving init_delay out of esconfig union

7 years agomuxavformat: Inform muxer of encoder delay
John Stebbins [Wed, 15 Feb 2017 22:47:49 +0000 (15:47 -0700)]
muxavformat: Inform muxer of encoder delay

initial_padding is used to inform libav muxers of initial encoder delay
duration.  When set for mkv it can be used to remove the silence samples
during playback since the delay value gets stored in the mkv CodecDelay
element.

7 years agolibav: fix mkv timestamps when initial_padding is set
John Stebbins [Wed, 15 Feb 2017 22:43:48 +0000 (15:43 -0700)]
libav: fix mkv timestamps when initial_padding is set

initial_padding is used to inform libav muxers of initial encoder delay
duration.  When set for mkv it can be used to remove the silence samples
during playback.

7 years agolibav: fix mp4 edit list A/V sync properly
John Stebbins [Wed, 15 Feb 2017 19:22:48 +0000 (12:22 -0700)]
libav: fix mp4 edit list A/V sync properly

7 years agolibav: fix failure to scan wmv file
John Stebbins [Wed, 15 Feb 2017 17:37:02 +0000 (10:37 -0700)]
libav: fix failure to scan wmv file

Fixes problem reported here
https://forum.handbrake.fr/viewtopic.php?f=11&t=35690

Also possibly related
https://github.com/HandBrake/HandBrake/issues/466
https://github.com/HandBrake/HandBrake/issues/495

7 years agolibav: fix crash when scanning wmv file
John Stebbins [Wed, 15 Feb 2017 17:29:39 +0000 (10:29 -0700)]
libav: fix crash when scanning wmv file

Fixes crash reported here
https://forum.handbrake.fr/viewtopic.php?f=11&t=35690

Does not fix scan problem, but follow-up commit will.

Also possibly related
https://github.com/HandBrake/HandBrake/issues/466
https://github.com/HandBrake/HandBrake/issues/495

7 years agomux: revert shift timestamps by largest encoder delay
John Stebbins [Tue, 14 Feb 2017 23:36:07 +0000 (16:36 -0700)]
mux: revert shift timestamps by largest encoder delay

Ugh! I need a brain transplant!  This would have cause a properly
functioning player to insert silence at the start of playback that
wasn't in the original source.

reverts 5429a92c51682240acbbe7b150d314d993d7d3a0

7 years agomux: shift timestamps by largest encoder delay
John Stebbins [Tue, 14 Feb 2017 23:25:40 +0000 (16:25 -0700)]
mux: shift timestamps by largest encoder delay

This prevents libav from adding an mp4 edit list entry that causes a
properly functioning player to drop the first couple of audio frames.

7 years agoFixed Botton to Bottom
supachris28 [Sun, 12 Feb 2017 16:36:26 +0000 (16:36 +0000)]
Fixed Botton to Bottom

7 years agoWinGui: Further Relax the stylecop rules.
sr55 [Sat, 11 Feb 2017 20:37:46 +0000 (20:37 +0000)]
WinGui: Further Relax the stylecop rules.

7 years agoWinGui: Fix a number of stylecop warnings.
sr55 [Sat, 11 Feb 2017 20:37:33 +0000 (20:37 +0000)]
WinGui: Fix a number of stylecop warnings.

7 years agoWinGui: Remove old AssemblyInfo Templates.
sr55 [Sat, 11 Feb 2017 18:44:35 +0000 (18:44 +0000)]
WinGui: Remove old AssemblyInfo Templates.

7 years agoWinGui: Setup the Stylecop rules to be a bit more relaxed.
sr55 [Sat, 11 Feb 2017 15:47:50 +0000 (15:47 +0000)]
WinGui: Setup the Stylecop rules to be a bit more relaxed.

7 years agoWinGui: Remove CSV Reader library as we no longer use it.
sr55 [Sat, 11 Feb 2017 15:13:29 +0000 (15:13 +0000)]
WinGui: Remove CSV Reader library as we no longer use it.

7 years agoWinGui: Change the following libraries to use NuGet sources.
sr55 [Sat, 11 Feb 2017 15:11:06 +0000 (15:11 +0000)]
WinGui: Change the following libraries to use NuGet sources.
- Gong-WPF-DragDrop  (Upgraded to 0.1.4.3 -> 1.1.0)
- NewtonSoft.Json (Upgraded to 7.0.0 -> 9.0.1)
- Ookii.Dialogs 1.0
- Caliburn Micro (Upgraded to 2.0.2 -> 3.0.3)

7 years agoWinGui: Add StyleCop.Analyzers NuGet package
sr55 [Sat, 11 Feb 2017 14:44:46 +0000 (14:44 +0000)]
WinGui: Add   StyleCop.Analyzers NuGet package