[FFmpeg-devel] [PATCH v2] tests/fate/vcodec: add dnxhr mov tests

2016-08-21 Thread Mark Reid
---
 tests/fate/vcodec.mak| 18 +-
 tests/ref/vsynth/vsynth1-dnxhd-hr-hq-mov |  4 
 tests/ref/vsynth/vsynth1-dnxhd-hr-lb-mov |  4 
 tests/ref/vsynth/vsynth1-dnxhd-hr-sq-mov |  4 
 tests/ref/vsynth/vsynth2-dnxhd-hr-hq-mov |  4 
 tests/ref/vsynth/vsynth2-dnxhd-hr-lb-mov |  4 
 tests/ref/vsynth/vsynth2-dnxhd-hr-sq-mov |  4 
 tests/ref/vsynth/vsynth3-dnxhd-hr-hq-mov |  4 
 tests/ref/vsynth/vsynth3-dnxhd-hr-lb-mov |  4 
 tests/ref/vsynth/vsynth3-dnxhd-hr-sq-mov |  4 
 tests/ref/vsynth/vsynth_lena-dnxhd-hr-hq-mov |  4 
 tests/ref/vsynth/vsynth_lena-dnxhd-hr-lb-mov |  4 
 tests/ref/vsynth/vsynth_lena-dnxhd-hr-sq-mov |  4 
 13 files changed, 65 insertions(+), 1 deletion(-)
 create mode 100644 tests/ref/vsynth/vsynth1-dnxhd-hr-hq-mov
 create mode 100644 tests/ref/vsynth/vsynth1-dnxhd-hr-lb-mov
 create mode 100644 tests/ref/vsynth/vsynth1-dnxhd-hr-sq-mov
 create mode 100644 tests/ref/vsynth/vsynth2-dnxhd-hr-hq-mov
 create mode 100644 tests/ref/vsynth/vsynth2-dnxhd-hr-lb-mov
 create mode 100644 tests/ref/vsynth/vsynth2-dnxhd-hr-sq-mov
 create mode 100644 tests/ref/vsynth/vsynth3-dnxhd-hr-hq-mov
 create mode 100644 tests/ref/vsynth/vsynth3-dnxhd-hr-lb-mov
 create mode 100644 tests/ref/vsynth/vsynth3-dnxhd-hr-sq-mov
 create mode 100644 tests/ref/vsynth/vsynth_lena-dnxhd-hr-hq-mov
 create mode 100644 tests/ref/vsynth/vsynth_lena-dnxhd-hr-lb-mov
 create mode 100644 tests/ref/vsynth/vsynth_lena-dnxhd-hr-sq-mov

diff --git a/tests/fate/vcodec.mak b/tests/fate/vcodec.mak
index 4ed94a5..a51f16c 100644
--- a/tests/fate/vcodec.mak
+++ b/tests/fate/vcodec.mak
@@ -96,7 +96,8 @@ fate-vsynth%-dnxhd-edge3-hr:  ENCOPTS= -s 257x121 
-profile:v dnxhr_hq \
 fate-vsynth%-dnxhd-edge3-hr:  DECOPTS= -sws_flags 
area+accurate_rnd+bitexact
 fate-vsynth%-dnxhd-edge3-hr:  FMT= dnxhd
 
-FATE_VCODEC-$(call ENCDEC, DNXHD, MOV)  += dnxhd-1080i dnxhd-1080i-10bit 
dnxhd-1080i-colr
+FATE_VCODEC-$(call ENCDEC, DNXHD, MOV)  += dnxhd-1080i dnxhd-1080i-10bit 
dnxhd-1080i-colr \
+   dnxhd-hr-lb-mov dnxhd-hr-sq-mov 
dnxhd-hr-hq-mov
 fate-vsynth%-dnxhd-1080i:ENCOPTS = -s hd1080 -b 120M -flags +ildct \
-pix_fmt yuv422p -frames 5 -qmax 8
 fate-vsynth%-dnxhd-1080i:FMT = mov
@@ -111,6 +112,21 @@ fate-vsynth%-dnxhd-1080i-colr:   ENCOPTS = -s hd1080 -b 
120M -flags +ildct -movf
 fate-vsynth%-dnxhd-1080i-colr:   DECOPTS = -sws_flags 
area+accurate_rnd+bitexact
 fate-vsynth%-dnxhd-1080i-colr:   FMT = mov
 
+fate-vsynth%-dnxhd-hr-lb-mov:   ENCOPTS = -s uhd2160 -profile:v dnxhr_lb \
+   -pix_fmt yuv422p -frames 5
+fate-vsynth%-dnxhd-hr-lb-mov:   DECOPTS = -sws_flags area+accurate_rnd+bitexact
+fate-vsynth%-dnxhd-hr-lb-mov:   FMT = mov
+
+fate-vsynth%-dnxhd-hr-sq-mov:   ENCOPTS = -s 2kscope -profile:v dnxhr_sq \
+   -pix_fmt yuv422p -frames 5
+fate-vsynth%-dnxhd-hr-sq-mov:   DECOPTS = -sws_flags area+accurate_rnd+bitexact
+fate-vsynth%-dnxhd-hr-sq-mov:   FMT = mov
+
+fate-vsynth%-dnxhd-hr-hq-mov:   ENCOPTS = -s 2kflat -profile:v dnxhr_hq \
+   -pix_fmt yuv422p -frames 5
+fate-vsynth%-dnxhd-hr-hq-mov:   DECOPTS = -sws_flags area+accurate_rnd+bitexact
+fate-vsynth%-dnxhd-hr-hq-mov:   FMT = mov
+
 FATE_VCODEC-$(call ENCDEC, DVVIDEO, DV) += dv dv-411 dv-50
 fate-vsynth%-dv: CODEC   = dvvideo
 fate-vsynth%-dv: ENCOPTS = -dct int -s pal
