summaryrefslogtreecommitdiffstats
path: root/libhb
Commit message (Collapse)AuthorAgeFilesLines
* Formatting: Remove a lot of trailing whitespace.saintdev2008-02-2135-1164/+1164
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1307 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Sanity check the input codec is AC3 when selecting AC3 pass through to avoid ↵eddyg2008-02-181-0/+9
| | | | | | crash when it is mpega or lpcm etc. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1290 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Only store chapter markers separate from their buffers when doing VFR.jbrjake2008-02-181-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1285 b64f7644-9d1e-0410-96f1-a4d463321fa5
* You know what I said in r1271 about not using the delay_queue except when ↵jbrjake2008-02-181-5/+1
| | | | | | VFR is enabled? This time, I mean it. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1283 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Fix hb_log to truncate the message at the correct point, fixes 1244.eddyg2008-02-181-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1282 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Only futz with frame durations at render-time when using VFR.jbrjake2008-02-181-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1281 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Remove the transformation matrix, and use the width field of the tkhd atom ↵ritsuka2008-02-171-53/+2
| | | | | | to do anamorphic in quicktime based players and devices. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1280 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Signal anamorphic in the MP4 container though the pixel aspect atom as well ↵jbrjake2008-02-171-2/+13
| | | | | | as the transformation matrix. This allows anamorphic on the iPhone and iPod Touch. One day, if Apple fixes a QuickTime Player bug, the only way to get it to display right in QuickTime might be to remove the transformation matrix the AppleTV still depends upon. It's a gamble. Oh well. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1278 b64f7644-9d1e-0410-96f1-a4d463321fa5
* macgui: change the human readable name for the dpl2 + ac3 hybrid from "DPLII ↵dynaflash2008-02-171-1/+1
| | | | | | + AC3" to "Dolby Pro Logic II + AC3" for consistency. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1276 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Only show a line in the log for filters if there are any, only show a line ↵jbrjake2008-02-161-2/+2
| | | | | | for dynamic range compression if it's enabled. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1274 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Fixes crashes with 2-pass when b-frames are enabled, by only using the ↵jbrjake2008-02-161-2/+10
| | | | | | delay_queue in render.c to actually delay frames when VFR is enabled. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1271 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Adds another safeguard to ensure AC3 pass-thru uses a 48khz sample rate.jbrjake2008-02-161-0/+7
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1270 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Allow mac gui to select AC-3 + AAC at the same time, still needs CLI work ↵eddyg2008-02-166-13/+57
| | | | | | for the same. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1267 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Allow multiple output audio tracks from a single DVD audio track.eddyg2008-02-151-16/+51
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1266 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Always use a sample rate of 48000hz for AC3.jbrjake2008-02-141-0/+3
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1265 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Reverts 1262, since, duh, sample size != sample duration.jbrjake2008-02-141-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1263 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Calculate AC3-in-M4V frame sizes based on channel count instead of always ↵jbrjake2008-02-141-1/+1
| | | | | | using 1536. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1262 b64f7644-9d1e-0410-96f1-a4d463321fa5
* AC3 from DVD via HB converted to M4V for viewing on ATVeddyg2008-02-141-7/+26
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1261 b64f7644-9d1e-0410-96f1-a4d463321fa5
* When x264 outputs frames as references for b-frame pyramids, flag them as ↵jbrjake2008-02-121-1/+5
| | | | | | such instead of just marking them as regular b-frames. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1257 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Refer to transitions in the presence-or-lack-thereof of progressive flags on ↵jbrjake2008-02-121-2/+2
| | | | | | MPEG-2 frames as Film->Video or vice versa instead of Progressive->Interlaced. Slightly more accurate, and will make future comb detection of previews less confusing. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1256 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Removes unused variable (and gets rid of the compile warning for it). Change ↵jbrjake2008-02-121-1/+0
| | | | | | copied from libmpcodec's official version of pullup. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1255 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Use proper fourcc code of FMP4 for ffmpeg MPEG-4 video, instead of ↵jbrjake2008-02-101-2/+2
| | | | | | identifying it as DivX, like ffmpeg used to. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1254 b64f7644-9d1e-0410-96f1-a4d463321fa5
* - More robust stream duration estimation: take 16 (position,pts) samples ↵van2008-02-091-28/+100
| | | | | | | | | then do a max likelihood estimate of the average rate based on the rate between all pairs of samples. - When we detect a sync error attempt to resync so that we can handle streams where a few bytes have been inserted or deleted. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1253 b64f7644-9d1e-0410-96f1-a4d463321fa5
* - correct the way that output timestamps are generated so that VFR will work ↵van2008-02-041-27/+73
| | | | | | with bframes. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1250 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Variable frame rate improvements.jbrjake2008-02-042-43/+126
| | | | | | | | | - Makes it work better with the source's time stamps and avoids discontinuities, by removing its lazy assumption that all frames are 3003 ticks long. - Handles more than 1 frame being dropped out of 5. - Preserves chapter markers from being dropped along with frames they're attached to (thanks van!). - Also, since VFR no longer requires input at 29.97 fps, removes the hard-coding of that frame rate. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1249 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Double hb_log() max line length to avoid truncation of x264 options in display.eddyg2008-01-311-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1244 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Add an (optional) iso639_2b field to the language struct so that we will ↵van2008-01-242-23/+28
| | | | | | accept either ISO 639-2/T or /B codes in input content (particularly MPEG transport stream PMTs) but will always generate /T codes in mp4s to keep QuickTime happy. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1234 b64f7644-9d1e-0410-96f1-a4d463321fa5
* - Make MPEG audio (and other audio types besides AC3) work.van2008-01-221-103/+126
| | | | | | | | | - Since the stream is closed after the scan then reopened by reader, we have to preserve all the state we gathered during the scan (like audio id to TS PID bindings) across the close. For now do this by ignoring the close call & doing a close internally when a stream of a different name is opened. - Don't overfill ts_packetbuf and abort just because an audio stream was missing the AC3 sync pattern (MPEG & DTS streams don't even have an AC3 sync pattern). - Get rid of several unused variables so that this compiles with no warnings. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1231 b64f7644-9d1e-0410-96f1-a4d463321fa5
* - rather than completely giving up on a dvd because we got a read error on ↵van2008-01-221-5/+13
| | | | | | | | | next_vobu, just skip to the start of the next cell & keep going. - get rid of some unused variables so this compiles with no warnings. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1230 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Maintains separate filter settings for each job. This prevents the MacGui ↵jbrjake2008-01-225-21/+60
| | | | | | from using the same filter settings for every job in the queue. Patch from travistex. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1228 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Prevents VFR from leaving PTS gaps at dropped frames, so it works properly ↵jbrjake2008-01-221-13/+17
| | | | | | with the new sync and MP4 muxing code in r1223 and r1224 that passes through the source's time stamps. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1227 b64f7644-9d1e-0410-96f1-a4d463321fa5
* account for quantization bias when computing durations for vfr.van2008-01-221-8/+2
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1224 b64f7644-9d1e-0410-96f1-a4d463321fa5
* When vfr is selected use the frame timing from render.c rather than ↵van2008-01-221-38/+68
| | | | | | generating duplicate frames to turn the content back into 30fps. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1223 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Change subtitle position to prevent displaying within a 2% margin of the ↵eddyg2008-01-211-10/+53
| | | | | | height of the screen, rather than using a 20px fixed margin. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1218 b64f7644-9d1e-0410-96f1-a4d463321fa5
* - get rid of 'chapter merging'.van2008-01-201-110/+143
| | | | | | | | | | | | | | | | | | | | | - check for 'beginning of cell' before 'end of cell' so zero length cells don't make us advance to the next cell too early & fail to generate a chapter mark. - don't read beyond the last cell of a title. - if we get a read error just skip to the next vobu instead of giving up. - fix the next_vobu mask (the top two bits have special meaning, not just the MSB), make the next vobu decision logic a bit closer to what a hardware dvd player uses (interpret the 2^30 bit as "look for a better vobu pointer in this navpack), make the 'end of vobu chain' recognition more robust. - when we're searching for a navpack because we couldn't read the block 'next_vobu' points to, recognize when we walk out of the current cell & just go to the next cell for this title. - treat an internal vobu with a null prev_vobu pointer as if it were end-of-cell and advance to the next cell. - use consistent case in log messages (always "dvd:" rather than a random mix of upper & lower case). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1215 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Set the alternate group for the audio tracks. Does only work when building ↵ritsuka2008-01-191-0/+3
| | | | | | with jam, contrib pack is not updated yet. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1214 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Use IS0 639-2/T language codes instead of ISO 639-2/B language codes because ↵jbrjake2008-01-181-22/+22
| | | | | | | | QuickTime is a whiny little PITA too simple-minded to handle the concept of synonymous terms. Should fix any issues with audio tracks showing up with "Undetermined" language in QT/iTunes/iPod. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1211 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Bumps libhb's copy of libmkv to 0.6.1.3, fixing the >2GB file crashes in Linux.jbrjake2008-01-151-7/+7
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1200 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Don't bother informing the user when grayscale is off, since that's the case ↵jbrjake2008-01-141-1/+3
| | | | | | 99% of the time anyway. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1193 b64f7644-9d1e-0410-96f1-a4d463321fa5
* - figure out MPEG PS duration from stream rather than faking it.van2008-01-061-91/+136
| | | | | | | | | | - correct some audio substream id mistakes: substream 2 is for dvd subtitles (in a vob) not lpcm, substream 10 is lpcm, dts seems to be a variant of ac3 (8), not its own code. - incorporate suggestions from eddyg's code review. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1170 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix for duplicate chapters when encoding with ffmpeg.van2008-01-061-3/+7
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1169 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Apply same edit to chapter track as to video track so chapters will stay invan2008-01-061-0/+7
| | | | | | | sync with the video (otherwise they end up 2-4 frames late). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1168 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Fill in the "Encoded By:" tag in MP4 files with "HandBrake" followed by the ↵jbrjake2008-01-041-0/+7
| | | | | | version number and build date. Thanks for making me aware that libmp4v2 had an MP4SetMetadataTool() function, realityking. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1164 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Change url to check LATEST file to "handbrake.fr" dynaflash2008-01-031-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1162 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Program Streams: Vans patch to set a fake duration for program streams.dynaflash2008-01-011-5/+5
| | | | | | Thanks Van! git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1159 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Only drop frames when using VFR, not with regular detelecine.jbrjake2008-01-011-2/+6
| | | | | | *facepalm* git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1158 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Program Stream Enhancements - Van: Libhbdynaflash2007-12-314-239/+213
| | | | | | | | | | | - Thanks Van ! - Identifies program streams by type instead of file extension - Improves proper duration reporting of program streams - fixes audio reconvergence code in libhb/sync.c trying to free a null buffer causing a crash - Assorted other enhancements to encoding program streams. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1155 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Fixes a typo in MP4 chapter marker durations. Thanks, van!jbrjake2007-12-291-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1154 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Extends hb_set_anamorphic_size() to make it possible to do "dry-runs"...this ↵jbrjake2007-12-283-40/+63
| | | | | | way the MacGui can calculate loose anamorphic values for displaying preview images, before the job variables are directly set in work.c. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1153 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Better b-frame muxing. Instead of using an arbitrarily long offset and then ↵jbrjake2007-12-283-39/+46
| | | | | | | | later walking the file to find the smallest one, now x264 uses the smallest delay it can from the start. This significantly cuts down muxing time. As a side effect, it also makes fixing chapter markers + b-frames easy, so that's included too in muxmp4 (thanks, van!). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1152 b64f7644-9d1e-0410-96f1-a4d463321fa5