| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
| |
By default, the job is populated with the metadata
from the source title.
If the metadata dict is present in the json job, assume any fields
not present are to be removed from the job's metadata
|
|
|
|
|
|
| |
Technically not needed, but makes working with the objects easier. As
long as you have the object, you have the track number needed to put
it into the output.
|
|
|
|
|
| |
Can't tell where these failures are comming from because all the logs
look the same :(
|
|
|
|
|
|
|
| |
seconds and frames were not writting to the "Range" dict but instead
writting to the "Source" dict.
Fortunately, nobody has been relying on this behavior
|
| |
|
|
|
|
| |
Remove trailing whitespace in "*.c", "*.m", "*.h" and "*.cpp" files.
|
|
|
|
|
|
|
|
| |
Squashed:
- qsv: check filter_count instead of variable
- fix: remove unchanged files from review
- qsv: simplified code
|
|
|
|
|
|
|
| |
Newest versions appear to have a "common.h" somewhere that is
interfering with libhb/common.h.
move headers into "handbrake" subdirectory
|
|
|
|
| |
Rename hb.h to handbrake.h
|
|
|
|
| |
make sure pointers in hb_subtitle_config_t are initialized to NULL
|
|
|
|
|
| |
json_unpack returns references to embedded strings. We need to strdup
these when filling job structure.
|
|
|
|
|
| |
missing format specifier results in LFECount getting dropped from audio
track settings
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Works similar to audio track names.
If source has a subtitle track name, hb_subtitle_t.name is set.
To set output subtitle track name, set hb_subtitle_config_t.name.
Source track names are available in title returned by hb_title_to_dict
and hb_title_to_json in SubtitleList[].Name
In job dict it is also SubtitleList[].Name
hb_preset_job_init and hb_preset_job_init_json initialize output tracks
with the source track name.
Also adds subtitle name support to LinGui
|
|
|
|
| |
fixes a memory leak makes name const
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It gets stored in new hb_audio_config_t.in.name field.
It is available in the title dict read through hb_title_to_dict() or
hb_title_to_json() in AudioList[].Name.
When a job is initialized with hb_preset_job_init or
hb_preset_job_init_json(), output audio tracks are initialized with the
source track name.
Also adds output track name initialization to LinGui.
|
|
|
| |
Fix some typos
|
|
|
|
|
|
|
|
|
| |
GtkListBox is more flexible than GtkTreeView. It is possible now to
process key press events without creating a custom text cell renderer.
Also due to the way event handling changes in GTK4, it was no longer
even possible to create a custom cell renderer that can process key
events. So this GtkListBox implementation is compatible with GTK4.
|
|
|
|
| |
Just drop the track. If audio is 'none' drop silently.
|
| |
|
|
|
|
| |
and tweak the layout per BradleyS suggestions
|
| |
|
| |
|
|
|
|
|
|
| |
Reserve VideoColorMatrixCode for doing color conversion.
VideoColorMatrixCodeOverride sets color flags without transforming video
frame colors.
|
|
|
|
|
|
|
|
|
| |
Propagates pix_fmt, range, primaries, transfer, and matrix everywhere.
Everything that passes or creates video frames tags the frames with
their color matrix info.
All filters know the expected color matrix info of input frames.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
The sequence_id was only available for the WORKING state and not the
WORKDONE state. But frontends poll for status periodically and can miss
all status updates for the WORKING state if the file is very short or an
error occurs early during transcoding. When WORKING status is missed,
there was no way to know the sequence_id associated with the WORKDONE
status.
|
| |
|
| |
|
|
|
|
|
|
|
| |
"Adaptive streaming" allows changing video parameters mid-stream at IDR
boundaries. Such changes require new SPS and PPS NALs at the IDR. MP4
supports this with 'avc3' and 'hev1' sample entry types.
|
|
|
| |
This is useful for scripts and other frontends that need to parse CLI output.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a preset key AlignAVStart that enables this work-around. When
enabled, blank frames are inserted or frames are dropped to force
alignment of the initial timestamp of every audio and video stream.
Aligning the start times minimizes the impact of broken edit list
support in players.
Closes #763.
Squashed:
sync: improve alignment when passthru audio is present
presets: enable AlignAVStart for General and Gmail presets
LinGui: Improve AlignAVStart tooltip
sync: avoid inserting a black frame < nominal frame duration
sync: fix start alignment when doing p-to-p encoding
sync: add comments
|
|
|
|
| |
It was only used for scaling, it fails far too often and is only
faster on a limited selectoin of hardware.
|
|
|
|
|
| |
"End" was a duration. It is now the actual "End" position in 90khz
ticks or frames.
|
|
|
| |
json: Decoding JSON now checks if QSV is available before setting QSV… #509
|
|
|
|
|
|
|
|
| |
audio.out.name was getting assigned a string from a json object that
could be freed resulting in a double free.
also make unpack_s check for const char * type to help prevent such
abuses in the future.
|
|
|
|
|
|
| |
Setting an empty string tag allows removal of existing tags.
Note that setting a NULL string does not remove an existing tag but
instead results in the tag getting passed through from the source.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
* remove dxva hw decode
It provides practically no speed increase even on a slow CPU and results
in a speed decrease on fast CPUs. And the code is exceptionally fugly.
* cli: remove USE_HWD
|
| |
|
|
|
|
| |
…for encoders that check for a valid bitrate before quality.
|
|
|
|
| |
... and other assorted cleanups ;)
|
|
|
|
| |
Check against vbitrate since it doesn't depend on a preprocessor define.
|
| |
|
|
|
|
|
|
| |
This simplifies accessing and changing filter parameters
programatically. It also changes the custom filter string format to a
':' separated list of key/value pairs.
|
| |
|