| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
"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.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
simplify job initialization sequence, clean up code, and document
dependencies in the sequence better.
Make hb_add set job->sequence_id. It is no longer necessary for the
frontend to do this. If the frontend needs the sequence_id, it is
returned by hb_add().
Clean up use of interjob. do_job() now uses sequence_id to detect when
a new sequence of related jobs is running and automatically clears
interjob.
|
|
|
|
|
| |
It only worked properly with the x264 encoder. Now it works with all
encoders.
|
|
|
|
| |
We need to rescan when the number of previews changes.
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7397 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7254 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7226 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
| |
ChannelLayout was getting dropped due to missing format specifier
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7129 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7128 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7088 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7070 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7068 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7064 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
MetaData -> Metadata
Video {Codec} -> Video {Encoder}
Filter -> Filters
AudioList [Force] -> AudioList [Forced]
Added audio key DitherMethod
Simplified encoding range spec
Was: Range {ChapterStart, ChapterEnd, PtsToStart, PtsToStop,
FrameToStart, FrameToStop, StartAtPreview, SeekPoints}
Now: Range {Type, Start, End, SeekPoints}
Type is "chapter", "time", "frame", or "preview".
Start and End units depend on Type. SeekPoints is only used for live preview.
Added keys for control of hardware encode/decode
OpenCL, HWDecode, QSV {Decode, AsyncDepth}
Changed the data type of CopyMask. Was an int bitmask.
Now it is an array of strings, each string describes a passthru option.
e.g. "copy:ac3"
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7049 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
| |
...instead of going direct to json_t
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7040 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
| |
Also, prevent crashes that occur when the json is not properly parsed.
It will still fail to encode, but we will capture the parse failure in
the log.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6983 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
| |
This paves the way to doing preset processing in libhb. Initially for the CLI
but other frontends may benefit eventually.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6981 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Simplifies the WinGui.
This also changes how jobs are processed. Creating the sub-jobs for
multiple passes is delayed until after scanning and immediately before
running the job.
Working status has also changed. Sub-job passes are identified in status
with an ID that allows the frontend to definitively identify what pass
is in progress.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6976 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6852 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
| |
made a bad assumption. internal libhb track number is not needed by
the front-end
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6795 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
| |
This is the track that must be passed to libhb in the job to select
desired audio and subtitle tracks
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6794 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6762 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
| |
Modify hb_add() to automatically add all necessary passes, so hb_add()
only needs to be called once per job. It now automatically adds subtitle
scan and 2-pass encoding passes.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6738 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
| |
Now automatically adds subtitle scan and 2-pass encoding jobs.
Changed "Pass" integer to "TwoPass" boolean to facilite this.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6731 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
| |
Previously required "Track" < 0 which is unintuitive and unnecessary.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6730 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
| |
and add hb_audio_can_apply_drc2 API which doesn't require audio codec_param
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6651 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
| |
It is no longer needed since we eliminated mp4v2 support
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6647 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
| |
and add some routines for json conversion of preview parameters and images
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6614 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
| |
The actual size of the base64 encoded data is the length of the string
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6611 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
| |
forgot to call hb_image_close on the image
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6610 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
No idea if it actually works as advertised. Probably not ;)
Returns a json representation of an hb_image_t with the data
encoded in base64.
Also, fix a bug in hb_set_anamorphic_size_json that probably would have
cause it to just fail.
And fix a couple of memory leaks.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6609 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
There are several changes to job and title structs that break
current windows interop code. The interop code should be changed
such that it only uses json APIs. So if there is any missing
features (or bugs) in these APIs, please let me know.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6602 b64f7644-9d1e-0410-96f1-a4d463321fa5
|