| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
- try harder to get keyframes from ffmpeg files: if we've just done a seek, search the next 50 frames for a keyframe.
- detect WMV3 keyframes since ffmpeg doesn't.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2027 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
| |
than hardwiring 48KHz & 2 channels.
- have to discard audio that starts before video time zero otherwise we desync the audio & video.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2026 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
prototype hb_avcodec_{init,open,close} so that we don't get gcc warnings from a dozen modules.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2025 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
EyeTV S-Video capture.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2024 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
| |
these functions can not be called from 2 threads simultaneosly.
made a wrapper function that holds a lock while making the call
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2023 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
won't have one). The standard says we just need a PACK header followed by some other legal start code.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2018 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
| |
many discontinuities (like concatenated blu-ray m2ts files) are handled
better.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2017 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
signed 16 bit. (Fix for the pcm_u8 audio generated by Canon cameras.)
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2014 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2009 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
the PCR without sending a new PCR and we get big timestamp changes but no new reference clock. So now we look at the PTS and if its change is outside a tolerance window we use the new PTS as a PCR & declare a clock discontinuity.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2008 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
The malloc() function in cygwin doesn't return 16-byte aligned memory which causes it to randomly crash. Replaced with memalign() for the cygwin platform only.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2006 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
|
|
| |
crc) rather than looking at multiple frames. This should reduce the probability of mis-identifying random junk as AC-3 to less than 1 in 2^32.
- check the crc on every frame so we don't let corrupted data into the decoder.
- interpret the PTS as per the standard (it's the time of the first frame that starts in the packet, not the time of the first byte of the packet). Incorrect interpretation was resulting in an average 15ms timing error (worse case 31ms).
- do all the PTS calculations in doubles so we don't get round-off error that will desync the audio & video with 44.1KHz audio sources (these can't appear on DVDs but do show up in avi/mkv/... files).
- don't rely on the container to give us large enough frame fragments to validate the sync (some containers split audio frames into really small pieces). Instead use the 8K of unused space in the esconfig of the audio object as an accumulation buffer.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2002 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
| |
completely ignored - some of these don't follow the normal PES packet encoding so feeding them downstream to the demuxer will cause strange timing and other problems.
- make log message correctly reflect our uncertainty about audio stream type so people don't complain about missing AC-3 audio when it isn't really there.
- add missing av_free_packet in VC-1 keyframe search.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2001 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
| |
So now we can use our own demuxer for streams with VC-1.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1995 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
| |
- don't throw away previews just because we hit eof while trying to find audio info.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1993 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
and program streams ...
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1992 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
MP4 metadata, add importing of MP4 chapters, add seek to chapter for input files, add new libmp4v2, remove old MP4 chapter muxing - now in libmp4v2.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1987 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
DTS PTS handling.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1976 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
| |
generated during scan, and whether or not they're written to disk for later display. This will break any interfaces that use hb_scan until the new params are specified...sorry. Also adds a new job->seek_points setting (set this to the same as the number of previews) to be used with job->start_at_preview when doing live preview encodes, so the seek function has a frame of reference.
Wires up the CLI with a --previews option (long option only) to control the new scan parameters, and defaults the CLI to not writing previews to disk.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1970 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
| |
mixes stream reader state with decoder state we only have one decoder instance for the streamso multiple decode requests will garble the audio and/or cause an abort.
(Since the Universal preset specifies AC-3 passthru, using it on non-ac3 audio caused a second decode of the first audio track to be requested which triggered this bug and resulted in lots of aborts for wmv & avi conversions.)
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1969 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1965 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
| |
streams.
- give transport streams their own demuxer rather than constructing fake PS packets to use the DVD demuxer.
- start re-doing the transport stream code so it does fewer memory to memory copies.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1953 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
| |
decoding.
- switch av_seek_frame to zero back to time-based rather than byte-based since time-based screws up mkv & mp4 while time-based works for everything but vc1.
- since ffmpeg doesn't correctly indicate key frames in vc1 look for them ourselves so that vc1 previews & cropping will work.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1927 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1925 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
| |
- don't require a key frame after we seeking to the beginning of the file (this was probably causing the leading PPS & SPS of some blu-ray h.264 content to get dropped which resulted in a few seconds of missing video).
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1923 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
there were 2 problems
1. when the program list in the pat contains a network PID, the pmt parsing
code doesn't properly skip this entry. this causes attempts to interpret
a pat as a pmt since the pid entry in the table is left initialized to 0.
2. pmt parsing always waits till the start of the second pmt section before
parsing the first. if for some reason there were only one pmt in the
stream, it would never parse the pmt. I've changed it to parse the pmt
as soon as all the necessary bytes are collected.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1916 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
| |
set job->start_at_preview to the preview frame you want to start at
set job->pts_to_stop to the number of 90khz ticks duration
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1915 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
rounding re: Theora.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1909 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
have a valid stream. This will cause HB to try to open it with ffmpeg which often can read VC1 TS streams.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1908 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
for AAC, select the next higher valid rate. This should make wmv's & avi's with weird audio rates more likely to work with the default HB settings.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1907 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
up if they're odd before dividing by 2.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1905 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
| |
we read via ffmpeg so that we get the user-specified mixdown. Otherwise we eventually abort in the sample rate converter or audio encoder.
- Teach HB's DTS coder to handle implicit timestamps so that it doesn't screw up on mkv's & some m2ts inputs.
- mkv's produced from Bluray HD content seem to have large timestamp errors - filter them out in the decoder so that sync doesn't drop big chunks of our audio.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1904 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
| |
that happens when the width is not divisible by 8.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1901 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
using a default value, display with the name "color matrix" instead of "color space" to avoid confusion with conversions to YUV420 planar color space, and appear with the other container settings instead of video settings.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1889 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
| |
Doctor Who season 1 disc 2 title 4).
Problem reported in http://forum.handbrake.fr/viewtopic.php?f=4&t=4306
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1880 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
that was hardcoding the AC3 stream information in the dac3 atom based on the AppleTV startup movie stream.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1879 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
files that have a non-zero 'start' specified in their header.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1868 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
uses YUV411) convert it to YUV420. Also, scale down inputs that have an odd width or height since h.264 requires that the width and height be even.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1867 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
to the audio and subtitle names, e.g. Director's Commentary.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1863 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
needs the edges mirrored, and decomb's cubic interpolation has to be disabled at the tops and bottoms of frames.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1862 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
non-H.264 video, and also features a snazzy new layout and build routine thanks to KonaBlend (which necessitated a minor change to the include path for muxmp4.c).
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1859 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1852 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
should signal Bt.601 or Bt.7709 color, instead of just setting it based on whether the source is standard or high definition (which is preserved as default, and made more sensitive to letterboxed HD content).
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1851 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
buffer.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1850 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
due to having no audio, since it seems to mystify some people.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1845 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1844 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
removes a bunch of code by repurposing MULTIPLE_MOD() (thanks j45!).
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1843 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
matching syncs.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1838 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
5.5G iPod UUID atom into the library, as well as a typing issue with Linux systems.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1836 b64f7644-9d1e-0410-96f1-a4d463321fa5
|