[FFmpeg-devel] [PATCH 2/3] cbs_h264: Improve performance of writing slices

2018-11-03 Thread Andreas Rheinhardt
Instead of using a combination of bitreader and -writer for copying data,
one can byte-align the (obsolete and removed) bitreader to improve performance.
With the right alignment one can even use memcpy. The right alignment
normally exists for CABAC.
For aligned data this reduced the time to copy the slicedata from
776520 decicycles to 33889 with 262144 runs and a 6.5mb/s H.264 video.
For unaligned data the number went down from 279196 to 97739 decicycles.

Signed-off-by: Andreas Rheinhardt 
---
 libavcodec/cbs_h2645.c | 67 +-
 1 file changed, 46 insertions(+), 21 deletions(-)

diff --git a/libavcodec/cbs_h2645.c b/libavcodec/cbs_h2645.c
index e55bd00183..d3a41fbdf0 100644
--- a/libavcodec/cbs_h2645.c
+++ b/libavcodec/cbs_h2645.c
@@ -1100,37 +1100,62 @@ static int 
cbs_h264_write_nal_unit(CodedBitstreamContext *ctx,
 case H264_NAL_AUXILIARY_SLICE:
 {
 H264RawSlice *slice = unit->content;
-GetBitContext gbc;
-int bits_left, end, zeroes;
 
 err = cbs_h264_write_slice_header(ctx, pbc, &slice->header);
 if (err < 0)
 return err;
 
 if (slice->data) {
-if (slice->data_size * 8 + 8 > put_bits_left(pbc))
-return AVERROR(ENOSPC);
+size_t rest = slice->data_size - (slice->data_bit_start + 7) / 
8;
+uint8_t *pos = slice->data + slice->data_bit_start / 8;
 
-init_get_bits(&gbc, slice->data, slice->data_size * 8);
-skip_bits_long(&gbc, slice->data_bit_start);
+av_assert0(slice->data_bit_start >= 0 &&
+   8 * slice->data_size > slice->data_bit_start);
 
-// Copy in two-byte blocks, but stop before copying the
-// rbsp_stop_one_bit in the final byte.
-while (get_bits_left(&gbc) > 23)
-put_bits(pbc, 16, get_bits(&gbc, 16));
+if (slice->data_size * 8 + 8 > put_bits_left(pbc))
+return AVERROR(ENOSPC);
 
-bits_left = get_bits_left(&gbc);
-end = get_bits(&gbc, bits_left);
+if (!rest)
+goto rbsp_stop_one_bit;
+
+// First copy the remaining bits of the first byte
+// The above check ensures that we do not accidentally
+// copy beyond the rbsp_stop_one_bit.
+if (slice->data_bit_start % 8)
+put_bits(pbc, 8 - slice->data_bit_start % 8,
+*pos++ & MAX_UINT_BITS(8 - slice->data_bit_start % 
8));
+
+if (put_bits_count(pbc) % 8 == 0) {
+// If the writer is aligned at this point,
+// memcpy can be used to improve performance.
+// This happens normally for CABAC.
+flush_put_bits(pbc);
+memcpy(put_bits_ptr(pbc), pos, rest);
+skip_put_bytes(pbc, rest);
+break;
+} else {
+// If not, we have to copy manually.
+// rbsp_stop_one_bit forces us to special-case
+// the last byte.
+for (; rest > 4; rest -= 4, pos += 4)
+put_bits32(pbc, AV_RB32(pos));
+
+for (; rest > 1; rest--, pos++)
+put_bits(pbc, 8, *pos);
+}
 
-// rbsp_stop_one_bit must be present here.
-av_assert0(end);
-zeroes = ff_ctz(end);
-if (bits_left > zeroes + 1)
-put_bits(pbc, bits_left - zeroes - 1,
- end >> (zeroes + 1));
-put_bits(pbc, 1, 1);
-while (put_bits_count(pbc) % 8 != 0)
-put_bits(pbc, 1, 0);
+rbsp_stop_one_bit: {
+int i;
+uint8_t temp = rest ? *pos : *pos & MAX_UINT_BITS(8 -
+ slice->data_bit_start % 8);
+av_assert0(temp);
+i = ff_ctz(*pos);
+temp = temp >> i;
+i = rest ? (8 - i) : (8 - i - slice->data_bit_start % 8);
+put_bits(pbc, i, temp);
+if (put_bits_count(pbc) % 8)
+put_bits(pbc, 8 - put_bits_count(pbc) % 8, 0U);
+}
 } else {
 // No slice data - that was just the header.
 // (Bitstream may be unaligned!)
-- 
2.19.0

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] [PATCH 3/3] cbs_h265: Improve performance of writing slices

2018-11-03 Thread Andreas Rheinhardt
Instead of using a combination of bitreader and -writer for copying data,
one can byte-align the (obsolete and removed) bitreader to improve performance.
Given that the H265 slice segment header always has a byte length,
one can normally use memcpy.
With this patch the number of decicycles used to copy the slicedata
went down from 181395 to 8672 for a 830kb/s sample with 16384 runs.

Signed-off-by: Andreas Rheinhardt 
---
 libavcodec/cbs_h2645.c | 70 +-
 1 file changed, 48 insertions(+), 22 deletions(-)

diff --git a/libavcodec/cbs_h2645.c b/libavcodec/cbs_h2645.c
index d3a41fbdf0..d9ea498faa 100644
--- a/libavcodec/cbs_h2645.c
+++ b/libavcodec/cbs_h2645.c
@@ -1279,39 +1279,65 @@ static int 
cbs_h265_write_nal_unit(CodedBitstreamContext *ctx,
 case HEVC_NAL_CRA_NUT:
 {
 H265RawSlice *slice = unit->content;
-GetBitContext gbc;
-int bits_left, end, zeroes;
 
 err = cbs_h265_write_slice_segment_header(ctx, pbc, 
&slice->header);
 if (err < 0)
 return err;
 
 if (slice->data) {
+size_t rest = slice->data_size - (slice->data_bit_start + 7) / 
8;
+uint8_t *pos = slice->data + slice->data_bit_start / 8;
+
+av_assert0(slice->data_bit_start >= 0 &&
+   8 * slice->data_size > slice->data_bit_start);
+
 if (slice->data_size * 8 + 8 > put_bits_left(pbc))
 return AVERROR(ENOSPC);
 
-init_get_bits(&gbc, slice->data, slice->data_size * 8);
-skip_bits_long(&gbc, slice->data_bit_start);
-
-// Copy in two-byte blocks, but stop before copying the
-// rbsp_stop_one_bit in the final byte.
-while (get_bits_left(&gbc) > 23)
-put_bits(pbc, 16, get_bits(&gbc, 16));
-
-bits_left = get_bits_left(&gbc);
-end = get_bits(&gbc, bits_left);
-
-// rbsp_stop_one_bit must be present here.
-av_assert0(end);
-zeroes = ff_ctz(end);
-if (bits_left > zeroes + 1)
-put_bits(pbc, bits_left - zeroes - 1,
- end >> (zeroes + 1));
-put_bits(pbc, 1, 1);
-while (put_bits_count(pbc) % 8 != 0)
-put_bits(pbc, 1, 0);
+if (!rest)
+goto rbsp_stop_one_bit;
+
+// First copy the remaining bits of the first byte
+// The above check ensures that we do not accidentally
+// copy beyond the rbsp_stop_one_bit.
+if (slice->data_bit_start % 8)
+put_bits(pbc, 8 - slice->data_bit_start % 8,
+*pos++ & MAX_UINT_BITS(8 - slice->data_bit_start % 
8));
+
+if (put_bits_count(pbc) % 8 == 0) {
+// If the writer is aligned at this point,
+// memcpy can be used to improve performance.
+// This is the normal case.
+flush_put_bits(pbc);
+memcpy(put_bits_ptr(pbc), pos, rest);
+skip_put_bytes(pbc, rest);
+break;
+} else {
+// If not, we have to copy manually.
+// rbsp_stop_one_bit forces us to special-case
+// the last byte.
+for (; rest > 4; rest -= 4, pos += 4)
+put_bits32(pbc, AV_RB32(pos));
+
+for (; rest > 1; rest--, pos++)
+put_bits(pbc, 8, *pos);
+}
+
+rbsp_stop_one_bit: {
+int i;
+uint8_t temp = rest ? *pos : *pos & MAX_UINT_BITS(8 -
+ slice->data_bit_start % 8);
+av_assert0(temp);
+i = ff_ctz(*pos);
+temp = temp >> i;
+i = rest ? (8 - i) : (8 - i - slice->data_bit_start % 8);
+put_bits(pbc, i, temp);
+if (put_bits_count(pbc) % 8)
+put_bits(pbc, 8 - put_bits_count(pbc) % 8, 0U);
+}
 } else {
 // No slice data - that was just the header.
+// (Bitstream may be unaligned!)
 }
 }
 break;
-- 
2.19.0

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] [PATCH 0/3] cbs: Improve performance of writing slices

2018-11-03 Thread Andreas Rheinhardt
When assembling slices in cbs_mpeg2, cbs_h264 and cbs_h265, a
combination of a bitreader and bitwriter is used to copy the data (after
the slice header has been assembled). They copy in blocks of 16 bits.

This is inefficient: E.g. the bitreader can be eliminated by first
copying bits until the input is byte-aligned. If then the bitwriter
is also byte-aligned after this, one can use memcpy to improve
performance (I got a more than 20x speed increase for copying the
slice data if the slices are big enough and properly aligned). If it is
not byte-aligned, one has nevertheless eliminated the shifting done in
the bitreader. Shifting 32 bits at once also proved advantageous.

The aligned case is very common:
For MPEG2, the slice header doesn't contain lots of interesting fields
to modify (e.g. the extra_information_slice is reserved), so that there
is not really a point in changing the slice at all. (One could actually
speed the mpeg2_metadata filter further up by not decomposing slices at
all.)
For H.264 CABAC mode and H.265, the slice header is always byte-aligned,
so that one would have to intentionally produce misaligned data to have
it.

My patch aims to create the identical output as the current version,
with one exception: Currently, cbs_h264 and cbs_h265 assert that the
last few bits of input aren't zero as they are supposed to contain the
rbsp_stop_one_bit. This is probably done because the behaviour of ff_ctz
is undefined when its argument is zero. My version doesn't check for this
in the aligned mode, as ff_ctz isn't required here at all. And in the
unaligned mode, my version only checks the last 8 bits, whereas the
current version checks between 8 and 23 bits.

This is my first contribution on this mailing list and I tried my best
to follow your patch submission checklist. But I could not check fate,
although I tested my patch with several files and they created the same
output as the current version.


Andreas Rheinhardt (3):
  cbs_mpeg2: Improve performance of writing slices
  cbs_h264: Improve performance of writing slices
  cbs_h265: Improve performance of writing slices

 libavcodec/cbs_h2645.c | 139 -
 libavcodec/cbs_mpeg2.c |  39 
 2 files changed, 122 insertions(+), 56 deletions(-)

-- 
2.19.0

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] [PATCH 1/3] cbs_mpeg2: Improve performance of writing slices

2018-11-03 Thread Andreas Rheinhardt
Instead of using a combination of bitreader and -writer for copying data,
one can byte-align the (obsolete and removed) bitreader to improve performance.
One can even use memcpy in the normal case.
This improved the time needed for writing the slicedata from 33618 to
2370 decicycles when tested on a video originating from a DVD (4194394
runs).

Signed-off-by: Andreas Rheinhardt 
---
 libavcodec/cbs_mpeg2.c | 39 +++
 1 file changed, 27 insertions(+), 12 deletions(-)

diff --git a/libavcodec/cbs_mpeg2.c b/libavcodec/cbs_mpeg2.c
index 0df4234b12..7161f1ee80 100644
--- a/libavcodec/cbs_mpeg2.c
+++ b/libavcodec/cbs_mpeg2.c
@@ -264,8 +264,6 @@ static int cbs_mpeg2_write_slice(CodedBitstreamContext *ctx,
  PutBitContext *pbc)
 {
 MPEG2RawSlice *slice = unit->content;
-GetBitContext gbc;
-size_t bits_left;
 int err;
 
 err = cbs_mpeg2_write_slice_header(ctx, pbc, &slice->header);
@@ -273,21 +271,38 @@ static int cbs_mpeg2_write_slice(CodedBitstreamContext 
*ctx,
 return err;
 
 if (slice->data) {
+size_t rest = slice->data_size - (slice->data_bit_start + 7) / 8;
+uint8_t *pos = slice->data + slice->data_bit_start / 8;
+
+av_assert0(slice->data_bit_start >= 0 &&
+   8* slice->data_size > slice->data_bit_start);
+
 if (slice->data_size * 8 + 8 > put_bits_left(pbc))
 return AVERROR(ENOSPC);
 
-init_get_bits(&gbc, slice->data, slice->data_size * 8);
-skip_bits_long(&gbc, slice->data_bit_start);
-
-while (get_bits_left(&gbc) > 15)
-put_bits(pbc, 16, get_bits(&gbc, 16));
+// First copy the remaining bits of the first byte
+if (slice->data_bit_start % 8)
+put_bits(pbc, 8 - slice->data_bit_start % 8,
+*pos++ & MAX_UINT_BITS(8 - slice->data_bit_start % 8));
+
+if (put_bits_count(pbc) % 8 == 0) {
+// If the writer is aligned at this point,
+// memcpy can be used to improve performance.
+// This is the normal case.
+flush_put_bits(pbc);
+memcpy(put_bits_ptr(pbc), pos, rest);
+skip_put_bytes(pbc, rest);
+} else {
+// If not, we have to copy manually:
+for (; rest > 3; rest -= 4, pos += 4)
+put_bits32(pbc, AV_RB32(pos));
 
-bits_left = get_bits_left(&gbc);
-put_bits(pbc, bits_left, get_bits(&gbc, bits_left));
+for (; rest; rest--, pos++)
+put_bits(pbc, 8, *pos);
 
-// Align with zeroes.
-while (put_bits_count(pbc) % 8 != 0)
-put_bits(pbc, 1, 0);
+// Align with zeros
+put_bits(pbc, 8 - put_bits_count(pbc) % 8, 0U);
+}
 }
 
 return 0;
-- 
2.19.0

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] Revert "lavc/v4l2_m2m_enc: Add missing braces around initializers."

2018-11-03 Thread Ronak

> On Oct 31, 2018, at 5:58 PM, Mark Thompson  wrote:
> 
> On 31/10/18 00:07, Ronak Patel wrote:
>> 
>>> On Oct 27, 2018, at 5:25 PM, Carl Eugen Hoyos  wrote:
>>> 
>>> 2018-10-27 20:50 GMT+02:00, Mark Thompson :
 This reverts commit 6dbb64fdccafe846aaec75d3784f7ad49d8af5df.
 
 The additional braces cause build errors with Linux headers earlier
 than 4.5 because the first element of the structure was not originally
 a union.
>>> 
 Not sure what compiler was warning about these, but it's definitely
 incorrect for it to do so.
>>> 
>>> Must have been NDK clang.
>> 
>> This fix isn’t enough for this. The references to the variables in the union 
>> fail to compile. This doesn’t fix that.
> 
> I tried both before and after the change at 4.5: 
> ,
>  
> .
> 
> What headers do you have and what are the errors in that version?

I've attach the header file that I have.



videodev2.h
Description: Binary data

> 
> - Mark
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] libvpxenc: extend auto-alt-ref range

2018-11-03 Thread James Almer
On 11/3/2018 6:04 PM, James Zern wrote:
> On Sat, Nov 3, 2018 at 2:02 PM James Zern  wrote:
>> [...]
>>  #define COMMON_OPTIONS \
>>  { "auto-alt-ref","Enable use of alternate reference " \
>> - "frames (2-pass only)",   
>> OFFSET(auto_alt_ref),AV_OPT_TYPE_INT, {.i64 = -1},  -1,  2,  
>>  VE}, \
>> + "frames (2-pass only)",   
>> OFFSET(auto_alt_ref),AV_OPT_TYPE_INT, {.i64 = -1},  -1,  6,  
>>  VE}, \
> 
> This was extended earlier [1], but probably should have been made
> codec specific. I can do that, but we might want to keep the 0-2 range
> for vp8 now for compatibility. Any preferences?

