summaryrefslogtreecommitdiffstats
path: root/contrib/ffmpeg
Commit message (Collapse)AuthorAgeFilesLines
* BuildSystem: Mac OS X - transition to Xcode4konablend2012-01-041-12/+22
| | | | | | | | | | | | | | | | | | | | | | | | - transition from Xcode3 to Xcode4 - overhaul HandBrake.xcodeproj file - simplify down to 2 configurations: debug, release - add xcconfig for useful variants: osx106.i386, osx106.x86_64, osx107.i386, osx107.x86_64 - add configure --xcode-config as preferred method to choose OSX minimum version and SDK - overhaul Info.plist generation to use m4 instead of cpp - remove use of direct static libraries on command line - Xcode4 now enables -search_paths_first by default - reference external build static libraries project file - greatly simplifying project file maintenance - update universal build targets to use --xcode-config - update ffmpeg hack to build on i386 in both debug and optimized modes - update ffmpeg build to show compile verbosity - enable local yasm when yasm probe fails - remove unused GCC.ldsysroot - remove unused GCC.ldminver - enhance xcodemake to use --sysroot, --minver - update/regenerate docs accordingly - add support for configure-time repo probe when svn repo is incompatible format to Xcode via .svn/HANDBRAKE_REPO_PROBE - replaced make/test/build.matrix.darwin with make/test/build.matrix git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4395 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Fix crash in swscale on windows XP 32bitjstebbins2011-11-181-0/+13
| | | | | | | It seems threads on XP are not guaranteed to start with an 16 byte aligned stack. swscale's SSE code assumed that the stack was aligned. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4357 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Fix seeking in wmv files that have no indexjstebbins2011-11-131-0/+16
| | | | | | | Libav's fallback binary search seek fails because a PTS is never generated for video stream types that have B frames. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4348 b64f7644-9d1e-0410-96f1-a4d463321fa5
* bump Libav to v0.7-1696-gcae4f4bjstebbins2011-11-041-1/+1
| | | | | | Fixes mingw64 crash when decoding dts audio git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4338 b64f7644-9d1e-0410-96f1-a4d463321fa5
* bump ffmpeg to v0.7-1470-gb95fbbajstebbins2011-10-261-1/+1
| | | | | | | | | Fixes problem setting dsur_mode in ac3 encoder that caused encode failures if using ac3 encoder and mixdown is dolby or dplii. Fixes a VC-1 decode issue that caused scattered misplaced blocks. Fixes swscale bug that caused banding. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4322 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Add optional yasm contribjstebbins2011-10-251-1/+7
| | | | | | | | | | To enable, "configure --enable-local-yasm" Ubuntu 10.04 LTS (lucid) has yasm 0.8 which is no longer compatible with x264. This change allows us to build yasm as a contrib and use it for building both Libav and x264 which require yasm. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4314 b64f7644-9d1e-0410-96f1-a4d463321fa5
* bump Libav from v0.7.1 to v0.7-1241-g5f3fb59jstebbins2011-10-1510-131/+120
| | | | | | | | | | | | Fixes VC-1 decode issue Adds partial support for interlaced VC-1 decode Adds ProRes decoder Fixes ac3 encoder dolby flag Fixes DCA frame size setting (delete patch A04) Fixes VC-1 repeat field processing (delete patch A05) Numerous other bug fixes and enhancements git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4291 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Add flac + quality + compression level supportjstebbins2011-10-121-0/+1
| | | | | | | | | Adds flac audio to cli, lingui, and macgui Adds quality and compression level options to cli Adds quality option to lingui Quality option works for vorbis and lame git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4281 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Fix corrupt first frame in BD point-to-pointjstebbins2011-09-191-0/+55
| | | | | | | | | | | Seek point may be a recovery point which will not be a complete clean frame. So consume frames till we reach the recovery frame count. Patches Libav so it can tell us when the recovery point has been reached. Also improves detection of recovery points in TS files. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4231 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Improve mpeg PS supportjstebbins2011-09-141-0/+96
| | | | | | | | | | | | | | | | | | | | | | Adds support for MPEG-1 PS, HDDVD EVOB, and video codecs other than mpeg1/2 in PS Improves probing of unknown stream types by using Libav's probing utilities Use Libav to probe for dts profile in TS and PS files when profile is unknown Improves framerate detection (improved telecine detection) Fixes preview generation for mpeg video that has only a single sequence header Patches Libav to handle VC-1 pulldown flags properly Improve PS and TS stream log information git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4220 b64f7644-9d1e-0410-96f1-a4d463321fa5
* add more audio passthru optionsjstebbins2011-08-011-0/+12
| | | | | | | | | | | | | | | | | adds aac and mp3 passthru for mp4 and mkv containers adds dts and dtshd for mp4 container (mkv already had it) Note: The only player known (to me) to support dts(hd) in mp4 is ff/avplay In LinGui there is a new option to limit which passthru codecs will be used by the "Auto Passthru" audio codec options. The CLI already has this ability with "--audio_copy-mask" which is use in conjunction with the "copy" audio codec option. Also corrects some A/V sync issues when video frames are dropped due to a gap detected in the audio. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4149 b64f7644-9d1e-0410-96f1-a4d463321fa5
* bump Libav from git-v0.7b2-406-g7b20d35 to release 0.7.1jstebbins2011-08-016-30/+10
| | | | | | | | | | | | | It includes the following fixes: - MKV seek issue: http://git.libav.org/?p=libav.git;a=commit;h=c29c609 - crash when decoding corrupt MPEG-2 streams: http://git.libav.org/?p=libav.git;a=commit;h=20153fb - other misc. fixes: http://git.libav.org/?p=libav.git;a=shortlog;h=refs/heads/release/0.7 It includes the following new feature: - support for DTS in MP4 and MOV files: http://git.libav.org/?p=libav.git;a=commit;h=26f4875 git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4148 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix or simplify several hacks involved with Libav supportjstebbins2011-07-271-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For files that are demuxed by Libav, we must share the format context with the decoder iso that it can obtain the codec context for each stream. The code that did this was very convoluted and difficult to understand. It is simplified by simply passing the context in hb_title_t. Reader was closing stream files before the decoder was finished with the context. This created the need to delay the actual close and cache the context. Changed reader so it behaves more like the rest of handbrake's work objects which lets us explicitly close after the decoders are finished. Libav does some probing of the file when av_find_stream_info is called. This probing leaves the format context in a bad state for some files and causes subsequent reads or seeks to misbehave. So open 2 contexts in ffmpeg_open. One is used only for probing, and the other only for reading. decavcodec.c had 2 separate decoders for files demuxed by hb and files demuxed by Libav. They have been combined and simplified. Previously, it was not possible to decode one source audio track multiple times in order to fan it out to multiple output tracks if the file is demuxed by Libav. We were using the codec context from the format context. Since there is only one of these for each stream, we could only do one decode for each stream. Use avcodec_copy_context to make copies of the codec context and allow multiple decodes. This allows removal of a lot of special case code for Libav streams that was necessary to duplicate the output of the decoder. Patch Libav's mkv demux to fix a seek problem. This has been pushed upstreams, so the next time we update Libav, we must remove this patch. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4141 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: encavcodecaudio improvementsjstebbins2011-07-241-46/+0
| | | | | | | | | | | | | Compute the output layout once in encavcodecaInit and store it in a member of the hb_encavcodeca work object. Fix the channel mapping of ffaac in our code rather than applying a patch to Libav. The Libav AAC encoder is bound to see a certain amount of commit activity since it needs to be improved. A patch affecting the AAC encoder is bound to break regularly git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4131 b64f7644-9d1e-0410-96f1-a4d463321fa5
* contrib: enable debuggin when debug=max and disable optimizations when ↵jstebbins2011-07-111-2/+8
| | | | | | | | | | optimizations=none except for ffmpeg on darwin i386 which fails to build when optimizations are disabled due to gcc running out of registers. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4103 b64f7644-9d1e-0410-96f1-a4d463321fa5
* contrib: enable ffmpeg debug when debug=max is setjstebbins2011-07-111-0/+10
| | | | | | | and disable ffmpeg optimizations if optimize=none is set git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4098 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Add ffaac encode supportjstebbins2011-06-081-0/+46
| | | | | | | | Adds "AAC (ffmpeg)" option to lingui and macui, "ffaac" option to cli. Does not yet remove faac. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4031 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix up usage of deprecated libav symbols and clean up patch fuzzjstebbins2011-06-075-57/+56
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4030 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: add support for libav aac encoder (libhb only)jstebbins2011-06-071-0/+1
| | | | | | | | | This generalizes the ac3 encoder to make it easy to add support for any audio encoder that libav supports. Since ffaac is not quite ready, the cli and gui does not expose ffaac yet. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4029 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Bump FFmpeg from git-0b32da9 to git-v0.7b2-406-g7b20d35 (from Libav)jstebbins2011-06-076-41/+23
| | | | | | | | | | | | | | | | Highlights: - Sources with more than 20 streams (video, audio and subtitles combined) are now supported - Adds decoding support for 10-bit H.264 - Adds frame-based threading for H.264 and VP8 Not yet enabled in HB. See experimental patch on RB to enable. - Quality tweaks for the AC3 encoder - AAC encoder improvements Not yet enabled in HB. See experimental patch on RB to enable. - Miscellaneous other fixes and improvements git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4028 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Add mpeg-2 encoding support to libhb, cli, and linguijstebbins2011-03-191-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3853 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Fix mkv timestamps that derive from SimpleBlock and default track duration.jstebbins2011-03-111-0/+13
| | | | | | | | | | | | | | | | Since I've gotten no response to this patch yet on ffmpeg-devel, I'm committing it here till someone has the time to look at it. When a SimpleBlock has lacing (multiple frames in a block) the duration of each frame should come from the default track duration. An initialization error in ffmpeg causes them to set the duration to 0 which triggers code higher in the stack to estimate the duration based on bitrate and frame size. This is wildly inaccurate and leads to very bad timestamps. Fixes issues with MakeMKV audio timestamps. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3835 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Remove a workaround for an ffmpeg bug that has been fixed.jstebbins2011-03-081-55/+0
| | | | | | | | | Removal of the workaround also removes the need for a patch that fails to apply cleanly to latest ffmpeg git. So remove the patch as well. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3833 b64f7644-9d1e-0410-96f1-a4d463321fa5
* bump ffmpeg from git-185a155 to git-0b32da9jstebbins2011-02-271-1/+1
| | | | | | | fixes win64 crash git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3818 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Remove a couple more remnants of faad from make filesjstebbins2011-02-111-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3794 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libraries:sr552011-02-041-1/+1
| | | | | | - Move all the old m0k urls over to download.handbrake.fr git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3780 b64f7644-9d1e-0410-96f1-a4d463321fa5
* bump ffmpeg from svn 25689 to git 185a155jstebbins2011-02-042-26/+1
| | | | | | | | | | Fixes a couple h.264 decode issues Fixes uft16-le chapter names in mov/mp4 files Improved ac3 encoder Numerous other bug fixes and improvements git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3779 b64f7644-9d1e-0410-96f1-a4d463321fa5
* patch ffmpeg mov demuxer to handle LE UTF16 chapter namesjstebbins2011-01-201-0/+25
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3759 b64f7644-9d1e-0410-96f1-a4d463321fa5
* bump ffmpeg from r25374 to r25689jstebbins2010-11-101-1/+1
| | | | | | | brings back LATM support git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3669 b64f7644-9d1e-0410-96f1-a4d463321fa5
* bump ffmpeg from 25082 to 25374jstebbins2010-10-121-1/+1
| | | | | | | fixes h264 decoding issue git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3599 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Disable ffmpeg doc generation. We don't need it and it causes the nightly ↵sr552010-09-171-0/+1
| | | | | | build to fail git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3539 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Bump ffmpeg from 22950 to 25082jstebbins2010-09-144-918/+24
| | | | | | | | | | | | | | 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
* disable libvaapi when building ffmpegjstebbins2010-06-271-0/+1
| | | | | | | we don't use it. causes link errors on systems that have this library installed. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3416 b64f7644-9d1e-0410-96f1-a4d463321fa5
* slightly improve avi seek patchjstebbins2010-05-161-8/+18
| | | | | | | only changes behavior when seeking backwards. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3297 b64f7644-9d1e-0410-96f1-a4d463321fa5
* patch ffmpeg avi seek problemjstebbins2010-05-161-0/+45
| | | | | | | | | | | when seeking to a timestamp, ffmpeg seeks to the position in the primary stream where that timestamp starts. Then seeks to the next interleaved packet for all other streams. When seeking back to the beginning of the file, this means the first packet of some streams are missed if those streams start before the video stream in the file. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3296 b64f7644-9d1e-0410-96f1-a4d463321fa5
* bump ffmpeg to rev 22950jstebbins2010-04-258-104/+141
| | | | | | | | | 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
* fix LATM aac processingjstebbins2010-04-231-28/+29
| | | | | | | | somewhere in the series of patch changes, setting the sample_fmt got lost. we were being told SAMPLE_FMT_NONE by ffmpeg for latm git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3253 b64f7644-9d1e-0410-96f1-a4d463321fa5
* bump ffmpeg to svn 20817jstebbins2009-12-141-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3028 b64f7644-9d1e-0410-96f1-a4d463321fa5
* fix ffmpeg build on osx i386jstebbins2009-11-271-0/+20
| | | | | | | | | | | | | gcc 4.2 on osx defines the built-in macro __PIC__ which ffmpeg's configure uses to determine if it should enable pic. Enabling pic uses extra registers which causes some inline asm to fail due to lack of available registers. I disabled the normal check and forced pic enabled for x86_64 since it requires it. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2987 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Bump ffmpeg to r20602jstebbins2009-11-257-294/+257
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2979 b64f7644-9d1e-0410-96f1-a4d463321fa5
* bump x264 to r1271jstebbins2009-09-241-1/+1
| | | | | | | | | make changes required by the x264 api change fix some build issues that the x264 bump exposed git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2836 b64f7644-9d1e-0410-96f1-a4d463321fa5
* build system: add capability to build Leopard target from Snow Leopard Hostjstebbins2009-09-041-2/+2
| | | | | | | | | To configure for building Leopard target from Snow Leopard: configure --sysroot /Developer/SDKs/MacOSX10.5.sdk --minver 10.5 git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2806 b64f7644-9d1e-0410-96f1-a4d463321fa5
* - patch ffmpeg to skip somewhat expensive .d (dependency) file generation.konablend2009-06-241-0/+33
| | | | | | | - shaves about 12-15 seconds off total build time on the fastest boxen. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2611 b64f7644-9d1e-0410-96f1-a4d463321fa5
* - added FFMPEG dependencies markers { BZIP2, ZLIB }; needed for mingw/cygwin ↵konablend2009-06-231-3/+3
| | | | | | | | | platforms. - explicitly enable { bzlib, zlib } during configure phase. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2608 b64f7644-9d1e-0410-96f1-a4d463321fa5
* - whups: fixed corrupted patch from r2477.konablend2009-06-031-3/+3
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2479 b64f7644-9d1e-0410-96f1-a4d463321fa5
* - added patch comment indicating when it may be removed.konablend2009-06-031-0/+4
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2477 b64f7644-9d1e-0410-96f1-a4d463321fa5
* - fixed regression: mov/png-sequence decoding.konablend2009-06-031-0/+26
| | | | | | | - regression was introduced in r2469 (ffmpeg-r18421); workaround is to disable CorePNG p-frames. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2474 b64f7644-9d1e-0410-96f1-a4d463321fa5
* FFMPEG.konablend2009-06-024-91/+64
| | | | | | | | | - bump ffmpeg from 0.5 (approx r17887) to r19067 (thanks van). - fixed latm patch; latmaac input no longer crashes. - removed P02-darwin-h264-dsp-crash. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2469 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Fix ffmpeg module to use scoped-gcc value.konablend2009-04-231-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2351 b64f7644-9d1e-0410-96f1-a4d463321fa5
* This patch adds mingw32 cross-compilation support to HandBrake trunk tokonablend2009-04-141-7/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | produce native win32 binaries. The main benefits are the binary does not have any Cygwin runtime requirements and various host platforms can be leveraged to build HandBrake. Cross-compilation toolchains are complex to setup and recommended for experts only; but once setup it can build at speeds similar to native builds, on Darwin or Linux. BUILD INSTRUCTIONS: Add mingw32 toolchain to beginning of your path and take the toolchain prefix from gcc (eg: i386-mingw32-gcc) and pass to configure: ./configure --cross=i386-ming32 PRODUCTS: - hb.lib (static library) - HandBrakeCLI.exe DOWNLOADS: Contrib downloads need to be seeded with: - pthreads-w32-2-8-0-release.tar.gz (new) - xvidcore-20090311.tar.gz SUMMARY: Specifically, all GUI trees are not impacted. configure - added --cross=PREFIX - reworked search for gcc and cross-compile related tools to use prefix contrib/ - sub-patches added as needed for mingw contrib/xvidcore/ - bumped from 1.1.3 -> 1.2.1+ (daily 20090311) - reconstituted P01-cygwin.patch - created new P00-darwin.patch needed for macho64 asm flag on x86_64 arch libhb/ - uint -> uint32_t - remaining changes guarded by mingw32 macro. test/ - modified to support pthread-compatibility library attach/detach. - all changes guarded by mingw32 macro. BRANCHES: source: https://hbfork.googlecode.com/svn/branches/mingw@28 target: svn://svn.handbrake.fr/HandBrake/trunk@2325 git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2326 b64f7644-9d1e-0410-96f1-a4d463321fa5