diff --git a/tests/ref/vsynth/vsynth1-dnxhd-hr-hq-mov 
b/tests/ref/vsynth/vsynth1-dnxhd-hr-hq-mov
new file mode 100644
index 000..559c2f0
--- /dev/null
+++ b/tests/ref/vsynth/vsynth1-dnxhd-hr-hq-mov
@@ -0,0 +1,4 @@
+c8b5d2bde45776bbf13f0262c915f5b9 *tests/data/fate/vsynth1-dnxhd-hr-hq-mov.mov
+4772599 tests/data/fate/vsynth1-dnxhd-hr-hq-mov.mov
+388c7c84573abe28cc963e3ad5e15a31 
*tests/data/fate/vsynth1-dnxhd-hr-hq-mov.out.rawvideo
+stddev:5.73 PSNR: 32.96 MAXDIFF:   56 bytes:  7603200/   760320
diff --git a/tests/ref/vsynth/vsynth1-dnxhd-hr-lb-mov 
b/tests/ref/vsynth/vsynth1-dnxhd-hr-lb-mov
new file mode 100644
index 000..2e2b4a3
--- /dev/null
+++ b/tests/ref/vsynth/vsynth1-dnxhd-hr-lb-mov
@@ -0,0 +1,4 @@
+254aa3f0be811882ff351172fd391492 *tests/data/fate/vsynth1-dnxhd-hr-lb-mov.mov
+3748599 tests/data/fate/vsynth1-dnxhd-hr-lb-mov.mov
+21c68252f500bada13ccce232e1ecfca 
*tests/data/fate/vsynth1-dnxhd-hr-lb-mov.out.rawvideo
+stddev:5.59 PSNR: 33.17 MAXDIFF:   55 bytes:  7603200/   760320
diff --git a/tests/ref/vsynth/vsynth1-dnxhd-hr-sq-mov 
b/tests/ref/vsynth/vsynth1-dnxhd-hr-sq-mov
new file mode 100644
index 000..2c52e3e
--- /dev/null
+++ b/tests/ref/vsynth/vsynth1-dnxhd-hr-sq-mov
@@ -0,0 +1,4 @@
+7d7fb47e926aa565b51661264f1a39e9 *tests/data/fate/vsynth1-dnxhd-hr-sq-mov.mov
+2560763 

Re: [FFmpeg-devel] [PATCH] libavcodec/dnxhdenc: fix typo, check if profile is dnxhr 444 or hqx

2016-08-21 Thread Michael Niedermayer
On Sun, Aug 21, 2016 at 05:07:49PM -0700, Mark Reid wrote:
> ---
>  libavcodec/dnxhdenc.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

applied

thx

[...]
-- 
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

If you drop bombs on a foreign country and kill a hundred thousand
innocent people, expect your government to call the consequence
"unprovoked inhuman terrorist attacks" and use it to justify dropping
more bombs and killing more people. The technology changed, the idea is old.


signature.asc
Description: Digital signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 2/2] pixfmt: Use enum assignment for aliases

2016-08-21 Thread Timothy Gu
On Sun, Aug 21, 2016 at 05:09:01PM -0700, Timothy Gu wrote:
> -#define AV_PIX_FMT_XVMC AV_PIX_FMT_XVMC_MPEG2_IDCT
> +AV_PIX_FMT_XVMC = AV_PIX_FMT_XVMC_MPEG2_IDCT,

I don't think this constitutes an API break, but comments are welcome.

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


[FFmpeg-devel] [PATCH] libavcodec/dnxhdenc: fix typo, check if profile is dnxhr 444 or hqx

2016-08-21 Thread Mark Reid
---
 libavcodec/dnxhdenc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/dnxhdenc.c b/libavcodec/dnxhdenc.c
index d8289a4..88edd6b 100644
--- a/libavcodec/dnxhdenc.c
+++ b/libavcodec/dnxhdenc.c
@@ -324,7 +324,7 @@ static av_cold int dnxhd_encode_init(AVCodecContext *avctx)
 return AVERROR(EINVAL);
 }
 