What happens when you use the higher values while encoding VP8? Does it
error out or silently clips it to 1 internally?

If it errors out then yes, move it out of COMMON_OPTIONS and into each
encoder AVOption array.

> 
> [1] 41da4f8cb3 lavc/libvpxenc: fix -auto-alt-ref option type
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] libvpxenc: extend auto-alt-ref range

2018-11-03 Thread James Zern
On Sat, Nov 3, 2018 at 2:02 PM James Zern  wrote:
> [...]
>  #define COMMON_OPTIONS \
>  { "auto-alt-ref","Enable use of alternate reference " \
> - "frames (2-pass only)",   
> OFFSET(auto_alt_ref),AV_OPT_TYPE_INT, {.i64 = -1},  -1,  2,   
> VE}, \
> + "frames (2-pass only)",   
> OFFSET(auto_alt_ref),AV_OPT_TYPE_INT, {.i64 = -1},  -1,  6,   
> VE}, \

This was extended earlier [1], but probably should have been made
codec specific. I can do that, but we might want to keep the 0-2 range
for vp8 now for compatibility. Any preferences?

[1] 41da4f8cb3 lavc/libvpxenc: fix -auto-alt-ref option type
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] [PATCH] libvpxenc,vp9: add enable-tpl option

2018-11-03 Thread James Zern
enables temporal dependency model

