dynaflash [Wed, 23 Dec 2009 00:13:03 +0000 (00:13 +0000)]
MacGui: Interface changes to allow pts or frame based point to point encoding on top of our existing chapters based encoding. ... Based upon jstebbins most excellent work.
jstebbins [Wed, 23 Dec 2009 00:02:17 +0000 (00:02 +0000)]
add point-to-point encoding
allows frame and pts based start points. end points were already
previously supported.
New job variables pts_to_start and frame_to_start specify the start point.
There can be a period during the encode where it has to search for
the start point. During this period, libhb sets a new state
HB_STATE_SEARCHING and sets progress and eta till start point found.
jstebbins [Sun, 20 Dec 2009 18:17:25 +0000 (18:17 +0000)]
LinGui: fix an issue with picture settings sensitivity when no source has yet been scanned
Widgets were active and modifiable that should have been disabled.
jbrjake [Sat, 19 Dec 2009 15:19:12 +0000 (15:19 +0000)]
Adds a very crude, CLI-only rotation filter to flip pixels vertically (mode 1), horizontally (mode 2), or both (mode 3, default). Called with --rotate.
sr55 [Sat, 19 Dec 2009 00:00:41 +0000 (00:00 +0000)]
WinGui:
- Shave ~0.5s of the application startup time by not initialising an XmlSerializer when it's not needed. This is quite expensive.
- Make sure the Activity window is initialised before we try set it's title.
sr55 [Fri, 18 Dec 2009 20:42:24 +0000 (20:42 +0000)]
WinGui:
- Audio Panel fixes and Usability improvements.
- Disabled DRC control which shouldn't have been active when AC3/DTS was selected
- Greyed out text labels for Mixdown, Samplerate, bitrate and DRC to help make it clearer the controls are disabled when AC3/DTS is selected.
- Changed the values which those controls are reset to when AC3/DTS are selected so they are not showing the first value in the dropdown. (e.g 32 for the bitrate. This was a little mis-leading)
- Changed Mixdown from Automatic to "AC3 Passthru" to match the MacGui when AC3 is selected. Same for DTS
jstebbins [Tue, 15 Dec 2009 01:28:55 +0000 (01:28 +0000)]
fix potential runaway buffer usage
pthread_cond_timedwait can wake early. under certain system load conditions, this
happens often. I was going ahead and adding buffers whenever it woke, regardless
of whether the condition had actually been met. so the fifo depth would
increase until memory ran out.
jstebbins [Mon, 14 Dec 2009 19:49:26 +0000 (19:49 +0000)]
LinGui: fix m4v file extension selection when the source has only 1 chapter
the chapter markers settings wasn't actually disabled, even though
it was being filtered out of the job settings. This caused the m4v file
extension selection logic to use m4v. And there was no way to change it
since the chapter markers widget was hidden.
jstebbins [Thu, 10 Dec 2009 00:17:46 +0000 (00:17 +0000)]
fix dvdnav read error retry
the error count was being reset on dvdnav events that didn't involve
any actual reading. So we got caught in an very long loop alternating
between read failures and valid events.
jstebbins [Wed, 9 Dec 2009 19:45:57 +0000 (19:45 +0000)]
Avert a rare race condition.
A bad source can cause reader to call hb_stream_close before
decavcodecviWork ever starts. This causes hb_ffmpeg_context
to access an invalid pointer. So move the call to hb_ffmpeg_context
to after we check for a 0 length buffer in decavcodecvoiWork
since reader will have sent this to signal that it has reached
the end of the stream.
This does not eliminate the race condition, but it does make it
much less likely to happen and fixes the specific case where we
found this occuring.
dynaflash [Wed, 9 Dec 2009 17:42:34 +0000 (17:42 +0000)]
x264 bump to 1369-ec8e586
- Introduces mbtree + bpyramid
- Brings back slice-based threading support
- Many other enhancements and fixes
- http://git.videolan.org/gitweb.cgi?p=x264.git;a=commit;h=ec8e58637b97edaea00f022e11d15ee8a81466ab
jbrjake [Tue, 8 Dec 2009 18:39:03 +0000 (18:39 +0000)]
Faster combing detection through slightly less stupid use of pointers. Also realigns boundary points for the combing mask checker to match what the code actually does.
jbrjake [Tue, 8 Dec 2009 17:39:43 +0000 (17:39 +0000)]
Removes references to outdated codecs and variables, updates for new filter value orders and the lack of subtitle keys in new presets, and adds better deblock support along with a stub for custom ana support.
jbrjake [Tue, 8 Dec 2009 15:48:40 +0000 (15:48 +0000)]
Use the correct render offset when b-pyramid is enabled in the x264 parameter string but is being disabled inside libx264 due to mb-tree. Thanks, Rodeo, and good catch! Also adds a logging message to note weight-p being disabled in bframeless encodes.
jstebbins [Mon, 7 Dec 2009 00:37:51 +0000 (00:37 +0000)]
fix detection of forced subtitles during foreign audio search
reader drops all buffers till it finds video or audio.
but since video and audio fifos are null when indepth_scan is
set, we never see video or audio.
Solution is to not drop buffers in indepth scan mode
sr55 [Sun, 6 Dec 2009 17:37:19 +0000 (17:37 +0000)]
WinGui:
- Make SourceName a bit smarter when dealing with autonaming and folders. If Video_TS folder is the selected source, autoname will now use the upper level folder name instead. (thanks slaingod)
jstebbins [Sat, 5 Dec 2009 17:15:57 +0000 (17:15 +0000)]
Reduce the amount of buffering used and eliminate hb_snooze in the encoding pipeline
For HD sources on an 8 core system with hyperthreading, we were using 1.5GB
of ram. Add to that the 600MB x264 uses for rc-lookahead, pushes it north of 2GB.
To reduce our memory usage, the fifo depths have been reduced are are no longer
a multiple of cpu count. Use of hb_snooze has been eliminated in the encoding
pipeline so that performance doesn't fall as a result of the reduced fifo depths.
In sync, each audio and video were given separate threads so that each can wait on
it's respective input fifo without blocking the others. In muxcommon, each stream
being muxed was given a separate thread so that each can wait on it's respective fifo.
This allows the removal of hb_snooze in the sync and muxer work loops. In both sync
and muxer, there is common data that is shared by all threads, so special init
routines allocate this shared data and initialize the threads.
sr55 [Wed, 2 Dec 2009 13:33:39 +0000 (13:33 +0000)]
WinGui:
- Re-enabled UNC path support in the GUI. Seems the switch to MinGW enabled UNC paths to work correctly. Note: This is not supported for CygWin users.
sr55 [Sun, 29 Nov 2009 19:32:16 +0000 (19:32 +0000)]
WinGui:
- Preview window: Check the x86 program files directory for VLC if VLC doesn't exist in the main program files directory.
- Activate the Activity Window when the button is clicked on.
jstebbins [Fri, 27 Nov 2009 20:27:07 +0000 (20:27 +0000)]
fix another MTR feature title extraction issue
jump instructions to titles which were removed by MTR caused asserts.
now such jump instructions just transition to the Exit state.
jstebbins [Fri, 27 Nov 2009 20:24:26 +0000 (20:24 +0000)]
fix ffmpeg build on osx i386
gcc 4.2 on osx defines the built-in macro __PIC__ which ffmpeg's configure
uses to determine if it should enable pic. Enabling pic uses extra
registers which causes some inline asm to fail due to lack of available
registers.
I disabled the normal check and forced pic enabled for x86_64 since it
requires it.
van [Thu, 26 Nov 2009 10:08:55 +0000 (10:08 +0000)]
Fix audio sync problem for AAC (or any other mpeg PS or TS audio decoded by decavcodec) with a sample rate other than 48KHz. This problem had already been fixed for decavcodecai (the 'internal' ffmpeg audio decoder that handles all input files but mpeg streams) so decavcodec was just changed to use the same logic.
sr55 [Wed, 25 Nov 2009 22:59:39 +0000 (22:59 +0000)]
WinGui:
- Large performance improvements in the Activity Window when working with large log files. This should make the window less laggy when using batch folder scan.
- New scan process handling code which pipes the data direct into the application. GUI now displays "Scanning title x of x" to give the user feedback on the process.
jstebbins [Wed, 25 Nov 2009 21:54:06 +0000 (21:54 +0000)]
fix title index issue in batch scanning
title index was assigned as the nth file in the directory, but files
that are not video would cause title indexes to be skipped in job.list_title
this would mess up the progress bar.
jstebbins [Wed, 25 Nov 2009 21:14:44 +0000 (21:14 +0000)]
batch file scanning and scan cancel
When a directory is specified as the source, first we attempt to open as a dvd,
then if that fails, we attempt to open each file in the directory as a stream
source. Since opening a large directory of files can take a really long time,
you can also now cancel a scan.
jstebbins [Wed, 25 Nov 2009 19:25:21 +0000 (19:25 +0000)]
MacGui: fix crash caused by ffmpeg initialization problem
some of ffmpegs mmx functions rely on a flag being initialized
This gets initialized by ffmpeg encoder/decoder initialization, but
the preview is using ffmpeg functions before any encoder/decoder is initialized
jstebbins [Wed, 25 Nov 2009 03:22:00 +0000 (03:22 +0000)]
build system: fix root of source tarball
root was './' which could overwrite uid, gid, and perm of the users
current working directory. The root is now 'HandBrake-$(HB.version)/'
eddyg [Tue, 24 Nov 2009 23:16:27 +0000 (23:16 +0000)]
Rate limit hb_error() messages to at most 1 message per second of the same message. Repeats will be counted and presented as a count when 1 second has elapsed since the first error of a sequence, or an error message with a different string.
Also modified dvdnav to use hb_error() to take advantage of the limiting.
This works around a real bug from dvdnav where the Mac GUI becomes unresponsive during the output of large numbers of errors.
dynaflash [Sun, 22 Nov 2009 06:20:01 +0000 (06:20 +0000)]
MacGui: Add check for audio == null for > 1 audio track to prevent crash for > 1 audio tracks and sources with no decodable audio.
- Thanks to BradleyS for bug report.
- Thanks to J45 for sussing the issue.
- Addresses http://forum.handbrake.fr/viewtopic.php?f=12&t=13149
jstebbins [Sat, 21 Nov 2009 23:52:50 +0000 (23:52 +0000)]
LinGui: fix problem with loading preset that has deinterlace enabled
setting a radio box to false doesn't automatically set it's
counterpart to true. Must explicitly enable deinterlace when decomb is false
dynaflash [Sat, 21 Nov 2009 17:13:50 +0000 (17:13 +0000)]
MacGui: Trigger "Open Source Title Specific" if the option key is held down when clicking "Open" in the source browse window.
- This has the same effect as choosing Open Source Title Specific from the file menu, which still exists.
jstebbins [Fri, 20 Nov 2009 16:14:07 +0000 (16:14 +0000)]
LinGui: make subtitle burned and default checkboxes mutually exclusive
"default" doesn't really apply to burned in subtitles so it shouldn't
be checked when burned.
dynaflash [Wed, 18 Nov 2009 20:34:05 +0000 (20:34 +0000)]
MacGui: Remove vestigial conditional which did not allow loose anamorphic if the ffmpeg video encoder was used.
- Patch by Rodeo. Thanks Rodeo!
- Addresses http://forum.handbrake.fr/viewtopic.php?f=4&t=13117
dynaflash [Wed, 18 Nov 2009 20:27:18 +0000 (20:27 +0000)]
MacGui: change the min and max bitrate for faac six channel discrete encodes.
- Patch by Rodeo so its his fault. ;)
- Addresses http://forum.handbrake.fr/viewtopic.php?f=4&t=13114