-if (ctx->profile == FF_PROFILE_DNXHR_HQX ||
+if (ctx->profile == FF_PROFILE_DNXHR_444 ||
 ctx->profile == FF_PROFILE_DNXHR_HQX) {
 avpriv_report_missing_feature(avctx,
"dnxhr_444 or dnxhr_hqx profile");
-- 
2.9.2

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


[FFmpeg-devel] [PATCH 2/2] pixfmt: Use enum assignment for aliases

2016-08-21 Thread Timothy Gu
This way, Doxygen is happier as aliases are now grouped together, and
it never handled #define's in an enum well in the first place.

Y400A already exists as an enum assignment.
---
 libavutil/pixfmt.h | 6 ++
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/libavutil/pixfmt.h b/libavutil/pixfmt.h
index 6f71ac0..efc3714 100644
--- a/libavutil/pixfmt.h
+++ b/libavutil/pixfmt.h
@@ -77,7 +77,7 @@ enum AVPixelFormat {
 #if FF_API_XVMC
 AV_PIX_FMT_XVMC_MPEG2_MC,///< XVideo Motion Acceleration via common packet 
passing
 AV_PIX_FMT_XVMC_MPEG2_IDCT,
-#define AV_PIX_FMT_XVMC AV_PIX_FMT_XVMC_MPEG2_IDCT
+AV_PIX_FMT_XVMC = AV_PIX_FMT_XVMC_MPEG2_IDCT,
 #endif /* FF_API_XVMC */
 AV_PIX_FMT_UYVY422,   ///< packed YUV 4:2:2, 16bpp, Cb Y0 Cr Y1
 AV_PIX_FMT_UYYVYY411, ///< packed YUV 4:1:1, 12bpp, Cb Y0 Y1 Cr Y2 Y3
@@ -178,6 +178,7 @@ enum AVPixelFormat {
 AV_PIX_FMT_YUV422P9LE, ///< planar YUV 4:2:2, 18bpp, (1 Cr & Cb sample per 
2x1 Y samples), little-endian
 AV_PIX_FMT_VDA_VLD,///< hardware decoding through VDA
 AV_PIX_FMT_GBRP,  ///< planar GBR 4:4:4 24bpp
+AV_PIX_FMT_GBR24P = AV_PIX_FMT_GBRP, // alias for #AV_PIX_FMT_GBRP
 AV_PIX_FMT_GBRP9BE,   ///< planar GBR 4:4:4 27bpp, big-endian
 AV_PIX_FMT_GBRP9LE,   ///< planar GBR 4:4:4 27bpp, little-endian
 AV_PIX_FMT_GBRP10BE,  ///< planar GBR 4:4:4 30bpp, big-endian
@@ -308,9 +309,6 @@ enum AVPixelFormat {
 AV_PIX_FMT_NB,///< number of pixel formats, DO NOT USE THIS if you 
want to link with shared libav* because the number of formats might differ 
between versions
 };
 
-#define AV_PIX_FMT_Y400A AV_PIX_FMT_GRAY8A
-#define AV_PIX_FMT_GBR24P AV_PIX_FMT_GBRP
-
 #if AV_HAVE_BIGENDIAN
 #   define AV_PIX_FMT_NE(be, le) AV_PIX_FMT_##be
 #else
-- 
2.1.4

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


[FFmpeg-devel] [PATCH 1/2] pixdesc: Order function prototypes semantically

2016-08-21 Thread Timothy Gu
---
 libavutil/pixdesc.h | 194 ++--
 1 file changed, 97 insertions(+), 97 deletions(-)

diff --git a/libavutil/pixdesc.h b/libavutil/pixdesc.h
index 3b0bcdb..a8ad588 100644
--- a/libavutil/pixdesc.h
+++ b/libavutil/pixdesc.h
@@ -173,78 +173,6 @@ typedef struct AVPixFmtDescriptor {
 #define AV_PIX_FMT_FLAG_ALPHA(1 << 7)
 
 /**
- * Read a line from an image, and write the values of the
- * pixel format component c to dst.
- *
- * @param data the array containing the pointers to the planes of the image
- * @param linesize the array containing the linesizes of the image
- * @param desc the pixel format descriptor for the image
- * @param x the horizontal coordinate of the first pixel to read
- * @param y the vertical coordinate of the first pixel to read
- * @param w the width of the line to read, that is the number of
- * values to write to dst
- * @param read_pal_component if not zero and the format is a paletted
- * format writes the values corresponding to the palette
- * component c in data[1] to dst, rather than the palette indexes in
- * data[0]. The behavior is undefined if the format is not paletted.
- */
-void av_read_image_line(uint16_t *dst, const uint8_t *data[4],
-const int linesize[4], const AVPixFmtDescriptor *desc,
-int x, int y, int c, int w, int read_pal_component);
-
-/**
- * Write the values from src to the pixel format component c of an
- * image line.
- *
- * @param src array containing the values to write
- * @param data the array containing the pointers to the planes of the
- * image to write into. It is supposed to be zeroed.
- * @param linesize the array containing the linesizes of the image
- * @param desc the pixel format descriptor for the image
- * @param x the horizontal coordinate of the first pixel to write
- * @param y the vertical coordinate of the first pixel to write
- * @param w the width of the line to write, that is the number of
- * values to write to the image line
- */
-void av_write_image_line(const uint16_t *src, uint8_t *data[4],
- const int linesize[4], const AVPixFmtDescriptor *desc,
- int x, int y, int c, int w);
-
-/**
- * Return the pixel format corresponding to name.
- *
- * If there is no pixel format with name name, then looks for a
- * pixel format with the name corresponding to the native endian
- * format of name.
- * For example in a little-endian system, first looks for "gray16",
- * then for "gray16le".
- *
- * Finally if no pixel format has been found, returns AV_PIX_FMT_NONE.
- */
-enum AVPixelFormat av_get_pix_fmt(const char *name);
-
-/**
- * Return the short name for a pixel format, NULL in case pix_fmt is
- * unknown.
- *
- * @see av_get_pix_fmt(), av_get_pix_fmt_string()
- */
-const char *av_get_pix_fmt_name(enum AVPixelFormat pix_fmt);
-
-/**
- * Print in buf the string corresponding to the pixel format with
- * number pix_fmt, or a header if pix_fmt is negative.
- *
- * @param buf the buffer where to write the string
- * @param buf_size the size of buf
- * @param pix_fmt the number of the pixel format to print the
- * corresponding info string, or a negative value to print the
- * corresponding header.
- */
-char *av_get_pix_fmt_string(char *buf, int buf_size,
-enum AVPixelFormat pix_fmt);
-
-/**
  * Return the number of bits per pixel used by the pixel format
  * described by pixdesc. Note that this is not the same as the number
  * of bits per sample.
@@ -307,6 +235,103 @@ int av_pix_fmt_get_chroma_sub_sample(enum AVPixelFormat 
pix_fmt,
 int av_pix_fmt_count_planes(enum AVPixelFormat pix_fmt);
 
 /**
+ * @return the name for provided color range or NULL if unknown.
+ */
+const char *av_color_range_name(enum AVColorRange range);
+
+/**
+ * @return the name for provided color primaries or NULL if unknown.
+ */
+const char *av_color_primaries_name(enum AVColorPrimaries primaries);
+
+/**
+ * @return the name for provided color transfer or NULL if unknown.
+ */
+const char *av_color_transfer_name(enum AVColorTransferCharacteristic 
transfer);
+
+/**
+ * @return the name for provided color space or NULL if unknown.
+ */
+const char *av_color_space_name(enum AVColorSpace space);
+
+/**
+ * @return the name for provided chroma location or NULL if unknown.
+ */
+const char *av_chroma_location_name(enum AVChromaLocation location);
+
+/**
+ * Return the pixel format corresponding to name.
+ *
+ * If there is no pixel format with name name, then looks for a
+ * pixel format with the name corresponding to the native endian
+ * format of name.
+ * For example in a little-endian system, first looks for "gray16",
+ * then for "gray16le".
+ *
+ * Finally if no pixel format has been found, returns AV_PIX_FMT_NONE.
+ */
+enum AVPixelFormat av_get_pix_fmt(const char *name);
+
+/**
+ * Return the short name for a pixel format, NULL in case pix_fmt is
+ * unknown.
+ *
+ * @see 

Re: [FFmpeg-devel] [PATCH] lavf/hlsenc: add append_list flag into hlsenc

2016-08-21 Thread Steven Liu
2016-08-21 21:30 GMT+08:00 Michael Niedermayer :

> On Sun, Aug 21, 2016 at 01:03:02PM +0800, Steven Liu wrote:
> > Fix unused *duration*
> > remove the #EXT-X-ENDLIST and #EXT-X-TARGETDURATION tags,
> > keep intened with hls->duratin, hls->start_pos, hls->size.
> >
> >
> >
> > When ffmpeg exit by exception, start a new ffmpeg will
> > cover the old segment list, add this flag can continue
> > append the new segments into old hls segment list
> >
> > Signed-off-by: LiuQi 
> > ---
> >  doc/muxers.texi  |  4 
> >  libavformat/hlsenc.c | 62
> > 
> >  2 files changed, 66 insertions(+)
>
> applied
>
> can you add a fate test for this feature ?
>
Ok, I will do it.

>
> thanks
>
> [...]
>
> --
> Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
>
> It is what and why we do it that matters, not just one of them.
>
>
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 1/4] V7 - Adding SCTE-35 CUI codec

2016-08-21 Thread Michael Niedermayer
On Sun, Aug 21, 2016 at 09:55:27AM -0700, Carlos Fernandez Sanz wrote:
> On Sat, Aug 20, 2016 at 11:47 AM, Michael Niedermayer
>  wrote:
> 
> > dts are decode timestamps, that is for video thats when a packet
> 
> OK, something like this?
> 
> +AV_CODEC_ID_SCTE_35,/**< Contain no valid time stamp in DTS PTS
> of avpacket, avpacket data contain time stamp
> +  in scte-35 format which is relative to
> DTS/PTS of video stream */

this is ambigous
is it meant that the 0 point on the time axis of the
"time stamp in scte-35 format" matches the 0 point of the video stream
or some video packets pts or dts (like the last one)?

[...]
-- 
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Awnsering whenever a program halts or runs forever is
On a turing machine, in general impossible (turings halting problem).
On any real computer, always possible as a real computer has a finite number
of states N, and will either halt in less than N cycles or never halt.


signature.asc
Description: Digital signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH v3 5/5] avformat/tee: Use BSF list API

2016-08-21 Thread Jan Sebechlebsky



On 08/21/2016 02:57 PM, Michael Niedermayer wrote:

On Tue, Aug 09, 2016 at 02:00:24PM +0200, sebechlebsky...@gmail.com wrote:
[...]
  
@@ -506,13 +481,32 @@ static int tee_write_packet(AVFormatContext *avf, AVPacket *pkt)

  av_packet_rescale_ts(, tb, tb2);
  pkt2.stream_index = s2;
  
-if ((ret = av_apply_bitstream_filters(avf2->streams[s2]->codec, ,

-  tee->slaves[i].bsfs[s2])) < 0 ||
-(ret = av_interleaved_write_frame(avf2, )) < 0) {
+ret = av_bsf_send_packet(tee->slaves[i].bsfs[s2], );
+if (ret < 0) {
+av_log(avf, AV_LOG_ERROR, "Error while sending packet to bitstream 
filter: %s\n",
+   av_err2str(ret));
  ret = tee_process_slave_failure(avf, i, ret);
  if (!ret_all && ret < 0)
  ret_all = ret;
  }
+
+do {
+ret = av_bsf_receive_packet(tee->slaves[i].bsfs[s2], );
+if (ret < 0)
+break;
+
+av_packet_rescale_ts(, tb, tb2);

are the timestamps rescaled twice ?
is that intended ?

This is a mistake, sorry for that and thanks for noticing. I'll send 
fixed patch.


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


Re: [FFmpeg-devel] [PATCH] mem: Extend and edit Doxygen

2016-08-21 Thread Timothy Gu
On Fri Aug 5 14:15:19 EEST 2016, Michael Niedermayer wrote:
> to me it sounds more natural without "the" but english aint my area

Changed.

> either way the patch overall looks nice (i didnt deeply review)
> Acked-by: Michael

Thanks. Pushed.

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


Re: [FFmpeg-devel] [PATCH 1/4] V7 - Adding SCTE-35 CUI codec

2016-08-21 Thread Carlos Fernandez Sanz
On Sat, Aug 20, 2016 at 11:47 AM, Michael Niedermayer
 wrote:

> dts are decode timestamps, that is for video thats when a packet

OK, something like this?

+AV_CODEC_ID_SCTE_35,/**< Contain no valid time stamp in DTS PTS
of avpacket, avpacket data contain time stamp
+  in scte-35 format which is relative to
DTS/PTS of video stream */
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] lavf/mpegtsenc: write metadata descriptor for timed ID3 packets

2016-08-21 Thread Michael Niedermayer
On Sun, Aug 21, 2016 at 10:44:27AM +0200, Stefano Sabatini wrote:
> On date Saturday 2016-08-20 18:57:52 +0200, Michael Niedermayer encoded:
> > On Sat, Aug 20, 2016 at 03:48:35PM +0200, Stefano Sabatini wrote:
> > > On date Thursday 2016-05-19 18:45:35 +0200, Stefano Sabatini encoded:
> > > > This is required since some softwares are not able to correctly 
> > > > recognize
> > > > the metadata.
> > > > ---
> > > >  libavformat/mpegtsenc.c | 24 ++--
> > > >  1 file changed, 14 insertions(+), 10 deletions(-)
> > > 
> > > Updated, with some more documentation and references to the MPEGTS
> > > standard.
> > > 
> > > Note: this patch was created comparing the output of FFmpeg with those
> > > from encoding.com and elemental. With the change the output metadata
> > > can be read by third-party players.
> > > 
> > > If the maintainers prefer, I can enable this output mode through a
> > > flag.
> > > -- 
> > > FFmpeg = Fiendish & Fiendish Mastering Purposeless Egregious Goblin
> > 
> > >  mpegtsenc.c |   24 ++--
> > >  1 file changed, 14 insertions(+), 10 deletions(-)
> > > 3a6655bca70653c64bfb5f2073d01feee73e64c2  
> > > 0003-lavf-mpegtsenc-write-metadata-descriptor-for-timed-I.patch
> > > From 20f22c426a9f5c59d28f66a17b59d62301503d67 Mon Sep 17 00:00:00 2001
> > > From: Stefano Sabatini 
> > > Date: Tue, 12 Apr 2016 18:16:21 +0200
> > > Subject: [PATCH] lavf/mpegtsenc: write metadata descriptor for timed ID3
> > >  packets
> > > 
> > > This is required since some programs are not able to correctly recognize
> > > the metadata. See H.222, 2.6.58 Metadata pointer descriptor.
> > > 
> > > putstr8() is modified in order to allow to skip writing the string
> > > length.
> > > ---
> > >  libavformat/mpegtsenc.c | 24 ++--
> > >  1 file changed, 14 insertions(+), 10 deletions(-)
> > > 
> > > diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
> > > index b437100..6f40615 100644
> > > --- a/libavformat/mpegtsenc.c
> > > +++ b/libavformat/mpegtsenc.c
> > > @@ -256,7 +256,7 @@ static void mpegts_write_pat(AVFormatContext *s)
> > >  }
> > >  
> > >  /* NOTE: !str is accepted for an empty string */
> > > -static void putstr8(uint8_t **q_ptr, const char *str)
> > > +static void putstr8(uint8_t **q_ptr, const char *str, int write_len)
> > 
> > breaks build, putstr8() seems after the place where a use is added
> > in git master, or i did somehing silly
> 
> Another patch is needed (already approved, but doesn't make sense
> without this other patch), in attachment.

patches probably ok

thx

[...]

-- 
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Many that live deserve death. And some that die deserve life. Can you give
it to them? Then do not be too eager to deal out death in judgement. For
even the very wise cannot see all ends. -- Gandalf


signature.asc
Description: Digital signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [GSOC][PATCH 1/4] factoring obmc out of snow

2016-08-21 Thread Michael Niedermayer
On Sun, Aug 21, 2016 at 09:32:31AM +0300, Станислав Долганов wrote:
> Sorry, I forgot to return ok from encode init. Here updated patch.
> 
> 2016-08-20 23:44 GMT+03:00 Michael Niedermayer :
> 
> > On Sat, Aug 20, 2016 at 11:01:29PM +0300, Станислав Долганов wrote:
> > > Fixed it.
> >
> > breaks fate (this worked with the previous patch)
> >
> > make: *** [fate-vsynth1-snow] Error 139
> > make: *** [fate-vsynth1-snow-hpel] Error 139
> > make: *** [fate-vsynth1-snow-ll] Error 139
> > make: *** [fate-filter-mcdeint-fast] Error 139
> > make: *** [fate-filter-mcdeint-medium] Error 139
> > make: *** [fate-vsynth2-snow] Error 139
> > make: *** [fate-vsynth2-snow-hpel] Error 139
> > make: *** [fate-vsynth2-snow-ll] Error 139
> > make: *** [fate-vsynth_lena-snow] Error 139
> > make: *** [fate-vsynth_lena-snow-hpel] Error 139
> > make: *** [fate-vsynth_lena-snow-ll] Error 139
> >
> > [...]
> >
> >
> > --
> > Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
> >
> > Modern terrorism, a quick summary: Need oil, start war with country that
> > has oil, kill hundread thousand in war. Let country fall into chaos,
> > be surprised about raise of fundamantalists. Drop more bombs, kill more
> > people, be surprised about them taking revenge and drop even more bombs
> > and strip your own citizens of their rights and freedoms. to be continued
> >
> > ___
> > ffmpeg-devel mailing list
> > ffmpeg-devel@ffmpeg.org
> > http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> >
> >
> 
> 
> -- 
> Станислав Долганов

>  b/libavcodec/Makefile  |8 
>  b/libavcodec/obmc.c|   61 +
>  b/libavcodec/obmc.h|   30 
>  b/libavcodec/obme.c| 1131 
>  b/libavcodec/obme.h|   33 +
>  b/libavcodec/obmemc.c  |  652 
>  b/libavcodec/obmemc.h  |  522 
>  b/libavcodec/obmemc_data.h |  132 
>  b/libavcodec/snow.c|  571 --
>  b/libavcodec/snow.h|  356 ---
>  b/libavcodec/snowdec.c |  235 ++-
>  b/libavcodec/snowenc.c | 1408 
> +++--
>  libavcodec/snowdata.h  |  132 
>  13 files changed, 2896 insertions(+), 2375 deletions(-)
> 7fd1c474b26a198cac3d5a85ef27ef1acc47c80b  
> 0001-factoring-obmc-out-of-snow.patch
> From 936143b88dbbe666d2c9be38fe37f715c3e91e6b Mon Sep 17 00:00:00 2001
> From: Stanislav Dolganov 
> Date: Thu, 18 Aug 2016 14:07:35 +0300
> Subject: [PATCH 1/4] factoring obmc out of snow
> 
> ---
>  libavcodec/Makefile  |8 +-
>  libavcodec/obmc.c|   61 ++
>  libavcodec/obmc.h|   30 +
>  libavcodec/obme.c| 1131 +
>  libavcodec/obme.h|   33 ++
>  libavcodec/obmemc.c  |  652 +
>  libavcodec/obmemc.h  |  522 +
>  libavcodec/obmemc_data.h |  132 +
>  libavcodec/snow.c|  571 +--
>  libavcodec/snow.h|  356 +---
>  libavcodec/snowdata.h|  132 -
>  libavcodec/snowdec.c |  235 +++-
>  libavcodec/snowenc.c | 1408 
> --
>  13 files changed, 2896 insertions(+), 2375 deletions(-)
>  create mode 100644 libavcodec/obmc.c
>  create mode 100644 libavcodec/obmc.h
>  create mode 100644 libavcodec/obme.c
>  create mode 100644 libavcodec/obme.h
>  create mode 100644 libavcodec/obmemc.c
>  create mode 100644 libavcodec/obmemc.h
>  create mode 100644 libavcodec/obmemc_data.h
>  delete mode 100644 libavcodec/snowdata.h
> 
> diff --git a/libavcodec/Makefile b/libavcodec/Makefile
> index b375720..f24cd81 100644
> --- a/libavcodec/Makefile
> +++ b/libavcodec/Makefile

> @@ -511,9 +511,11 @@ OBJS-$(CONFIG_SMACKAUD_DECODER)+= smacker.o
>  OBJS-$(CONFIG_SMACKER_DECODER) += smacker.o
>  OBJS-$(CONFIG_SMC_DECODER) += smc.o
>  OBJS-$(CONFIG_SMVJPEG_DECODER) += smvjpegdec.o
> -OBJS-$(CONFIG_SNOW_DECODER)+= snowdec.o snow.o snow_dwt.o
> -OBJS-$(CONFIG_SNOW_ENCODER)+= snowenc.o snow.o snow_dwt.o
>  \
> -  h263.o ituh263enc.o
> +OBJS-$(CONFIG_SNOW_DECODER)+= snowdec.o snow.o snow_dwt.o\
> + 
>   obmemc.o obmc.o

inconsistent indention and tabs


> +OBJS-$(CONFIG_SNOW_ENCODER)+= snowenc.o snow.o snow_dwt.o\
> +  h263.o ituh263enc.o\
> +  obmemc.o obme.o
>  OBJS-$(CONFIG_SOL_DPCM_DECODER)+= dpcm.o
>  OBJS-$(CONFIG_SONIC_DECODER)   += sonic.o
>  OBJS-$(CONFIG_SONIC_ENCODER)   += sonic.o
> diff --git a/libavcodec/obmc.c b/libavcodec/obmc.c
> new file mode 100644
> index 000..10a3afe
> --- /dev/null
> +++ b/libavcodec/obmc.c
> @@ 

Re: [FFmpeg-devel] [PATCH] lavf/hlsenc: add append_list flag into hlsenc

2016-08-21 Thread Michael Niedermayer
On Sun, Aug 21, 2016 at 01:03:02PM +0800, Steven Liu wrote:
> Fix unused *duration*
> remove the #EXT-X-ENDLIST and #EXT-X-TARGETDURATION tags,
> keep intened with hls->duratin, hls->start_pos, hls->size.
> 
> 
> 
> When ffmpeg exit by exception, start a new ffmpeg will
> cover the old segment list, add this flag can continue
> append the new segments into old hls segment list
> 
> Signed-off-by: LiuQi 
> ---
>  doc/muxers.texi  |  4 
>  libavformat/hlsenc.c | 62
> 
>  2 files changed, 66 insertions(+)

applied

can you add a fate test for this feature ?

thanks

[...]

-- 
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

It is what and why we do it that matters, not just one of them.


signature.asc
Description: Digital signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH v3 5/5] avformat/tee: Use BSF list API

2016-08-21 Thread Michael Niedermayer
On Tue, Aug 09, 2016 at 02:00:24PM +0200, sebechlebsky...@gmail.com wrote:
[...]
>  
> @@ -506,13 +481,32 @@ static int tee_write_packet(AVFormatContext *avf, 
> AVPacket *pkt)

>  av_packet_rescale_ts(, tb, tb2);

>  pkt2.stream_index = s2;
>  
> -if ((ret = av_apply_bitstream_filters(avf2->streams[s2]->codec, 
> ,
> -  tee->slaves[i].bsfs[s2])) < 0 
> ||
> -(ret = av_interleaved_write_frame(avf2, )) < 0) {
> +ret = av_bsf_send_packet(tee->slaves[i].bsfs[s2], );
> +if (ret < 0) {
> +av_log(avf, AV_LOG_ERROR, "Error while sending packet to 
> bitstream filter: %s\n",
> +   av_err2str(ret));
>  ret = tee_process_slave_failure(avf, i, ret);
>  if (!ret_all && ret < 0)
>  ret_all = ret;
>  }
> +
> +do {
> +ret = av_bsf_receive_packet(tee->slaves[i].bsfs[s2], );
> +if (ret < 0)
> +break;
> +

> +av_packet_rescale_ts(, tb, tb2);

are the timestamps rescaled twice ?
is that intended ?


[...]

-- 
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

The real ebay dictionary, page 1
"Used only once"- "Some unspecified defect prevented a second use"
"In good condition" - "Can be repaird by experienced expert"
"As is" - "You wouldnt want it even if you were payed for it, if you knew ..."


signature.asc
Description: Digital signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH v3 4/5] avcodec/bsf: Add custom item name func for BSF list

2016-08-21 Thread Michael Niedermayer
On Mon, Aug 15, 2016 at 12:38:36PM +0200, sebechlebsky...@gmail.com wrote:
> From: Jan Sebechlebsky 
> 
> Add custom item name function for bsf list, which will
> construct string description of filter chain. This is
> done using lazy-initialization, so there is no overhead
> if item name is never accessed.
> 
> Signed-off-by: Jan Sebechlebsky 
> 
> Conflicts:
>   libavcodec/bsf.c
> ---
>  Changes since the last version of the patch:
>  - added av_freep(>item_name) from previous commit to bsf_list_close
> 
>  libavcodec/bsf.c | 29 -
>  1 file changed, 28 insertions(+), 1 deletion(-)

applied

thanks

[...]
-- 
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

If you fake or manipulate statistics in a paper in physics you will never
get a job again.
If you fake or manipulate statistics in a paper in medicin you will get
a job for life at the pharma industry.


signature.asc
Description: Digital signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] lavf/mpegtsenc: write metadata descriptor for timed ID3 packets

2016-08-21 Thread Stefano Sabatini
On date Saturday 2016-08-20 18:57:52 +0200, Michael Niedermayer encoded:
> On Sat, Aug 20, 2016 at 03:48:35PM +0200, Stefano Sabatini wrote:
> > On date Thursday 2016-05-19 18:45:35 +0200, Stefano Sabatini encoded:
> > > This is required since some softwares are not able to correctly recognize
> > > the metadata.
> > > ---
> > >  libavformat/mpegtsenc.c | 24 ++--
> > >  1 file changed, 14 insertions(+), 10 deletions(-)
> > 
> > Updated, with some more documentation and references to the MPEGTS
> > standard.
> > 
> > Note: this patch was created comparing the output of FFmpeg with those
> > from encoding.com and elemental. With the change the output metadata
> > can be read by third-party players.
> > 
> > If the maintainers prefer, I can enable this output mode through a
> > flag.
> > -- 
> > FFmpeg = Fiendish & Fiendish Mastering Purposeless Egregious Goblin
> 
> >  mpegtsenc.c |   24 ++--
> >  1 file changed, 14 insertions(+), 10 deletions(-)
> > 3a6655bca70653c64bfb5f2073d01feee73e64c2  
> > 0003-lavf-mpegtsenc-write-metadata-descriptor-for-timed-I.patch
> > From 20f22c426a9f5c59d28f66a17b59d62301503d67 Mon Sep 17 00:00:00 2001
> > From: Stefano Sabatini 
> > Date: Tue, 12 Apr 2016 18:16:21 +0200
> > Subject: [PATCH] lavf/mpegtsenc: write metadata descriptor for timed ID3
> >  packets
> > 
> > This is required since some programs are not able to correctly recognize
> > the metadata. See H.222, 2.6.58 Metadata pointer descriptor.
> > 
> > putstr8() is modified in order to allow to skip writing the string
> > length.
> > ---
> >  libavformat/mpegtsenc.c | 24 ++--
> >  1 file changed, 14 insertions(+), 10 deletions(-)
> > 
> > diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
> > index b437100..6f40615 100644
> > --- a/libavformat/mpegtsenc.c
> > +++ b/libavformat/mpegtsenc.c
> > @@ -256,7 +256,7 @@ static void mpegts_write_pat(AVFormatContext *s)
> >  }
> >  
> >  /* NOTE: !str is accepted for an empty string */
> > -static void putstr8(uint8_t **q_ptr, const char *str)
> > +static void putstr8(uint8_t **q_ptr, const char *str, int write_len)
> 
> breaks build, putstr8() seems after the place where a use is added
> in git master, or i did somehing silly

Another patch is needed (already approved, but doesn't make sense
without this other patch), in attachment.
-- 
FFmpeg = Funny and Fancy Mournful Puristic Evil Glue
>From 6948454eb19676639a3b403c48774af2a133ed29 Mon Sep 17 00:00:00 2001
From: Stefano Sabatini 
Date: Tue, 12 Apr 2016 18:14:45 +0200
Subject: [PATCH] lavf/mpegtsenc: move putstr8 definition up

This allows to use the function in a future commit.
---
 libavformat/mpegtsenc.c | 34 +-
 1 file changed, 17 insertions(+), 17 deletions(-)

diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
index fd849e5..b437100 100644
--- a/libavformat/mpegtsenc.c
+++ b/libavformat/mpegtsenc.c
@@ -255,6 +255,23 @@ static void mpegts_write_pat(AVFormatContext *s)
   data, q - data);
 }
 