Signed-off-by: James Zern 
---
 doc/encoders.texi  |  2 ++
 libavcodec/libvpxenc.c | 11 +++
 2 files changed, 13 insertions(+)

diff --git a/doc/encoders.texi b/doc/encoders.texi
index 899faac49b..fced8d7369 100644
--- a/doc/encoders.texi
+++ b/doc/encoders.texi
@@ -1692,6 +1692,8 @@ Corpus VBR mode is a variant of standard VBR where the 
complexity distribution
 midpoint is passed in rather than calculated for a specific clip or chunk.
 
 The valid range is [0, 1]. 0 (default) uses standard VBR.
+@item enable-tpl @var{boolean}
+Enable temporal dependency model.
 @end table
 
 @end table
diff --git a/libavcodec/libvpxenc.c b/libavcodec/libvpxenc.c
index 09f7a88452..e03dc3539a 100644
--- a/libavcodec/libvpxenc.c
+++ b/libavcodec/libvpxenc.c
@@ -111,6 +111,7 @@ typedef struct VPxEncoderContext {
 int row_mt;
 int tune_content;
 int corpus_complexity;
+int tpl_model;
 } VPxContext;
 
 /** String mappings for enum vp8e_enc_control_id */
@@ -146,6 +147,9 @@ static const char *const ctlidstr[] = {
 #ifdef VPX_CTRL_VP9E_SET_TUNE_CONTENT
 [VP9E_SET_TUNE_CONTENT]= "VP9E_SET_TUNE_CONTENT",
 #endif
+#ifdef VPX_CTRL_VP9E_SET_TPL
+[VP9E_SET_TPL] = "VP9E_SET_TPL",
+#endif
 #endif
 };
 
