Re: [FFmpeg-devel] [PATCH] lavf/movdec: add position_order option

2019-09-22 Thread Rodger Combs
> On Sep 22, 2019, at 03:19, Andreas Rheinhardt > wrote: > > Rodger Combs: >> This allows reading packets linearly, which prevents large numbers of >> unnecessary seeks in poorly-interleaved files with consumer software that >> handles those cases well on its

[FFmpeg-devel] [PATCH] lavf/mp3dec: increase probe score of buffers entirely composed of valid packets

2019-09-21 Thread Rodger Combs
Fixes some files misdetecting as MPEG PS --- libavformat/mp3dec.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavformat/mp3dec.c b/libavformat/mp3dec.c index 258f19174b..d9aaee50b9 100644 --- a/libavformat/mp3dec.c +++ b/libavformat/mp3dec.c @@ -100,13 +100,13 @@

[FFmpeg-devel] [PATCH] lavf/tcp: add resolve_hosts option

2019-09-21 Thread Rodger Combs
This can be used to resolve particular hosts offline without affecting HTTP headers, TLS SNI, or cross-domain redirects. It works similarly to curl's --resolve option, but without port-specific handling. --- libavformat/tcp.c | 27 +++ libavformat/version.h | 2 +- 2

[FFmpeg-devel] [PATCH] lavf/movdec: add position_order option

2019-09-21 Thread Rodger Combs
This allows reading packets linearly, which prevents large numbers of unnecessary seeks in poorly-interleaved files with consumer software that handles those cases well on its own. --- libavformat/isom.h| 1 + libavformat/mov.c | 11 +++ libavformat/version.h | 2 +- 3 files

Re: [FFmpeg-devel] [PATCH] lavu/hwcontext_qsv: update crop width/height when mapping frames

2019-09-13 Thread Rodger Combs
'[0:0]hwmap=derive_device=qsv[0];[0]scale_qsv=format=nv12[1]' -map[1] -codec:0 h264_qsv output.mkv > On Sep 12, 2019, at 07:59, Li, Zhong wrote: > >> From: ffmpeg-devel On Behalf Of Rodger >> Combs >> Sent: Thursday, September 12, 2019 11:59 AM >> To: ffmp

[FFmpeg-devel] [PATCH] lavu/hwcontext_qsv: update crop width/height when mapping frames

2019-09-11 Thread Rodger Combs
This fixes an issue where the context could be configured with one resolution, but incoming frames could have another, and our output AVFrames wouldn't match the underlying surfaces' resolution, which is usually the value that MFX code uses. In particular, this would happen when mapping from

[FFmpeg-devel] [PATCH] lavc/videotoolboxdec: fix crop handling when multithreaded

2019-09-06 Thread Rodger Combs
This was partially fixed by 233cd89, but it made changes to AVFrame fields from within end_frame, which doesn't work consistently when multithreading is enabled. This is what the post_process function is for. --- libavcodec/videotoolbox.c | 10 +- 1 file changed, 5 insertions(+), 5

[FFmpeg-devel] [PATCH 2/2] lavfi/vf_thumbnail_cuda: fix operator precedence bug

2019-07-30 Thread Rodger Combs
Discovered via a warning when building with clang --- libavfilter/vf_thumbnail_cuda.cu | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavfilter/vf_thumbnail_cuda.cu b/libavfilter/vf_thumbnail_cuda.cu index c73e49fbc6..d4d4d791f6 100644 --- a/libavfilter/vf_thumbnail_cuda.cu

[FFmpeg-devel] [PATCH 1/2] build: add support for building CUDA files with clang

