summaryrefslogtreecommitdiffstats
path: root/libhb
Commit message (Collapse)AuthorAgeFilesLines
* Add Bluray supportjstebbins2010-09-0815-605/+1578
| | | | | | | | | | | | | | | | | | Unencrypted BD directory trees only. Doesn't support iso images. Also, no PGS subtitle support yet. Chapters and angles are supported. Adds a new contrib libbluray. Adds new option to hb_scan() for duration of short titles to filter. This applies to BD and DVD multi-title scans only. Does not apply to any single title scans. Fixes memory leak during scan. hb_buffer_close() was not freeing all buffers in a chain of buffers passed to it. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3510 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Fix muxing problem with certain sources/settingsjstebbins2010-08-311-14/+15
| | | | | | | | | | | | | The fifo depth limit that was put in place to prevent out of memory conditions was too aggressive. It caused buffers to be flushed to the output too early with cercain settings. This change monitors memory usage (i.e. buffer sizes) rather than just fifo depth in order to decide when to flush buffers to prevent out of memory conditions. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3506 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Multi-line SSA packets handled by the SSA->UTF8 decoder.jstebbins2010-08-101-32/+64
| | | | | | | Contributed by davidfstr. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3475 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix crash due to processing invalid buf_out from workjstebbins2010-07-041-0/+3
| | | | | | | | | | if the work function doesn't null out buf_out (as decavcodecvWork) then buf_out can be garbage, or worse a prevously used buffer. I'm flabbergasted this has never bitten me before. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3426 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix some preset issuesjstebbins2010-07-032-15/+8
| | | | | | | | | | | add b-pyramid=none to appletv presets and remove b-pyramid hack from encx264.c change samplerate from 48 to 'Auto' in all presets cap samplerate to 48khz since none of the encoders support higher rates remove obsolete UsesMaxPictureSettings from all presets. replace with UsesPictureSettings=2 git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3424 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Improve program stream detectionjstebbins2010-06-281-17/+49
| | | | | | | | | We were getting some false positives on some files. In some cases this would lead to a crash. In all cases it leads to a failure to scan or encode properly. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3418 b64f7644-9d1e-0410-96f1-a4d463321fa5
* make hb_set_anamorphic_size keep storage aspect when maxHeight is appliedjstebbins2010-06-262-28/+45
| | | | | | | | before, it would not recalculate width after changing height. also, in ana mode 3, fix storage asepct if !keep_display_aspect git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3411 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Preserve subtitle track that matches foreign audio search when thejstebbins2010-06-261-7/+8
| | | | | | | | resulting output track would not be an exact duplicate. We were removing the track even when forced flags differed. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3407 b64f7644-9d1e-0410-96f1-a4d463321fa5
* guard against excessive memory consumption in the muxer betterjstebbins2010-06-201-0/+22
| | | | | | | | | if there is a persistant skew in timestamps from 2 streams, the fifo depth could still continue to grow. Added extra check for fullness of fifo. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3400 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix problem with spurious timestamp changejstebbins2010-06-201-4/+7
| | | | | | | | | | | some rearrangement of code that was previously done to reader caused scr_offset to be subtracted from renderOffset twice whenever a new scr_offset was calculated. this could cause subsequent timestamp calculations to be way off and in at least one known case lead to a crash due to consuming too much memory in hb_buffer_t's git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3399 b64f7644-9d1e-0410-96f1-a4d463321fa5
* CLI: missed another conditional that forces burned subs in mp4jstebbins2010-06-081-0/+1
| | | | | | | | also, print "Foreign Audio Search" instead of "Render/Burn in" in the log during an indepth_scan. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3373 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix potential buffer overrunjstebbins2010-06-021-3/+3
| | | | | | | and a few compile time warnings about sign differences git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3345 b64f7644-9d1e-0410-96f1-a4d463321fa5
* handle the utf8 byte order mark when present at the beginning of srt subsjstebbins2010-06-011-2/+11
| | | | | | | it was tripping us up and causing the loss of the first subtitle git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3344 b64f7644-9d1e-0410-96f1-a4d463321fa5
* oops. forgot to commit the new file jstebbins2010-06-011-0/+269
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3343 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Add SSA subtitle supportjstebbins2010-06-017-22/+39
| | | | | | | Thanks to davidfster git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3342 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Add more subtitle info to the activity logjstebbins2010-06-011-8/+20
| | | | | | | | | adds forced and default flags for all types adds offset and character codeset for SRT Thanks Rodeo. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3341 b64f7644-9d1e-0410-96f1-a4d463321fa5
* link hb.dll with -static flag so that extra dll's are not requiredjstebbins2010-06-011-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3340 b64f7644-9d1e-0410-96f1-a4d463321fa5
* add check for reasonable vobsub width/height values when parsing out of mp4jstebbins2010-05-301-2/+10
| | | | | | | if the values aren't good, use default of 720x480 git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3338 b64f7644-9d1e-0410-96f1-a4d463321fa5
* preserve vobsub palette, width, and height from mkv and mp4 vobsub tracksjstebbins2010-05-305-22/+87
| | | | | | | Thanks to davidfster for mp4 palette addition. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3337 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Improve left/right dplii surround separationjstebbins2010-05-301-13/+13
| | | | | | | | | This analysis and measurement shows that a difference of 4.8db between Ls and Rs in Lt and Rt provides better separation than 3db http://forum.doom9.org/showthread.php?t=57988 git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3336 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix compiler warnings in several libhb filesjstebbins2010-05-304-23/+23
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3335 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix a problem with point-to-point hanging when searching for start pointjstebbins2010-05-262-40/+50
| | | | | | | | | | in reader, the timestamps were not being correctly adjusted for scr offset before comparing to start time. This could cause an early start in reader. Then in sync, syncAudioWork stalled until the correct start of video was found, causing the audio fifo to fill and stall the whole pipeline. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3329 b64f7644-9d1e-0410-96f1-a4d463321fa5
* add support for Nero vobsubs in mp4jstebbins2010-05-241-0/+73
| | | | | | | | | | | Note that these do not work with any apple products that I know of. Perian might be able to do something with them. MPlayer and VLC both grok nero vobsubs. libhb, cli, and lingui updated. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3325 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix memory leak in pinvoke patchjstebbins2010-05-241-6/+6
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3320 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix stderr redirection on mingw. dup2 function doesn't work as it should so ↵jstebbins2010-05-231-0/+5
| | | | | | | | | must reach inside stderr struct and modify _file member directly git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3318 b64f7644-9d1e-0410-96f1-a4d463321fa5
* add wrapper functions that make it easier to call libhb from C# and otherjstebbins2010-05-233-10/+240
| | | | | | | interpreted languages git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3317 b64f7644-9d1e-0410-96f1-a4d463321fa5
* add ability to probe for existance of headers and libraries to configure.pyjstebbins2010-05-231-2/+29
| | | | | | | | | use this to check for system versions of bz2 z pthreadGC2 iberty and dl when building with mingw. solves a problem with conflicts when building on fedora with a full standard install of their mingw packages. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3316 b64f7644-9d1e-0410-96f1-a4d463321fa5
* add strtok_r to ports.c for mingwjstebbins2010-05-222-0/+29
| | | | | | | fixes davidfstr's subtitle work git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3311 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Support for reading VOB subtitle tracks from file inputs initital ↵dynaflash2010-05-209-49/+238
| | | | | | | | | | | | | | implementation. - Patch by davidfstr, Nice Work! - Adds support for reading VOB subtitle tracks from file inputs. Tested with: - MKV VOB -> MKV VOB passthru. - MKV VOB -> MKV VOB burned in. VOB subtitle palette moved from per-title to per-track. Discussion leading up to commit can be referenced here: http://forum.handbrake.fr/viewtopic.php?f=4&t=16267 git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3308 b64f7644-9d1e-0410-96f1-a4d463321fa5
* allow mono mixdown with lame encoderjstebbins2010-05-134-44/+32
| | | | | | | | | | enable mono mode in lame encoder when mixdown is mono. use lame_encode_buffer_float instead of lame_encode_buffer_interleave. this eliminates the clipping issue in lame without reducing the level of the input. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3294 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Universal Text Subtitle Support Initial Implementationdynaflash2010-05-048-10/+463
| | | | | | | | | | | | | - Patch by davidfstr ... Thanks! - Adds support for reading TEXT subtitle tracks from file inputs - Tested combinations: -- MKV UTF-8 -> MKV UTF-8 (passthru) -- MKV UTF-8 -> MP4 TX3G (upconvert) -- MP4 TX3G -> MKV UTF-8 (downconvert) -- MP4 TX3G -> MP4 TX3G (downconvert to UTF-8 then upconvert) - Further explained here http://forum.handbrake.fr/viewtopic.php?f=4&t=16099 git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3283 b64f7644-9d1e-0410-96f1-a4d463321fa5
* bump ffmpeg to rev 22950jstebbins2010-04-252-5/+26
| | | | | | | | | offset ffmpeg seeks by value of initial timestamp since it can be non-zero catch pix fmt that is unsupported by swscale, log it, skip the track use new ffmpeg avg_frame_rate for more accurate framerate estimate git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3267 b64f7644-9d1e-0410-96f1-a4d463321fa5
* get rid of extry CR at end of hb_log messagejstebbins2010-04-251-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3266 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix qdm2 audio decodingjstebbins2010-04-251-1/+10
| | | | | | | | | | | | it seems ffmpeg wants to be passed the same buffer repeatedly while decoding this audio type. we were exiting if ffmpeg said it consumed 0 bytes. Now we continue to feed the same buffer when this happens. I added a loop limit to protect against an hypothetical ffmpeg bug that would never consume anything. I wonder if any other codecs behave this way *scratches head in bewilderment* git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3264 b64f7644-9d1e-0410-96f1-a4d463321fa5
* make count of video frames encoded logging accurate.jstebbins2010-04-241-0/+3
| | | | | | | it was missing the last frame in the count. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3263 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix decoding of qtrle codec and possibly othersjstebbins2010-04-241-0/+10
| | | | | | | | | | we rely on ffmpeg calling context->get_buffer, which we override to point to our get_frame_buf(), to stuff our pts values into frames it is decoding. but some decoders call context->reget_buffer instead. So I added an override for this callback as well. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3262 b64f7644-9d1e-0410-96f1-a4d463321fa5
* make sure HB_STATE_WORKING always gets set for a jobjstebbins2010-04-241-0/+19
| | | | | | | | | | | very short video, or video that has no valid frames, can cause UpdateState in sync.c to never be called. This is the only way the sequence_id would ever be set, so when the ui sees HB_STATE_WORKDONE, it could not look up the job in it's queue based on the sequence_id causing it to never be marked as complete. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3261 b64f7644-9d1e-0410-96f1-a4d463321fa5
* add test to ensure that ffmpeg's reported audio layout agrees with channel countjstebbins2010-04-242-26/+80
| | | | | | | | | a crash report from a user leads me to believe ffmpeg is giving us a channel layout that has a different number of channels than the channel count it tells us. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3260 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix fps logging when there is no audio track.jstebbins2010-04-222-12/+19
| | | | | | | | | | where there's no audio, the muxer closes earlier than when there is audio due to reference counting. upon close, the muxer sets the muxing state which overwrites the current state that includes the avg fps. so log the avg fps before closing mux. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3251 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix a problem with point-to-point (and live preview) when there are subtitlesjstebbins2010-04-211-2/+38
| | | | | | | | end of stream markers were not being put in the fifo for subtitles when the end point was reached, causing a hang. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3248 b64f7644-9d1e-0410-96f1-a4d463321fa5
* speed up main feature search in most circumstancesjstebbins2010-04-201-209/+284
| | | | | | | and fix a couple more corner case titles. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3246 b64f7644-9d1e-0410-96f1-a4d463321fa5
* add dvd main feature title detectionjstebbins2010-04-206-4/+454
| | | | | | | | | | | | scans the dvd menus and presses buttons to see where they might lead. when a button press leads to a title, i check to see if it is the longest seen thus far and save it's index. this only applies when dvdnav is enabled. when dvdread is in use, the longest title of all the titles is flagged as the "main feature" git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3245 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix an error in the tmp array size of hb_layout_remapjstebbins2010-04-191-1/+1
| | | | | | | was 6, should be 8 git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3244 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix some dvdnav hangsjstebbins2010-04-171-0/+18
| | | | | | | | | | title changes seem to confuse the vm sometimes. so do a dvdnav_reset whenever a title change is going to happen. Also, fix dvdnav_reset since it would deadlock on a mutex when called. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3240 b64f7644-9d1e-0410-96f1-a4d463321fa5
* revert last checkinsr552010-04-173-209/+9
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3237 b64f7644-9d1e-0410-96f1-a4d463321fa5
* remove libgcc... dll from zip package creation as it is no longer neededsr552010-04-173-9/+209
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3236 b64f7644-9d1e-0410-96f1-a4d463321fa5
* x264 bump from r1523 to r1538dynaflash2010-04-141-5/+4
| | | | | | - Accompanying changes to encx264.c to address default min-keyint in x264, encx264.c patch courtesy of Rodeo. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3225 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix some mingw warnings and a mingw build issuejstebbins2010-04-106-12/+14
| | | | | | | mingw gcc-4.5 has linker issues against shared libstdc++ git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3217 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix audio clipping when downmixing and output codec is lamejstebbins2010-04-073-19/+27
| | | | | | | | | | The lame codec has a more limited input range than the other codecs. So tell the downmixers to stay strictly within the level range requested. also changes some tabs into spaces in deca52 and decdca git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3205 b64f7644-9d1e-0410-96f1-a4d463321fa5
* generalize audio channel map reorderingjstebbins2010-04-053-119/+404
| | | | | | | | | | | | | | | | this allows remapping any channel order to any other channel order with the appropriate map definitions. channel maps currently supplied are smpte (used by ffmpeg), qt (our standard channel order), and ac3 (as delivered by a52dec). remapping can also be applied to the downmixer with the function hb_downmix_set_chan_map(hb_chan_map_t * map_in, hb_chan_map_t * map_out). this allows downmixing and channel reordering in a single step. there is no additional cost to reordering since the matrix multiply used to do the downmix simultaneously reorders. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3201 b64f7644-9d1e-0410-96f1-a4d463321fa5