@@ -716,6 +720,10 @@ FF_ENABLE_DEPRECATION_WARNINGS
 #ifdef VPX_CTRL_VP9E_SET_TUNE_CONTENT
 if (ctx->tune_content >= 0)
 codecctl_int(avctx, VP9E_SET_TUNE_CONTENT, ctx->tune_content);
+#endif
+#ifdef VPX_CTRL_VP9E_SET_TPL
+if (ctx->tpl_model >= 0)
+codecctl_int(avctx, VP9E_SET_TPL, ctx->tpl_model);
 #endif
 }
 #endif
@@ -1156,6 +1164,9 @@ static const AVOption vp9_options[] = {
 #endif
 #if VPX_ENCODER_ABI_VERSION >= 14
 { "corpus-complexity", "corpus vbr complexity midpoint", 
OFFSET(corpus_complexity), AV_OPT_TYPE_INT, {.i64 = -1}, -1, 1, VE },
+#endif
+#ifdef VPX_CTRL_VP9E_SET_TPL
+{ "enable-tpl",  "Enable temporal dependency model", 
OFFSET(tpl_model), AV_OPT_TYPE_BOOL, {.i64 = -1}, -1, 1, VE },
 #endif
 LEGACY_OPTIONS
 { NULL }
-- 
2.19.1.930.g4563a0d9d0-goog

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] [PATCH] libvpxenc: extend auto-alt-ref range

