[FFmpeg-devel] [PATCH 1/2] lavf/avio_internal: add ffio_write_lines for line ending normalization

2024-01-28 Thread rcombs via ffmpeg-devel
--- libavformat/avio_internal.h | 11 +++ libavformat/aviobuf.c | 31 +++ 2 files changed, 42 insertions(+) diff --git a/libavformat/avio_internal.h b/libavformat/avio_internal.h index f2e4ff30cb..16cf6ce016 100644 --- a/libavformat/avio_internal.h +++ b/

[FFmpeg-devel] [PATCH] Add functions to identify devices in more ways

2023-05-09 Thread rcombs
- cuDeviceGetUuid_v2, giving distinct IDs for different MIG instances - cuDeviceGetLuid, giving a Win32 LUID to match with DXGI and other APIs - cuDeviceGetByPCIBusId, retrieving a device that matches a PCI bus ID string - cuDeviceGetPCIBusId, giving a PCI bus ID string for a device --- include/ff

[FFmpeg-devel] [PATCH 2/2] lavc/ass: error if not passed exactly 1 rect

2023-03-08 Thread rcombs
This never produced valid output. --- libavcodec/assenc.c | 29 ++--- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/libavcodec/assenc.c b/libavcodec/assenc.c index db6fd25dd7..41332d33fb 100644 --- a/libavcodec/assenc.c +++ b/libavcodec/assenc.c @@ -45,27

[FFmpeg-devel] [PATCH 1/2] ffmpeg: send only one rect per packet when encoding ASS

2023-03-08 Thread rcombs
The packet and rect formats are identical, so there's no support for multiple rects per packet. --- fftools/ffmpeg.c | 25 +++-- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/fftools/ffmpeg.c b/fftools/ffmpeg.c index d721a5e721..438bee8fef 100644 --- a/fftools

[FFmpeg-devel] [PATCH 2/2] fftools: enable long path support on Windows

2023-03-08 Thread rcombs
This allows use of filesystem paths longer than MAX_PATH (260 characters) on Windows 10 version 1607 and later. This _may_ be a no-op if a "LongPathsEnabled" isn't set in the registry. --- fftools/fftools.manifest | 1 + 1 file changed, 1 insertion(+) diff --git a/fftools/fftools.manifest b/ffto

[FFmpeg-devel] [PATCH 1/2] fftools: set process code page to UTF-8 on Windows

2023-03-08 Thread rcombs
This causes char-based filesystem and other API calls to accept and produce UTF-8 strings instead of locale-dependent legacy code page strings, when running on Win10 or newer. By and large, ffmpeg uses the wide-character equivalents of these APIs, so this shouldn't have any effect on most usage. -

[FFmpeg-devel] [PATCH 3/3] ffmpeg: respect AV_CODEC_CAP_SINGLE_SUB_RECT

2023-02-20 Thread rcombs
Fixes ASS output when multiple rects are present. --- fftools/ffmpeg.c | 28 ++-- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/fftools/ffmpeg.c b/fftools/ffmpeg.c index 9884e0c6c6..23eac52438 100644 --- a/fftools/ffmpeg.c +++ b/fftools/ffmpeg.c @@ -1021,6

[FFmpeg-devel] [PATCH 2/3] lavc/assenc: set AV_CODEC_CAP_SINGLE_SUB_RECT

2023-02-20 Thread rcombs
This already gave garbled output when multiple rects were present, so this is simply documenting an existing requirement. --- libavcodec/assenc.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libavcodec/assenc.c b/libavcodec/assenc.c index db6fd25dd7..1c49a6685b 100644 --- a/libavcodec/ass

[FFmpeg-devel] [PATCH 1/3] lavc/codec.h: add AV_CODEC_CAP_SINGLE_SUB_RECT

2023-02-20 Thread rcombs
--- doc/APIchanges | 3 +++ libavcodec/codec.h | 5 + libavcodec/version.h | 2 +- 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/doc/APIchanges b/doc/APIchanges index bc52a07964..56f33aa25b 100644 --- a/doc/APIchanges +++ b/doc/APIchanges @@ -14,6 +14,9 @@ libavutil:

[FFmpeg-devel] [PATCH 3/3] lavu/vulkan: only request beta extensions if we detected they're present

2023-02-04 Thread rcombs
Fixes build on systems where vulkan_beta.h is absent (e.g. Android) --- libavutil/hwcontext_vulkan.c | 5 - libavutil/vulkan_functions.h | 4 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/libavutil/hwcontext_vulkan.c b/libavutil/hwcontext_vulkan.c index 589a7a7d9a..67802a8

[FFmpeg-devel] [PATCH 2/3] configure: check for vulkan beta extension support

2023-02-04 Thread rcombs
Some systems (e.g. android) provide vulkan.h, but not vulkan_beta.h. In that case, compiling vulkan.h with VK_ENABLE_BETA_EXTENSIONS enabled will result in a preprocessor error. We can check for this up-front. --- configure | 3 +++ 1 file changed, 3 insertions(+) diff --git a/configure b/configu

[FFmpeg-devel] [PATCH 1/3] lavu/hwcontext_vulkan: check for encode/decode queue extensions

2023-02-04 Thread rcombs
These are currently beta features, and aren't always present. --- libavutil/hwcontext_vulkan.c | 16 1 file changed, 16 insertions(+) diff --git a/libavutil/hwcontext_vulkan.c b/libavutil/hwcontext_vulkan.c index 2a9b5f4aac..589a7a7d9a 100644 --- a/libavutil/hwcontext_vulkan.c ++

[FFmpeg-devel] [PATCH] lavf/matroska: add support for ARIB captions