+/* NOTE: !str is accepted for an empty string */
+static void putstr8(uint8_t **q_ptr, const char *str)
+{
+uint8_t *q;
+int len;
+
+q = *q_ptr;
+if (!str)
+len = 0;
+else
+len = strlen(str);
+*q++ = len;
+memcpy(q, str, len);
+q += len;
+*q_ptr = q;
+}
+
 static int mpegts_write_pmt(AVFormatContext *s, MpegTSService *service)
 {
 MpegTSWrite *ts = s->priv_data;
@@ -637,23 +654,6 @@ static int mpegts_write_pmt(AVFormatContext *s, MpegTSService *service)
 return 0;
 }
 
-/* NOTE: !str is accepted for an empty string */
-static void putstr8(uint8_t **q_ptr, const char *str)
-{
-uint8_t *q;
-int len;
-
-q = *q_ptr;
-if (!str)
-len = 0;
-else
-len = strlen(str);
-*q++ = len;
-memcpy(q, str, len);
-q += len;
-*q_ptr = q;
-}
-
 static void mpegts_write_sdt(AVFormatContext *s)
 {
 MpegTSWrite *ts = s->priv_data;
-- 
1.9.1

>From 20f22c426a9f5c59d28f66a17b59d62301503d67 Mon Sep 17 00:00:00 2001
From: Stefano Sabatini 
Date: Tue, 12 Apr 2016 18:16:21 +0200
Subject: [PATCH] lavf/mpegtsenc: write metadata descriptor for timed ID3
 packets

This is required since some programs are not able to correctly recognize
the metadata. See H.222, 2.6.58 Metadata pointer descriptor.

putstr8() is modified in order to allow to skip writing the string
length.
---
 libavformat/mpegtsenc.c | 24 ++--
 1 file changed, 14 insertions(+), 10 deletions(-)

diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
index b437100..6f40615 100644
--- a/libavformat/mpegtsenc.c
+++ b/libavformat/mpegtsenc.c
@@ -256,7 +256,7 @@ static void mpegts_write_pat(AVFormatContext *s)
 }
 
 /* NOTE: !str is accepted for an empty string */
-static void putstr8(uint8_t **q_ptr, const char *str)
+static void putstr8(uint8_t **q_ptr, const