2018-11-03 Thread James Zern
vp9 now supports [0, 6]

Signed-off-by: James Zern 
---
 doc/encoders.texi  | 1 +
 libavcodec/libvpxenc.c | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/doc/encoders.texi b/doc/encoders.texi
index 899faac49b..3c6f5cd70b 100644
--- a/doc/encoders.texi
+++ b/doc/encoders.texi
@@ -1641,6 +1641,7 @@ means unlimited.
 @table @option
 @item auto-alt-ref
 Enable use of alternate reference frames (2-pass only).
+Values greater than 1 enable multi-layer alternate reference frames (VP9 only).
 @item arnr-max-frames
 Set altref noise reduction max frame count.
 @item arnr-type
diff --git a/libavcodec/libvpxenc.c b/libavcodec/libvpxenc.c
index 09f7a88452..ad4480b2ae 100644
--- a/libavcodec/libvpxenc.c
+++ b/libavcodec/libvpxenc.c
@@ -1068,7 +1068,7 @@ static int vpx_encode(AVCodecContext *avctx, AVPacket 
*pkt,
 
 #define COMMON_OPTIONS \
 { "auto-alt-ref","Enable use of alternate reference " \
- "frames (2-pass only)",   
OFFSET(auto_alt_ref),AV_OPT_TYPE_INT, {.i64 = -1},  -1,  2,   
VE}, \
+ "frames (2-pass only)",   
OFFSET(auto_alt_ref),AV_OPT_TYPE_INT, {.i64 = -1},  -1,  6,   
VE}, \
 { "lag-in-frames",   "Number of frames to look ahead for " \
  "alternate reference frame selection",
OFFSET(lag_in_frames),   AV_OPT_TYPE_INT, {.i64 = -1},  -1,  INT_MAX, 
VE}, \
 { "arnr-maxframes",  "altref noise reduction max frame count", 
OFFSET(arnr_max_frames), AV_OPT_TYPE_INT, {.i64 = -1},  -1,  INT_MAX, 
VE}, \
-- 
2.19.1.930.g4563a0d9d0-goog

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 1/4] doc/filters: add document for opencl filters

2018-11-03 Thread Lou Logan
On Thu, Nov 1, 2018, at 9:13 PM, Gyan wrote:
>
> Lou, can you push this? Won't have my comp with the repo credentials for
> some time.

Sure, but I may not get to it until Monday.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 1/4] proresenc_nanatoliy: Rename a profile name with the correct one

2018-11-03 Thread Paul B Mahol
On 11/2/18, Vittorio Giovara  wrote:
> In all Apple documentation, this profile is called Prores .
> ---
>  libavcodec/proresenc_anatoliy.c | 16 
>  1 file changed, 8 insertions(+), 8 deletions(-)


There is typo in log message, with that fixed patchset lgtm.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel