jstebbins [Wed, 20 Aug 2014 17:43:11 +0000 (17:43 +0000)]
muxavformat: Fix muxing of AAC that is missing extradata
Allocate extra byte so extradata pointer is not NULL.
Fix logging of malloc failures so we can see what failed.
Fix test for existence of extradata, check length NOT bytes. bytes is never NULL
ritsuka [Tue, 19 Aug 2014 16:38:33 +0000 (16:38 +0000)]
MacGui: added support for NLMeans denoise. Added the HBFilters class to store the filters settings, previously they were stored directly in the HBPictureController window controller.
Removed the filter tab animations for now, they will be added back later.
jstebbins [Thu, 14 Aug 2014 17:25:24 +0000 (17:25 +0000)]
libav: fix problem decoding broken rv40 sample
The sample begins with a bframe which causes the rv40 to throw an error
at the beginning of decode. This error leaves frame threading in a bad
state that is never recovered from.
ritsuka [Wed, 13 Aug 2014 08:40:45 +0000 (08:40 +0000)]
MacGUI: Replace deprecated NSBeginCriticalAlertSheet / NSRunAlertPanel / NSRunCriticalAlertPanel with NSAlert. Patch https://reviews.handbrake.fr/r/711/ by Alexander Zautke with a few modifications by me.
jstebbins [Mon, 11 Aug 2014 17:48:19 +0000 (17:48 +0000)]
LinGui: Fix initialization of audio quality widget limits
When opening the audio edit dialog for a track in the audio list,
the audio quality was set to a bad value because the limits were
not set correctly.
sr55 [Sun, 10 Aug 2014 14:43:30 +0000 (14:43 +0000)]
WinGui: Add new preset keys for the Audio and Subtitle default behaviours. Updated existing preset parser to work with the current version of the plist preset format.
ritsuka [Sat, 9 Aug 2014 17:10:45 +0000 (17:10 +0000)]
MacGui: added the list of the presets at the bottom of the preset menu and a “New Folder” menu item. Removed the “delete built-in presets” item because it takes just two clicks to remove them manually.
Refactored part of HBPreset to a separate HBTreeNode class.
ritsuka [Fri, 8 Aug 2014 06:12:55 +0000 (06:12 +0000)]
MacGui: removed the last remaining of the code to load a custom application icon. It was used to load a specific icon for the 64bit version, but it’s now unused.
ritsuka [Fri, 8 Aug 2014 05:57:38 +0000 (05:57 +0000)]
MacGui: use a shorter NSString method to remove the prefix from the bsdName, as reported by denisx on irc, in HBDVDDetector and and a boxing expression to convert a c string to NSString.
ritsuka [Fri, 8 Aug 2014 05:55:01 +0000 (05:55 +0000)]
MacGui: removed a old check on the scan count from the era when the MacGui used a single libhb instance to encode and scan, and fixed a bug it was hiding: spurious calls to hb_get_state outside the updateUI loop were masking the HB_STATE_WORKDONE and HB_STATE_SCANDONE states, replaced them with hb_get_state2.
ritsuka [Thu, 7 Aug 2014 13:54:14 +0000 (13:54 +0000)]
MacGui: improved the presets management
Added a class to manage the presets (HBPresetsManager) and moved the presets drawer code to a new view controller (HBPresetsViewController).
Removed the limitation of two nested folders and added a way to add to custom folders.
jstebbins [Wed, 6 Aug 2014 20:24:23 +0000 (20:24 +0000)]
libav: fix decoding of mpeg4 in transport streams
There was a chicken & egg problem in the initialization sequence. mpeg4 only
worked in non-transport streams because we use libav for demuxing these.
The initializion of libav demux causes an additional initialization of the
codec which hides the problem.
jstebbins [Wed, 6 Aug 2014 17:11:41 +0000 (17:11 +0000)]
libhb: fix mp4 post tagging problems
A couple common mp4 taggers (mp3Tag and iTunes) fail to tag files
that have the Nero chapter atom (chpl). This atom was added when
we switched to libavformat for muxing. I haven't found any players
yet that rely on this for chapters. If we ever find any, we can
consider adding an option somewhere to enable chpl.
ritsuka [Mon, 4 Aug 2014 07:12:12 +0000 (07:12 +0000)]
MacGui: Adds a new sheet for audio defaults (presets), uses the same preset keys as the LinGui.
The built-in presets still use the languages from the Audio preferences.
ritsuka [Sat, 2 Aug 2014 16:18:20 +0000 (16:18 +0000)]
MacGui: set the import/export chapters buttons size to small in an effort to use the same button size in the whole app (and the mini size on Yosemite is hard to read)
sr55 [Sat, 2 Aug 2014 15:18:50 +0000 (15:18 +0000)]
WinGui: Fix a styling issue on the preview window. Disable libhb encode for the upcoming release so that users don't inadvertently turn it on. Made the new preview window an optional setting, off by default as it's a Alpha feature. (See Preferences)
MacGui: check if the image returned by hb_get_preview2 is null to avoid a crash. The preview window will try to show the number of previews selected in the preferences, but an already loaded title might not have enough preview images.
This new function has a couple advantages over the old one (which we
should phase out).
It does not require hb_job_t as a parameter, instead it uses hb_ui_geometry_t
which is a smaller and simpler struct. The entire job struct is overkill as
input to this function.
It returns an hb_image_t that fully describes the returned image instead of
just a uint8_t array. The caller does not have to make assumptions about image
size, line stide, or pixel format since hb_image_t specifies these things.
MacGui: Implemented a configuration panel similar to the win/lin gui one for the subtitles defaults, and added some more options from the other guis (add all, remove all).
The SubtitleAddForeignAudioSubtitle setting will be added later after the automatic audio selection is done.
Fixed a bug where HandBrake used 50% of cpu time if the subtitles table view was selected.
Refactored a big part of HBSubtitlesController to make it works with the new automatic options and to cleaned the table view data source.
cli: allow user cli options to override defaults for fallback audio encoder
Solves: https://forum.handbrake.fr/viewtopic.php?f=10&t=28074&sid=68d8c5bfffd7081625bcd56fb7c4dad1
MacGui: Replaced some deprecated functions in HBDVDDetector and ignored the QTKit deprecations warnings for now. Grouped some files in the Xcode project.
MacGUI: Refactored the controller code for the video/audio/subtitles/chapters view:
Added a xib file and a NSViewController subclass for each tab of the main HandBrake window.
Each view controller now to responds to the HBContainerChangedNotification and HBTitleChangedNotification notifications instead of using a custom way to notify changes.
Converted the modified .xibs to the Xcode 5.1 format.
LinGui: work around bug in GtkScaleButton
When the button value is updated programatically, the update event is not
sent and therefore the label is not updated. So update the label manually
instead of relying on the event to trigger the update.
libhb: work around libav decoder error durint p-to-p encoding
In some cases, initial data when in p-to-p mode causes libav decoder
initialization to fail. This only happens when multi-threaded encoding
is enabled.