jstebbins [Fri, 29 Oct 2010 16:17:48 +0000 (16:17 +0000)]
fix a segfault and a deadlock if reader exits befor first buffer sent
This can happen if enough of the source is good that it scans but the
beginning has an error that causes reader to exit.
dynaflash [Fri, 29 Oct 2010 14:35:00 +0000 (14:35 +0000)]
MacGui: Audio - Using fallback codec no longer sets the bit rate from the preset. Setting the sample rate no longer sets the bit rate to the default if the currently selected bit rate is still supported.
jstebbins [Sat, 23 Oct 2010 18:23:54 +0000 (18:23 +0000)]
add bootstrap step to vorbis configure and patch document generation problem
mingw64 doesn't work with the aclocal.m4 packaged with libvorbis, so we
need to regenerate it. There's also a bug in the build config for
documents that gets tickled by mingw64.
jstebbins [Sat, 23 Oct 2010 18:18:22 +0000 (18:18 +0000)]
reorder #includes to fix redefinition problem in mingw64
if winsock2.h isn't included before windows.h, different
conflicting definitions are used for several macros and typedefs
jstebbins [Sat, 23 Oct 2010 18:07:35 +0000 (18:07 +0000)]
repackage libmkv archive
the old archive included m4 macros from someone's local build.
these macros would cause build failures in some environments,
notably mingw64.
jstebbins [Sat, 23 Oct 2010 17:56:53 +0000 (17:56 +0000)]
disable threads in libxml2
we don't need them, and if enabled on mingw, the build fails.
you would not have seen this error on mingw if you don't have
a pthreads package installed in your build environment.
jstebbins [Tue, 19 Oct 2010 17:12:21 +0000 (17:12 +0000)]
fix zero duration lpcm frame handling
a zero duration frame caused us to send a buffer with
zero size which we then interpreted as the end of the stream.
jstebbins [Sun, 17 Oct 2010 17:03:58 +0000 (17:03 +0000)]
LinGui: fix race condition in audio settings
changing an audio setting causes validation of bitrate to
be triggered. the validation needed to be delayed till after
all settings have been initialized.
jstebbins [Thu, 14 Oct 2010 01:20:32 +0000 (01:20 +0000)]
LinGui: fix infinite recursion issue in audio bitrate handling
adding a bitrate (that isn't in the standard set of bitrates supported
by handbrake) to the bitrate combo for a passthru codec caused a
cascade of errors.
jstebbins [Tue, 12 Oct 2010 16:44:04 +0000 (16:44 +0000)]
fix heap corruption after avpicture_deinterlace
I don't know when this started happening (or if it has always been a problem).
If the deinterlace buffer is not a multiple of 8, avpicture_deinterlace
corrupts the heap.
jstebbins [Sat, 9 Oct 2010 16:34:21 +0000 (16:34 +0000)]
fix detectsion of bitrate_code for ac3 passthru in mp4
ac3 passthru and encode are slightly different since
audio->config.in.bitrate is in bps and audio->config.out.bitrate is kbps
jstebbins [Fri, 8 Oct 2010 20:30:53 +0000 (20:30 +0000)]
cli: make smarter mixdown decision when doing ac3 encode fallback
also, clean up the mixdown sanitizing logic in work.c
added new functions
hb_get_default_mix(codec, layout)
hb_get_best_mix(codec, layout)
These take the output codec and the input layout as parameters.
jstebbins [Fri, 8 Oct 2010 17:28:30 +0000 (17:28 +0000)]
CLI: add 'copy' option for audio and ac3 encoder fallback for ac3 passthru
'copy' will passthru ac3 or dca. also changed ac3pass and dcapass to
copy:ac3 and copy:dca
jstebbins [Tue, 5 Oct 2010 22:27:28 +0000 (22:27 +0000)]
Add code to recognize eac3 streams in TS
Recognizes BD, HDDVD, and DVB variations of signalling eac3 streams.
Let me know if you find streams that don't work.
dynaflash [Tue, 5 Oct 2010 16:36:19 +0000 (16:36 +0000)]
MacGui: Remove the audio encoder bitrate cap.
- This used to cap the bitrate available in the ui to the sources audio bitrate.
- Note: this can allow people to do stupid things. A more elegant solution is forthcoming.
jstebbins [Sat, 2 Oct 2010 19:11:09 +0000 (19:11 +0000)]
fix ffmpeg locking issue
ffmpeg complained "insufficient thread locking around avcodec_open/close()".
This was caused by encavcodec.c calling avcodec_open at the same time as
stream.c called av_find_stream_info. av_find_stream_info has a side effect
of calling avcodec_open, so we must lock around this call as well.
SSA subtitle burn in
Anime fans rejoice! This patch adds SSA subtitle burn-in support with libass.
Therefore SSA subtitles should now be rendered in full quality, with the
appropriate embedded fonts and positioning information.
Thanks to davidfstr
WinGui:
- The scan log will no longer be written to disk if the log is over 100MB. An error message will be thrown.
- The encode will be terminated if the log file grows beyond 100MB and an error message will be thrown.
- Fixed an issue with the exception window not appearing when called from a worker thead.
- Put a limit on the number of exception windows that can appear during a session of HandBrake. (set to 30)
MacGui: Audio Fixes and Enhancements ... patch by circleone.
Fixes issue where changing to custom from a preset then changing titles will cause an empty audio tab.
Also:
- Added the ability for HandBrake's language preference to be honored when it occurs in the title's tracks.
- Ensured the limit (currently 24) is not passed when adding audios using presets.
- If no preset is chosen, when a new title loads, one track is added (based on the language preference or the first if that is not met).
- Reinitializing the audio array is now KVO-friendly, making the UI refresh more pleasant.
- The "Add All Tracks" button has been made mini in size.
- The audio table view no longer attempts to keep the selection.
WinGui:
- Moved some non-specific HandBrake code (Exception Window, Update Information Window, Update Download Window) out into a separate framework library. Hoping to make this more reusable at a later point.
WinGui:
- Made the "{source}" option for the default path auto name option a bit clearer. Added automatic warning if used in a path, updated tooltips and renamed to source_path to avoid confusion with the option below on the "format:" option.
MacGui: Fix peak framerate and custom resolution for new presets which was borked in 3532 due to those enhancements being after the audio work was done on an out of date xib ... fixed by circleone.
Enhancements added as well by circleone:
- Disables the ability to change the audio track order based on columns in 3532.
- Changes the size of audio widgets from mini to small so they are easier to see.
- Add scroll bar to the subtitles tab.
MacGui: Audio ... Add an "Add All Tracks" button to the audio tab.
- Patch by circleone... Thanks again!
- Adds all available source tracks at the default mixdown etc. to the macgui in one click.
WinGui:
- Some changes to the way logging / exceptions are handled. This may fix an intermittent issue that causes a large number of exception windows to appear.
MacGui: Audio ... Allow more than 4 audio tracks.
- Patch courtesy of circleone ... Thanks!
- Use a NSTableView to dynamically add/delete audio tracks ala the Subtitle tab.
- Sets a 24 track limit until someone tests more than 24 tracks (the libhb 8 track limit was removed as per http://trac.handbrake.fr/changeset/3531).
- Replaces the old static 4 tracks to a dynamic array.
- Moves macgui audio handling to a separate class.
Known caveats:
- Borks queue editing which needs a revamp anyway.
- Queue window display needs to be adjusted to show more than 4 tracks appropriately. Again, its cosmetic and is not a show stopper.
- There may be other possible unknown side effects even though tested on all presets. That said, I feel it needs to get in so that we can get feedback from nightlies.