summaryrefslogtreecommitdiffstats
path: root/gtk/src/makedeps.py
Commit message (Collapse)AuthorAgeFilesLines
* VAAPI: Initial Patch (WIP)vaapi-encoderSven Gothel2018-01-121-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Enabling VAAPI for GNU/Linux (SYS_LINUX) only, adding libraries 'X11 va-drm va-x11 va' and USE_VAAPI define. - hb.c: - Adding global static 'vaapi_device_ctx0' default device initialized via hb_avcodec_init() and released via hb_avcodec_free() - hb_avcodec_vaapi_set_hwframe_ctx() attaches the new AVHWFramesContext to the AVCodecContext - hb_avcodec_test_encoder(..) adds VAAPI branch, needs refinement - encavcodec.c - adding VAAPI branches, enabling available, needs refinement Discussion: First of all, only on Intel hardware I was able to produce a correct encoded result. On AMD we seemingly have YUV420 / NV12 artifacts. Therefor I need to learn more details on the pix_fmt handling as described below. While adding the VAAPI ffmpeg support the following might be an issue. Usually HB seems to operate with AV_PIX_FMT_YUV420P in general being set in the AVCodecContext's pix_fmt. VAAPI performs as follows: - It uses hardware frames on the target device, which are being transported from the software device. Both format should be allowed to differ?? - AVCodecContext's pix_fmt uses AV_PIX_FMT_VAAPI - AVHWFramesContext: format uses AV_PIX_FMT_VAAPI and sw_format AV_PIX_FMT_NV12, the latter hinting on the actual hw-frame's target format. - AV_PIX_FMT_NV12 uses interleaved UV data, where AV_PIX_FMT_YUV420P uses seperated planes. Both use a separated Y plane upfront. Therefor both formats are not picture compatible, memory requirements are same. - Encode(..) hardcodes the source frame's to AV_PIX_FMT_YUV420P in VAAPI case, usually the AVCodecContext's pix_fmt is being used. I need to identify how HB uses AVCodecContext's pix_fmt, i.e. respects the desired pix_fmt. Then a hw_frame gets allocated and the source frame is being transported to this target. Probably it happens here in VAAPI AMD case, that the YUV420 data is not being transformed to NV12. Now the hw_frame is being sent 'avcodec_send_frame' and the code-path re-aligns with non VAAPI. Further fixes to do: Naming of VAAPI's profile and level .. figuring out which settings are generally accepted. Now the bf (b-frames) is set to zero, since it produces a failure otherwise. The latter should only happen in certain profiles, but .. it does even in 100=high
* Initial nvenc h264/hevc encoder patchMatthew Lazarow2017-12-261-2/+2
|
* LinGui: Some GUI consistency changesJohn Stebbins2017-12-221-1/+1
| | | | | | Bold "Title:", "Angle:", "Duration:" Add "Range:" Change "through" to "-"
* build: Additional hashbang compatibility for BSD-like systems.Bradley Sepos2017-12-031-1/+1
| | | | Fixes #1040.
* LinGui: Add "Category" dropdown to preset save dialogJohn Stebbins2017-11-061-0/+2
| | | | | | | | | | | This replaces the "New Folder" option in the presets menu. It enforces the folder structure we have agreed to and hopefully helps the user keep things organized. Note that users are allowed to save a custom preset to the same "Category" as an official preset. When they do this, a new custom category is created with the same name and the preset is saved in that folder.
* LinGui: allow angles when dvdnav is disabledJohn Stebbins2017-11-061-2/+0
| | | | Other source types can also have multiples angles
* LinGui: Add preset selection menuJohn Stebbins2017-11-061-3/+0
| | | | | | | And convert appliction to a GtkApplication. This allows the use of GActions for menu and other control actions. It's a cleaner simpler interface that automatically tracks when multiple widgets perform the same action and keeps their state in sync.
* LinGui: Reorgainize Summary paneJohn Stebbins2017-11-061-2/+0
| | | | Synching up with https://github.com/HandBrake/HandBrake/issues/833
* LinGui: Add UI support for BradleyS' sharpen filtersJohn Stebbins2017-05-301-0/+9
|
* enable libvpx VP9 encoderJohn Stebbins2016-05-271-2/+2
|
* decomb: split comb detection out into it's own filterJohn Stebbins2016-03-111-0/+1
|
* x265: add support for 10, 12, and 16 bit x265 libsJohn Stebbins2015-11-121-2/+2
| | | | | automatically pull in shared versions of these libs or allow statically building against any one of them.
* x264: add multilib support (a.k.a. 10-bit)John Stebbins2015-11-121-5/+5
| | | | | This adds the structure to load an libx264 10-bit shared library. The user must install this library themselves to an appropriate place.
* Make deinterlace/decomb behave similar to nlmeans/hqdn3dJohn Stebbins2015-10-091-8/+4
| | | | | I.e. use a dropdown to select between the filters instead of a radio button.
* LinGui: fix vfr/pvr/cfr widget visibilityjstebbins2015-08-201-2/+2
| | | | | | | Dependencies stopped working when we standardized "Same as source" preset value as "auto". git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7406 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: simplify some video widget dependency handlingjstebbins2015-05-281-6/+0
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7236 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: disable level widget when no levels returned by libhbjstebbins2015-05-281-2/+0
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7233 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: audio pane refactoringjstebbins2015-05-151-11/+0
| | | | | | | | | | | - Use dict keys that align with job in audio list. - Fix quality for encoders with inverted quality scale like lame. - Fix disabling of audio passthru options that do not apply to the current input audio track. - Fix enable/disable of quality widgets - Fix random failure to change audio encoders in audio settings popup git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7190 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: convert resource files to jsonjstebbins2015-03-071-3/+3
| | | | | | | | Default presets, internal settings defaults, and widget dependency files are now all json. No more plists! git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6974 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: change settings dict from glib to janssonjstebbins2015-03-061-25/+25
| | | | | | | | This will allow for preferences, presets, and queue files to be written as json instead of plists (currently still plists). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6968 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: enable "More Settings" box in video tab for VP8jstebbins2014-09-041-2/+2
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6390 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: generalize video preset/tune/profile/level handlingjstebbins2014-08-121-4/+15
| | | | | | | | This generalization enables x265 preset/tune/profile/level which did not work previously. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6293 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui/CLI/libhb: add nlmeans denoise filter to linguijstebbins2014-07-211-1/+8
| | | | | | | Move nlmeans preset&tune parsing from cli to libhb git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6239 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: layout changesjstebbins2014-05-201-3/+3
| | | | | | | | Reduce height of presets list box. This allows room for making settings tabs wider. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6199 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: fix some glib warning messages in logjstebbins2014-05-161-1/+0
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6196 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: improved auto destination namingjstebbins2014-05-061-2/+1
| | | | | | | Allows auto name template like WinGui git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6174 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: rework how hb titles are referenced from linguijstebbins2014-02-231-1/+1
| | | | | | | Provides a less cryptic interface to identifying and looking up hb titles. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6064 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: add dialog to select multiple titles to add to queuejstebbins2014-02-221-1/+1
| | | | | | | | Replaces "Add All to Queue". Dialog provides checkboxes to select titles to add to the queue and file chooser/file entry to change destination file names. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6056 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: fix several issues with loading presetsjstebbins2014-02-201-1/+1
| | | | | | pull on a string and the whole sweater comes apart git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6048 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: rework title listjstebbins2014-02-191-1/+0
| | | | | | | | | | | | | | Title list is now linked to a settings list. There is one settings dict per title. The settings list is populated when scan completes. As you change titles, the settings for that title populate the UI. Changes made are saved in the settings and restored if you go to another title and then return. This is preparation for improvements to "Add All to Queue" feature. Settings for each title can be customized before adding to the queue. All titles don't have to use the same preset or settings. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6046 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: Audio and subtitle UI rework.jstebbins2014-02-181-16/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds new tabs for audio and subtitle defaults (presets). "Audio" and "Subtitle" tabs renamed to "Audio List" and "Subtitle List" New Preset Keys: AudioLanguageList - array of strings List of languages that will be used to generate the output audio tracks for a job. Values: preset - UI display iso639_2 codes - native_name if not NULL, else eng_name SubtitleLanguageList - array of strings List of languages that will be used to generate the output subtitle tracks for a job. Values: preset - UI display iso639_2 codes - native_name if not NULL, else eng_name AudioTrackSelectionBehavior - string Defines how source tracks will be selected when generating the audio list for a job. Values: preset - UI display none - None first - First Matching Selected Languages all - All Matching Selected Languages SubtitleTrackSelectionBehavior - string Defines how source tracks will be selected when generating the subtitle list for a job. Values: preset - UI display none - None first - First Matching Selected Languages all - All Matching Selected Languages SubtitleAddCC - boolean Add Closed Caption track to subtitle list if available SubtitleAddForeignAudioSearch - boolean Add Foreign audio search pass to job if a default subtitle language is set (i.e. SubtitleLanguageList is not empty and first entry is not "Any") and default audio track language matches subtitle preferred language. SubtitleAddForeignAudioSubtitle - boolean Add preferred language subtitle track if the default subtitle language is set (i.e. SubtitleLanguageList is not empty and first entry is not "Any") and default audio track language does not match the preferred subtitle language. Removed Preset Keys: AudioTrack SubtitleList - I think only the LinGui had this key. Note that the remaining keys in the pre-existing AudioList are reused and map to the "Audio Encoder Settings" on the "Audio Defaults" tab. They used to map to the entries in the list on the old "Audio" tab. The old "Audio" tab is now the "Audio List" tab. Nothing in the "Audio List" tab map to preset values in the new design. The contents of this tab is strictly for use in the encode job. Ditto for "Subtitle Defaults" and "Subtitle List". git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6040 b64f7644-9d1e-0410-96f1-a4d463321fa5
* decavcodec: DRC support.Rodeo2014-01-251-3/+0
| | | | | | | Adds DRC support for E-AC-3 audio (as well as any future libavcodec decoders with DRC support). git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5995 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: fix deprecation of GtkAction and GtkUIManagerjstebbins2014-01-151-0/+1
| | | | | | | Farely large change since these were the old way of creating menus :-\ git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5974 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: fix widget dependency rule for lavc advanced optionsjstebbins2013-11-181-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5894 b64f7644-9d1e-0410-96f1-a4d463321fa5
* libhb: add experimental avformat muxer for mkv and mp4jstebbins2013-06-301-4/+0
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5620 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: add missing sys dep to python scriptjstebbins2013-06-261-0/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5613 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: use hb_audio_quality_get_default() to show/hide quality widgets.jstebbins2013-06-151-5/+0
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5583 b64f7644-9d1e-0410-96f1-a4d463321fa5
* lingui: convert tabs to spacesjstebbins2012-12-271-117/+117
| | | | | | | Makes lingui source conform to hb standard for indentation. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5112 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: add x264 preset/tune/profile/level supportjstebbins2012-12-271-0/+4
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5110 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Lingui: make hb icon more visible on Summary tab.jstebbins2012-09-281-2/+2
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4992 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: Enable advanced options entry box for mpeg4 codecjstebbins2012-05-051-1/+1
| | | | | | | This broke when I renamed the internal value from "ffmpeg" to "ffmpeg4" git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4638 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Add flac + quality + compression level supportjstebbins2011-10-121-2/+14
| | | | | | | | | 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
* LinGui: fix some widget dependenciesjstebbins2011-09-301-12/+12
| | | | | | | When we added the audio tables that are now defining audio widget values I missed updating dependencies that enable/disable widgets. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4264 b64f7644-9d1e-0410-96f1-a4d463321fa5
* add more audio passthru optionsjstebbins2011-08-011-7/+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
* LinGui: add audio gain adjustment and create advanced audio dialog.jstebbins2011-04-051-0/+2
| | | | | | | | | Gain, DRC, and Sample Rate are now in an advanced audio dialog. This makes the audio tab less crowded and makes room for future improvements. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3903 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
* Add parameter parsing and b-frame support to ffmpeg mpeg-4 encoderjstebbins2011-03-111-2/+2
| | | | | | | | | | | | | The cli will now accept ':' separated parameters using the '-x' option for ffmpeg mpeg-4. The linux gui has an entry box on the advanced tab to add options. The option keys and values are the same as what the ffmpeg command line allows. Calculation of DTS timestamps was added to encavcodec.c in order to allow out of order b-frames. The algorithm is similar to what x264 uses. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3839 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: remove target file size optionjstebbins2011-02-261-1/+0
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3808 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: do not uncheck chapter markers when single chapter selectedjstebbins2011-02-111-1/+0
| | | | | | | | | | Instead, grey out the chapter marker checkbox to indicate it is inactive (but leave it checked) and do not enable chapter markers in the job. This way, if the user modifies chapter selections, chapter markers will automatically be re-enabled when more than one chapter is selected again. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3792 b64f7644-9d1e-0410-96f1-a4d463321fa5
* LinGui: add CFR option for "Same as source" framerate.jstebbins2011-01-281-1/+2
| | | | | | | | | Since there seem to be a lot of players that do not properly support VFR, add a CFR option that can be used with "Same as source". The framerate to use comes from the title and the cfr flag is set in the job. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3770 b64f7644-9d1e-0410-96f1-a4d463321fa5