dynaflash [Tue, 14 Jun 2011 20:54:10 +0000 (20:54 +0000)]
MacGui: Don't call "return" at the end of a void function.. .. Redux!
- As Per https://reviews.handbrake.fr/r/122/
- Thanks blindjimmy for the patche(s).
- Borked commit notes courtesy of me.
dynaflash [Tue, 14 Jun 2011 20:48:15 +0000 (20:48 +0000)]
MacGui: Add blank line to previous commit files to fix the commit notes I totally borked.
- Proper change is: Simplify conditionals to make them more readable. As per https://reviews.handbrake.fr/r/123/
- Reverts commit notes for https://trac.handbrake.fr/changeset/4056 besides the update to xcode 3.2.6
dynaflash [Tue, 14 Jun 2011 20:37:17 +0000 (20:37 +0000)]
MacGui: Don't call "return" at the end of a void function.
- Generally speaking, the fewer (simple) lines of code their are, the easier it is for someone to learn/understand it, so there's no good reason to have no-op lines laying around.
- As per https://reviews.handbrake.fr/r/122/
- Also re commit the update to xcode 3.2.6 commit from https://trac.handbrake.fr/changeset/4004 which I borked later.
dynaflash [Mon, 13 Jun 2011 20:27:46 +0000 (20:27 +0000)]
MacGui: HBAudio Indentation Cleanup
- Patch by Rodeo ... Thanks!
- Change hard tabs to 4 spaces
- Place the opening bracket of if, else if, else, while and for statements on another line, not the same line as the condition.
- Xcode's Edit > Format > Re-Indent on all files.
- This patch is purely about cosmetics and indentation. There shouldn't be any change in behavior.
- As per https://reviews.handbrake.fr/r/101/
jstebbins [Sun, 12 Jun 2011 18:05:20 +0000 (18:05 +0000)]
libhb: generalize channel remapping between decoders and encoders
Decoders set the channel map of their output in hb_audio_config_t.
Encoders use this information to remap while encoding.
jstebbins [Fri, 10 Jun 2011 18:20:30 +0000 (18:20 +0000)]
libhb: clean up AVCodecContext initializations
also fixes warning message generated by libav when initializing "silence"
sample about channel layout setting.
jstebbins [Fri, 10 Jun 2011 15:31:32 +0000 (15:31 +0000)]
libhb: disable threaded ffmpeg decoding for scan
There is a bug in ffmpeg that causes a crash if you call
avcodec_open and avcodec_close repeatedly on the same AVCodecContext.
dynaflash [Thu, 9 Jun 2011 18:37:14 +0000 (18:37 +0000)]
MacGui: Increase width of main window from 754 to 960
- Increases the main window width from 754 to 960 which is an increase of 206 px. This allows more breathing room for some crowded tabs like Audio, Subtitles and Advanced. Also increased the associated views. The main prompt for this is the very crowded audio tab which recently added Gain and also could use a vbr checkbox as well as possibly an aname field. I would rather maximize the width we deem available before going to an advanced audio track popup like the lingui and wingui currently utilize.
- For now any widgets have been expanded to their nearest longest known value without truncating.
- As per review board https://reviews.handbrake.fr/r/116/
jstebbins [Thu, 9 Jun 2011 00:49:31 +0000 (00:49 +0000)]
Refresh "Normal" preset
- Changes "Normal" to use x264 --preset veryfast --profile main
Nearly doubles it's speed for little loss of file size or quality.
- remove dummy average bitrate values from all built-in presets
- adds Large File Size to the High Profile preset
jstebbins [Wed, 8 Jun 2011 21:17:31 +0000 (21:17 +0000)]
cli: Allow more flexible specification of native language in the cli
Let the user specify their native language using any of the strings
supported in the iso639_lang table.
jstebbins [Wed, 8 Jun 2011 21:15:06 +0000 (21:15 +0000)]
LinGui: move advanced audio from a dialog popup to an expander box
The expander fits on the audio tab and expands the advanced controls
when activated.
jstebbins [Tue, 7 Jun 2011 21:27:02 +0000 (21:27 +0000)]
libhb: add support for libav aac encoder (libhb only)
This generalizes the ac3 encoder to make it easy to add support
for any audio encoder that libav supports. Since ffaac is not quite
ready, the cli and gui does not expose ffaac yet.
Highlights:
- Sources with more than 20 streams (video, audio and subtitles combined)
are now supported
- Adds decoding support for 10-bit H.264
- Adds frame-based threading for H.264 and VP8
Not yet enabled in HB. See experimental patch on RB to enable.
- Quality tweaks for the AC3 encoder
- AAC encoder improvements
Not yet enabled in HB. See experimental patch on RB to enable.
- Miscellaneous other fixes and improvements
jstebbins [Tue, 7 Jun 2011 18:33:00 +0000 (18:33 +0000)]
libhb: Sort BD titles by playlist id
This makes the logs of different rips more consistent. Previously, the
order of titles was determined by the order the mpls files were written
in the PLAYLIST directory which could vary from rip to rip.
jstebbins [Sun, 5 Jun 2011 19:48:05 +0000 (19:48 +0000)]
Fix a problem with filtering and picking correct BD title
Titles that are the same except for number of chapters were being
filtered out of the title list. So sometimes you would get a BD title
that didn't seem to have any chapters.
sr55 [Fri, 3 Jun 2011 19:49:57 +0000 (19:49 +0000)]
WinGui:
- Added support for naming tracks. New text entry field on the Advanced Audio Window. (Note: May be some CLI issues that need to be fixed up for this. We'll see)
- Disabled application settings upgrade when moving from a release to a svn build. Upgrades now only work for svn -> svn builds as there has been reliability issues when upgrading from much older builds.
jstebbins [Fri, 3 Jun 2011 15:55:00 +0000 (15:55 +0000)]
LinGui: fix preview encode progress display when # previews > 10
flags array indicating that the preview had already been encoded
for live playback was limited to 10. Forgot to change it when we
started allowing more previews.
sr55 [Thu, 2 Jun 2011 19:03:17 +0000 (19:03 +0000)]
WinGui: Improvements to the AutoName functionality.
- Added more flexibility to the "{source_path}" option so that it can now be used with additional folders listed after it. e.g. "{source_path}\encoded". It is no longer limited to just that folder.
- Added an option to put todays date in the output filename "{date}"
- Some tweaks to the way warnings are displayed when using these features to make them a bit less annoying.
jstebbins [Tue, 31 May 2011 14:54:14 +0000 (14:54 +0000)]
Add patch to disable SSE in mpeg2dec for mingw64
This allows use of mpeg2dec with mingw64. From what I've read,
disabling sse in mpeg2dec will result in about 10% speed penalty.
jstebbins [Mon, 30 May 2011 16:38:08 +0000 (16:38 +0000)]
Fix gcc4.6 build error that results in a crash in sse2 code
This fixes mpeg2 decoding on fedora15 and probably also fixes
the mpeg2dec issue we saw with mingw64.
sr55 [Sun, 29 May 2011 16:19:19 +0000 (16:19 +0000)]
WinGui: Refactored the Encode Service to move any reusable code into a base class. Added a new service which will eventually work with libhb to do encodes. Currently this just contains placeholders which throw NotImplementedExceptions.
Removed the Total Elapsed Time on the Queue window since it doesn't work. This will be re-implemented later.
sr55 [Thu, 26 May 2011 18:29:04 +0000 (18:29 +0000)]
WinGui: Fix to the Audio Panel. It now creates a copy of the sources Audio Tracks collection rather than using a reference. The reference was getting cleared out if the user re-selected a title which was causing a crash. Also added some extra sanity checking code in to prevent possible issues.
dynaflash [Thu, 26 May 2011 16:17:13 +0000 (16:17 +0000)]
MacGui: Add -selectedPreset helper method
- Patch once again by blindjimmy.. thanks!
- This change consolidates all the calls in Controller.m of [fPresetsOutlineView itemAtRow:[fPresetsOutlineView selectedRow]] to get the currently selected preset to use a new -selectedPreset accessor method. This is both easier to read and is better decomposition.
- as per https://reviews.handbrake.fr/r/85/
dynaflash [Thu, 26 May 2011 15:48:37 +0000 (15:48 +0000)]
MacGui: Clean up internal architecture of HB Audio and HBAudioController
- patch by blindjimmy ... as always .... thank you!
- as per https://reviews.handbrake.fr/r/81/
dynaflash [Thu, 26 May 2011 04:27:08 +0000 (04:27 +0000)]
MacGui: Audio Gain Control initial implementation
- Adds a Circular Slider to implement gain from a range of -5 to +15 which is sane by any reasonable measure.
- Note: the circular slider with this range puts the default of 0.0 at the three o'clock position on the slider which is kind of wonky. Any ideas to make it more intuitive are welcome.
-The accompanying text field readout is left editable so values beyond the sliders range can be specified manually.
- Gain is disabled for any passthru options obviously.
- Though it has been in cli and lingui for some time, as a note my tests show that anything above +15 can get distorted quite easily. Of course that is open to opinion depending on source, I have yet to see a complaint about the volume of encoded audio being too high but we leave up to -5 there just for the corner cases.
- Any existing presets not specifying gain will use a gain of 0.0 which means of course its unmodified.
- Also as a sidenote takes care of blindjimmy's patch https://reviews.handbrake.fr/r/99/ as far as /macosx/HBQueueController.m
sr55 [Mon, 23 May 2011 18:37:36 +0000 (18:37 +0000)]
WinGui: Made a change to the Query Generator to use the Scanned Source Path rather than the folder selected for batch and single file scans. Falls back to old behaviour of users selected path if said path is not available.
sr55 [Sun, 22 May 2011 19:06:27 +0000 (19:06 +0000)]
WinGui: Add a new option "Add All" to the Audio track which adds any remaining tracks to the audio list, with default audio settings. Also changed the ObservableCollection back to a BindingList as the Track dropdown behaves better with this.
sr55 [Sun, 22 May 2011 10:51:43 +0000 (10:51 +0000)]
WinGui: Fix an unusual issue with the DataBinding on the AudioTrack dropdown control. Seems to no longer get the ListChanged events when the model object is marked as serializable.
sr55 [Sat, 21 May 2011 19:05:24 +0000 (19:05 +0000)]
WinGui:
- Added some debug handling into the presets service which will hopefully make it easier to track down the reason why presets sometimes do not load correctly when updating to a newer nightly build.
dynaflash [Thu, 19 May 2011 19:21:43 +0000 (19:21 +0000)]
Macgui: libhb, MacGUI: reflect the fact that DRC only applies to non-passthru AC3 sources
- As per https://reviews.handbrake.fr/r/74/
-Patch by Rodeo, Thanks.
sr55 [Sat, 14 May 2011 14:46:16 +0000 (14:46 +0000)]
WinGui:
- Removed the Question Alert box when adding an item to the queue where the destination folder does not exist. The folder is automatically created before encode anyway, so no point in asking the user pre-Encode.cs
- Better error handling in the encode service.
sr55 [Sun, 8 May 2011 11:00:16 +0000 (11:00 +0000)]
WinGui:
- Add Elapsed Encode Time the main window.
- Add Elapsed Queue Time to the queue window. (Note, Pausing the queue resets this currently)
- Fixed an issue with disabled controls on the audio panel after removing the last track which was passthru.
WinGui:
- Fix to the Audio Panel Track Display which was intermittently not showing a track.
- Fixed a number of bugs in the plist parser which was prevent imports.
- Fixed a number of Issues with the Preset Import/Export.
WinGui:
- Fix an issue where the user could overwrite a built-in preset.
- Fix some more audio issues in relation to incorrect bitrate and sample rate being selected.
MacGui: Save picture settings by default when creating a new preset.
- Use Custom (defaulted to current picture size).
- Use currently selected Filters.
- Note this is by default. All choices are still the same
- As per https://reviews.handbrake.fr/r/82/
fix screaching at the beginning of some ac3 to X transcodes
a52dec isn't completely thread safe. It has a collection of
static data that gets initialized when a52_init is called.
This static data gets initialized to the same thing every time,
but if one instance of the decoder is using the data when
it gets reinitialized, bad(tm) things happen.
libhb: don't use deprecated elements of the FFmpeg/Libav API
HandBrake uses many attributes of the FFmpeg API that are were deprecated
when we did the last bump. Many of them no longer exist in current
FFmpeg/Libav git, or are going to be removed soon.
Replaces them with non-deprecated attributes that already exist in the
build we currently use.
Thanks to Rodeo for the patch.
Fix a crash that can happen due to corrupt mpeg2 data
The mpe2dec can return nonsense values for width and height that
make sws_getContext fail. So check the context return value and
just drop the buffer if it fails.
Fix a problem with overlapping vobsubs
Since we now allow subtitles that overlap in time, it is no longer
appropriate to arbitrarily set the duration to 3 seconds when vobsubs
don't have an explicit stop time. This causes them to overlap on the display.
So now, we set the stop time for such vobsubs to -1. Then in sync adjust the
stop time to the start of the next vobsub when it is seen.