| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
and tweak the layout per BradleyS suggestions
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Signed-off-by: Andrew Brezovsky <[email protected]>
|
|
|
|
| |
Use snprintf
|
|
|
|
| |
Signed-off-by: Andrew Brezovsky <[email protected]>
|
|
|
|
| |
Fixes https://github.com/HandBrake/HandBrake/issues/1590
|
| |
|
|
|
|
| |
check codec_name and profile_name for NULL before strstr search.
|
|
|
|
|
|
|
|
|
| |
ffmpeg is inconsistent in the format of returned profile names.
Sometimes the profile name includes the codec name and sometimes it does
not. So search for the codec name in the profile name and add codec
name if it's not there. Ugh!
Fixes https://github.com/HandBrake/HandBrake/issues/1375
|
| |
|
|
|
|
| |
Fixes https://github.com/HandBrake/HandBrake/issues/1017
|
|
|
| |
This is useful for scripts and other frontends that need to parse CLI output.
|
|
|
|
| |
Fixes https://github.com/HandBrake/HandBrake/issues/798
|
|
|
|
| |
It was only used for scaling, it fails far too often and is only
faster on a limited selectoin of hardware.
|
|
|
|
| |
Fixes https://github.com/HandBrake/HandBrake/issues/779
|
|
|
|
|
|
|
| |
The threshold in bytes for when to give up trying to decode a frame was
too big for a lot of streams. It was made large to accomodate 4K raw
video. Instead of counting bytes, count frames fed to the decoder.
This is more consistant regardless of video resolution and codec.
|
|
|
|
|
|
|
|
| |
Setting this flag signals to libav to not wait for IDR or recovery
points before returning frames to us. Some videos have neither IDRs or
recovery points, so this fixes transcoding such video.
Fixes https://github.com/HandBrake/HandBrake/issues/456
|
|
|
|
| |
Fixes https://github.com/HandBrake/HandBrake/issues/501
|
|
|
|
| |
with valid inputs. #496
|
| |
|
|
|
|
|
|
| |
The series of commits starting with Tim's
"libav: remove our custom QSV wrapper."
Closes #46, closes #276, and closes #416.
|
|
|
|
| |
fixes various context leaks in error conditions
|
|
|
|
|
|
|
|
|
| |
* 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
|
|
|
|
|
| |
Also, verify that vid_info geometry matches vid_buf geometry
And some cosmetic changes
|
|
|
|
| |
the preview.
|
| |
|
|
|
|
|
|
|
| |
We were mis-detecting framerate often because we did not see enough
samples of various video flags while scanning previews. So move
sampling of these flags into the inner video decode loop and collect
more samples.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
We need to rescan when the number of previews changes.
|
|
|
|
|
| |
This brings together several independent implementations of a simple
buffer list manager.
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7332 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
| |
This should fix https://forum.handbrake.fr/viewtopic.php?f=11&t=32520
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7310 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7226 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7170 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
|
|
| |
This global was shared between the CLI and libhb and used as a back door to
force scan and encode passes to use the same ffmpeg context for hardware
decoding. Aside from the fact that this context sharing should not be necessary
and needs fixing, this information belongs in the hb_handle_t that is shared
between the scan and the encode. So put it there and make sure the hb_handle_t
get propagated to where the flag is needed.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7028 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
|
|
|
|
|
|
|
|
|
| |
Dolby Digital Plus (E-AC-3), Dolby TrueHD and FLAC can now be passed through without re-encoding. They aren't covered by Auto Passthru yet, however.
In addition, encoding to E-AC-3 is now possible.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6908 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
| |
libav generates a dummy first frame after any seek for some mpeg2 streams.
This results in black preview frames and invalid autocrop values.
So always decode at least 2 frames before using the frame for preview.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6906 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6862 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6852 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6646 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
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6597 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6525 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
| |
We are failing to detect CCs in some sources because the CC data is not
present on every frame. Makes scan always decode a few extra frames to
give the decode a better chance of seeing the CC data.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6471 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
| |
Puts the decoder into a mode that returns *all* frames. I.e.
it won't just scan to the end of the file looking for an IDR. Then
we decode multiple frames (up to 100) searching for an I frame. This way,
the reconstructed frame we use for a preview is more likely to be complete.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6430 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
|
| |
With this type of stream, scan only successfully decodes 1 frame.
Eliminating the flush after seek allows decoding more frames.
Note that there is a side effect of allowing some junk frames to be decoded,
so we only skip the flush if normal scanning finds only 1 frame.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6396 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
|
|
| |
... and probably other formats that use a palette.
The palette is stored in AVPacket side data which we did not read. So
read the side data and stash it in hb_buffer_t so that it can be used
later by the decoder.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6207 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
| |
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6116 b64f7644-9d1e-0410-96f1-a4d463321fa5
|
|
|
|
|
|
|
| |
replace it with libavcodec ac3 decoder
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6049 b64f7644-9d1e-0410-96f1-a4d463321fa5
|