summaryrefslogtreecommitdiffstats
path: root/libhb/ports.c
Commit message (Collapse)AuthorAgeFilesLines
* libhb: initialize sleep prevention reasonForActivity CFStringRef inside a ↵Damiano Galassi2017-03-151-6/+4
| | | | function, fix build with icc mac compiler. Patch by jwardnh.
* added support of Kaby Lake CPU recognitionmaxd2017-01-111-1/+6
|
* Update copyright dates to 2017.Bradley Sepos2017-01-011-1/+1
|
* libhb: Improve pthreads-win32 compatibility when PTW32_STATIC_BUILD isn't ↵Bradley Sepos2016-06-211-2/+2
| | | | | | defined. As may be the case with newer mingw with pthreads precompiled.
* Update copyright dates to 2016.Bradley Sepos2016-01-011-1/+1
|
* ports: add NULL checksJohn Stebbins2015-11-151-0/+8
|
* x264: add multilib support (a.k.a. 10-bit)John Stebbins2015-11-121-0/+32
| | | | | This adds the structure to load an libx264 10-bit shared library. The user must install this library themselves to an appropriate place.
* ports: make hb_opendir param constJohn Stebbins2015-10-191-1/+1
|
* Use the non deprecated kIOPMAssertPreventUserIdleSystemSleep assertion to ↵Damiano Galassi2015-10-051-1/+1
| | | | prevent sleep on OS X.
* libhb: Skylake microarchitecture detection, RB 859Max Dmytrychenko2015-09-221-0/+6
|
* hb_get_user_config_directory: improvements.Rodeo2015-04-301-8/+38
| | | | | | | | Fix build with older MinGW-w64 toolchains. Fix potential memory leak and crashes. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7140 b64f7644-9d1e-0410-96f1-a4d463321fa5
* ports: use standardized sched_yield instead of pthread_yieldjstebbins2015-04-231-1/+1
| | | | | | Fixes build on osx git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7122 b64f7644-9d1e-0410-96f1-a4d463321fa5
* sync: fix frame p-to-p extra audio after end framejstebbins2015-04-221-0/+5
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7119 b64f7644-9d1e-0410-96f1-a4d463321fa5
* ports: add functions for looking up user config directoryjstebbins2015-04-191-0/+61
| | | | | | | These will be used by the CLI for loading custom user presets. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7105 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Move strtok_r fallback to dedicated "compat" files.Rodeo2015-04-101-27/+0
| | | | | | | Also, check whether the toolchain already provides strtok_r instead of building it unconditionally. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7076 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: add support for detection of new Intel processor releases.Rodeo2015-02-031-0/+15
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6864 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Update year to 2015.bradleys2015-02-011-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6852 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Work around fedora mingw pthread library requirementjstebbins2015-01-181-0/+4
| | | | | | | | | | Fedora mingw seems to require it's own pthread library which causes build conflicts with our pthread lib. So this patch distinguishes whether libpthread or libpthreadGC2 is already installed on the system and uses the appropriate system lib when found. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6766 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: clean up handling dir directory separatorjstebbins2014-02-221-0/+21
| | | | | | | title->name was getting set to an empty string in some cases due to looking for the wrong directory separator. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6057 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix compiler warning with cpuid usagejstebbins2014-02-181-13/+17
| | | | | | | fixes "dereferencing type-punned pointer will break strict-aliasing rules" git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6045 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Update some copyright dates to 2014.Rodeo2014-02-181-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6042 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: Add cpuid inline asm macrojstebbins2014-02-151-17/+37
| | | | | | | | This eliminates our reliance on the private (unexported) libavutil function ff_cpu_cpuid(). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6032 b64f7644-9d1e-0410-96f1-a4d463321fa5
* bump libav, libav-v10_alpha1-90-g63debaajstebbins2014-01-121-0/+1
| | | | | | | | | Adds interlaced VC1 and HEVC support. Eliminates the need for most of our local patches. Many assorted bug fixes and improvements. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5962 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Revert previous borked commit. Sorry!Rodeo2014-01-071-1/+0
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5958 b64f7644-9d1e-0410-96f1-a4d463321fa5
* parsecsv: always check result of malloc()Rodeo2014-01-071-0/+1
| | | | | | | | | RebiewBoard #670. Patch by icchan. Thanks! git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5957 b64f7644-9d1e-0410-96f1-a4d463321fa5
* ports: detect more Intel microarchitecture families.Rodeo2013-12-271-0/+16
| | | | | | | Also disable QSV hardware support on Bonnell-based microprocessors. Some Cloverview processors apparently support media SDK with third-party hardware, and until we can access hardware to test and fix the crashes we have on that platform, let's not enable it. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5942 b64f7644-9d1e-0410-96f1-a4d463321fa5
* ports: cosmetics.Rodeo2013-11-081-1/+1
| | | | | | | | Also, previous patch is by icchan. Thanks! git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5882 b64f7644-9d1e-0410-96f1-a4d463321fa5
* ports: cast return result from getpid().Rodeo2013-11-081-1/+1
| | | | | | | Fixes a warning caused by a type mismatch (int vs. pid_t). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5881 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: make libhb internal character code utf8jstebbins2013-09-221-3/+136
| | | | | | | | | | This makes libhb expect all strings passed to it to be in utf8 format. The cli converts the converts from the current code page to utf8. libhb converts back to the current code page when necessary for libraries that expect it. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5798 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Big merge, QSV to trunk: part 1 (tracked files).Rodeo2013-08-221-0/+21
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5737 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: store and print additional CPU informationRodeo2013-07-131-9/+127
| | | | | | | | Printed in hb_scan(), so that it's present in all Activity Logs (both encode and scan). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5648 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb/common: improve fallback mechanism.Rodeo2013-06-031-0/+35
| | | | | | | | | | | | | | | | | | | | API changes: - added hb_global_init(), must be called before any other libhb function - removed (somewhat pointless) hb_mixdown_t.internal_name - some hb_*_get_from_name() functions now return 0 instead of -1. Instead of hardcoded fallbacks, list items now have a specific fallback, and a generic ID for when the specific fallback is unavailable. Encoder availability is checked at runtime (hb_global_init calling hb_common_global_init) and the item's value/fallback is sanity-checked and updated if necessary. See https://reviews.handbrake.fr/r/506/ for more detailed information. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5547 b64f7644-9d1e-0410-96f1-a4d463321fa5
* hb_system_sleep: refactoring.Rodeo2013-03-181-24/+62
| | | | | | | | | | | | Also: - release power assertions before freeing them - actually free the power assertions in hb_close() (previously unused) git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5340 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Updated all the copyright headers to 2013.sr552013-03-091-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5318 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Prevent OSX ML sleep during encoding, thanks to Jerome Lacubesr552013-02-041-0/+71
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5238 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Updated file copyright / GPL headerssr552012-06-151-3/+6
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4737 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: tasksets API provided by scsiguyjstebbins2012-05-171-12/+15
| | | | | | | | | | This is an easier to use API for launching multithreaded tasks. And it is more portable since it does not rely on undefined/implementation specific behavior of POSIX mutexes. That is, the ability for one thread to unlock a mutex owned by another thread. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4685 b64f7644-9d1e-0410-96f1-a4d463321fa5
* merge assorted fixes provided by Rogerio Britojstebbins2012-05-011-0/+1
| | | | | | | | Pretty much all resource cleanup issues on error condition handling. Thanks Rogerio! git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4620 b64f7644-9d1e-0410-96f1-a4d463321fa5
* PGS (bluray) subtitle support \o/jstebbins2012-04-261-2/+0
| | | | | | | | | | | | Thanks to patches supplied by David Mitchell and Rob McMullen we finally have PGS support. I added a fix for libav pgs timestamp processing and detection of forced subtitles to their work, then made foreign audio search work with PGS subs. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4605 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Align stack of all threads created by libhbjstebbins2011-11-181-1/+1
| | | | | | | This is a preemptive measure to prevent any future crashes in SSE code that requires 16 byte stack alignment. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4358 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Use TEMP or TEMPDIR environment variables for location of tmp directoryjstebbins2011-03-191-2/+6
| | | | | | | Falls back to /tmp if neither are set. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3852 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Bump cpu count limit from 8 to 64jstebbins2010-11-071-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3657 b64f7644-9d1e-0410-96f1-a4d463321fa5
* reorder #includes to fix redefinition problem in mingw64jstebbins2010-10-231-11/+10
| | | | | | | | if winsock2.h isn't included before windows.h, different conflicting definitions are used for several macros and typedefs git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3613 b64f7644-9d1e-0410-96f1-a4d463321fa5
* add strtok_r to ports.c for mingwjstebbins2010-05-221-0/+26
| | | | | | | fixes davidfstr's subtitle work git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3311 b64f7644-9d1e-0410-96f1-a4d463321fa5
* make it possible to dynamically create and close multiple libhb instancesjstebbins2010-03-261-4/+5
| | | | | | | | | | tweaks to make libhb more usable from a C# app remove pointers from preview filenames, replaces with hb instance and title id's removes only previews upon hb_close, leaves temp dir for hb_global_close git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3170 b64f7644-9d1e-0410-96f1-a4d463321fa5
* add point-to-point encodingjstebbins2009-12-231-0/+7
| | | | | | | | | | | | | | allows frame and pts based start points. end points were already previously supported. New job variables pts_to_start and frame_to_start specify the start point. There can be a period during the encode where it has to search for the start point. During this period, libhb sets a new state HB_STATE_SEARCHING and sets progress and eta till start point found. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3039 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Reduce the amount of buffering used and eliminate hb_snooze in the encoding ↵jstebbins2009-12-051-0/+29
| | | | | | | | | | | | | | | | | | | | | | pipeline For HD sources on an 8 core system with hyperthreading, we were using 1.5GB of ram. Add to that the 600MB x264 uses for rc-lookahead, pushes it north of 2GB. To reduce our memory usage, the fifo depths have been reduced are are no longer a multiple of cpu count. Use of hb_snooze has been eliminated in the encoding pipeline so that performance doesn't fall as a result of the reduced fifo depths. In sync, each audio and video were given separate threads so that each can wait on it's respective input fifo without blocking the others. In muxcommon, each stream being muxed was given a separate thread so that each can wait on it's respective fifo. This allows the removal of hb_snooze in the sync and muxer work loops. In both sync and muxer, there is common data that is shared by all threads, so special init routines allocate this shared data and initialize the threads. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3007 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: fix gethostbyname failure on mingwjstebbins2009-09-201-0/+17
| | | | | | | winsock requires initialization before you can call any networking functions git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2830 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: close file handle after querying dvd region mask from drivejstebbins2009-07-241-0/+7
| | | | | | | this only affected linux since we only query the region mask on linux git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2729 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: DVD drive region detection on linuxjstebbins2009-07-091-0/+37
| | | | | | | | | Read and log the region mask of the DVD drive. We get the occasional linux user that has an unset region. Logging the region will help isolate the problem more quickly. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2675 b64f7644-9d1e-0410-96f1-a4d463321fa5