2019-07-30 Thread Rodger Combs
h new file mode 100644 index 00..dbe50f8711 --- /dev/null +++ b/compat/cuda/cuda_runtime.h @@ -0,0 +1,131 @@ +/* + * Minimum CUDA compatibility definitions header + * + * Copyright (c) 2019 Rodger Combs + * + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can re

[FFmpeg-devel] [PATCH 2/6] lavf/tls_apple: factor loading SecItemIdentity into its own (Mac-only) function

2019-06-11 Thread Rodger Combs
This allows us to easily reuse this function with NWF --- libavformat/tls_apple.c | 34 +- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/libavformat/tls_apple.c b/libavformat/tls_apple.c index 37380541b1..2ff6622565 100644 ---

[FFmpeg-devel] [PATCH 5/6] lavf/tls: factor ff_tls_process_underlying into its own function

2019-06-11 Thread Rodger Combs
--- libavformat/tls.c | 45 +++-- libavformat/tls.h | 1 + 2 files changed, 28 insertions(+), 18 deletions(-) diff --git a/libavformat/tls.c b/libavformat/tls.c index 10e0792e29..ccd551061d 100644 --- a/libavformat/tls.c +++ b/libavformat/tls.c @@ -51,6

[FFmpeg-devel] [PATCH 3/6] lavf/tls_apple: fix crash on unexpected PEM types

2019-06-11 Thread Rodger Combs
--- libavformat/tls_apple.c | 6 ++ 1 file changed, 6 insertions(+) diff --git a/libavformat/tls_apple.c b/libavformat/tls_apple.c index 2ff6622565..37d63f3b27 100644 --- a/libavformat/tls_apple.c +++ b/libavformat/tls_apple.c @@ -165,6 +165,12 @@ static int load_identity(URLContext *h,

[FFmpeg-devel] [PATCH 6/6] lavf/tls_apple: add support for the new Network framework

2019-06-11 Thread Rodger Combs
Network.framework was added in macOS 10.14/iOS 12, replacing Secure Transport. Its TLS functionality is (currently) implemented on top of BoringSSL. Secure Transport is deprecated as of macOS 10.15/iOS 13. It'll likely remain available for the forseeable future, but it's considered "legacy" and

[FFmpeg-devel] [PATCH 4/6] lavf/tls_apple: link to SecIdentityCreate weakly

2019-06-11 Thread Rodger Combs
This is a private API, so it might go away in a future macOS version. Linking to it weakly means that if it does, we won't crash during symbol lookup. --- libavformat/tls_apple.c | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/libavformat/tls_apple.c

[FFmpeg-devel] [PATCH 1/6] lavf: rename tls_securetransport to tls_apple

2019-06-11 Thread Rodger Combs
--- libavformat/Makefile | 2 +- libavformat/{tls_securetransport.c => tls_apple.c} | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename libavformat/{tls_securetransport.c => tls_apple.c} (100%) diff --git a/libavformat/Makefile b/libavformat/Makefile index

[FFmpeg-devel] [PATCH] lavf/mp3dec: increase probe score of buffers entirely composed of valid packets

2019-03-16 Thread Rodger Combs
Fixes some files misdetecting as MPEG PS --- libavformat/mp3dec.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavformat/mp3dec.c b/libavformat/mp3dec.c index ef884934e1..81da0c6090 100644 --- a/libavformat/mp3dec.c +++ b/libavformat/mp3dec.c @@ -100,13 +100,13 @@

[FFmpeg-devel] [PATCH 2/2] lavf/movdec: use a more appropriate error code for bad trun atoms

2019-03-16 Thread Rodger Combs
--- libavformat/mov.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavformat/mov.c b/libavformat/mov.c index 0dfee2e7c4..9ed109962f 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -4785,7 +4785,7 @@ static int mov_read_trun(MOVContext *c, AVIOContext *pb,

[FFmpeg-devel] [PATCH 1/2] lavf/movdec: fix demuxing files with 0-entry trun atoms

2019-03-16 Thread Rodger Combs
Regressed in 4a9d32baca3af0d1831f9556a922c7ab5b426b10 --- libavformat/mov.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libavformat/mov.c b/libavformat/mov.c index a7d444b0ee..0dfee2e7c4 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -4739,6 +4739,8 @@ static int

[FFmpeg-devel] [PATCH] lavf/hlsdec: fix support for large initialization segments

2019-02-28 Thread Rodger Combs
--- libavformat/hls.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavformat/hls.c b/libavformat/hls.c index fc9110356d..c56ead507b 100644 --- a/libavformat/hls.c +++ b/libavformat/hls.c @@ -1553,7 +1553,7 @@ reload: if (v->init_sec_buf_read_offset <

[FFmpeg-devel] [PATCH 3/3] tests/checkasm: add vf_yadif tests

2019-01-22 Thread Rodger Combs
--- libavfilter/vf_yadif.c| 23 --- libavfilter/yadif.h | 2 + tests/checkasm/Makefile | 1 + tests/checkasm/checkasm.c | 3 + tests/checkasm/checkasm.h | 1 + tests/checkasm/vf_yadif.c | 137 ++ 6 files changed, 158 insertions(+), 9

[FFmpeg-devel] [PATCH 2/3] FATE/filter-video: fix high-bit-depth yadif tests

2019-01-22 Thread Rodger Combs
These previously upconverted the video _after_ applying the filter, so they didn't actually test the high-bit-depth code paths at all, which is why the PMINSD issue in the previous commit wasn't caught. I also added variants with the spatial check enabled and disabled, so both of those paths are

[FFmpeg-devel] [PATCH 1/3] lavu/x86util: make imprecise PMINSD implementation opt-in

2019-01-22 Thread Rodger Combs
This caused rounding errors when values that can't be expressed exactly as 32-bit floats were passed in, which could happen in 16-bit yadif swscale's call is opted in, under the assumption that it never uses values large enough to run into this (i.e. within 2^24) --- libavutil/x86/x86util.asm |

Re: [FFmpeg-devel] [PATCH 5/5] lavf/tls: enable server verification by default when not on mbedtls

2019-01-18 Thread Rodger Combs
> On Jan 18, 2019, at 05:41, Carl Eugen Hoyos wrote: > > 2019-01-18 9:46 GMT+01:00, Rodger Combs : >> All other TLS wrappers now have a mechanism to load a system trust store >> by default, without setting the cafile option. For Secure Transport and >> Secure Channe

[FFmpeg-devel] [PATCH 4/5] lavf/tls: apply numerichost check to verifyhost

2019-01-18 Thread Rodger Combs
--- libavformat/tls.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/libavformat/tls.c b/libavformat/tls.c index 10e0792e29..a6dcd3cc96 100644 --- a/libavformat/tls.c +++ b/libavformat/tls.c @@ -80,15 +80,15 @@ int ff_tls_open_underlying(TLSShared *c, URLContext

[FFmpeg-devel] [PATCH 5/5] lavf/tls: enable server verification by default when not on mbedtls

2019-01-18 Thread Rodger Combs
All other TLS wrappers now have a mechanism to load a system trust store by default, without setting the cafile option. For Secure Transport and Secure Channel, it's the OS. For OpenSSL and libtls, it's a path set at compile-time. For GNUTLS, it's either a path set at compile-time, or the OS trust

[FFmpeg-devel] [PATCH 3/5] lavf/tls_openssl: on 1.1 or later, verify the server's hostname

2019-01-18 Thread Rodger Combs
--- libavformat/tls_openssl.c | 22 ++ 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/libavformat/tls_openssl.c b/libavformat/tls_openssl.c index ae3fd6e236..ba233c0229 100644 --- a/libavformat/tls_openssl.c +++ b/libavformat/tls_openssl.c @@ -35,6 +35,7 @@

[FFmpeg-devel] [PATCH 1/5] lavf/tls_openssl: disable obsolete locking code on OpenSSL 1.1 and later

2019-01-18 Thread Rodger Combs
These functions are now all no-ops and locking is handled internally. This fixes a small memory leak on init. --- libavformat/tls_openssl.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libavformat/tls_openssl.c b/libavformat/tls_openssl.c index 7ae71bdaf3..9dd53c6fc0

[FFmpeg-devel] [PATCH 2/5] lavf/tls_openssl: if no CA path is set, use the system default

2019-01-18 Thread Rodger Combs
This is consistent with the other TLS wrappers --- libavformat/tls_openssl.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libavformat/tls_openssl.c b/libavformat/tls_openssl.c index 9dd53c6fc0..ae3fd6e236 100644 --- a/libavformat/tls_openssl.c +++ b/libavformat/tls_openssl.c @@ -253,6

Re: [FFmpeg-devel] [PATCH 3/4] lavf/tls_openssl: on 1.1 or later, verify the server's hostname

2019-01-17 Thread Rodger Combs
> On Jan 17, 2019, at 03:09, Nicolas George wrote: > > Signed PGP part > Rodger Combs (12019-01-17): >> --- >> libavformat/tls_openssl.c | 22 ++ >> 1 file changed, 18 insertions(+), 4 deletions(-) >> >> diff --git a/libavformat

Re: [FFmpeg-devel] [PATCH 1/4] lavf/tls_openssl: silence warning on OpenSSL 1.1 and later

2019-01-17 Thread Rodger Combs
> On Jan 17, 2019, at 03:12, Nicolas George wrote: > > Signed PGP part > Rodger Combs (12019-01-17): >> --- >> libavformat/tls_openssl.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/libavformat/tls_openssl.c b/lib

[FFmpeg-devel] [PATCH 1/4] lavf/tls_openssl: silence warning on OpenSSL 1.1 and later

2019-01-17 Thread Rodger Combs
--- libavformat/tls_openssl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavformat/tls_openssl.c b/libavformat/tls_openssl.c index 7ae71bdaf3..faa5b8636e 100644 --- a/libavformat/tls_openssl.c +++ b/libavformat/tls_openssl.c @@ -102,7 +102,7 @@ void

[FFmpeg-devel] [PATCH 2/4] lavf/tls_openssl: if no CA path is set, use the system default

2019-01-17 Thread Rodger Combs
This is consistent with the other TLS wrappers --- libavformat/tls_openssl.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libavformat/tls_openssl.c b/libavformat/tls_openssl.c index faa5b8636e..493f43e610 100644 --- a/libavformat/tls_openssl.c +++ b/libavformat/tls_openssl.c @@ -253,6

[FFmpeg-devel] [PATCH 4/4] lavf/tls: enable server verification by default when not on mbedtls

2019-01-17 Thread Rodger Combs
All other TLS wrappers now have a mechanism to load a system trust store by default, without setting the cafile option. For Secure Transport and Secure Channel, it's the OS. For OpenSSL and libtls, it's a path set at compile-time. For GNUTLS, it's either a path set at compile-time, or the OS trust

[FFmpeg-devel] [PATCH 3/4] lavf/tls_openssl: on 1.1 or later, verify the server's hostname

2019-01-17 Thread Rodger Combs
--- libavformat/tls_openssl.c | 22 ++ 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/libavformat/tls_openssl.c b/libavformat/tls_openssl.c index 493f43e610..bdc4985bad 100644 --- a/libavformat/tls_openssl.c +++ b/libavformat/tls_openssl.c @@ -35,6 +35,7 @@

[FFmpeg-devel] [PATCH] lavc: vt_hevc: fix crash if vps_list[0] or sps_list[0] are null

2019-01-09 Thread Rodger Combs
Instead of assuming id 0 is used, use the same logic as used for PPS, where all available entries in the list are emitted. --- libavcodec/videotoolbox.c | 86 ++- 1 file changed, 40 insertions(+), 46 deletions(-) diff --git a/libavcodec/videotoolbox.c

[FFmpeg-devel] [PATCH] lavc/samidec: don't error on empty packets

2018-11-30 Thread Rodger Combs
No change to output; just prevents error spam --- libavcodec/samidec.c | 15 ++- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/libavcodec/samidec.c b/libavcodec/samidec.c index e32f238c62..7ea67b5597 100644 --- a/libavcodec/samidec.c +++ b/libavcodec/samidec.c @@

Re: [FFmpeg-devel] [PATCH 1/3] lavf/matroskadec: don't treat I/O errors as EOF

2018-11-28 Thread Rodger Combs
> On Nov 28, 2018, at 13:19, Marton Balint wrote: > > > > On Wed, 28 Nov 2018, Rodger Combs wrote: > >> pb->eof_reached is set on error, so we need to check pb->error, >> even after checking pb->eof_reached or avio_feof(pb), or else we >

[FFmpeg-devel] [PATCH 3/3] lavf/movdec: don't treat I/O errors as EOF

2018-11-27 Thread Rodger Combs
--- libavformat/mov.c | 42 +- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/libavformat/mov.c b/libavformat/mov.c index 542e92ec00..607ce30178 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -645,7 +645,7 @@ static int

[FFmpeg-devel] [PATCH 1/3] lavf/matroskadec: don't treat I/O errors as EOF

2018-11-27 Thread Rodger Combs
pb->eof_reached is set on error, so we need to check pb->error, even after checking pb->eof_reached or avio_feof(pb), or else we can end up returning AVERROR_EOF instead of the actual error code. --- libavformat/matroskadec.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git

[FFmpeg-devel] [PATCH 2/3] lavf/avidec: don't treat I/O errors as EOF

2018-11-27 Thread Rodger Combs
--- libavformat/avidec.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavformat/avidec.c b/libavformat/avidec.c index 3f074795a7..1d131b299c 100644 --- a/libavformat/avidec.c +++ b/libavformat/avidec.c @@ -1383,8 +1383,8 @@ static int ni_prepare_read(AVFormatContext

[FFmpeg-devel] [PATCH] lavf/isom: add "dvhe" fourCC for HEVC

2018-11-05 Thread Rodger Combs
This refers to "Dolby Vision", which can have some additional extensions, but (usually?) is also valid HEVC. --- libavformat/isom.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libavformat/isom.c b/libavformat/isom.c index ca9d22e4f7..fbfa0dc057 100644 --- a/libavformat/isom.c +++

[FFmpeg-devel] [PATCH] lavf/mpegtsdec: fix AVPacket.pos when FEC/DVHS/BDAV data is present

2018-08-30 Thread Rodger Combs
We previously set pos to several bytes before the actual packet sync byte, which meant that seeking to pos relied on resync working, which can fail if there are 0x47 bytes in the additional data. The resync issue should probably also be fixed separately. --- libavformat/mpegts.c | 3 +-- 1 file

Re: [FFmpeg-devel] [PATCH] lavf/mpegts: improve read error handling

2018-08-24 Thread Rodger Combs
> On Aug 24, 2018, at 03:44, Hendrik Leppkes wrote: > > On Fri, Aug 24, 2018 at 5:01 AM myp...@gmail.com <mailto:myp...@gmail.com> > mailto:myp...@gmail.com>> wrote: >> >> On Fri, Aug 24, 2018 at 5:38 AM Rodger Combs wrote: >>> >>

[FFmpeg-devel] [PATCH 1/2] lavc/hevc_mp4toannexb_bsf: don't fail on extradata with too few arrays

2018-08-23 Thread Rodger Combs
I've been given a sample that does this. Not sure exactly why, but the decoder ignores it and plays normally. --- libavcodec/hevc_mp4toannexb_bsf.c | 5 + 1 file changed, 5 insertions(+) diff --git a/libavcodec/hevc_mp4toannexb_bsf.c b/libavcodec/hevc_mp4toannexb_bsf.c index

[FFmpeg-devel] [PATCH 2/2] lavc/hevc_mp4toannexb_bsf: warn if a NAL size would overflow the buffer

2018-08-23 Thread Rodger Combs
This didn't actually cause a buffer overread previously, but it could result in the end of a NAL being filled with zeros silently. --- libavcodec/hevc_mp4toannexb_bsf.c | 5 + 1 file changed, 5 insertions(+) diff --git a/libavcodec/hevc_mp4toannexb_bsf.c b/libavcodec/hevc_mp4toannexb_bsf.c

[FFmpeg-devel] [PATCH] lavf/mpegts: improve read error handling

2018-08-23 Thread Rodger Combs
We previously could fail to check errors entirely, or misinterpret read errors as normal EOFs. --- libavformat/mpegts.c | 13 +++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c index 37a6aa8bff..1350213d39 100644 ---

Re: [FFmpeg-devel] [PATCH] avcodec/videotoolbox: fix kVTCouldNotFindVideoDecoderErr trying to decode HEVC on iOS

2018-04-20 Thread Rodger Combs
If there was a way to indicate this to consumers, or expose an option to turn this off, I'd say it should have that... but there's no good infrastructure to do that in an hwaccel, so whatever. One nit; otherwise LGTM. > On Apr 19, 2018, at 17:34, Aman Gupta wrote: > > From:

Re: [FFmpeg-devel] [PATCH v2 2/2] avformat/utils: refactor upstream_stream_timings

2018-04-20 Thread Rodger Combs
Both patches LGTM. > On Apr 19, 2018, at 18:51, Aman Gupta wrote: > > From: Aman Gupta > > --- > libavformat/utils.c | 21 ++--- > 1 file changed, 10 insertions(+), 11 deletions(-) > > diff --git a/libavformat/utils.c b/libavformat/utils.c >

[FFmpeg-devel] [PATCH] lavc/videotoolbox: fix failure to decode PAFF

2018-03-28 Thread Rodger Combs
--- libavcodec/videotoolbox.c | 7 ++- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/libavcodec/videotoolbox.c b/libavcodec/videotoolbox.c index f82c31c5df..57b6698e1b 100644 --- a/libavcodec/videotoolbox.c +++ b/libavcodec/videotoolbox.c @@ -326,11 +326,8 @@ static int

Re: [FFmpeg-devel] [PATCH 05/10] lavf/dashenc: don't call flush_init_segment before avformat_write_header

2018-03-18 Thread Rodger Combs
> On Mar 18, 2018, at 02:16, Jeyapal, Karthick <kjeya...@akamai.com> wrote: > > > > On 3/14/18 11:54 AM, Rodger Combs wrote: >> Fixes crash when muxing MKV-in-DASH >> --- >> libavformat/dashenc.c | 10 +++--- >> 1 file changed, 3 in

Re: [FFmpeg-devel] [PATCH 07/10] lavf: document that AVStream::codecpar may be modified by lavf after avformat_write_header(). This is assumed not to break API because it's already true (see e.g. matr

2018-03-16 Thread Rodger Combs
this behavior right now). > On Mar 15, 2018, at 20:04, Hendrik Leppkes <h.lepp...@gmail.com> wrote: > > On Fri, Mar 16, 2018 at 12:29 AM, Michael Niedermayer > <mich...@niedermayer.cc <mailto:mich...@niedermayer.cc>> wrote: >> On Wed, Mar 14, 2018 at

Re: [FFmpeg-devel] [PATCH 08/10] lavf/matroskaenc: don't rewrite extradata if we already have some

2018-03-15 Thread Rodger Combs
> On Mar 15, 2018, at 17:36, James Almer <jamr...@gmail.com> wrote: > > On 3/14/2018 3:24 AM, Rodger Combs wrote: >> matroska doesn't support mid-stream extradata changes > > How so? We update flac extradata as sent by the encoder in the last > packet as sid

[FFmpeg-devel] [PATCH 10/10] lavf/movenc: handle AC3 and EAC3 data extraction in check_bitstream

2018-03-14 Thread Rodger Combs
This allows us to write AC3 and EAC3 data to the header even in non-seekable output, like with segment.c (which I add tests for). --- libavformat/movenc.c | 64 +--- tests/fate/avformat.mak | 60 +-

[FFmpeg-devel] [PATCH 06/10] Revert "avformat/mux: stop delaying writing the header"

2018-03-14 Thread Rodger Combs
This reverts commit d6d605eb05c3ca32f591016c345eb2ad9e81c554. --- libavformat/avformat.h | 2 +- libavformat/internal.h | 6 + libavformat/mux.c | 52 ++ libavformat/options_table.h| 2 +-

[FFmpeg-devel] [PATCH 09/10] lavf/mux: propagate extradata changes before we call write_header to codecpar

2018-03-14 Thread Rodger Combs
This includes extradata generated by an encoder post-init, or extradata generated by automatically-added bsfs. This fixes remuxing ADTS to non-seekable MKV, which had been broken in f63c3516577d605e51cf16358cbdfa0bc97565d8, so the tests modified there are restored. This moves extradata writing

[FFmpeg-devel] [PATCH 08/10] lavf/matroskaenc: don't rewrite extradata if we already have some

2018-03-14 Thread Rodger Combs
matroska doesn't support mid-stream extradata changes, and rewriting the same extradata already written in write_header would cause errors since we previously didn't write a filler void. --- libavformat/matroskaenc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git

[FFmpeg-devel] [PATCH 04/10] lavf/dashenc: remove unneeded call to dash_free

2018-03-14 Thread Rodger Combs
--- libavformat/dashenc.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/libavformat/dashenc.c b/libavformat/dashenc.c index 79d63e52d4..5689aef811 100644 --- a/libavformat/dashenc.c +++ b/libavformat/dashenc.c @@ -1030,10 +1030,8 @@ static int

[FFmpeg-devel] [PATCH 07/10] lavf: document that AVStream::codecpar may be modified by lavf after avformat_write_header(). This is assumed not to break API because it's already true (see e.g. matroska

2018-03-14 Thread Rodger Combs
--- libavformat/avformat.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 9e87d6cdac..5f0ebfc114 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -1006,7 +1006,8 @@ typedef struct AVStream { *

[FFmpeg-devel] [PATCH 05/10] lavf/dashenc: don't call flush_init_segment before avformat_write_header

2018-03-14 Thread Rodger Combs
Fixes crash when muxing MKV-in-DASH --- libavformat/dashenc.c | 10 +++--- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/libavformat/dashenc.c b/libavformat/dashenc.c index 5689aef811..63ff827583 100644 --- a/libavformat/dashenc.c +++ b/libavformat/dashenc.c @@ -985,13 +985,6

[FFmpeg-devel] [PATCH 01/10] FATE: add -nostdin to remaining ffmpeg CLI invocations

2018-03-14 Thread Rodger Combs
This prevents ffmpeg from modifying terminal parameters, which resulted in broken terminals after tests nondeterministically when multiple processes attempted to save and restore the state at the same time. --- tests/fate/avformat.mak | 6 +++--- tests/fate/filter-audio.mak | 4 ++--

[FFmpeg-devel] [PATCH 03/10] lavf/movenc: keep eac3_priv around; fixes eac3 in DASH

2018-03-14 Thread Rodger Combs
DASH muxing sometimes calls mov_write_eac3_tag multiple times on the same stream. We need to keep this data around so it's available in the second call, else we won't write the data QuickTime needs. --- libavformat/movenc.c | 1 - 1 file changed, 1 deletion(-) diff --git a/libavformat/movenc.c

[FFmpeg-devel] [PATCH 02/10] lavf/movenc: fix leak of eac3_priv

2018-03-14 Thread Rodger Combs
This could previously happen in error or early-exit cases. The next commit would make it happen in all cases. --- libavformat/movenc.c | 6 ++ 1 file changed, 6 insertions(+) diff --git a/libavformat/movenc.c b/libavformat/movenc.c index 5b1e66c897..accab417f6 100644 ---

[FFmpeg-devel] [PATCH 2/4] lavf/movenc: keep eac3_priv around; fixes eac3 in DASH

2018-03-12 Thread Rodger Combs
DASH muxing sometimes calls mov_write_eac3_tag multiple times on the same stream. We need to keep this data around so it's available in the second call, else we won't write the data QuickTime needs. --- libavformat/movenc.c | 1 - 1 file changed, 1 deletion(-) diff --git a/libavformat/movenc.c

[FFmpeg-devel] [PATCH 4/4] lavf/dashenc: don't call flush_init_segment before avformat_write_header

2018-03-12 Thread Rodger Combs
Fixes crash when muxing MKV-in-DASH --- libavformat/dashenc.c | 10 +++--- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/libavformat/dashenc.c b/libavformat/dashenc.c index 5689aef811..63ff827583 100644 --- a/libavformat/dashenc.c +++ b/libavformat/dashenc.c @@ -985,13 +985,6

[FFmpeg-devel] [PATCH 1/4] lavf/movenc: fix leak of eac3_priv

2018-03-12 Thread Rodger Combs
This could previously happen in error or early-exit cases. The next commit would make it happen in all cases. --- libavformat/movenc.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libavformat/movenc.c b/libavformat/movenc.c index 5b1e66c897..353a42ae2c 100644 --- a/libavformat/movenc.c +++

[FFmpeg-devel] [PATCH 3/4] lavf/dashenc: remove unneeded call to dash_free

2018-03-12 Thread Rodger Combs
--- libavformat/dashenc.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/libavformat/dashenc.c b/libavformat/dashenc.c index 79d63e52d4..5689aef811 100644 --- a/libavformat/dashenc.c +++ b/libavformat/dashenc.c @@ -1030,10 +1030,8 @@ static int

Re: [FFmpeg-devel] [PATCH] lavf/movenc: keep eac3_priv around; fixes eac3 in DASH

2018-03-08 Thread Rodger Combs
it. > On Mar 8, 2018, at 05:46, Derek Buitenhuis <derek.buitenh...@gmail.com> wrote: > > On 3/8/2018 5:10 AM, Rodger Combs wrote: >> --- >> libavformat/movenc.c | 1 - >> 1 file changed, 1 deletion(-) > > Er, how/why? > > No info is

[FFmpeg-devel] [PATCH] lavf/movenc: keep eac3_priv around; fixes eac3 in DASH

2018-03-07 Thread Rodger Combs
--- libavformat/movenc.c | 1 - 1 file changed, 1 deletion(-) diff --git a/libavformat/movenc.c b/libavformat/movenc.c index 5b1e66c897..fb8462ed9a 100644 --- a/libavformat/movenc.c +++ b/libavformat/movenc.c @@ -554,7 +554,6 @@ static int mov_write_eac3_tag(AVIOContext *pb, MOVTrack *track)

[FFmpeg-devel] [PATCH] lavfi/vf_transpose: fix regression with semiplanar formats

2018-02-21 Thread Rodger Combs
(e.g. nv12) Regression since 7b19e76aeb0ace57b99aaef156bbfe592e43e65e --- libavfilter/vf_transpose.c | 50 +++-- tests/ref/fate/filter-pixfmts-transpose | 8 +++--- 2 files changed, 33 insertions(+), 25 deletions(-) diff --git

[FFmpeg-devel] [PATCH] lavc/videotoolbox: fix threaded decoding

2018-02-02 Thread Rodger Combs
AVHWAccel.end_frame can run on a worker thread. The assumption of the frame threading code is that the worker thread will change the AVFrame image data, not the AVFrame fields. So the AVFrame fields are not synced back to the main thread. But this breaks videotoolbox due to its special

[FFmpeg-devel] [PATCH] lavc/aarch64/sbrdsp_neon: fix build on old binutils

2018-01-25 Thread Rodger Combs
--- libavcodec/aarch64/sbrdsp_neon.S | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/aarch64/sbrdsp_neon.S b/libavcodec/aarch64/sbrdsp_neon.S index d1d79b749c..d23717e760 100644 --- a/libavcodec/aarch64/sbrdsp_neon.S +++ b/libavcodec/aarch64/sbrdsp_neon.S @@ -287,7

[FFmpeg-devel] [PATCH] lavfi/vf_scale_vaapi: set output SAR

2018-01-12 Thread Rodger Combs
--- libavfilter/vf_scale_vaapi.c | 5 + 1 file changed, 5 insertions(+) diff --git a/libavfilter/vf_scale_vaapi.c b/libavfilter/vf_scale_vaapi.c index 22e928c..4bead5a 100644 --- a/libavfilter/vf_scale_vaapi.c +++ b/libavfilter/vf_scale_vaapi.c @@ -240,6 +240,11 @@ static int

[FFmpeg-devel] [PATCH] lavc/libx265: support all color parameters that x265 does

2017-12-18 Thread Rodger Combs
--- libavcodec/libx265.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libavcodec/libx265.c b/libavcodec/libx265.c index 25ccb02fcb..14710f8de0 100644 --- a/libavcodec/libx265.c +++ b/libavcodec/libx265.c @@ -115,11 +115,11 @@ static av_cold int

Re: [FFmpeg-devel] [RFC] [Vote] Drop Windows XP support

2017-12-14 Thread Rodger Combs
> On Dec 14, 2017, at 07:26, wm4 wrote: > > I propose that FFmpeg sets the minimum supported Windows version to > Windows Vista (or maybe Windows 7). This would remove Windows XP > support. > > The reason is that Windows XP does not provide certain convenient APIs, > in

[FFmpeg-devel] [PATCH 3/4] lavf/utils: add flag to discard timestamps on corrupted frames

2017-12-13 Thread Rodger Combs
--- libavformat/avformat.h | 1 + libavformat/options_table.h | 1 + libavformat/utils.c | 8 3 files changed, 10 insertions(+) diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 4f2798a871..d10d583dff 100644 --- a/libavformat/avformat.h +++

[FFmpeg-devel] [PATCH 2/4] lavc+lavf: split AV_PKG_FLAG_CORRUPT into more specific flags

2017-12-13 Thread Rodger Combs
This maintains AV_PKG_FLAG_CORRUPT as a mask of the 3 new flags. Requires a major bump in both libraries. --- libavcodec/avcodec.h | 29 - libavcodec/trace_headers_bsf.c | 10 -- libavcodec/version.h | 3 +++ libavformat/aiffdec.c

[FFmpeg-devel] [PATCH 4/4] lavf/utils: add flag to fill unset timestamps from wallclock offset

2017-12-13 Thread Rodger Combs
--- libavformat/avformat.h | 1 + libavformat/internal.h | 5 + libavformat/options_table.h | 1 + libavformat/utils.c | 12 4 files changed, 19 insertions(+) diff --git a/libavformat/avformat.h b/libavformat/avformat.h index d10d583dff..a039a2764d 100644

[FFmpeg-devel] [PATCH 1/4] lavf/mpegts: mark packets with TEI flag as corrupted

2017-12-13 Thread Rodger Combs
--- libavformat/mpegts.c | 8 1 file changed, 8 insertions(+) diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c index 53cbcfb543..0a3ad05726 100644 --- a/libavformat/mpegts.c +++ b/libavformat/mpegts.c @@ -2296,6 +2296,14 @@ static int handle_packet(MpegTSContext *ts, const

Re: [FFmpeg-devel] [PATCH] avcodec: add properties for lossless to AVCodecParameters

2017-12-13 Thread Rodger Combs
> On May 9, 2016, at 08:28, Hendrik Leppkes wrote: > > On Mon, May 9, 2016 at 3:26 PM, Derek Buitenhuis > wrote: >> On 5/9/2016 2:22 PM, Paul B Mahol wrote: >>> Once st->codec is gone, how would this lossless info be gathered back? >> >> As

Re: [FFmpeg-devel] [PATCH 2/3] lavf/utils: add flag to discard timestamps on corrupted frames

2017-12-13 Thread Rodger Combs
> On Dec 10, 2017, at 09:27, Michael Niedermayer <mich...@niedermayer.cc> wrote: > > On Sun, Dec 10, 2017 at 05:17:44AM -0600, Rodger Combs wrote: >> >> >>> On Dec 9, 2017, at 12:19, Michael Niedermayer <mich...@niedermayer.cc> >>> wrote

Re: [FFmpeg-devel] [PATCH 1/3] lavf/matroskadec: resync if cluster parsing fails while seeking

2017-12-10 Thread Rodger Combs
> On Dec 10, 2017, at 08:08, Nicolas George <geo...@nsup.org> wrote: > > Rodger Combs (2017-12-08): >> --- >> libavformat/matroskadec.c | 8 ++-- >> 1 file changed, 6 insertions(+), 2 deletions(-) >> >> diff --git a/libavformat/matroskadec.c b/

Re: [FFmpeg-devel] [PATCH 3/3] lavf/utils: add flag to fill unset timestamps from wallclock offset

2017-12-10 Thread Rodger Combs
> On Dec 10, 2017, at 05:40, Nicolas George <geo...@nsup.org> wrote: > > Rodger Combs (2017-12-10): >> The goal is to use this in conjunction with the previous patches in >> the set to deal with live broadcast streams coming off a tuner. The >> first patch sets

Re: [FFmpeg-devel] [PATCH 2/3] lavf/utils: add flag to discard timestamps on corrupted frames

2017-12-10 Thread Rodger Combs
> On Dec 9, 2017, at 12:19, Michael Niedermayer <mich...@niedermayer.cc> wrote: > > On Fri, Dec 08, 2017 at 10:34:39PM -0600, Rodger Combs wrote: >> >> >>> On Dec 8, 2017, at 11:06, Michael Niedermayer <mich...@niedermayer.cc> >>> wrote

Re: [FFmpeg-devel] [PATCH 2/3] lavf/utils: add flag to discard timestamps on corrupted frames

2017-12-08 Thread Rodger Combs
> On Dec 8, 2017, at 11:06, Michael Niedermayer <mich...@niedermayer.cc> wrote: > > On Thu, Dec 07, 2017 at 10:23:15PM -0600, Rodger Combs wrote: >> --- >> libavformat/avformat.h | 1 + >> libavformat/options_table.h | 1 + >> libavformat/utils.c

[FFmpeg-devel] [PATCH 1/3] lavf/matroskadec: resync if cluster parsing fails while seeking

2017-12-08 Thread Rodger Combs
--- libavformat/matroskadec.c | 8 ++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c index 496499b553..b51f67af00 100644 --- a/libavformat/matroskadec.c +++ b/libavformat/matroskadec.c @@ -3528,9 +3528,13 @@ static int

[FFmpeg-devel] [PATCH 2/3] lavf/matroskadec: fallback to generic seeking if resyncing fails while seeking

2017-12-08 Thread Rodger Combs
--- libavformat/matroskadec.c | 6 +- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c index b51f67af00..944ed795d5 100644 --- a/libavformat/matroskadec.c +++ b/libavformat/matroskadec.c @@ -3532,8 +3532,12 @@ static int

[FFmpeg-devel] [PATCH 3/3] lavf/matroskadec: log when falling back to generic seeking

2017-12-08 Thread Rodger Combs
--- libavformat/matroskadec.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c index 944ed795d5..fb1a27f4a8 100644 --- a/libavformat/matroskadec.c +++ b/libavformat/matroskadec.c @@ -3570,6 +3570,7 @@ static int

[FFmpeg-devel] [PATCH 3/3] lavf/matroskadec: log when falling back to generic seeking

2017-12-08 Thread Rodger Combs
--- libavformat/matroskadec.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c index 2d23f2ee84..f023e94e70 100644 --- a/libavformat/matroskadec.c +++ b/libavformat/matroskadec.c @@ -3567,6 +3567,7 @@ static int

[FFmpeg-devel] [PATCH 2/3] lavf/matroskadec: fallback to generic seeking if resyncing fails while seeking

2017-12-08 Thread Rodger Combs
--- libavformat/matroskadec.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c index 93a3ec4a07..2d23f2ee84 100644 --- a/libavformat/matroskadec.c +++ b/libavformat/matroskadec.c @@ -3531,8 +3531,10 @@ static int

[FFmpeg-devel] [PATCH 1/3] lavf/matroskadec: resync if cluster parsing fails while seeking

2017-12-08 Thread Rodger Combs
--- libavformat/matroskadec.c | 7 +-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c index 496499b553..93a3ec4a07 100644 --- a/libavformat/matroskadec.c +++ b/libavformat/matroskadec.c @@ -3528,9 +3528,12 @@ static int

[FFmpeg-devel] [PATCH 3/3] lavf/utils: add flag to fill unset timestamps from wallclock offset

2017-12-07 Thread Rodger Combs
--- libavformat/avformat.h | 1 + libavformat/internal.h | 5 + libavformat/options_table.h | 1 + libavformat/utils.c | 12 4 files changed, 19 insertions(+) diff --git a/libavformat/avformat.h b/libavformat/avformat.h index d10d583dff..a039a2764d 100644

[FFmpeg-devel] [PATCH 1/3] lavf/mpegts: mark packets with TEI flag as corrupted

2017-12-07 Thread Rodger Combs
--- libavformat/mpegts.c | 8 1 file changed, 8 insertions(+) diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c index 53cbcfb543..0a3ad05726 100644 --- a/libavformat/mpegts.c +++ b/libavformat/mpegts.c @@ -2296,6 +2296,14 @@ static int handle_packet(MpegTSContext *ts, const

[FFmpeg-devel] [PATCH 2/3] lavf/utils: add flag to discard timestamps on corrupted frames

2017-12-07 Thread Rodger Combs
--- libavformat/avformat.h | 1 + libavformat/options_table.h | 1 + libavformat/utils.c | 8 3 files changed, 10 insertions(+) diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 4f2798a871..d10d583dff 100644 --- a/libavformat/avformat.h +++

Re: [FFmpeg-devel] [PATCH 2/2] lavf/utils: add flag to discard timestamps on corrupted frames

2017-12-07 Thread Rodger Combs
> On Dec 7, 2017, at 16:53, Hendrik Leppkes <h.lepp...@gmail.com> wrote: > > On Thu, Dec 7, 2017 at 9:46 PM, Michael Niedermayer > <mich...@niedermayer.cc <mailto:mich...@niedermayer.cc>> wrote: >> On Thu, Dec 07, 2017 at 03:37:38AM -0600, Rodger Combs wrote

Re: [FFmpeg-devel] [PATCH] lavc/libopenjpeg: support version 2.3.0 and later

2017-12-07 Thread Rodger Combs
Yup, I did. > On Dec 7, 2017, at 08:04, James Almer <jamr...@gmail.com> wrote: > > On 12/7/2017 6:17 AM, Rodger Combs wrote: >> --- >> configure | 2 ++ >> libavcodec/libopenjpegdec.c | 29 +++-- &g

[FFmpeg-devel] [PATCH 1/2] lavf/mpegts: mark packets with TEI flag as corrupted

2017-12-07 Thread Rodger Combs
--- libavformat/mpegts.c | 8 1 file changed, 8 insertions(+) diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c index 53cbcfb543..0a3ad05726 100644 --- a/libavformat/mpegts.c +++ b/libavformat/mpegts.c @@ -2296,6 +2296,14 @@ static int handle_packet(MpegTSContext *ts, const

[FFmpeg-devel] [PATCH 2/2] lavf/utils: add flag to discard timestamps on corrupted frames

2017-12-07 Thread Rodger Combs
--- libavformat/avformat.h | 1 + libavformat/internal.h | 5 + libavformat/options_table.h | 1 + libavformat/utils.c | 12 4 files changed, 19 insertions(+) diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 4f2798a871..e2d88280a8 100644

[FFmpeg-devel] [PATCH] lavc/libopenjpeg: support version 2.3.0 and later

2017-12-07 Thread Rodger Combs
--- configure | 2 ++ libavcodec/libopenjpegdec.c | 29 +++-- libavcodec/libopenjpegenc.c | 29 +++-- 3 files changed, 48 insertions(+), 12 deletions(-) diff --git a/configure b/configure index ae0eddac6c..27bed3a20d 100755 ---

[FFmpeg-devel] [PATCH] build: fix build with OpenCL

2017-12-07 Thread Rodger Combs
--- fftools/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fftools/Makefile b/fftools/Makefile index 094f6d6265..9b211aa4d5 100644 --- a/fftools/Makefile +++ b/fftools/Makefile @@ -21,7 +21,7 @@ OBJS-ffserver += fftools/ffserver_config.o

[FFmpeg-devel] [PATCH] lavu/hwcontext_opencl.h: fix build on macOS

2017-11-27 Thread Rodger Combs
--- libavutil/hwcontext_opencl.h | 4 1 file changed, 4 insertions(+) diff --git a/libavutil/hwcontext_opencl.h b/libavutil/hwcontext_opencl.h index 8e34df44cd..ef54486c95 100644 --- a/libavutil/hwcontext_opencl.h +++ b/libavutil/hwcontext_opencl.h @@ -19,7 +19,11 @@ #ifndef

  1   2   3   4   5   6   7   >