2023-01-13 Thread rcombs
Not yet ready for merge, pending finalization of the standard proposal for this mapping: https://github.com/ietf-wg-cellar/matroska-specification/pull/724 --- libavformat/matroska.c| 1 + libavformat/matroskadec.c | 30 ++ libavformat/matroskaenc.c | 23 ++

[FFmpeg-devel] [PATCH] lavf/spdifdec: support EAC3

2023-01-10 Thread rcombs
Parsing should probably be enabled for all codecs, at least for headers, but e.g. the AAC parser produces 1-byte packets of zero padding with it, so I'm just enabling it for EAC3 for the moment. --- libavformat/spdifdec.c | 19 +- tests/fate/spdif.mak| 3 + tests/ref/fate/s

[FFmpeg-devel] [PATCH] lavf/mux: ignore nonmonotonic timestamps for timestampless muxers

2022-11-21 Thread rcombs
--- libavformat/mux.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libavformat/mux.c b/libavformat/mux.c index 37fe19358d..7b13dd8012 100644 --- a/libavformat/mux.c +++ b/libavformat/mux.c @@ -538,7 +538,7 @@ static int compute_muxer_pkt_fields(AVFormatContext *s, AVSt

[FFmpeg-devel] [PATCH] lavc/libaribb24: add default_profile option

2022-11-02 Thread rcombs
This allows decoding of streams that don't have a profile tagged (e.g. ones that were remuxed improperly). --- libavcodec/libaribb24.c | 33 +++-- 1 file changed, 27 insertions(+), 6 deletions(-) diff --git a/libavcodec/libaribb24.c b/libavcodec/libaribb24.c index f405

[FFmpeg-devel] [PATCH 7/7] lavfi/vf_scale: set sws job count using ff_filter_get_nb_jobs

2022-09-20 Thread rcombs
This mirrors the existing handling for thread count. --- libavfilter/vf_scale.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libavfilter/vf_scale.c b/libavfilter/vf_scale.c index 2b12cf283c..db984725bd 100644 --- a/libavfilter/vf_scale.c +++ b/libavfilter/vf_scale.c @@ -544,6 +544,7 @@ stat

[FFmpeg-devel] [PATCH 6/7] lavfi/vf_unsharp: use ff_filter_get_nb_jobs

2022-09-20 Thread rcombs
Improves performance by roughly 15% on M1 Max --- libavfilter/unsharp.h| 2 +- libavfilter/vf_unsharp.c | 20 ++-- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/libavfilter/unsharp.h b/libavfilter/unsharp.h index 0da6f05036..7af32b0467 100644 --- a/libavfilt

[FFmpeg-devel] [PATCH 5/7] ffplay: add filter_jobs arg

2022-09-20 Thread rcombs
This is similar to filter_threads, but controls job count. --- doc/ffplay.texi | 5 + fftools/ffplay.c | 4 2 files changed, 9 insertions(+) diff --git a/doc/ffplay.texi b/doc/ffplay.texi index 5dd860b846..abc857013f 100644 --- a/doc/ffplay.texi +++ b/doc/ffplay.texi @@ -196,6 +196,11 @

[FFmpeg-devel] [PATCH 4/7] ffmpeg: add filter_jobs and filter_complex_jobs args

2022-09-20 Thread rcombs
These are similar to filter_threads and filter_complex_threads, but control job count. --- doc/ffmpeg.texi | 12 fftools/ffmpeg.c| 1 + fftools/ffmpeg.h| 2 ++ fftools/ffmpeg_filter.c | 7 +++ fftools/ffmpeg_opt.c| 13 + 5 files changed,

[FFmpeg-devel] [PATCH 3/7] lavfi: add jobs args

2022-09-20 Thread rcombs
This allows tuning the number of tasks that frames are sliced into independently from the number of execution pool threads, which can improve performance significantly on asymmetric-multiprocessing systems. --- doc/APIchanges | 3 +++ libavfilter/avfilter.c | 9 + libav

[FFmpeg-devel] [PATCH 2/7] sws: add jobs option, distinct from threads

2022-09-20 Thread rcombs
This allows for more efficient use of asymmetric-multiprocessing systems. --- libswscale/options.c | 2 ++ libswscale/swscale_internal.h | 1 + libswscale/utils.c| 9 ++--- libswscale/version.h | 2 +- 4 files changed, 10 insertions(+), 4 deletions(-) diff --git

[FFmpeg-devel] [PATCH 1/7] lavu/cpu: add av_cpu_job_count()

2022-09-20 Thread rcombs
This estimates an appropriate number of jobs for a task to be broken up into. This may be higher than the core count in a heterogeneous system. Currently implemented only on Apple platforms; otherwise, we assume homogeneity. --- doc/APIchanges | 3 +++ libavutil/cpu.c | 37 +

[FFmpeg-devel] [PATCH] lavfi: make job count configurable separately from thread count

2022-09-20 Thread rcombs
Slicing frames into a larger number of jobs can improve performance significantly on asymmetric-multiprocessing systems. On my M1 Max, performance on the two filters transitioned to the new model in this patchset (vf_scale and vf_unsharp, chosen somewhat arbitrarily as reasonable test cases) imp

[FFmpeg-devel] [PATCH 2/2] lavfi/drawutils: improve colorspace support

2022-06-02 Thread rcombs
From: rcombs - Introduce ff_draw_init2, which takes explicit colorspace and range args - Use lavu/csp and lavfi/colorspace for conversion, rather than the lavu/colorspace.h macros - Use the passed-in colorspace when performing RGB->YUV conversions The upshot of this is: - Support for

[FFmpeg-devel] [PATCH 1/2] lavfi/colorspace: add ff_matrix_mul_3x3_vec

2022-06-02 Thread rcombs
From: rcombs Signed-off-by: rcombs --- libavfilter/colorspace.c | 11 +++ libavfilter/colorspace.h | 1 + 2 files changed, 12 insertions(+) diff --git a/libavfilter/colorspace.c b/libavfilter/colorspace.c index 7f74fe5113..f0bd14be18 100644 --- a/libavfilter/colorspace.c +++ b

[FFmpeg-devel] [PATCH 6/6] lavc/h264_ps: always include the stop bit in [s|p]ps->data

2022-05-09 Thread rcombs
From: rcombs The VideoToolbox hwaccel needs the entire NAL (including the stop bit), but ff_h2645_packet_split may remove it. Detect this case by looking for bit counts divisible by 8 and insert a stop-bit-only 0x80 byte. Signed-off-by: rcombs --- libavcodec/h264_ps.c | 8 1 file

[FFmpeg-devel] [PATCH 5/6] lavc/videotoolboxdec: insert emu-prevention bytes for HEVC as well

2022-05-09 Thread rcombs
From: rcombs Fixes decoding of files with sync-fooling sequences in their PSs. Signed-off-by: rcombs --- libavcodec/videotoolbox.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/libavcodec/videotoolbox.c b/libavcodec/videotoolbox.c index 921fed9619..ce83c2594a

[FFmpeg-devel] [PATCH 4/6] lavc/videotoolboxdec: fix writing too many 1 bits for the reserved fields

2022-05-09 Thread rcombs
From: rcombs Signed-off-by: rcombs --- libavcodec/videotoolbox.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/videotoolbox.c b/libavcodec/videotoolbox.c index c95c53fcf0..921fed9619 100644 --- a/libavcodec/videotoolbox.c +++ b/libavcodec/videotoolbox.c

[FFmpeg-devel] [PATCH 3/6] lavc/videotoolboxdec: fix generating HEVC general_profile_compatibility_flags

2022-05-09 Thread rcombs
From: rcombs We store this as an array of bools, not a bitfield. Signed-off-by: rcombs --- libavcodec/videotoolbox.c | 11 ++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/libavcodec/videotoolbox.c b/libavcodec/videotoolbox.c index a1933f03f2..c95c53fcf0 100644 --- a

[FFmpeg-devel] [PATCH 2/6] lavc/videotoolboxdec: fix escaping sequential zero sequences

2022-05-09 Thread rcombs
From: rcombs This ensure that e.g. 00 becomes 0300 000300, rather than 0300 . Signed-off-by: rcombs --- libavcodec/videotoolbox.c | 7 +++ 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/libavcodec/videotoolbox.c b/libavcodec/videotoolbox.c index

[FFmpeg-devel] [PATCH 1/6] lavc/videotoolboxdec: warn on nonzero status in the callback

2022-05-09 Thread rcombs
From: rcombs Signed-off-by: rcombs --- libavcodec/videotoolbox.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/videotoolbox.c b/libavcodec/videotoolbox.c index 9083f6ff29..7c4c4c6e1b 100644 --- a/libavcodec/videotoolbox.c +++ b/libavcodec/videotoolbox.c

[FFmpeg-devel] [PATCH 12/15] lavf/mp3enc: use codec descs for query_codec

2020-09-09 Thread rcombs
--- libavformat/mp3enc.c | 9 +++-- 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/libavformat/mp3enc.c b/libavformat/mp3enc.c index a3586e1f86..eb8cc2e22f 100644 --- a/libavformat/mp3enc.c +++ b/libavformat/mp3enc.c @@ -489,12 +489,9 @@ static int mp3_write_trailer(struct AVFor

[FFmpeg-devel] [PATCH 11/15] lavf/flacenc: use codec-desc-provided MIME types

2020-09-09 Thread rcombs
--- libavformat/flacenc.c | 11 +++ 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/libavformat/flacenc.c b/libavformat/flacenc.c index b947a3b067..ebb0ffb967 100644 --- a/libavformat/flacenc.c +++ b/libavformat/flacenc.c @@ -80,22 +80,17 @@ static int flac_write_picture(stru

[FFmpeg-devel] [PATCH 03/15] lavc/codec_desc: add new TTF and OTF MIME types

2020-09-09 Thread rcombs
--- libavcodec/codec_desc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c index 49a00ad264..72ecc1012b 100644 --- a/libavcodec/codec_desc.c +++ b/libavcodec/codec_desc.c @@ -3343,7 +3343,7 @@ static const AVCodecDescriptor

[FFmpeg-devel] [PATCH 10/15] lavf/flac_picture: use avcodec_descriptor_get_by_mime_type

2020-09-09 Thread rcombs
--- libavformat/flac_picture.c | 11 +++ 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/libavformat/flac_picture.c b/libavformat/flac_picture.c index 53e24b28b7..3e684b58a3 100644 --- a/libavformat/flac_picture.c +++ b/libavformat/flac_picture.c @@ -31,7 +31,7 @@ int ff_f

[FFmpeg-devel] [PATCH 07/15] lavf/matroskadec: use avcodec_descriptor_get_by_mime_type

2020-09-09 Thread rcombs
--- libavformat/matroskadec.c | 40 ++- 1 file changed, 6 insertions(+), 34 deletions(-) diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c index b1ef344aa7..71debe692a 100644 --- a/libavformat/matroskadec.c +++ b/libavformat/matroskadec.c @@ -7

[FFmpeg-devel] [PATCH 01/15] lavc/codec_desc: add MIME type to AV_CODEC_ID_TEXT

2020-09-09 Thread rcombs
--- libavcodec/codec_desc.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c index 9e73dcba27..3dee640360 100644 --- a/libavcodec/codec_desc.c +++ b/libavcodec/codec_desc.c @@ -3173,6 +3173,7 @@ static const AVCodecDescriptor codec_descriptors[]

[FFmpeg-devel] [PATCH 08/15] lavf/id3v2enc: use codec-desc-provided MIME types

2020-09-09 Thread rcombs
--- libavformat/id3v2enc.c | 11 +++ 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/libavformat/id3v2enc.c b/libavformat/id3v2enc.c index 5d821ea4db..a7f251652f 100644 --- a/libavformat/id3v2enc.c +++ b/libavformat/id3v2enc.c @@ -352,23 +352,18 @@ int ff_id3v2_write_apic(AVF

[FFmpeg-devel] [PATCH 15/15] lavf: remove internal CodecMime type

2020-09-09 Thread rcombs
These use the global codec descriptor registry now. --- libavformat/internal.h | 5 - 1 file changed, 5 deletions(-) diff --git a/libavformat/internal.h b/libavformat/internal.h index 17a6ab07d3..7ae8142e5b 100644 --- a/libavformat/internal.h +++ b/libavformat/internal.h @@ -44,11 +44,6 @@ ty

[FFmpeg-devel] [PATCH 09/15] lavf/id3v2: use avcodec_descriptor_get_by_mime_type

2020-09-09 Thread rcombs
--- libavformat/id3v2.c | 12 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/libavformat/id3v2.c b/libavformat/id3v2.c index cecd9b9f6d..72a10bd1e1 100644 --- a/libavformat/id3v2.c +++ b/libavformat/id3v2.c @@ -585,7 +585,7 @@ static void read_apic(AVFormatContext *s, A

[FFmpeg-devel] [PATCH 14/15] lavf: remove ff_id3v2_mime_tags

2020-09-09 Thread rcombs
The ID3 spec doesn't list any particular set of allowed types, it only suggests using PNG or JPEG for compatibility. --- libavformat/id3v2.c | 12 libavformat/id3v2.h | 2 -- 2 files changed, 14 deletions(-) diff --git a/libavformat/id3v2.c b/libavformat/id3v2.c index 72a10bd1e1..34

[FFmpeg-devel] [PATCH 05/15] lavf/matroskaenc: remove text/plain special-case

2020-09-09 Thread rcombs
--- libavformat/matroskaenc.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c index 233c472b8f..d9caa3e728 100644 --- a/libavformat/matroskaenc.c +++ b/libavformat/matroskaenc.c @@ -1706,10 +1706,8 @@ static const char *g

[FFmpeg-devel] [PATCH 13/15] lavf/asfdec: use avcodec_descriptor_get_by_mime_type

2020-09-09 Thread rcombs
--- libavformat/asfdec_f.c | 11 +++ libavformat/asfdec_o.c | 11 +++ 2 files changed, 6 insertions(+), 16 deletions(-) diff --git a/libavformat/asfdec_f.c b/libavformat/asfdec_f.c index e9ddca7151..c35b81550b 100644 --- a/libavformat/asfdec_f.c +++ b/libavformat/asfdec_f.c @@ -21

[FFmpeg-devel] [PATCH 06/15] lavc/codec_desc: add avcodec_descriptor_get_by_mime_type

2020-09-09 Thread rcombs
--- libavcodec/codec_desc.c | 41 + libavcodec/codec_desc.h | 12 libavcodec/version.h| 2 +- 3 files changed, 54 insertions(+), 1 deletion(-) diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c index ad044318c7..61b7f8d74f 1006

[FFmpeg-devel] [PATCH 04/15] lavc: add new font pseudo-codecs

2020-09-09 Thread rcombs
--- libavcodec/codec_desc.c | 28 libavcodec/codec_id.h | 4 2 files changed, 32 insertions(+) diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c index 72ecc1012b..ad044318c7 100644 --- a/libavcodec/codec_desc.c +++ b/libavcodec/codec_desc.c @@ -34

[FFmpeg-devel] [PATCH 02/15] lavc/codec_desc: add additional JPEG and BMP MIME types

2020-09-09 Thread rcombs
--- libavcodec/codec_desc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c index 3dee640360..49a00ad264 100644 --- a/libavcodec/codec_desc.c +++ b/libavcodec/codec_desc.c @@ -82,7 +82,7 @@ static const AVCodecDescriptor cod

[FFmpeg-devel] [PATCH] lavu: make AV_TIME_BASE_Q work in C++ code

2020-06-24 Thread rcombs
--- libavutil/avutil.h | 4 1 file changed, 4 insertions(+) diff --git a/libavutil/avutil.h b/libavutil/avutil.h index 4d633156d1..c11b33f466 100644 --- a/libavutil/avutil.h +++ b/libavutil/avutil.h @@ -257,7 +257,11 @@ const char *av_get_media_type_string(enum AVMediaType media_type); *

[FFmpeg-devel] [PATCH 1/5] lavf: matroska subtitle muxer

2020-06-17 Thread rcombs
--- configure | 1 + libavformat/allformats.c | 1 + libavformat/matroskaenc.c | 30 ++ libavformat/version.h | 4 ++-- 4 files changed, 34 insertions(+), 2 deletions(-) diff --git a/configure b/configure index 7495f35faa..28686ce2e8 100755 ---

[FFmpeg-devel] [PATCH 2/5] lavf/webvtt: preserve comments

2020-06-17 Thread rcombs
--- libavcodec/avpacket.c | 1 + libavcodec/packet.h | 6 ++ libavformat/webvttdec.c | 25 ++--- libavformat/webvttenc.c | 10 -- 4 files changed, 37 insertions(+), 5 deletions(-) diff --git a/libavcodec/avpacket.c b/libavcodec/avpacket.c index dce26cb31a..

[FFmpeg-devel] [PATCH 4/5] lavf/matroskaenc: mux WebVTT using standard (non-WebM) formatting

2020-06-17 Thread rcombs
--- libavformat/matroskaenc.c | 30 -- 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c index 63d6b50e6a..94e6cc542a 100644 --- a/libavformat/matroskaenc.c +++ b/libavformat/matroskaenc.c @@ -2117,22 +2

[FFmpeg-devel] [PATCH 5/5] lavf/webvttdec: ignore unrecognized blocks

2020-06-17 Thread rcombs
The WebVTT spec expects this behavior and it fixes some files --- libavformat/webvttdec.c | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/libavformat/webvttdec.c b/libavformat/webvttdec.c index 38c281fe00..2e832b86eb 100644 --- a/libavformat/webvttdec.c +++ b/libavform

[FFmpeg-devel] [PATCH 3/5] lavf/matroskadec: support standard (non-WebM) WebVTT formatting

2020-06-17 Thread rcombs
Fixes ticket #5641 --- libavformat/matroska.c| 11 ++-- libavformat/matroskadec.c | 111 -- 2 files changed, 77 insertions(+), 45 deletions(-) diff --git a/libavformat/matroska.c b/libavformat/matroska.c index 7c56aba403..962fa496f4 100644 --- a/libavforma

[FFmpeg-devel] [PATCH 2/5] lavc: add avpriv_h264_get_profile

2020-06-11 Thread rcombs
--- libavcodec/h264_parse.c | 21 + libavcodec/h264_parse.h | 2 ++ libavcodec/version.h| 2 +- 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/libavcodec/h264_parse.c b/libavcodec/h264_parse.c index 352ffea948..3069579926 100644 --- a/libavcodec/h264_pars

[FFmpeg-devel] [PATCH 5/5] lavf/dashdec: don't require opening all playlists during read_header

2020-06-11 Thread rcombs
This improves startup performance massively when the consumer doesn't make a call to avformat_find_stream_info(). Also makes the requirement that each rendition only have 1 stream more clear (this is required by DASH), and generally improves error handling. --- libavformat/dashdec.c | 283

[FFmpeg-devel] [PATCH 4/5] lavf/dashdec: improve memory handling

2020-06-11 Thread rcombs
- Fixes a couple leaks - Adds an av_freep equivalent for libxml buffers - Avoids some redundant copying --- libavformat/dashdec.c | 44 +++ 1 file changed, 24 insertions(+), 20 deletions(-) diff --git a/libavformat/dashdec.c b/libavformat/dashdec.c index c9

[FFmpeg-devel] [PATCH 1/5] lavf/dashdec: fix 'adaption' typo

2020-06-11 Thread rcombs
--- libavformat/dashdec.c | 96 +-- 1 file changed, 48 insertions(+), 48 deletions(-) diff --git a/libavformat/dashdec.c b/libavformat/dashdec.c index 1bd070c7cb..c94ce2caca 100644 --- a/libavformat/dashdec.c +++ b/libavformat/dashdec.c @@ -148,7 +148,7 @@

[FFmpeg-devel] [PATCH 3/5] lavc/h264dec: loosen new-extradata check

2020-06-11 Thread rcombs
--- libavcodec/h264dec.c | 13 ++--- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/libavcodec/h264dec.c b/libavcodec/h264dec.c index 6270ea80df..0d7492cfad 100644 --- a/libavcodec/h264dec.c +++ b/libavcodec/h264dec.c @@ -988,6 +988,8 @@ static int h264_decode_frame(AVCodecC

[FFmpeg-devel] [PATCH] configure: allow OpenSSL>=3.0.0 with GPLv3

2020-06-09 Thread rcombs
--- configure | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/configure b/configure index 8569a60bf8..a525611cc8 100755 --- a/configure +++ b/configure @@ -1731,7 +1731,6 @@ EXTERNAL_LIBRARY_GPL_LIST=" EXTERNAL_LIBRARY_NONFREE_LIST=" decklink libfdk_aac -open

[FFmpeg-devel] [PATCH] configure: allow OpenSSL>=3.0.0 with GPL

2020-06-08 Thread rcombs
--- configure | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/configure b/configure index 8569a60bf8..cbe8b25001 100755 --- a/configure +++ b/configure @@ -1731,7 +1731,6 @@ EXTERNAL_LIBRARY_GPL_LIST=" EXTERNAL_LIBRARY_NONFREE_LIST=" decklink libfdk_aac -opens

[FFmpeg-devel] [PATCH 4/4] lavf/tls: verify TLS connections by default whenever possible

2020-05-30 Thread rcombs
--- libavformat/tls.c | 13 + libavformat/tls.h | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/libavformat/tls.c b/libavformat/tls.c index 10e0792e29..3cf24ca056 100644 --- a/libavformat/tls.c +++ b/libavformat/tls.c @@ -64,6 +64,19 @@ int ff_tls_open_underlyin

[FFmpeg-devel] [PATCH 3/4] lavf/tls: use AV_OPT_TYPE_BOOL

2020-05-30 Thread rcombs
--- libavformat/tls.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavformat/tls.h b/libavformat/tls.h index beb19d6d55..6c2d025f6c 100644 --- a/libavformat/tls.h +++ b/libavformat/tls.h @@ -45,10 +45,10 @@ typedef struct TLSShared { #define TLS_COMMON_OPTIONS(pstruct

[FFmpeg-devel] [PATCH 1/4] lavf/tls_openssl: add support for verifying the server hostname on >=1.1.0

2020-05-30 Thread rcombs
--- libavformat/tls_openssl.c | 14 +++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/libavformat/tls_openssl.c b/libavformat/tls_openssl.c index 002197fa76..d66845cf48 100644 --- a/libavformat/tls_openssl.c +++ b/libavformat/tls_openssl.c @@ -272,8 +272,6 @@ static int

[FFmpeg-devel] [PATCH 2/4] lavf/tls_openssl: use the system cert store by default

2020-05-30 Thread rcombs
--- libavformat/tls_openssl.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libavformat/tls_openssl.c b/libavformat/tls_openssl.c index d66845cf48..b44dd3136d 100644 --- a/libavformat/tls_openssl.c +++ b/libavformat/tls_openssl.c @@ -259,6 +259,9 @@ static int tls_open(URLContext *h, cons

[FFmpeg-devel] [PATCH 2/4] lavf/webvtt: preserve comments

2020-05-28 Thread rcombs
--- libavcodec/avpacket.c | 1 + libavcodec/packet.h | 6 ++ libavformat/webvttdec.c | 25 ++--- libavformat/webvttenc.c | 10 -- 4 files changed, 37 insertions(+), 5 deletions(-) diff --git a/libavcodec/avpacket.c b/libavcodec/avpacket.c index 033f2d8f26..

[FFmpeg-devel] [PATCH 4/4] lavf/matroskaenc: mux WebVTT using standard (non-WebM) formatting

2020-05-28 Thread rcombs
--- libavformat/matroskaenc.c | 29 +++-- 1 file changed, 23 insertions(+), 6 deletions(-) diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c index 1f7a9528de..61b0fe9f51 100644 --- a/libavformat/matroskaenc.c +++ b/libavformat/matroskaenc.c @@ -2117,20 +21

[FFmpeg-devel] [PATCH 3/4] lavf/matroskadec: support standard (non-WebM) WebVTT formatting

2020-05-28 Thread rcombs
Fixes ticket #5641 --- libavformat/matroska.c| 11 ++-- libavformat/matroskadec.c | 111 -- 2 files changed, 77 insertions(+), 45 deletions(-) diff --git a/libavformat/matroska.c b/libavformat/matroska.c index 7c56aba403..962fa496f4 100644 --- a/libavforma

[FFmpeg-devel] [PATCH 1/4] lavf: matroska subtitle muxer

2020-05-28 Thread rcombs
--- configure | 1 + libavformat/allformats.c | 1 + libavformat/matroskaenc.c | 30 ++ libavformat/version.h | 2 +- 4 files changed, 33 insertions(+), 1 deletion(-) diff --git a/configure b/configure index 8569a60bf8..9929c29006 100755 --- a/c

[FFmpeg-devel] [PATCH 3/4] lavf/matroskadec: support standard (non-WebM) WebVTT formatting

2020-05-28 Thread rcombs
Fixes ticket #5641 --- libavformat/matroska.c| 11 ++-- libavformat/matroskadec.c | 111 -- 2 files changed, 77 insertions(+), 45 deletions(-) diff --git a/libavformat/matroska.c b/libavformat/matroska.c index 7c56aba403..962fa496f4 100644 --- a/libavforma

[FFmpeg-devel] [PATCH 4/4] lavf/matroskaenc: mux WebVTT using standard (non-WebM) formatting

2020-05-28 Thread rcombs
--- libavformat/matroskaenc.c | 33 + 1 file changed, 25 insertions(+), 8 deletions(-) diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c index 1f7a9528de..d34a47e646 100644 --- a/libavformat/matroskaenc.c +++ b/libavformat/matroskaenc.c @@ -1351,7

[FFmpeg-devel] [PATCH 2/4] lavf/webvtt: preserve comments

2020-05-28 Thread rcombs
--- libavcodec/avpacket.c | 1 + libavcodec/packet.h | 6 ++ libavformat/webvttdec.c | 25 ++--- libavformat/webvttenc.c | 10 -- 4 files changed, 37 insertions(+), 5 deletions(-) diff --git a/libavcodec/avpacket.c b/libavcodec/avpacket.c index 033f2d8f26..

[FFmpeg-devel] [PATCH 1/4] lavf: matroska subtitle muxer

2020-05-28 Thread rcombs
--- configure | 1 + libavformat/allformats.c | 1 + libavformat/matroskaenc.c | 30 ++ libavformat/version.h | 2 +- 4 files changed, 33 insertions(+), 1 deletion(-) diff --git a/configure b/configure index 8569a60bf8..9929c29006 100755 --- a/c

[FFmpeg-devel] [PATCH] compat/cuda/ptx2c: remove shell loop; fix BSD sed compat

2020-05-26 Thread rcombs
This improves build times dramatically, and fixes building on macOS --- compat/cuda/ptx2c.sh | 8 +++- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/compat/cuda/ptx2c.sh b/compat/cuda/ptx2c.sh index 0750e7a3b7..c41875a2d4 100755 --- a/compat/cuda/ptx2c.sh +++ b/compat/cuda/ptx2

[FFmpeg-devel] [PATCH 2/2] compat/cuda/ptx2c: fix BSD sed compatibility

2020-05-23 Thread rcombs
This fixes cross-compiling from macOS to other platforms --- compat/cuda/ptx2c.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/compat/cuda/ptx2c.sh b/compat/cuda/ptx2c.sh index 435a9b4b6c..c41875a2d4 100755 --- a/compat/cuda/ptx2c.sh +++ b/compat/cuda/ptx2c.sh @@ -28,7 +28,7

[FFmpeg-devel] [PATCH 1/2] compat/cuda/ptx2c: remove shell loop

2020-05-23 Thread rcombs
This improves build times dramatically --- compat/cuda/ptx2c.sh | 8 +++- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/compat/cuda/ptx2c.sh b/compat/cuda/ptx2c.sh index 0750e7a3b7..435a9b4b6c 100755 --- a/compat/cuda/ptx2c.sh +++ b/compat/cuda/ptx2c.sh @@ -27,10 +27,8 @@ IN="$

[FFmpeg-devel] [PATCH 1/3] lavf/format: handle max probe buffer sizes <2048

2020-05-22 Thread rcombs
This can be useful in chained demuxers, where the header size is known. --- libavformat/format.c | 7 +-- 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/libavformat/format.c b/libavformat/format.c index c47490c8eb..7309b0019b 100644 --- a/libavformat/format.c +++ b/libavformat/fo

[FFmpeg-devel] [PATCH 2/3] lavf/movdec: allow setting the header size in advance

2020-05-22 Thread rcombs
This is useful for chained demuxers, to avoid reading past the end of a shared initialization segment and into the first data segment unnecessarily. --- libavformat/isom.h | 1 + libavformat/mov.c | 10 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/libavformat/isom.h

[FFmpeg-devel] [PATCH 3/3] lavf/dashdec: avoid reading the first data segment in read_header

2020-05-22 Thread rcombs
This reduces the number of requests that have to be made during startup. --- libavformat/dashdec.c | 41 ++--- 1 file changed, 26 insertions(+), 15 deletions(-) diff --git a/libavformat/dashdec.c b/libavformat/dashdec.c index ec2aadcee3..1bd070c7cb 100644 --- a

[FFmpeg-devel] [PATCH] lavf/dashdec: support larger manifests

2020-05-02 Thread rcombs
--- libavformat/dashdec.c | 29 +++-- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/libavformat/dashdec.c b/libavformat/dashdec.c index 5ba7feb245..bde4b0846d 100644 --- a/libavformat/dashdec.c +++ b/libavformat/dashdec.c @@ -29,6 +29,8 @@ #include "dash.

Re: [FFmpeg-devel] [PATCH] lavf/mux: bypass interleave delay early when waiting on subtitle streams

2020-03-19 Thread rcombs
> On Mar 12, 2020, at 02:51, Andreas Rheinhardt > wrote: > > rcombs: >> This avoids long delays when converting live streams that have sparse >> subtitles >> --- >> libavformat/avformat.h | 9 + >> libavformat/mux.c | 2

[FFmpeg-devel] [PATCH] lavf/mux: bypass interleave delay early when waiting on subtitle streams

2020-03-11 Thread rcombs
This avoids long delays when converting live streams that have sparse subtitles --- libavformat/avformat.h | 9 + libavformat/mux.c | 25 + libavformat/options_table.h | 1 + libavformat/version.h | 2 +- 4 files changed, 32 insertions(+), 5

[FFmpeg-devel] [PATCH] configure: unmark FDKAAC as nonfree

2020-02-18 Thread rcombs
Red Hat legal believes the FDK license to be free when using their stripped version (https://github.com/UnitedRPMs/fdk-aac-free/releases), as the patent clause is a no-op now that the relevant patents on that version are expired: https://bugzilla.redhat.com/show_bug.cgi?id=1501522 Plex legal belie

[FFmpeg-devel] [PATCH 2/3] lavf/hlsdec: use public avformat_flush function

2020-02-18 Thread rcombs
--- libavformat/hls.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavformat/hls.c b/libavformat/hls.c index 1f58e745a7..8181a631b6 100644 --- a/libavformat/hls.c +++ b/libavformat/hls.c @@ -2295,7 +2295,7 @@ static int hls_read_seek(AVFormatContext *s, int stream_index,

[FFmpeg-devel] [PATCH 3/3] lavf/matroskadec: add read_flush function

2020-02-18 Thread rcombs
--- libavformat/matroskadec.c | 23 +-- 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c index 4d7fdab99f..68e424992a 100644 --- a/libavformat/matroskadec.c +++ b/libavformat/matroskadec.c @@ -3703,6 +3703,21 @

[FFmpeg-devel] [PATCH 1/3] lavf: add read_flush function to AVInputFormat vtable

2020-02-18 Thread rcombs
--- libavformat/avformat.h | 6 ++ libavformat/utils.c| 4 libavformat/version.h | 4 ++-- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 9b9b634ec3..1412119342 100644 --- a/libavformat/avformat.h +++ b/libavforma

Re: [FFmpeg-devel] [PATCH] lavc/ac3dec: disable DRC by default

2020-02-01 Thread rcombs
> On Feb 1, 2020, at 15:55, Derek Buitenhuis wrote: > >>> and the defacto way to handle decoding AC-3. >> >> Is it, though? My understanding is that AV receivers usually only enable AC3 >> DRC in "night mode" or the like, and few even provide a fully-tunable >> setting for it. Apple's decode

Re: [FFmpeg-devel] [PATCH] lavc/ac3dec: disable DRC by default

2020-02-01 Thread rcombs
> On Feb 1, 2020, at 13:43, Derek Buitenhuis wrote: > > On 01/02/2020 19:34, rcombs wrote: >> This issue has been argued before, with the status quo being preserved under >> the logic that the spec says this parameter is supposed to default to 1, >> and that we shoul

[FFmpeg-devel] [PATCH] lavc/ac3dec: disable DRC by default

2020-02-01 Thread rcombs
This issue has been argued before, with the status quo being preserved under the logic that the spec says this parameter is supposed to default to 1, and that we should follow the spec. The spec was misguided, and thus so was blindly following it. The (E-)AC3 DRC architecture is a clever optimizat

[FFmpeg-devel] [PATCH] lavc/ac3dec: disable DRC by default

2020-01-29 Thread rcombs
This issue has been argued before, with the status quo being preserved under the logic that the spec says this parameter is supposed to default to 1, and that we should follow the spec. The spec was misguided, and thus so was blindly following it. The (E-)AC3 DRC architecture is a clever optimizat

Re: [FFmpeg-devel] [PATCH 02/13] lavc/ass: add support for configuring default style via AVOptions

2020-01-28 Thread rcombs
> On Jan 27, 2020, at 08:28, Moritz Barsnick wrote: > > On Fri, Jan 24, 2020 at 20:01:49 -0600, rcombs wrote: >> +static int invert_ass_alpha(uint32_t c) >> +{ >> +uint32_t a = c >> 24; >> +return ((255 - a) << 24) | (c & 0xff); >

[FFmpeg-devel] [PATCH 08/13] lavc/samidec: add support for configuring default style via AVOptions

2020-01-24 Thread rcombs
--- libavcodec/textdec.c | 8 +--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/libavcodec/textdec.c b/libavcodec/textdec.c index 964da72ad5..72eb7c4795 100644 --- a/libavcodec/textdec.c +++ b/libavcodec/textdec.c @@ -30,15 +30,17 @@ typedef struct { AVClass *class; +

[FFmpeg-devel] [PATCH 10/13] lavc/movtextdec: add support for configuring default style via AVOptions

2020-01-24 Thread rcombs
--- libavcodec/movtextdec.c | 9 +++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/libavcodec/movtextdec.c b/libavcodec/movtextdec.c index c38c5edce6..0bb03fc141 100644 --- a/libavcodec/movtextdec.c +++ b/libavcodec/movtextdec.c @@ -86,6 +86,9 @@ typedef struct { } TextWrapB

[FFmpeg-devel] [PATCH 05/13] lavc/realtextdec: add support for configuring default style via AVOptions

2020-01-24 Thread rcombs
--- libavcodec/realtextdec.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libavcodec/realtextdec.c b/libavcodec/realtextdec.c index 5084781123..e888946f13 100644 --- a/libavcodec/realtextdec.c +++ b/libavcodec/realtextdec.c @@ -74,13 +74,16 @@ static int realtext_decode_

[FFmpeg-devel] [PATCH 12/13] lavc/libzvbi-teletextdec: add support for configuring default style via AVOptions

2020-01-24 Thread rcombs
--- libavcodec/libzvbi-teletextdec.c | 8 ++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/libavcodec/libzvbi-teletextdec.c b/libavcodec/libzvbi-teletextdec.c index 3515f33924..018b350511 100644 --- a/libavcodec/libzvbi-teletextdec.c +++ b/libavcodec/libzvbi-teletextdec.c @@

[FFmpeg-devel] [PATCH 09/13] lavc/mpl2dec: add support for configuring default style via AVOptions

2020-01-24 Thread rcombs
--- libavcodec/mpl2dec.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libavcodec/mpl2dec.c b/libavcodec/mpl2dec.c index 409e4b3708..f426f3080b 100644 --- a/libavcodec/mpl2dec.c +++ b/libavcodec/mpl2dec.c @@ -81,13 +81,16 @@ static int mpl2_decode_frame(AVCodecContext *av

[FFmpeg-devel] [PATCH 06/13] lavc/jacosubdec: add support for configuring default style via AVOptions

2020-01-24 Thread rcombs
--- libavcodec/jacosubdec.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libavcodec/jacosubdec.c b/libavcodec/jacosubdec.c index cdb372af58..b0d8327b35 100644 --- a/libavcodec/jacosubdec.c +++ b/libavcodec/jacosubdec.c @@ -193,13 +193,16 @@ end: return avpkt->size;

[FFmpeg-devel] [PATCH 13/13] lavc: bump micro version

2020-01-24 Thread rcombs
--- libavcodec/version.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/version.h b/libavcodec/version.h index 195e21bfbe..d11beb7885 100644 --- a/libavcodec/version.h +++ b/libavcodec/version.h @@ -29,7 +29,7 @@ #define LIBAVCODEC_VERSION_MAJOR 58 #define LIBA

[FFmpeg-devel] [PATCH 11/13] lavc/samidec: add support for configuring default style via AVOptions

2020-01-24 Thread rcombs
--- libavcodec/samidec.c | 9 +++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/libavcodec/samidec.c b/libavcodec/samidec.c index e32f238c62..8804210700 100644 --- a/libavcodec/samidec.c +++ b/libavcodec/samidec.c @@ -30,12 +30,14 @@ #include "htmlsubtitles.h" typedef str

[FFmpeg-devel] [PATCH 07/13] lavc/subviewerdec: add support for configuring default style via AVOptions

2020-01-24 Thread rcombs
--- libavcodec/subviewerdec.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libavcodec/subviewerdec.c b/libavcodec/subviewerdec.c index 805c7dd547..7fbcf54d4c 100644 --- a/libavcodec/subviewerdec.c +++ b/libavcodec/subviewerdec.c @@ -65,13 +65,16 @@ static int subviewer_d

[FFmpeg-devel] [PATCH 04/13] lavc/webvttdec: add support for configuring default style via AVOptions

2020-01-24 Thread rcombs
--- libavcodec/webvttdec.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libavcodec/webvttdec.c b/libavcodec/webvttdec.c index 7b2d1750de..494de08884 100644 --- a/libavcodec/webvttdec.c +++ b/libavcodec/webvttdec.c @@ -98,13 +98,16 @@ static int webvtt_decode_frame(AVCode

  1   2   >