summaryrefslogtreecommitdiffstats
path: root/libhb
Commit message (Collapse)AuthorAgeFilesLines
* Add code to recognize eac3 streams in TSjstebbins2010-10-051-4/+26
| | | | | | | | Recognizes BD, HDDVD, and DVB variations of signalling eac3 streams. Let me know if you find streams that don't work. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3572 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Add ac3 encodingjstebbins2010-10-0412-141/+494
| | | | | | | Uses ffmpeg's ac3 encoder. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3570 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix another hang in the muxer.jstebbins2010-10-031-1/+2
| | | | | | | | If all streams are at EOF, then we must continue processing the track queues till they are all empty. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3564 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix ffmpeg locking issuejstebbins2010-10-023-1/+11
| | | | | | | | | | 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. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3563 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix a crash when ass_render_frame doesn't return a frame list.jstebbins2010-09-291-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3558 b64f7644-9d1e-0410-96f1-a4d463321fa5
* SSA subtitle burn injstebbins2010-09-2812-90/+594
| | | | | | | | | | 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 git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3557 b64f7644-9d1e-0410-96f1-a4d463321fa5
* remove the 8 audio limit. isn't needed anymore.jstebbins2010-09-151-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3531 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix cli issue with batch scan and encodejstebbins2010-09-152-10/+23
| | | | | | | | | I didn't implement 'single title scan' for batch mode cause it seemed contradictory. but the cli uses this when encoding, even in batch mode. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3530 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix a crash when a TS has no aspect ratio set in the video streamjstebbins2010-09-142-3/+10
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3529 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Bump ffmpeg from 22950 to 25082jstebbins2010-09-142-2/+7
| | | | | | | | | | | | | | It's been 5 months since an ffmpeg bump. One negative is that we loose LATM support. The LATM patch is just impossible to apply anymore since ffmpeg dropped support for using the external faad lib. There are ifdef's in the code should anyone wish to revert to an earlier ffmpeg and enable LATM. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3526 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix a rare hang in the muxer.jstebbins2010-09-131-1/+7
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3525 b64f7644-9d1e-0410-96f1-a4d463321fa5
* 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