[FFmpeg-cvslog] MAINTAINERS: update list of releases i maintain

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Mon Jul 28 
06:16:34 2014 +0200| [5003b8b9c3bacc4e542c923a7766c2ff46e0b1e8] | committer: 
Michael Niedermayer

MAINTAINERS: update list of releases i maintain

Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=5003b8b9c3bacc4e542c923a7766c2ff46e0b1e8
---

 MAINTAINERS |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index 392d509..c383d3f 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -528,8 +528,8 @@ x86 Michael Niedermayer
 Releases
 
 
+2.3 Michael Niedermayer
 2.2 Michael Niedermayer
-2.1 Michael Niedermayer
 1.2 Michael Niedermayer
 
 If you want to maintain an older release, please contact us

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


[FFmpeg-cvslog] Merge commit 'c5fca0174db9ed45be821177f49bd9633152704d'

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Mon Jul 28 
12:36:28 2014 +0200| [2e5c8b06491b3713405421e1dcbcdf9bb1e7dfea] | committer: 
Michael Niedermayer

Merge commit 'c5fca0174db9ed45be821177f49bd9633152704d'

* commit 'c5fca0174db9ed45be821177f49bd9633152704d':
  lavc: add a property for marking codecs that support frame reordering

Conflicts:
doc/APIchanges
libavcodec/avcodec.h
libavcodec/codec_desc.c
libavcodec/version.h

Merged-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=2e5c8b06491b3713405421e1dcbcdf9bb1e7dfea
---



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


[FFmpeg-cvslog] lavc: add a property for marking codecs that support frame reordering

2014-07-28 Thread Anton Khirnov
ffmpeg | branch: master | Anton Khirnov  | Sun Jul 20 
11:26:13 2014 +| [c5fca0174db9ed45be821177f49bd9633152704d] | committer: 
Anton Khirnov

lavc: add a property for marking codecs that support frame reordering

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c5fca0174db9ed45be821177f49bd9633152704d
---

 doc/APIchanges  |3 +++
 libavcodec/avcodec.h|   10 ++
 libavcodec/codec_desc.c |   32 
 libavcodec/version.h|2 +-
 4 files changed, 30 insertions(+), 17 deletions(-)

diff --git a/doc/APIchanges b/doc/APIchanges
index 9535b88..8fb0c23 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -13,6 +13,9 @@ libavutil: 2013-12-xx
 
 API changes, most recent first:
 
+2014-xx-xx - xxx - lavc 55.57.0 - avcodec.h
+  Add AV_CODEC_PROP_REORDER to mark codecs supporting frame reordering.
+
 2014-07-xx - xxx - lavu 53.18.0 - display.h
   Add av_display_matrix_flip() to flip the transformation matrix.
 
diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index 8f93911..7385dd3 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -509,6 +509,16 @@ typedef struct AVCodecDescriptor {
  * Codec supports lossless compression. Audio and video codecs only.
  */
 #define AV_CODEC_PROP_LOSSLESS  (1 << 2)
+/**
+ * Codec supports frame reordering. That is, the coded order (the order in 
which
+ * the encoded packets are output by the encoders / stored / input to the
+ * decoders) may be different from the presentation order of the corresponding
+ * frames.
+ *
+ * For codecs that do not have this property set, PTS and DTS should always be
+ * equal.
+ */
+#define AV_CODEC_PROP_REORDER   (1 << 3)
 
 /**
  * @ingroup lavc_decoding
diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c
index f0a6dad..548c508 100644
--- a/libavcodec/codec_desc.c
+++ b/libavcodec/codec_desc.c
@@ -30,14 +30,14 @@ static const AVCodecDescriptor codec_descriptors[] = {
 .type  = AVMEDIA_TYPE_VIDEO,
 .name  = "mpeg1video",
 .long_name = NULL_IF_CONFIG_SMALL("MPEG-1 video"),
-.props = AV_CODEC_PROP_LOSSY,
+.props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
 },
 {
 .id= AV_CODEC_ID_MPEG2VIDEO,
 .type  = AVMEDIA_TYPE_VIDEO,
 .name  = "mpeg2video",
 .long_name = NULL_IF_CONFIG_SMALL("MPEG-1 video"),
-.props = AV_CODEC_PROP_LOSSY,
+.props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
 },
 #if FF_API_XVMC
 {
@@ -60,7 +60,7 @@ static const AVCodecDescriptor codec_descriptors[] = {
 .type  = AVMEDIA_TYPE_VIDEO,
 .name  = "h263",
 .long_name = NULL_IF_CONFIG_SMALL("H.263 / H.263-1996, H.263+ / 
H.263-1998 / H.263 version 2"),
-.props = AV_CODEC_PROP_LOSSY,
+.props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
 },
 {
 .id= AV_CODEC_ID_RV10,
@@ -74,7 +74,7 @@ static const AVCodecDescriptor codec_descriptors[] = {
 .type  = AVMEDIA_TYPE_VIDEO,
 .name  = "rv20",
 .long_name = NULL_IF_CONFIG_SMALL("RealVideo 1.0"),
-.props = AV_CODEC_PROP_LOSSY,
+.props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
 },
 {
 .id= AV_CODEC_ID_MJPEG,
@@ -95,7 +95,7 @@ static const AVCodecDescriptor codec_descriptors[] = {
 .type  = AVMEDIA_TYPE_VIDEO,
 .name  = "mpeg4",
 .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2"),
-.props = AV_CODEC_PROP_LOSSY,
+.props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
 },
 {
 .id= AV_CODEC_ID_RAWVIDEO,
@@ -144,14 +144,14 @@ static const AVCodecDescriptor codec_descriptors[] = {
 .type  = AVMEDIA_TYPE_VIDEO,
 .name  = "h263p",
 .long_name = NULL_IF_CONFIG_SMALL("H.263+ / H.263-1998 / H.263 version 
2"),
-.props = AV_CODEC_PROP_LOSSY,
+.props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
 },
 {
 .id= AV_CODEC_ID_H263I,
 .type  = AVMEDIA_TYPE_VIDEO,
 .name  = "h263i",
 .long_name = NULL_IF_CONFIG_SMALL("Intel H.263"),
-.props = AV_CODEC_PROP_LOSSY,
+.props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
 },
 {
 .id= AV_CODEC_ID_FLV1,
@@ -172,7 +172,7 @@ static const AVCodecDescriptor codec_descriptors[] = {
 .type  = AVMEDIA_TYPE_VIDEO,
 .name  = "svq3",
 .long_name = NULL_IF_CONFIG_SMALL("Sorenson Vector Quantizer 3 / 
Sorenson Video 3 / SVQ3"),
-.props = AV_CODEC_PROP_LOSSY,
+.props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
 },
 {
 .id= AV_CODEC_ID_DVVIDEO,
@@ -200,7 +200,7 @@ static const AVCodecDescriptor codec_descriptors[] = {
 .type  = AVMEDIA_TYPE_VIDEO,
 .name  = "h264",
 

[FFmpeg-cvslog] codec_desc: fix some typos in long codec names

2014-07-28 Thread Anton Khirnov
ffmpeg | branch: master | Anton Khirnov  | Sun Jul 20 
11:34:30 2014 +| [4b169321b84502302f2badb056ebee4fdaea94fa] | committer: 
Anton Khirnov

codec_desc: fix some typos in long codec names

The rv20 typo spotted by Hendrik Leppkes 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4b169321b84502302f2badb056ebee4fdaea94fa
---

 libavcodec/codec_desc.c |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c
index 548c508..c21c57e 100644
--- a/libavcodec/codec_desc.c
+++ b/libavcodec/codec_desc.c
@@ -36,7 +36,7 @@ static const AVCodecDescriptor codec_descriptors[] = {
 .id= AV_CODEC_ID_MPEG2VIDEO,
 .type  = AVMEDIA_TYPE_VIDEO,
 .name  = "mpeg2video",
-.long_name = NULL_IF_CONFIG_SMALL("MPEG-1 video"),
+.long_name = NULL_IF_CONFIG_SMALL("MPEG-2 video"),
 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
 },
 #if FF_API_XVMC
@@ -73,7 +73,7 @@ static const AVCodecDescriptor codec_descriptors[] = {
 .id= AV_CODEC_ID_RV20,
 .type  = AVMEDIA_TYPE_VIDEO,
 .name  = "rv20",
-.long_name = NULL_IF_CONFIG_SMALL("RealVideo 1.0"),
+.long_name = NULL_IF_CONFIG_SMALL("RealVideo 2.0"),
 .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER,
 },
 {

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


[FFmpeg-cvslog] Merge commit '4b169321b84502302f2badb056ebee4fdaea94fa'

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Mon Jul 28 
12:45:19 2014 +0200| [c11255ae8b1a6239cfde38bb6d44dde35eee9648] | committer: 
Michael Niedermayer

Merge commit '4b169321b84502302f2badb056ebee4fdaea94fa'

* commit '4b169321b84502302f2badb056ebee4fdaea94fa':
  codec_desc: fix some typos in long codec names

See: 60b59d657e4d2c710391b8238533c2f3a51086f7
See: c3ca70204bd816bcef59c3d278b3d8607e2525ca
Merged-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c11255ae8b1a6239cfde38bb6d44dde35eee9648
---



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


[FFmpeg-cvslog] Merge commit 'e36a2f4c5280e2779b0e88974295a711cf8d88be'

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Mon Jul 28 
12:53:17 2014 +0200| [453224f10b375c280ab2ef8f6e40213ba5b77d8a] | committer: 
Michael Niedermayer

Merge commit 'e36a2f4c5280e2779b0e88974295a711cf8d88be'

* commit 'e36a2f4c5280e2779b0e88974295a711cf8d88be':
  hevc: eliminate an unnecessary array

Conflicts:
libavcodec/hevc.c

See: 255086a7e06417d98417cea192053b8a8531eb24
Merged-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=453224f10b375c280ab2ef8f6e40213ba5b77d8a
---



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


[FFmpeg-cvslog] hevc: eliminate an unnecessary array

2014-07-28 Thread Anton Khirnov
ffmpeg | branch: master | Anton Khirnov  | Sun Jul 27 
08:17:29 2014 +| [e36a2f4c5280e2779b0e88974295a711cf8d88be] | committer: 
Anton Khirnov

hevc: eliminate an unnecessary array

We do not need to store the value of the split flag.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=e36a2f4c5280e2779b0e88974295a711cf8d88be
---

 libavcodec/hevc.c |   14 +-
 libavcodec/hevc.h |1 -
 2 files changed, 5 insertions(+), 10 deletions(-)

diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c
index d9c9c71..18c7920 100644
--- a/libavcodec/hevc.c
+++ b/libavcodec/hevc.c
@@ -166,7 +166,6 @@ static void pic_arrays_free(HEVCContext *s)
 {
 av_freep(&s->sao);
 av_freep(&s->deblock);
-av_freep(&s->split_cu_flag);
 
 av_freep(&s->skip_flag);
 av_freep(&s->tab_ct_depth);
@@ -192,7 +191,6 @@ static int pic_arrays_init(HEVCContext *s, const HEVCSPS 
*sps)
 int log2_min_cb_size = sps->log2_min_cb_size;
 int width= sps->width;
 int height   = sps->height;
-int pic_size = width * height;
 int pic_size_in_ctb  = ((width  >> log2_min_cb_size) + 1) *
((height >> log2_min_cb_size) + 1);
 int ctb_count= sps->ctb_width * sps->ctb_height;
@@ -203,8 +201,7 @@ static int pic_arrays_init(HEVCContext *s, const HEVCSPS 
*sps)
 
 s->sao   = av_mallocz_array(ctb_count, sizeof(*s->sao));
 s->deblock   = av_mallocz_array(ctb_count, sizeof(*s->deblock));
-s->split_cu_flag = av_malloc(pic_size);
-if (!s->sao || !s->deblock || !s->split_cu_flag)
+if (!s->sao || !s->deblock)
 goto fail;
 
 s->skip_flag= av_malloc(pic_size_in_ctb);
@@ -2234,16 +2231,15 @@ static int hls_coding_quadtree(HEVCContext *s, int x0, 
int y0,
 {
 HEVCLocalContext *lc = &s->HEVClc;
 const int cb_size= 1 << log2_cb_size;
+int split_cu;
 
 lc->ct.depth = cb_depth;
 if (x0 + cb_size <= s->sps->width  &&
 y0 + cb_size <= s->sps->height &&
 log2_cb_size > s->sps->log2_min_cb_size) {
-SAMPLE(s->split_cu_flag, x0, y0) =
-ff_hevc_split_coding_unit_flag_decode(s, cb_depth, x0, y0);
+split_cu = ff_hevc_split_coding_unit_flag_decode(s, cb_depth, x0, y0);
 } else {
-SAMPLE(s->split_cu_flag, x0, y0) =
-(log2_cb_size > s->sps->log2_min_cb_size);
+split_cu = (log2_cb_size > s->sps->log2_min_cb_size);
 }
 if (s->pps->cu_qp_delta_enabled_flag &&
 log2_cb_size >= s->sps->log2_ctb_size - 
s->pps->diff_cu_qp_delta_depth) {
@@ -2251,7 +2247,7 @@ static int hls_coding_quadtree(HEVCContext *s, int x0, 
int y0,
 lc->tu.cu_qp_delta  = 0;
 }
 
-if (SAMPLE(s->split_cu_flag, x0, y0)) {
+if (split_cu) {
 const int cb_size_split = cb_size >> 1;
 const int x1 = x0 + cb_size_split;
 const int y1 = y0 + cb_size_split;
diff --git a/libavcodec/hevc.h b/libavcodec/hevc.h
index 978681b..e8f8f1a 100644
--- a/libavcodec/hevc.h
+++ b/libavcodec/hevc.h
@@ -806,7 +806,6 @@ typedef struct HEVCContext {
 VideoDSPContext vdsp;
 BswapDSPContext bdsp;
 int8_t *qp_y_tab;
-uint8_t *split_cu_flag;
 uint8_t *horizontal_bs;
 uint8_t *vertical_bs;
 

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


[FFmpeg-cvslog] hevc: simplify splitting the transform tree blocks

2014-07-28 Thread Anton Khirnov
ffmpeg | branch: master | Anton Khirnov  | Sun Jul 27 
09:19:16 2014 +| [53a11135f2fb2123408b295f9aaae3d6f861aea5] | committer: 
Anton Khirnov

hevc: simplify splitting the transform tree blocks

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=53a11135f2fb2123408b295f9aaae3d6f861aea5
---

 libavcodec/hevc.c |   39 +--
 1 file changed, 17 insertions(+), 22 deletions(-)

diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c
index 18c7920..9c5cc50 100644
--- a/libavcodec/hevc.c
+++ b/libavcodec/hevc.c
@@ -1392,29 +1392,24 @@ static int hls_transform_tree(HEVCContext *s, int x0, 
int y0,
 }
 
 if (split_transform_flag) {
-int x1 = x0 + ((1 << log2_trafo_size) >> 1);
-int y1 = y0 + ((1 << log2_trafo_size) >> 1);
+const int trafo_size_split = 1 << (log2_trafo_size - 1);
+const int x1 = x0 + trafo_size_split;
+const int y1 = y0 + trafo_size_split;
+
+#define SUBDIVIDE(x, y, idx)   
 \
+do {   
 \
+ret = hls_transform_tree(s, x, y, x0, y0, cb_xBase, cb_yBase, 
log2_cb_size, \
+ log2_trafo_size - 1, trafo_depth + 1, idx);   
 \
+if (ret < 0)   
 \
+return ret;
 \
+} while (0)
 
-ret = hls_transform_tree(s, x0, y0, x0, y0, cb_xBase, cb_yBase,
- log2_cb_size, log2_trafo_size - 1,
- trafo_depth + 1, 0);
-if (ret < 0)
-return ret;
-ret = hls_transform_tree(s, x1, y0, x0, y0, cb_xBase, cb_yBase,
- log2_cb_size, log2_trafo_size - 1,
- trafo_depth + 1, 1);
-if (ret < 0)
-return ret;
-ret = hls_transform_tree(s, x0, y1, x0, y0, cb_xBase, cb_yBase,
- log2_cb_size, log2_trafo_size - 1,
- trafo_depth + 1, 2);
-if (ret < 0)
-return ret;
-ret = hls_transform_tree(s, x1, y1, x0, y0, cb_xBase, cb_yBase,
- log2_cb_size, log2_trafo_size - 1,
- trafo_depth + 1, 3);
-if (ret < 0)
-return ret;
+SUBDIVIDE(x0, y0, 0);
+SUBDIVIDE(x1, y0, 1);
+SUBDIVIDE(x0, y1, 2);
+SUBDIVIDE(x1, y1, 3);
+
+#undef SUBDIVIDE
 } else {
 int min_tu_size  = 1 << s->sps->log2_min_tb_size;
 int log2_min_tu_size = s->sps->log2_min_tb_size;

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


[FFmpeg-cvslog] Merge commit '53a11135f2fb2123408b295f9aaae3d6f861aea5'

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Mon Jul 28 
13:03:59 2014 +0200| [2fb8aa9b10fcb5f342398a9dcea69fe8ed33db39] | committer: 
Michael Niedermayer

Merge commit '53a11135f2fb2123408b295f9aaae3d6f861aea5'

* commit '53a11135f2fb2123408b295f9aaae3d6f861aea5':
  hevc: simplify splitting the transform tree blocks

Conflicts:
libavcodec/hevc.c

Merged-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=2fb8aa9b10fcb5f342398a9dcea69fe8ed33db39
---



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


[FFmpeg-cvslog] hevc: do not store the transform inter_split flag in the context

2014-07-28 Thread Anton Khirnov
ffmpeg | branch: master | Anton Khirnov  | Sun Jul 27 
09:49:37 2014 +| [0daa2554636ba1d31f3162ffb86991e84eb938a8] | committer: 
Anton Khirnov

hevc: do not store the transform inter_split flag in the context

It does not need to be preserved.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=0daa2554636ba1d31f3162ffb86991e84eb938a8
---

 libavcodec/hevc.c |   12 ++--
 libavcodec/hevc.h |3 ---
 2 files changed, 6 insertions(+), 9 deletions(-)

diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c
index 9c5cc50..c2c4006 100644
--- a/libavcodec/hevc.c
+++ b/libavcodec/hevc.c
@@ -1361,20 +1361,20 @@ static int hls_transform_tree(HEVCContext *s, int x0, 
int y0,
 
 lc->tt.cbf_luma = 1;
 
-lc->tt.inter_split_flag = s->sps->max_transform_hierarchy_depth_inter == 0 
&&
-  lc->cu.pred_mode == MODE_INTER &&
-  lc->cu.part_mode != PART_2Nx2N &&
-  trafo_depth == 0;
-
 if (log2_trafo_size <= s->sps->log2_max_trafo_size &&
 log2_trafo_size >  s->sps->log2_min_tb_size&&
 trafo_depth < lc->cu.max_trafo_depth   &&
 !(lc->cu.intra_split_flag && trafo_depth == 0)) {
 split_transform_flag = ff_hevc_split_transform_flag_decode(s, 
log2_trafo_size);
 } else {
+int inter_split = s->sps->max_transform_hierarchy_depth_inter == 0 &&
+  lc->cu.pred_mode == MODE_INTER &&
+  lc->cu.part_mode != PART_2Nx2N &&
+  trafo_depth == 0;
+
 split_transform_flag = log2_trafo_size > s->sps->log2_max_trafo_size ||
(lc->cu.intra_split_flag && trafo_depth == 0) ||
-   lc->tt.inter_split_flag;
+   inter_split;
 }
 
 if (log2_trafo_size > 2) {
diff --git a/libavcodec/hevc.h b/libavcodec/hevc.h
index e8f8f1a..6894160 100644
--- a/libavcodec/hevc.h
+++ b/libavcodec/hevc.h
@@ -650,9 +650,6 @@ typedef struct TransformTree {
 uint8_t cbf_cb[MAX_TRANSFORM_DEPTH][MAX_CU_SIZE * MAX_CU_SIZE];
 uint8_t cbf_cr[MAX_TRANSFORM_DEPTH][MAX_CU_SIZE * MAX_CU_SIZE];
 uint8_t cbf_luma;
-
-// Inferred parameters
-uint8_t inter_split_flag;
 } TransformTree;
 
 typedef struct TransformUnit {

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


[FFmpeg-cvslog] Merge commit '0daa2554636ba1d31f3162ffb86991e84eb938a8'

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Mon Jul 28 
13:09:00 2014 +0200| [0a1ffc57882c467b6573b23f1d206aa87caf0025] | committer: 
Michael Niedermayer

Merge commit '0daa2554636ba1d31f3162ffb86991e84eb938a8'

* commit '0daa2554636ba1d31f3162ffb86991e84eb938a8':
  hevc: do not store the transform inter_split flag in the context

Merged-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=0a1ffc57882c467b6573b23f1d206aa87caf0025
---



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


[FFmpeg-cvslog] hevc: eliminate unnecessary cbf_c{b,r} arrays

2014-07-28 Thread Anton Khirnov
ffmpeg | branch: master | Anton Khirnov  | Sun Jul 27 
10:49:27 2014 +| [4aa80808bcc2a30fcd7ce5b38594319df3a85b36] | committer: 
Anton Khirnov

hevc: eliminate unnecessary cbf_c{b,r} arrays

They are replaced by passing additional parameters to the transform
functions.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4aa80808bcc2a30fcd7ce5b38594319df3a85b36
---

 libavcodec/hevc.c |   60 -
 libavcodec/hevc.h |3 ---
 2 files changed, 22 insertions(+), 41 deletions(-)

diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c
index c2c4006..d889b57 100644
--- a/libavcodec/hevc.c
+++ b/libavcodec/hevc.c
@@ -1233,7 +1233,8 @@ static void hls_residual_coding(HEVCContext *s, int x0, 
int y0,
 static int hls_transform_unit(HEVCContext *s, int x0, int y0,
   int xBase, int yBase, int cb_xBase, int cb_yBase,
   int log2_cb_size, int log2_trafo_size,
-  int trafo_depth, int blk_idx)
+  int trafo_depth, int blk_idx,
+  int cbf_cb, int cbf_cr)
 {
 HEVCLocalContext *lc = &s->HEVClc;
 
@@ -1256,9 +1257,7 @@ static int hls_transform_unit(HEVCContext *s, int x0, int 
y0,
 }
 }
 
-if (lc->tt.cbf_luma ||
-SAMPLE_CBF(lc->tt.cbf_cb[trafo_depth], x0, y0) ||
-SAMPLE_CBF(lc->tt.cbf_cr[trafo_depth], x0, y0)) {
+if (lc->tt.cbf_luma || cbf_cb || cbf_cr) {
 int scan_idx   = SCAN_DIAG;
 int scan_idx_c = SCAN_DIAG;
 
@@ -1304,14 +1303,14 @@ static int hls_transform_unit(HEVCContext *s, int x0, 
int y0,
 if (lc->tt.cbf_luma)
 hls_residual_coding(s, x0, y0, log2_trafo_size, scan_idx, 0);
 if (log2_trafo_size > 2) {
-if (SAMPLE_CBF(lc->tt.cbf_cb[trafo_depth], x0, y0))
+if (cbf_cb)
 hls_residual_coding(s, x0, y0, log2_trafo_size - 1, 
scan_idx_c, 1);
-if (SAMPLE_CBF(lc->tt.cbf_cr[trafo_depth], x0, y0))
+if (cbf_cr)
 hls_residual_coding(s, x0, y0, log2_trafo_size - 1, 
scan_idx_c, 2);
 } else if (blk_idx == 3) {
-if (SAMPLE_CBF(lc->tt.cbf_cb[trafo_depth], xBase, yBase))
+if (cbf_cb)
 hls_residual_coding(s, xBase, yBase, log2_trafo_size, 
scan_idx_c, 1);
-if (SAMPLE_CBF(lc->tt.cbf_cr[trafo_depth], xBase, yBase))
+if (cbf_cr)
 hls_residual_coding(s, xBase, yBase, log2_trafo_size, 
scan_idx_c, 2);
 }
 }
@@ -1336,22 +1335,13 @@ static void set_deblocking_bypass(HEVCContext *s, int 
x0, int y0, int log2_cb_si
 static int hls_transform_tree(HEVCContext *s, int x0, int y0,
   int xBase, int yBase, int cb_xBase, int cb_yBase,
   int log2_cb_size, int log2_trafo_size,
-  int trafo_depth, int blk_idx)
+  int trafo_depth, int blk_idx,
+  int cbf_cb, int cbf_cr)
 {
 HEVCLocalContext *lc = &s->HEVClc;
 uint8_t split_transform_flag;
 int ret;
 
-if (trafo_depth > 0 && log2_trafo_size == 2) {
-SAMPLE_CBF(lc->tt.cbf_cb[trafo_depth], x0, y0) =
-SAMPLE_CBF(lc->tt.cbf_cb[trafo_depth - 1], xBase, yBase);
-SAMPLE_CBF(lc->tt.cbf_cr[trafo_depth], x0, y0) =
-SAMPLE_CBF(lc->tt.cbf_cr[trafo_depth - 1], xBase, yBase);
-} else {
-SAMPLE_CBF(lc->tt.cbf_cb[trafo_depth], x0, y0) =
-SAMPLE_CBF(lc->tt.cbf_cr[trafo_depth], x0, y0) = 0;
-}
-
 if (lc->cu.intra_split_flag) {
 if (trafo_depth == 1)
 lc->tu.cur_intra_pred_mode = lc->pu.intra_pred_mode[blk_idx];
@@ -1377,19 +1367,14 @@ static int hls_transform_tree(HEVCContext *s, int x0, 
int y0,
inter_split;
 }
 
-if (log2_trafo_size > 2) {
-if (trafo_depth == 0 ||
-SAMPLE_CBF(lc->tt.cbf_cb[trafo_depth - 1], xBase, yBase)) {
-SAMPLE_CBF(lc->tt.cbf_cb[trafo_depth], x0, y0) =
-ff_hevc_cbf_cb_cr_decode(s, trafo_depth);
-}
-
-if (trafo_depth == 0 ||
-SAMPLE_CBF(lc->tt.cbf_cr[trafo_depth - 1], xBase, yBase)) {
-SAMPLE_CBF(lc->tt.cbf_cr[trafo_depth], x0, y0) =
-ff_hevc_cbf_cb_cr_decode(s, trafo_depth);
-}
-}
+if (log2_trafo_size > 2 && (trafo_depth == 0 || cbf_cb))
+cbf_cb = ff_hevc_cbf_cb_cr_decode(s, trafo_depth);
+else if (log2_trafo_size > 2 || trafo_depth == 0)
+cbf_cb = 0;
+if (log2_trafo_size > 2 && (trafo_depth == 0 || cbf_cr))
+cbf_cr = ff_hevc_cbf_cb_cr_decode(s, trafo_depth);
+else if (log2_trafo_size > 2 || trafo_depth == 0)
+cbf_cr = 0;
 
 if (split_transform_flag) {
 const int trafo_size_split = 1 << (log2_trafo_size - 1);
@@ -1399,7 +1384,8 @@ static int hls_transform_tree(HEVCContext *s, int x0, int 
y0,
 

[FFmpeg-cvslog] Merge commit '4aa80808bcc2a30fcd7ce5b38594319df3a85b36'

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Mon Jul 28 
13:35:51 2014 +0200| [4a73fa19ca7ac74f16422eabf731b86796b7d588] | committer: 
Michael Niedermayer

Merge commit '4aa80808bcc2a30fcd7ce5b38594319df3a85b36'

* commit '4aa80808bcc2a30fcd7ce5b38594319df3a85b36':
  hevc: eliminate unnecessary cbf_c{b,r} arrays

Conflicts:
libavcodec/hevc.c

See: 77ef9fd1e938010600620c1d32cabd15e7d5b853
Merged-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4a73fa19ca7ac74f16422eabf731b86796b7d588
---



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


[FFmpeg-cvslog] Merge commit 'e76f2d11970484266e67a12961f2339a5c2fccf9'

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Mon Jul 28 
14:02:03 2014 +0200| [e0492311c8541da55a4b08641364ce8e1a169740] | committer: 
Michael Niedermayer

Merge commit 'e76f2d11970484266e67a12961f2339a5c2fccf9'

* commit 'e76f2d11970484266e67a12961f2339a5c2fccf9':
  hevc: eliminate the last element from TransformTree

Conflicts:
libavcodec/hevc.c

Merged-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=e0492311c8541da55a4b08641364ce8e1a169740
---



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


[FFmpeg-cvslog] hevc: eliminate the last element from TransformTree

2014-07-28 Thread Anton Khirnov
ffmpeg | branch: master | Anton Khirnov  | Sun Jul 27 
10:59:40 2014 +| [e76f2d11970484266e67a12961f2339a5c2fccf9] | committer: 
Anton Khirnov

hevc: eliminate the last element from TransformTree

Replace it by passing an additional parameter to transform_unit()

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=e76f2d11970484266e67a12961f2339a5c2fccf9
---

 libavcodec/hevc.c |   15 +++
 libavcodec/hevc.h |5 -
 2 files changed, 7 insertions(+), 13 deletions(-)

diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c
index d889b57..20d2878 100644
--- a/libavcodec/hevc.c
+++ b/libavcodec/hevc.c
@@ -1234,7 +1234,7 @@ static int hls_transform_unit(HEVCContext *s, int x0, int 
y0,
   int xBase, int yBase, int cb_xBase, int cb_yBase,
   int log2_cb_size, int log2_trafo_size,
   int trafo_depth, int blk_idx,
-  int cbf_cb, int cbf_cr)
+  int cbf_luma, int cbf_cb, int cbf_cr)
 {
 HEVCLocalContext *lc = &s->HEVClc;
 
@@ -1257,7 +1257,7 @@ static int hls_transform_unit(HEVCContext *s, int x0, int 
y0,
 }
 }
 
-if (lc->tt.cbf_luma || cbf_cb || cbf_cr) {
+if (cbf_luma || cbf_cb || cbf_cr) {
 int scan_idx   = SCAN_DIAG;
 int scan_idx_c = SCAN_DIAG;
 
@@ -1300,7 +1300,7 @@ static int hls_transform_unit(HEVCContext *s, int x0, int 
y0,
 }
 }
 
-if (lc->tt.cbf_luma)
+if (cbf_luma)
 hls_residual_coding(s, x0, y0, log2_trafo_size, scan_idx, 0);
 if (log2_trafo_size > 2) {
 if (cbf_cb)
@@ -1349,8 +1349,6 @@ static int hls_transform_tree(HEVCContext *s, int x0, int 
y0,
 lc->tu.cur_intra_pred_mode = lc->pu.intra_pred_mode[0];
 }
 
-lc->tt.cbf_luma = 1;
-
 if (log2_trafo_size <= s->sps->log2_max_trafo_size &&
 log2_trafo_size >  s->sps->log2_min_tb_size&&
 trafo_depth < lc->cu.max_trafo_depth   &&
@@ -1400,18 +1398,19 @@ do {
 int min_tu_size  = 1 << s->sps->log2_min_tb_size;
 int log2_min_tu_size = s->sps->log2_min_tb_size;
 int min_tu_width = s->sps->min_tb_width;
+int cbf_luma = 1;
 
 if (lc->cu.pred_mode == MODE_INTRA || trafo_depth != 0 ||
 cbf_cb || cbf_cr)
-lc->tt.cbf_luma = ff_hevc_cbf_luma_decode(s, trafo_depth);
+cbf_luma = ff_hevc_cbf_luma_decode(s, trafo_depth);
 
 ret = hls_transform_unit(s, x0, y0, xBase, yBase, cb_xBase, cb_yBase,
  log2_cb_size, log2_trafo_size, trafo_depth,
- blk_idx, cbf_cb, cbf_cr);
+ blk_idx, cbf_luma, cbf_cb, cbf_cr);
 if (ret < 0)
 return ret;
 // TODO: store cbf_luma somewhere else
-if (lc->tt.cbf_luma) {
+if (cbf_luma) {
 int i, j;
 for (i = 0; i < (1 << log2_trafo_size); i += min_tu_size)
 for (j = 0; j < (1 << log2_trafo_size); j += min_tu_size) {
diff --git a/libavcodec/hevc.h b/libavcodec/hevc.h
index ad13d10..96dd80d 100644
--- a/libavcodec/hevc.h
+++ b/libavcodec/hevc.h
@@ -645,10 +645,6 @@ typedef struct PredictionUnit {
 uint8_t intra_pred_mode_c;
 } PredictionUnit;
 
-typedef struct TransformTree {
-uint8_t cbf_luma;
-} TransformTree;
-
 typedef struct TransformUnit {
 int cu_qp_delta;
 
@@ -724,7 +720,6 @@ typedef struct HEVCLocalContext {
 
 GetBitContext gb;
 CABACContext cc;
-TransformTree tt;
 
 int8_t qp_y;
 int8_t curr_qp_y;

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


[FFmpeg-cvslog] hevc: rename variable in boundary strength to b more explicit

2014-07-28 Thread Anton Khirnov
ffmpeg | branch: master | Anton Khirnov  | Mon Jul 28 
01:06:32 2014 +0200| [a5c621aa852522c79146035b2db4b89d2e096d3c] | committer: 
Michael Niedermayer

hevc: rename variable in boundary strength to b more explicit

Signed-off-by: Mickaël Raulet 

cherry picked from commit 348bebedc0012aae201419669fca1eb61ec93ca6
Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=a5c621aa852522c79146035b2db4b89d2e096d3c
---

 libavcodec/hevc.c|   36 
 libavcodec/hevc.h|9 +++--
 libavcodec/hevc_filter.c |8 
 3 files changed, 27 insertions(+), 26 deletions(-)

diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c
index 409be52..4473c27 100644
--- a/libavcodec/hevc.c
+++ b/libavcodec/hevc.c
@@ -2205,9 +2205,6 @@ static void hls_decode_neighbour(HEVCContext *s, int 
x_ctb, int y_ctb,
 int ctb_addr_rs   = s->pps->ctb_addr_ts_to_rs[ctb_addr_ts];
 int ctb_addr_in_slice = ctb_addr_rs - s->sh.slice_addr;
 
-int tile_left_boundary, tile_up_boundary;
-int slice_left_boundary, slice_up_boundary;
-
 s->tab_slice_address[ctb_addr_rs] = s->sh.slice_addr;
 
 if (s->pps->entropy_coding_sync_enabled_flag) {
@@ -2226,25 +2223,24 @@ static void hls_decode_neighbour(HEVCContext *s, int 
x_ctb, int y_ctb,
 
 lc->end_of_tiles_y = FFMIN(y_ctb + ctb_size, s->sps->height);
 
+lc->boundary_flags = 0;
 if (s->pps->tiles_enabled_flag) {
-tile_left_boundary = x_ctb > 0 &&
- s->pps->tile_id[ctb_addr_ts] != 
s->pps->tile_id[s->pps->ctb_addr_rs_to_ts[ctb_addr_rs-1]];
-slice_left_boundary = x_ctb > 0 &&
-  s->tab_slice_address[ctb_addr_rs] != 
s->tab_slice_address[ctb_addr_rs - 1];
-tile_up_boundary  = y_ctb > 0 &&
-s->pps->tile_id[ctb_addr_ts] != 
s->pps->tile_id[s->pps->ctb_addr_rs_to_ts[ctb_addr_rs - s->sps->ctb_width]];
-slice_up_boundary = y_ctb > 0 &&
-s->tab_slice_address[ctb_addr_rs] != 
s->tab_slice_address[ctb_addr_rs - s->sps->ctb_width];
+if (x_ctb > 0 && s->pps->tile_id[ctb_addr_ts] != 
s->pps->tile_id[s->pps->ctb_addr_rs_to_ts[ctb_addr_rs-1]])
+lc->boundary_flags |= BOUNDARY_LEFT_TILE;
+if (x_ctb > 0 && s->tab_slice_address[ctb_addr_rs] != 
s->tab_slice_address[ctb_addr_rs - 1])
+lc->boundary_flags |= BOUNDARY_LEFT_SLICE;
+if (y_ctb > 0 && s->pps->tile_id[ctb_addr_ts] != 
s->pps->tile_id[s->pps->ctb_addr_rs_to_ts[ctb_addr_rs - s->sps->ctb_width]])
+lc->boundary_flags |= BOUNDARY_UPPER_TILE;
+if (y_ctb > 0 && s->tab_slice_address[ctb_addr_rs] != 
s->tab_slice_address[ctb_addr_rs - s->sps->ctb_width])
+lc->boundary_flags |= BOUNDARY_UPPER_SLICE;
 } else {
-tile_left_boundary =
-tile_up_boundary   = 0;
-slice_left_boundary = ctb_addr_in_slice <= 0;
-slice_up_boundary   = ctb_addr_in_slice < s->sps->ctb_width;
-}
-lc->slice_or_tiles_left_boundary = slice_left_boundary + 
(tile_left_boundary << 1);
-lc->slice_or_tiles_up_boundary   = slice_up_boundary   + (tile_up_boundary 
  << 1);
-lc->ctb_left_flag = ((x_ctb > 0) && (ctb_addr_in_slice > 0)
  && !tile_left_boundary);
-lc->ctb_up_flag   = ((y_ctb > 0) && (ctb_addr_in_slice >= 
s->sps->ctb_width) && !tile_up_boundary);
+if (!ctb_addr_in_slice > 0)
+lc->boundary_flags |= BOUNDARY_LEFT_SLICE;
+if (ctb_addr_in_slice < s->sps->ctb_width)
+lc->boundary_flags |= BOUNDARY_UPPER_SLICE;
+}
+lc->ctb_left_flag = ((x_ctb > 0) && (ctb_addr_in_slice > 0)
  && !(lc->boundary_flags & BOUNDARY_LEFT_TILE));
+lc->ctb_up_flag   = ((y_ctb > 0) && (ctb_addr_in_slice >= 
s->sps->ctb_width) && !(lc->boundary_flags & BOUNDARY_UPPER_TILE));
 lc->ctb_up_right_flag = ((y_ctb > 0) && 
(ctb_addr_in_slice+1 >= s->sps->ctb_width) && (s->pps->tile_id[ctb_addr_ts] == 
s->pps->tile_id[s->pps->ctb_addr_rs_to_ts[ctb_addr_rs+1 - s->sps->ctb_width]]));
 lc->ctb_up_left_flag  = ((x_ctb > 0) && (y_ctb > 0)  && 
(ctb_addr_in_slice-1 >= s->sps->ctb_width) && (s->pps->tile_id[ctb_addr_ts] == 
s->pps->tile_id[s->pps->ctb_addr_rs_to_ts[ctb_addr_rs-1 - s->sps->ctb_width]]));
 }
diff --git a/libavcodec/hevc.h b/libavcodec/hevc.h
index 7ed74db..8420f38 100644
--- a/libavcodec/hevc.h
+++ b/libavcodec/hevc.h
@@ -779,8 +779,13 @@ typedef struct HEVCLocalContext {
 PredictionUnit pu;
 NeighbourAvailable na;
 
-uint8_t slice_or_tiles_left_boundary;
-uint8_t slice_or_tiles_up_boundary;
+#define BOUNDARY_LEFT_SLICE (1 << 0)
+#define BOUNDARY_LEFT_TILE  (1 << 1)
+#define BOUNDARY_UPPER_SLICE(1 << 2)
+#define BOUNDARY_UPPER_TILE (1 << 3)
+/* properties of the boundary of the current CTB for the purposes
+ * of the deblocking filter */
+int boundary_flags;
 } HEVCLocalContext;
 

[FFmpeg-cvslog] hevc: clean up non relevant TODO

2014-07-28 Thread Mickaël Raulet
ffmpeg | branch: master | Mickaël Raulet  | Mon Jul 28 
00:48:06 2014 +0200| [42ffa226f9a5eb9458415223d1b70e3e7f7a946d] | committer: 
Michael Niedermayer

hevc: clean up non relevant TODO

cherry picked from commit a2ef95f043d89d05482af19460c9e9afdadec685

Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=42ffa226f9a5eb9458415223d1b70e3e7f7a946d
---

 libavcodec/hevc.c |1 -
 1 file changed, 1 deletion(-)

diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c
index 4473c27..3e9c86a 100644
--- a/libavcodec/hevc.c
+++ b/libavcodec/hevc.c
@@ -1209,7 +1209,6 @@ do {
 
 static int hls_pcm_sample(HEVCContext *s, int x0, int y0, int log2_cb_size)
 {
-//TODO: non-4:2:0 support
 HEVCLocalContext *lc = s->HEVClc;
 GetBitContext gb;
 int cb_size   = 1 << log2_cb_size;

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


[FFmpeg-cvslog] avcodec/hevc: add some const to cbf arrays

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Mon Jul 28 
14:28:56 2014 +0200| [772dfd5f6e5d0722b9c577929c7de41d851cf87d] | committer: 
Michael Niedermayer

avcodec/hevc: add some const to cbf arrays

Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=772dfd5f6e5d0722b9c577929c7de41d851cf87d
---

 libavcodec/hevc.c |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c
index 3e9c86a..592d897 100644
--- a/libavcodec/hevc.c
+++ b/libavcodec/hevc.c
@@ -1082,7 +1082,7 @@ static int hls_transform_tree(HEVCContext *s, int x0, int 
y0,
   int xBase, int yBase, int cb_xBase, int cb_yBase,
   int log2_cb_size, int log2_trafo_size,
   int trafo_depth, int blk_idx,
-  int *base_cbf_cb, int *base_cbf_cr)
+  const int *base_cbf_cb, const int *base_cbf_cr)
 {
 HEVCLocalContext *lc = s->HEVClc;
 uint8_t split_transform_flag;
@@ -2076,7 +2076,7 @@ static int hls_coding_unit(HEVCContext *s, int x0, int 
y0, int log2_cb_size)
 lc->cu.rqt_root_cbf = 
ff_hevc_no_residual_syntax_flag_decode(s);
 }
 if (lc->cu.rqt_root_cbf) {
-int cbf[2] = { 0 };
+const static int cbf[2] = { 0 };
 lc->cu.max_trafo_depth = lc->cu.pred_mode == MODE_INTRA ?
  
s->sps->max_transform_hierarchy_depth_intra + lc->cu.intra_split_flag :
  
s->sps->max_transform_hierarchy_depth_inter;

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


[FFmpeg-cvslog] avcodec/hevc: fix "discards const qualifier from pointer target type" warning

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Mon Jul 28 
14:34:47 2014 +0200| [243236a6f589fbf898e3015c15008776522c925a] | committer: 
Michael Niedermayer

avcodec/hevc: fix "discards const qualifier from pointer target type" warning

Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=243236a6f589fbf898e3015c15008776522c925a
---

 libavcodec/hevc.c |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c
index 592d897..06f73e7 100644
--- a/libavcodec/hevc.c
+++ b/libavcodec/hevc.c
@@ -276,7 +276,7 @@ static int decode_lt_rps(HEVCContext *s, LongTermRPS *rps, 
GetBitContext *gb)
 return 0;
 }
 
-static int get_buffer_sao(HEVCContext *s, AVFrame *frame, HEVCSPS *sps)
+static int get_buffer_sao(HEVCContext *s, AVFrame *frame, const HEVCSPS *sps)
 {
 int ret, i;
 

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


[FFmpeg-cvslog] version.sh: Print versions based on the last git tag for release branches

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: release/2.3 | Michael Niedermayer  | Mon Jul 
28 02:40:35 2014 +0200| [ee606fd0317df202b59946cf9b738c0a01056316] | committer: 
Michael Niedermayer

version.sh: Print versions based on the last git tag for release branches

release branches are detected by checking if "git" is not in RELEASE
This changes "N-64706-g2f71aeb" to "n2.3-8-g2f71aeb"
for git master theres no change

This should improve the readability of lists of versions which come from
more than 1 release branch or master + release. fate.ffmpeg.org is
one possible example

Reviewed-by: Timothy Gu 
Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=ee606fd0317df202b59946cf9b738c0a01056316
---

 version.sh |6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/version.sh b/version.sh
index 92edcb9..f9754eb 100755
--- a/version.sh
+++ b/version.sh
@@ -4,7 +4,11 @@
 
 # check for git short hash
 if ! test "$revision"; then
-revision=$(cd "$1" && git describe --tags --match N 2> /dev/null)
+if (cd "$1" && grep git RELEASE 2> /dev/null >/dev/null) ; then
+revision=$(cd "$1" && git describe --tags --match N 2> /dev/null)
+else
+revision=$(cd "$1" && git describe --tags --always 2> /dev/null)
+fi
 fi
 
 # Shallow Git clones (--depth) do not have the N tag:

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


[FFmpeg-cvslog] x86: hevc_mc: replace one lea by add

2014-07-28 Thread Christophe Gisquet
ffmpeg | branch: release/2.3 | Christophe Gisquet 
 | Fri Jul 25 19:07:27 2014 +0200| 
[65259b4d687a8d5ea8c49463b2a1178dc7fa6ca0] | committer: Michael Niedermayer

x86: hevc_mc: replace one lea by add

Should have been in 036f11bdb565.

Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=65259b4d687a8d5ea8c49463b2a1178dc7fa6ca0
---

 libavcodec/x86/hevc_mc.asm |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/x86/hevc_mc.asm b/libavcodec/x86/hevc_mc.asm
index 5cf37d0..d7796ec 100644
--- a/libavcodec/x86/hevc_mc.asm
+++ b/libavcodec/x86/hevc_mc.asm
@@ -342,7 +342,7 @@ QPEL_TABLE 10, 4, w, sse4
 
 %macro LOOP_END 4
 lea  %1q, [%1q+2*%2q]; dst += dststride
-lea  %3q, [%3q+  %4q]; src += srcstride
+add  %3q, %4q; src += srcstride
 dec  heightd ; cmp height
 jnz   .loop  ; height loop
 %endmacro

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


[FFmpeg-cvslog] remove VERSION file

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: release/2.3 | Michael Niedermayer  | Mon Jul 
28 02:22:11 2014 +0200| [2f71aeb30161edb5cb0fea5d3080094a22cc3038] | committer: 
Michael Niedermayer

remove VERSION file

it overrides what version.sh prints and thus makes its output
from release branches rather useless

Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=2f71aeb30161edb5cb0fea5d3080094a22cc3038
---

 VERSION |1 -
 1 file changed, 1 deletion(-)

diff --git a/VERSION b/VERSION
deleted file mode 100644
index bb576db..000
--- a/VERSION
+++ /dev/null
@@ -1 +0,0 @@
-2.3

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


[FFmpeg-cvslog] avfilter/vf_spp: use AVDCT

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: release/2.3 | Michael Niedermayer  | Sat Jul 
26 15:24:42 2014 +0200| [8f53d32dfbe2c727238f366ff649ce8debc17a6b] | committer: 
Michael Niedermayer

avfilter/vf_spp: use AVDCT

Signed-off-by: Michael Niedermayer 
(cherry picked from commit e3fac208246f5f94cfc4d3abdb1a4770272f96ee)

Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=8f53d32dfbe2c727238f366ff649ce8debc17a6b
---

 libavfilter/vf_spp.c |   13 +++--
 libavfilter/vf_spp.h |6 ++
 2 files changed, 9 insertions(+), 10 deletions(-)

diff --git a/libavfilter/vf_spp.c b/libavfilter/vf_spp.c
index 4e4a579..aff1ddf 100644
--- a/libavfilter/vf_spp.c
+++ b/libavfilter/vf_spp.c
@@ -233,9 +233,9 @@ static void filter(SPPContext *p, uint8_t *dst, uint8_t 
*src,
 const int y1 = y + offset[i + count - 1][1];
 const int index = x1 + y1*linesize;
 p->pdsp.get_pixels(block, p->src + index, linesize);
-p->fdsp.fdct(block);
-p->requantize(block2, block, qp, p->idsp.idct_permutation);
-p->idsp.idct(block2);
+p->dct->fdct(block);
+p->requantize(block2, block, qp, p->dct->idct_permutation);
+p->dct->idct(block2);
 add_block(p->temp + index, linesize, block2);
 }
 }
@@ -378,11 +378,11 @@ static av_cold int init(AVFilterContext *ctx)
 SPPContext *spp = ctx->priv;
 
 spp->avctx = avcodec_alloc_context3(NULL);
-if (!spp->avctx)
+spp->dct = avcodec_dct_alloc();
+if (!spp->avctx || !spp->dct)
 return AVERROR(ENOMEM);
-ff_idctdsp_init(&spp->idsp, spp->avctx);
-ff_fdctdsp_init(&spp->fdsp, spp->avctx);
 ff_pixblockdsp_init(&spp->pdsp, spp->avctx);
+avcodec_dct_init(spp->dct);
 spp->store_slice = store_slice_c;
 switch (spp->mode) {
 case MODE_HARD: spp->requantize = hardthresh_c; break;
@@ -403,6 +403,7 @@ static av_cold void uninit(AVFilterContext *ctx)
 avcodec_close(spp->avctx);
 av_freep(&spp->avctx);
 }
+av_freep(&spp->dct);
 av_freep(&spp->non_b_qp_table);
 }
 
diff --git a/libavfilter/vf_spp.h b/libavfilter/vf_spp.h
index c8eac3c..2dcf813 100644
--- a/libavfilter/vf_spp.h
+++ b/libavfilter/vf_spp.h
@@ -24,8 +24,7 @@
 
 #include "libavcodec/avcodec.h"
 #include "libavcodec/pixblockdsp.h"
-#include "libavcodec/idctdsp.h"
-#include "libavcodec/fdctdsp.h"
+#include "libavcodec/avdct.h"
 #include "avfilter.h"
 
 #define MAX_LEVEL 6 /* quality levels */
@@ -41,9 +40,8 @@ typedef struct {
 uint8_t *src;
 int16_t *temp;
 AVCodecContext *avctx;
-IDCTDSPContext idsp;
-FDCTDSPContext fdsp;
 PixblockDSPContext pdsp;
+AVDCT *dct;
 int8_t *non_b_qp_table;
 int non_b_qp_alloc_size;
 int use_bframe_qp;

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


[FFmpeg-cvslog] avcodec: add avdct

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: release/2.3 | Michael Niedermayer  | Sat Jul 
26 15:22:27 2014 +0200| [fcc6568a10252a69c83e6ce6b166574306631861] | committer: 
Michael Niedermayer

avcodec: add avdct

This provides a public sustainable API/ABI for DCT functions.
Only externally used dct functions are included.
The structure is extensible without ABI issues compared to the
existing dct contexts.

See Mailing list and IRC log of 2014-07-26/27

Reviewed-by: ubitux
Signed-off-by: Michael Niedermayer 
(cherry picked from commit 932ff7095696a90fda83a8c6343b57f475b40951)

Conflicts:

doc/APIchanges

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=fcc6568a10252a69c83e6ce6b166574306631861
---

 libavcodec/Makefile |1 +
 libavcodec/avdct.c  |  119 +++
 libavcodec/avdct.h  |   76 
 3 files changed, 196 insertions(+)

diff --git a/libavcodec/Makefile b/libavcodec/Makefile
index 0bbfa27..e5233f9 100644
--- a/libavcodec/Makefile
+++ b/libavcodec/Makefile
@@ -15,6 +15,7 @@ HEADERS = avcodec.h   
  \
 
 OBJS = allcodecs.o  \
audioconvert.o   \
+   avdct.o  \
avpacket.o   \
avpicture.o  \
bitstream.o  \
diff --git a/libavcodec/avdct.c b/libavcodec/avdct.c
new file mode 100644
index 000..720e772
--- /dev/null
+++ b/libavcodec/avdct.c
@@ -0,0 +1,119 @@
+/*
+ * Copyright (c) 2014 Michael Niedermayer 
+ *
+ * This file is part of FFmpeg.
+ *
+ * FFmpeg is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * FFmpeg is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with FFmpeg; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#include "avcodec.h"
+#include "idctdsp.h"
+#include "fdctdsp.h"
+#include "avdct.h"
+
+#define OFFSET(x) offsetof(AVDCT,x)
+#define DEFAULT 0 //should be NAN but it does not work as it is not a constant 
in glibc as required by ANSI/ISO C
+//these names are too long to be readable
+#define V AV_OPT_FLAG_VIDEO_PARAM
+#define A AV_OPT_FLAG_AUDIO_PARAM
+#define E AV_OPT_FLAG_ENCODING_PARAM
+#define D AV_OPT_FLAG_DECODING_PARAM
+
+static const AVOption avdct_options[] = {
+{"dct", "DCT algorithm", OFFSET(dct_algo), AV_OPT_TYPE_INT, {.i64 = DEFAULT }, 
0, INT_MAX, V|E, "dct"},
+{"auto", "autoselect a good one (default)", 0, AV_OPT_TYPE_CONST, {.i64 = 
FF_DCT_AUTO }, INT_MIN, INT_MAX, V|E, "dct"},
+{"fastint", "fast integer (experimental / for debugging)", 0, 
AV_OPT_TYPE_CONST, {.i64 = FF_DCT_FASTINT }, INT_MIN, INT_MAX, V|E, "dct"},
+{"int", "accurate integer", 0, AV_OPT_TYPE_CONST, {.i64 = FF_DCT_INT }, 
INT_MIN, INT_MAX, V|E, "dct"},
+{"mmx", "experimental / for debugging", 0, AV_OPT_TYPE_CONST, {.i64 = 
FF_DCT_MMX }, INT_MIN, INT_MAX, V|E, "dct"},
+{"altivec", "experimental / for debugging", 0, AV_OPT_TYPE_CONST, {.i64 = 
FF_DCT_ALTIVEC }, INT_MIN, INT_MAX, V|E, "dct"},
+{"faan", "floating point AAN DCT (experimental / for debugging)", 0, 
AV_OPT_TYPE_CONST, {.i64 = FF_DCT_FAAN }, INT_MIN, INT_MAX, V|E, "dct"},
+
+{"idct", "select IDCT implementation", OFFSET(idct_algo), AV_OPT_TYPE_INT, 
{.i64 = DEFAULT }, 0, INT_MAX, V|E|D, "idct"},
+{"auto", "autoselect a good one (default)", 0, AV_OPT_TYPE_CONST, {.i64 = 
FF_IDCT_AUTO }, INT_MIN, INT_MAX, V|E|D, "idct"},
+{"int", "experimental / for debugging", 0, AV_OPT_TYPE_CONST, {.i64 = 
FF_IDCT_INT }, INT_MIN, INT_MAX, V|E|D, "idct"},
+{"simple", "experimental / for debugging", 0, AV_OPT_TYPE_CONST, {.i64 = 
FF_IDCT_SIMPLE }, INT_MIN, INT_MAX, V|E|D, "idct"},
+{"simplemmx", "experimental / for debugging", 0, AV_OPT_TYPE_CONST, {.i64 = 
FF_IDCT_SIMPLEMMX }, INT_MIN, INT_MAX, V|E|D, "idct"},
+{"arm", "experimental / for debugging", 0, AV_OPT_TYPE_CONST, {.i64 = 
FF_IDCT_ARM }, INT_MIN, INT_MAX, V|E|D, "idct"},
+{"altivec", "experimental / for debugging", 0, AV_OPT_TYPE_CONST, {.i64 = 
FF_IDCT_ALTIVEC }, INT_MIN, INT_MAX, V|E|D, "idct"},
+#if FF_API_ARCH_SH4
+{"sh4", "experimental / for debugging", 0, AV_OPT_TYPE_CONST, {.i64 = 
FF_IDCT_SH4 }, INT_MIN, INT_MAX, V|E|D, "idct"},
+#endif
+{"simplearm", "experimental / for debugging", 0, AV_OPT_TYP

[FFmpeg-cvslog] version.sh: Print versions based on the last git tag for release branches

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Mon Jul 28 
02:40:35 2014 +0200| [f3158c3f29cd24cf50a02b58201ec2cf149b51e5] | committer: 
Michael Niedermayer

version.sh: Print versions based on the last git tag for release branches

release branches are detected by checking if "git" is not in RELEASE
This changes "N-64706-g2f71aeb" to "n2.3-8-g2f71aeb"
for git master theres no change

This should improve the readability of lists of versions which come from
more than 1 release branch or master + release. fate.ffmpeg.org is
one possible example

Reviewed-by: Timothy Gu 
Signed-off-by: Michael Niedermayer 
(cherry picked from commit ee606fd0317df202b59946cf9b738c0a01056316)

Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=f3158c3f29cd24cf50a02b58201ec2cf149b51e5
---

 version.sh |6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/version.sh b/version.sh
index 92edcb9..f9754eb 100755
--- a/version.sh
+++ b/version.sh
@@ -4,7 +4,11 @@
 
 # check for git short hash
 if ! test "$revision"; then
-revision=$(cd "$1" && git describe --tags --match N 2> /dev/null)
+if (cd "$1" && grep git RELEASE 2> /dev/null >/dev/null) ; then
+revision=$(cd "$1" && git describe --tags --match N 2> /dev/null)
+else
+revision=$(cd "$1" && git describe --tags --always 2> /dev/null)
+fi
 fi
 
 # Shallow Git clones (--depth) do not have the N tag:

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


[FFmpeg-cvslog] [ffmpeg-web] branch master updated. 5f3325e web/security: update for 2.3, 1.0.10, 0.5.*

2014-07-28 Thread gitolite
The branch, master has been updated
   via  5f3325e427d709704585ee88ae1acbbe51cbe1b3 (commit)
  from  9397025ad6bed5bed791b50f2ed17e97580eec6d (commit)


- Log -
commit 5f3325e427d709704585ee88ae1acbbe51cbe1b3
Author: Michael Niedermayer 
AuthorDate: Mon Jul 28 17:53:21 2014 +0200
Commit: Michael Niedermayer 
CommitDate: Mon Jul 28 17:53:21 2014 +0200

web/security: update for 2.3, 1.0.10, 0.5.*

diff --git a/src/security b/src/security
index 4a34e2a..efa4649 100644
--- a/src/security
+++ b/src/security
@@ -1,5 +1,14 @@
 Please report vulnerabilities to mailto:ffmpeg-secur...@ffmpeg.org";>ffmpeg-secur...@ffmpeg.org
 
+FFmpeg 2.3
+2.3
+
+Fixes following vulnerabilities:
+
+
+CVE-2014-4609, d6af26c55c1ea30f85a7d9edbc373f53be1743ee
+CVE-2014-4610, d6af26c55c1ea30f85a7d9edbc373f53be1743ee
+
 
 FFmpeg 2.2
 2.2.4
@@ -367,6 +376,17 @@ CVE-2012-6618, 03847eb8259291b4ff1bd840bd779d0699d71f96
 
 
 FFmpeg 1.0
+1.0.10
+
+Fixes following vulnerabilities:
+
+
+CVE-2012-5150, 85b1ce977bd5d477cd47d0942e1a09f0a56e6778 / 
ae3d41636942cbc0236bad21ad06c65f4eb0f096
+CVE-2013-0894, 0916d0f9d1b94b4bb88382edae45b9276746574d / 
2c16bf2de07c68513072bf3cc96401d2c6291a3e
+CVE-2014-4609, 7b5c706494a775b2b0d0e0a38448610802eef8f4 / 
d6af26c55c1ea30f85a7d9edbc373f53be1743ee
+CVE-2014-4609, 7b5c706494a775b2b0d0e0a38448610802eef8f4 / 
d6af26c55c1ea30f85a7d9edbc373f53be1743ee
+
+
 1.0.9
 
 Fixes following vulnerabilities:
@@ -800,6 +820,39 @@ Several security issues that dont have CVE numbers.
 Fixes CVE-2011-4352, CVE-2011-4579, CVE-2011-4353, CVE-2011-4351, 
CVE-2011-4364
 
 FFmpeg 0.5
+0.5.14
+
+Fixes following vulnerabilities:
+
+
+CVE-2012-5150, 90c8fa52216b7a9fc83167f791dd7bb1d01bbaf2 / 
ae3d41636942cbc0236bad21ad06c65f4eb0f096
+CVE-2013-7023, 04fb6bb9155a5b1857027b78728badec72734c2e / 
f31011e9abfb2ae75bb32bc44e2c34194c8dc40a
+CVE-2014-4609, 24a0273cb86ec0b8bf17c71e7f426c3aa9e4989f / 
7b5c706494a775b2b0d0e0a38448610802eef8f4
+CVE-2014-4609, 24a0273cb86ec0b8bf17c71e7f426c3aa9e4989f / 
d6af26c55c1ea30f85a7d9edbc373f53be1743ee
+CVE-2014-4610, 24a0273cb86ec0b8bf17c71e7f426c3aa9e4989f / 
d6af26c55c1ea30f85a7d9edbc373f53be1743ee
+
+
+0.5.13
+
+Fixes following vulnerabilities:
+
+
+CVE-2013-7009, fde0b7d91c9cbcc427f87c2651f39d0075c66efe / 
3819db745da2ac7fb3faacb116788c32f4753f34
+CVE-2013-7010, e7484d54252d3442b64ed09770d4c84c44e104e9 / 
454a11a1c9c686c78aa97954306fb63453299760
+
+
+0.5.11
+
+Fixes following vulnerabilities:
+
+
+CVE-2013-0849, fee26d352a52eb9f7fcd8d9167fb4a5ba015b612 / 
3ae610451170cd5a28b33950006ff0bd23036845
+CVE-2013-0846, a23a3dba25448939e6be43c9196f1e6917258e2e / 
a7ee6281f7ef1c29284e3a4cadfe0f227ffde1ed
+CVE-2013-0865, 13093f9767b922661132a3c1f4b5ba2c7338b660 / 
ab6c9332bfa1e20127a16392a0b85a4aa4840889
+CVE-2013-0868, ac476bfa9f90587eadef5b98cfc40ec77dde3f18 / 
0dfc01c2bbf4b71bb56201bc4a393321e15d1b31
+CVE-2013-0868, 272e7f6443b76fb47192930d157bfd9284294188 / 
f67a0d115254461649470452058fa3c28c0df294
+
+
 0.5.8
 Fixes CVE-2011-3892, CVE-2011-3893, CVE-2011-3895
 

---

Summary of changes:
 src/security |   53 +
 1 files changed, 53 insertions(+), 0 deletions(-)


hooks/post-receive
-- 

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


[FFmpeg-cvslog] tests/fate.sh: If cat *.rep fails try it with a for loop.

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Mon Jul 28 
18:27:17 2014 +0200| [d554d004a67c30e3f38bec51b2c691cfe3af3bb8] | committer: 
Michael Niedermayer

tests/fate.sh: If cat *.rep fails try it with a for loop.

Fixes fate on haiku, where cat dies due to too many arguments
xargs could be used too but we do not use xargs currently so it
would be an additional dependency.

Also the plain cat is left in place as it is faster than the loop

Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d554d004a67c30e3f38bec51b2c691cfe3af3bb8
---

 tests/fate.sh |3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tests/fate.sh b/tests/fate.sh
index a1a7e35..5a78018 100755
--- a/tests/fate.sh
+++ b/tests/fate.sh
@@ -85,7 +85,8 @@ report(){
 date=$(date -u +%Y%m%d%H%M%S)
 echo "fate:0:${date}:${slot}:${version}:$1:$2:${comment}" >report
 #echo "fate:1:${date}:${slot}:${version}:$1:$2:${branch}:${comment}" 
>report
-cat ${build}/config.fate ${build}/tests/data/fate/*.rep >>report
+cat ${build}/config.fate >>report
+cat ${build}/tests/data/fate/*.rep >>report || for i in 
${build}/tests/data/fate/*.rep ; do cat "$i" >>report ; done
 test -n "$fate_recv" && $tar report *.log | gzip | $fate_recv
 }
 

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


[FFmpeg-cvslog] avdevice/pulse_audio_enc: use getter function for AVFrame.channels

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Mon Jul 28 
20:06:11 2014 +0200| [1e51af13c7538f427e8a0cf0e498263de674c70e] | committer: 
Michael Niedermayer

avdevice/pulse_audio_enc: use getter function for AVFrame.channels

This is required by the API/ABI for things outside libavutil

Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=1e51af13c7538f427e8a0cf0e498263de674c70e
---

 libavdevice/pulse_audio_enc.c |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavdevice/pulse_audio_enc.c b/libavdevice/pulse_audio_enc.c
index b07d4c0..bc4d1f0 100644
--- a/libavdevice/pulse_audio_enc.c
+++ b/libavdevice/pulse_audio_enc.c
@@ -681,7 +681,7 @@ static int pulse_write_frame(AVFormatContext *h, int 
stream_index,
AVERROR(EINVAL) : 0;
 
 pkt.data = (*frame)->data[0];
-pkt.size = (*frame)->nb_samples * 
av_get_bytes_per_sample((*frame)->format) * (*frame)->channels;
+pkt.size = (*frame)->nb_samples * 
av_get_bytes_per_sample((*frame)->format) * av_frame_get_channels(*frame);
 pkt.dts  = (*frame)->pkt_dts;
 pkt.duration = av_frame_get_pkt_duration(*frame);
 return pulse_write_packet(h, &pkt);

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


[FFmpeg-cvslog] x86/hevc_idct: add a colon to labels

2014-07-28 Thread James Almer
ffmpeg | branch: master | James Almer  | Mon Jul 28 16:17:34 
2014 -0300| [f137876182f65e0d2f5f46b31543346d73d03105] | committer: Michael 
Niedermayer

x86/hevc_idct: add a colon to labels

This fixes a warning spam when using NASM

Signed-off-by: James Almer 
Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=f137876182f65e0d2f5f46b31543346d73d03105
---

 libavcodec/x86/hevc_idct.asm |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/x86/hevc_idct.asm b/libavcodec/x86/hevc_idct.asm
index 2ad6e97..481726d 100644
--- a/libavcodec/x86/hevc_idct.asm
+++ b/libavcodec/x86/hevc_idct.asm
@@ -36,7 +36,7 @@ cglobal hevc_idct%1x%1_dc_%3, 1, 2, 1, coeff, tmp
 SPLATW  m0, xm0
 DEFINE_ARGS coeff, cnt
 mov   cntd, %2
-.loop
+.loop:
 mova [coeffq+mmsize*0], m0
 mova [coeffq+mmsize*1], m0
 mova [coeffq+mmsize*2], m0

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


[FFmpeg-cvslog] x86/hevc_deblock: load less data in hevc_h_loop_filter_luma_8

2014-07-28 Thread James Almer
ffmpeg | branch: master | James Almer  | Mon Jul 28 16:17:35 
2014 -0300| [664e9e433119203f13fed418c101484158e2bb9f] | committer: Michael 
Niedermayer

x86/hevc_deblock: load less data in hevc_h_loop_filter_luma_8

Reading 8 bytes is enough.

Signed-off-by: James Almer 
Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=664e9e433119203f13fed418c101484158e2bb9f
---

 libavcodec/x86/hevc_deblock.asm |   16 
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/libavcodec/x86/hevc_deblock.asm b/libavcodec/x86/hevc_deblock.asm
index f7cd031..ecebd36 100644
--- a/libavcodec/x86/hevc_deblock.asm
+++ b/libavcodec/x86/hevc_deblock.asm
@@ -799,14 +799,14 @@ cglobal hevc_h_loop_filter_luma_8, 4, 15, 16, pix, 
stride, beta, tc, count, pix0
 mov   pix0q, pixq
 sub   pix0q, src3strideq
 sub   pix0q, strideq
-movdqu   m0, [pix0q];   p3
-movdqu   m1, [pix0q + strideq]; p2
-movdqu   m2, [pix0q + 2 * strideq]; p1
-movdqu   m3, [pix0q + src3strideq]; p0
-movdqu   m4, [pixq];q0
-movdqu   m5, [pixq + strideq];  q1
-movdqu   m6, [pixq + 2 * strideq];  q2
-movdqu   m7, [pixq + src3strideq];  q3
+movq m0, [pix0q];   p3
+movq m1, [pix0q + strideq]; p2
+movq m2, [pix0q + 2 * strideq]; p1
+movq m3, [pix0q + src3strideq]; p0
+movq m4, [pixq];q0
+movq m5, [pixq + strideq];  q1
+movq m6, [pixq + 2 * strideq];  q2
+movq m7, [pixq + src3strideq];  q3
 pxor m8, m8
 punpcklbwm0, m8
 punpcklbwm1, m8

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


[FFmpeg-cvslog] Fix standalone compilation of the adts muxer.

2014-07-28 Thread Carl Eugen Hoyos
ffmpeg | branch: master | Carl Eugen Hoyos  | Mon Jul 28 
23:25:54 2014 +0200| [63c0b41904bc6e603b61b7f11520db85a3e44113] | committer: 
Carl Eugen Hoyos

Fix standalone compilation of the adts muxer.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=63c0b41904bc6e603b61b7f11520db85a3e44113
---

 libavformat/Makefile |3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/libavformat/Makefile b/libavformat/Makefile
index 9017e06..8aa1d01 100644
--- a/libavformat/Makefile
+++ b/libavformat/Makefile
@@ -62,7 +62,8 @@ OBJS-$(CONFIG_ADF_DEMUXER)   += bintext.o sauce.o
 OBJS-$(CONFIG_ADP_DEMUXER)   += adp.o
 OBJS-$(CONFIG_ADX_DEMUXER)   += adxdec.o
 OBJS-$(CONFIG_ADX_MUXER) += rawenc.o
-OBJS-$(CONFIG_ADTS_MUXER)+= adtsenc.o apetag.o img2.o
+OBJS-$(CONFIG_ADTS_MUXER)+= adtsenc.o apetag.o img2.o \
+id3v2enc.o
 OBJS-$(CONFIG_AEA_DEMUXER)   += aea.o pcm.o
 OBJS-$(CONFIG_AFC_DEMUXER)   += afc.o
 OBJS-$(CONFIG_AIFF_DEMUXER)  += aiffdec.o pcm.o isom.o \

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


[FFmpeg-cvslog] video4linux2: Avoid a floating point exception

2014-07-28 Thread Bernhard Übelacker
ffmpeg | branch: master | Bernhard Übelacker  | Sun Jul 27 
08:38:59 2014 -0700| [dc71f1958846bb1d96de43a4603983dc8450cfcc] | committer: 
Diego Biurrun

video4linux2: Avoid a floating point exception

This avoids a segfault in avconv_opt.c:opt_target when trying to
determine the norm.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=dc71f1958846bb1d96de43a4603983dc8450cfcc
---

 avconv_opt.c |3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/avconv_opt.c b/avconv_opt.c
index f8c5245..434ba0b 100644
--- a/avconv_opt.c
+++ b/avconv_opt.c
@@ -1757,7 +1757,8 @@ static int opt_target(void *optctx, const char *opt, 
const char *arg)
 for (j = 0; j < nb_input_files; j++) {
 for (i = 0; i < input_files[j]->nb_streams; i++) {
 AVCodecContext *c = input_files[j]->ctx->streams[i]->codec;
-if (c->codec_type != AVMEDIA_TYPE_VIDEO)
+if (c->codec_type != AVMEDIA_TYPE_VIDEO ||
+!c->time_base.num)
 continue;
 fr = c->time_base.den * 1000 / c->time_base.num;
 if (fr == 25000) {

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


[FFmpeg-cvslog] Merge commit 'dc71f1958846bb1d96de43a4603983dc8450cfcc'

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Tue Jul 29 
00:01:25 2014 +0200| [25a20608909fbdc3c58981aaaee31e728e8cd196] | committer: 
Michael Niedermayer

Merge commit 'dc71f1958846bb1d96de43a4603983dc8450cfcc'

* commit 'dc71f1958846bb1d96de43a4603983dc8450cfcc':
  video4linux2: Avoid a floating point exception

Merged-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=25a20608909fbdc3c58981aaaee31e728e8cd196
---



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


[FFmpeg-cvslog] Merge commit 'c9d982aa11a6267611c3770792f0e04b48438348'

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Tue Jul 29 
00:11:46 2014 +0200| [4a4d0258eef26a8c7e93f68024b639290e1c8cb2] | committer: 
Michael Niedermayer

Merge commit 'c9d982aa11a6267611c3770792f0e04b48438348'

* commit 'c9d982aa11a6267611c3770792f0e04b48438348':
  mxf: Detect Vanc/Vbi SMPTE-436M mxf track

Merged-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4a4d0258eef26a8c7e93f68024b639290e1c8cb2
---



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


[FFmpeg-cvslog] mxf: Detect Vanc/Vbi SMPTE-436M mxf track

2014-07-28 Thread Marc-Antoine Arnaud
ffmpeg | branch: master | Marc-Antoine Arnaud  | 
Tue Jul 22 16:08:52 2014 +0200| [c9d982aa11a6267611c3770792f0e04b48438348] | 
committer: Luca Barbato

mxf: Detect Vanc/Vbi SMPTE-436M mxf track

Signed-off-by: Luca Barbato 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c9d982aa11a6267611c3770792f0e04b48438348
---

 libavformat/mxfdec.c |   18 ++
 1 file changed, 18 insertions(+)

diff --git a/libavformat/mxfdec.c b/libavformat/mxfdec.c
index 58d9027..bb876c0 100644
--- a/libavformat/mxfdec.c
+++ b/libavformat/mxfdec.c
@@ -971,6 +971,15 @@ static const MXFCodecUL mxf_sound_essence_container_uls[] 
= {
 { { 
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 
},  0,  AV_CODEC_ID_NONE },
 };
 
+static const MXFCodecUL mxf_data_essence_container_uls[] = {
+{ { 
0x06,0x0e,0x2b,0x34,0x04,0x01,0x01,0x09,0x0d,0x01,0x03,0x01,0x02,0x0e,0x00,0x00 
}, 16, 0 },
+{ { 
0x06,0x0e,0x2b,0x34,0x04,0x01,0x01,0x09,0x0d,0x01,0x03,0x01,0x02,0x0e,0x00,0x00 
}, 16, AV_CODEC_ID_NONE },
+};
+
+static const char* mxf_data_essence_descriptor[] = {
+"vbi_vanc_smpte_436M",
+};
+
 static int mxf_get_sorted_table_segments(MXFContext *mxf, int 
*nb_sorted_segments, MXFIndexTableSegment ***sorted_segments)
 {
 int i, j, nb_segments = 0;
@@ -1618,6 +1627,14 @@ static int mxf_parse_structural_metadata(MXFContext *mxf)
 } else if (st->codec->codec_id == AV_CODEC_ID_MP2) {
 st->need_parsing = AVSTREAM_PARSE_FULL;
 }
+} else if (st->codec->codec_type == AVMEDIA_TYPE_DATA) {
+int codec_id = mxf_get_codec_ul(mxf_data_essence_container_uls,
+essence_container_ul)->id;
+if (codec_id >= 0 &&
+codec_id < FF_ARRAY_ELEMS(mxf_data_essence_descriptor)) {
+av_dict_set(&st->metadata, "data_type",
+mxf_data_essence_descriptor[codec_id], 0);
+}
 }
 if (descriptor->extradata) {
 st->codec->extradata = av_mallocz(descriptor->extradata_size + 
FF_INPUT_BUFFER_PADDING_SIZE);
@@ -1790,6 +1807,7 @@ static const MXFMetadataReadTableEntry 
mxf_metadata_read_table[] = {
 { { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x51,0x00 
}, mxf_read_generic_descriptor, sizeof(MXFDescriptor), Descriptor }, /* MPEG 2 
Video */
 { { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x48,0x00 
}, mxf_read_generic_descriptor, sizeof(MXFDescriptor), Descriptor }, /* Wave */
 { { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x47,0x00 
}, mxf_read_generic_descriptor, sizeof(MXFDescriptor), Descriptor }, /* AES3 */
+{ { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x5c,0x00 
}, mxf_read_generic_descriptor, sizeof(MXFDescriptor), Descriptor }, /* 
VANC/VBI - SMPTE 436M */
 { { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x3A,0x00 
}, mxf_read_track, sizeof(MXFTrack), Track }, /* Static Track */
 { { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x3B,0x00 
}, mxf_read_track, sizeof(MXFTrack), Track }, /* Generic Track */
 { { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x04,0x01,0x02,0x02,0x00,0x00 
}, mxf_read_cryptographic_context, sizeof(MXFCryptoContext), CryptoContext },

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


[FFmpeg-cvslog] mxf: Extract origin information from material and source track

2014-07-28 Thread Marc-Antoine Arnaud
ffmpeg | branch: master | Marc-Antoine Arnaud  | 
Tue Jul 22 18:08:04 2014 +0200| [259fe7280d0b63dc7a8ff017d44f26d3a84cfde8] | 
committer: Luca Barbato

mxf: Extract origin information from material and source track

Signed-off-by: Luca Barbato 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=259fe7280d0b63dc7a8ff017d44f26d3a84cfde8
---

 libavformat/mxfdec.c |   14 ++
 1 file changed, 14 insertions(+)

diff --git a/libavformat/mxfdec.c b/libavformat/mxfdec.c
index bb876c0..ba76577 100644
--- a/libavformat/mxfdec.c
+++ b/libavformat/mxfdec.c
@@ -111,6 +111,7 @@ typedef struct {
 UID *structural_components_refs;
 int structural_components_count;
 int64_t duration;
+uint8_t origin;
 } MXFSequence;
 
 typedef struct {
@@ -686,6 +687,9 @@ static int mxf_read_sequence(void *arg, AVIOContext *pb, 
int tag, int size, UID
 case 0x0201:
 avio_read(pb, sequence->data_definition_ul, 16);
 break;
+case 0x4b02:
+sequence->origin = avio_r8(pb);
+break;
 case 0x1001:
 sequence->structural_components_count = avio_rb32(pb);
 if (sequence->structural_components_count >= UINT_MAX / sizeof(UID))
@@ -1589,6 +1593,16 @@ static int mxf_parse_structural_metadata(MXFContext *mxf)
 }
 }
 st->need_parsing = AVSTREAM_PARSE_HEADERS;
+if (material_track->sequence->origin) {
+char material_origin[3];
+snprintf(material_origin, sizeof(material_origin), "%d", 
material_track->sequence->origin);
+av_dict_set(&st->metadata, "material_track_origin", 
material_origin, 0);
+}
+if (source_track->sequence->origin) {
+char source_origin[3];
+snprintf(source_origin, sizeof(source_origin), "%d", 
source_track->sequence->origin);
+av_dict_set(&st->metadata, "source_track_origin", 
source_origin, 0);
+}
 } else if (st->codec->codec_type == AVMEDIA_TYPE_AUDIO) {
 container_ul = mxf_get_codec_ul(mxf_sound_essence_container_uls, 
essence_container_ul);
 if (st->codec->codec_id == AV_CODEC_ID_NONE)

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


[FFmpeg-cvslog] Merge commit '259fe7280d0b63dc7a8ff017d44f26d3a84cfde8'

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Tue Jul 29 
00:17:58 2014 +0200| [8b1e920676f6eeeb01422660768f5f92b3811bc6] | committer: 
Michael Niedermayer

Merge commit '259fe7280d0b63dc7a8ff017d44f26d3a84cfde8'

* commit '259fe7280d0b63dc7a8ff017d44f26d3a84cfde8':
  mxf: Extract origin information from material and source track

Merged-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=8b1e920676f6eeeb01422660768f5f92b3811bc6
---



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


[FFmpeg-cvslog] Merge commit 'e4a462e3eafdfe336f4d079c3ba72a9cdb4748b0'

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Tue Jul 29 
00:27:45 2014 +0200| [621d4089a4cff0066d5cfc006cf20d99414ee9f9] | committer: 
Michael Niedermayer

Merge commit 'e4a462e3eafdfe336f4d079c3ba72a9cdb4748b0'

* commit 'e4a462e3eafdfe336f4d079c3ba72a9cdb4748b0':
  configure: Use require_pkg_config for Speex

Conflicts:
configure

Merged-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=621d4089a4cff0066d5cfc006cf20d99414ee9f9
---



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


[FFmpeg-cvslog] configure: Use require_pkg_config for Speex

2014-07-28 Thread Luca Barbato
ffmpeg | branch: master | Luca Barbato  | Thu Jul 24 
23:50:38 2014 +0200| [e4a462e3eafdfe336f4d079c3ba72a9cdb4748b0] | committer: 
Luca Barbato

configure: Use require_pkg_config for Speex

Distributors and integrators nowadays have less problems by leveraging
pkg-config files than having to set custom CFLAGS and LDFLAGS.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=e4a462e3eafdfe336f4d079c3ba72a9cdb4748b0
---

 configure |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/configure b/configure
index 3c1c520..800d6fa 100755
--- a/configure
+++ b/configure
@@ -4118,7 +4118,7 @@ enabled libopus   && require_pkg_config opus 
opus_multistream.h opus_mul
 enabled libpulse  && require_pkg_config libpulse-simple pulse/simple.h 
pa_simple_new
 enabled librtmp   && require_pkg_config librtmp librtmp/rtmp.h 
RTMP_Socket
 enabled libschroedinger   && require_pkg_config schroedinger-1.0 
schroedinger/schro.h schro_init
-enabled libspeex  && require libspeex speex/speex.h speex_decoder_init 
-lspeex
+enabled libspeex  && require_pkg_config speex speex/speex.h 
speex_decoder_init -lspeex
 enabled libtheora && require libtheora theora/theoraenc.h th_info_init 
-ltheoraenc -ltheoradec -logg
 enabled libtwolame&& require libtwolame twolame.h twolame_init 
-ltwolame
 enabled libvo_aacenc  && require libvo_aacenc vo-aacenc/voAAC.h 
voGetAACEncAPI -lvo-aacenc

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


[FFmpeg-cvslog] Merge commit '4f8cf0dc4ef6110174056df7edd9dc2f2a988b6d'

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Tue Jul 29 
00:34:53 2014 +0200| [a91c5ed008740fabdb910a59db9e5792b6574486] | committer: 
Michael Niedermayer

Merge commit '4f8cf0dc4ef6110174056df7edd9dc2f2a988b6d'

* commit '4f8cf0dc4ef6110174056df7edd9dc2f2a988b6d':
  x86: build: Restore ordering of OBJS lines

Conflicts:
libavcodec/x86/Makefile

Merged-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=a91c5ed008740fabdb910a59db9e5792b6574486
---



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


[FFmpeg-cvslog] x86: build: Restore ordering of OBJS lines

2014-07-28 Thread Diego Biurrun
ffmpeg | branch: master | Diego Biurrun  | Sat Jul 26 
15:04:44 2014 -0700| [4f8cf0dc4ef6110174056df7edd9dc2f2a988b6d] | committer: 
Diego Biurrun

x86: build: Restore ordering of OBJS lines

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4f8cf0dc4ef6110174056df7edd9dc2f2a988b6d
---

 libavcodec/x86/Makefile |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavcodec/x86/Makefile b/libavcodec/x86/Makefile
index d173097..1969007 100644
--- a/libavcodec/x86/Makefile
+++ b/libavcodec/x86/Makefile
@@ -13,7 +13,6 @@ OBJS-$(CONFIG_H264CHROMA)  += 
x86/h264chroma_init.o
 OBJS-$(CONFIG_H264DSP) += x86/h264dsp_init.o
 OBJS-$(CONFIG_H264PRED)+= x86/h264_intrapred_init.o
 OBJS-$(CONFIG_H264QPEL)+= x86/h264_qpel.o
-OBJS-$(CONFIG_HEVC_DECODER)+= x86/hevcdsp_init.o
 OBJS-$(CONFIG_HPELDSP) += x86/hpeldsp_init.o
 OBJS-$(CONFIG_HUFFYUVDSP)  += x86/huffyuvdsp_init.o
 OBJS-$(CONFIG_HUFFYUVENCDSP)   += x86/huffyuvencdsp_mmx.o
@@ -36,6 +35,7 @@ OBJS-$(CONFIG_APE_DECODER) += x86/apedsp_init.o
 OBJS-$(CONFIG_CAVS_DECODER)+= x86/cavsdsp.o
 OBJS-$(CONFIG_DCA_DECODER) += x86/dcadsp_init.o
 OBJS-$(CONFIG_DNXHD_ENCODER)   += x86/dnxhdenc_init.o
+OBJS-$(CONFIG_HEVC_DECODER)+= x86/hevcdsp_init.o
 OBJS-$(CONFIG_MLP_DECODER) += x86/mlpdsp.o
 OBJS-$(CONFIG_PNG_DECODER) += x86/pngdsp_init.o
 OBJS-$(CONFIG_PRORES_DECODER)  += x86/proresdsp_init.o
@@ -87,7 +87,6 @@ YASM-OBJS-$(CONFIG_H264QPEL)   += 
x86/h264_qpel_8bit.o  \
   x86/h264_qpel_10bit.o \
   x86/fpel.o\
   x86/qpel.o
-YASM-OBJS-$(CONFIG_HEVC_DECODER)   += x86/hevc_deblock.o
 YASM-OBJS-$(CONFIG_HPELDSP)+= x86/fpel.o\
   x86/hpeldsp.o
 YASM-OBJS-$(CONFIG_HUFFYUVDSP) += x86/huffyuvdsp.o
@@ -104,6 +103,7 @@ YASM-OBJS-$(CONFIG_VP3DSP) += x86/vp3dsp.o
 YASM-OBJS-$(CONFIG_AAC_DECODER)+= x86/sbrdsp.o
 YASM-OBJS-$(CONFIG_APE_DECODER)+= x86/apedsp.o
 YASM-OBJS-$(CONFIG_DCA_DECODER)+= x86/dcadsp.o
+YASM-OBJS-$(CONFIG_HEVC_DECODER)   += x86/hevc_deblock.o
 YASM-OBJS-$(CONFIG_PNG_DECODER)+= x86/pngdsp.o
 YASM-OBJS-$(CONFIG_PRORES_DECODER) += x86/proresdsp.o
 YASM-OBJS-$(CONFIG_RV30_DECODER)   += x86/rv34dsp.o

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


[FFmpeg-cvslog] Merge commit '59ca29a560ba0cfe97457de8cedf77db434f0de4'

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Tue Jul 29 
00:40:00 2014 +0200| [60831f441db8f18b619613f6dd942e3091687496] | committer: 
Michael Niedermayer

Merge commit '59ca29a560ba0cfe97457de8cedf77db434f0de4'

* commit '59ca29a560ba0cfe97457de8cedf77db434f0de4':
  dump: Use correct printf conversion specifiers for POSIX int types

Merged-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=60831f441db8f18b619613f6dd942e3091687496
---



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


[FFmpeg-cvslog] dump: Use correct printf conversion specifiers for POSIX int types

2014-07-28 Thread Diego Biurrun
ffmpeg | branch: master | Diego Biurrun  | Sat Jul 26 
05:11:18 2014 -0700| [59ca29a560ba0cfe97457de8cedf77db434f0de4] | committer: 
Diego Biurrun

dump: Use correct printf conversion specifiers for POSIX int types

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=59ca29a560ba0cfe97457de8cedf77db434f0de4
---

 libavformat/dump.c |6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/libavformat/dump.c b/libavformat/dump.c
index aae23af..cdf2da1 100644
--- a/libavformat/dump.c
+++ b/libavformat/dump.c
@@ -156,7 +156,7 @@ static void dump_paramchange(void *ctx, AVPacketSideData 
*sd)
 channels = AV_RL32(data);
 data += 4;
 size -= 4;
-av_log(ctx, AV_LOG_INFO, "channel count %d, ", channels);
+av_log(ctx, AV_LOG_INFO, "channel count %"PRIu32", ", channels);
 }
 if (flags & AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_LAYOUT) {
 if (size < 8)
@@ -173,7 +173,7 @@ static void dump_paramchange(void *ctx, AVPacketSideData 
*sd)
 sample_rate = AV_RL32(data);
 data += 4;
 size -= 4;
-av_log(ctx, AV_LOG_INFO, "sample_rate %d, ", sample_rate);
+av_log(ctx, AV_LOG_INFO, "sample_rate %"PRIu32", ", sample_rate);
 }
 if (flags & AV_SIDE_DATA_PARAM_CHANGE_DIMENSIONS) {
 if (size < 8)
@@ -184,7 +184,7 @@ static void dump_paramchange(void *ctx, AVPacketSideData 
*sd)
 height = AV_RL32(data);
 data += 4;
 size -= 4;
-av_log(ctx, AV_LOG_INFO, "width %d height %d", width, height);
+av_log(ctx, AV_LOG_INFO, "width %"PRIu32" height %"PRIu32, width, 
height);
 }
 
 return;

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


[FFmpeg-cvslog] sanm: Use correct printf conversion specifiers for POSIX int types

2014-07-28 Thread Diego Biurrun
ffmpeg | branch: master | Diego Biurrun  | Sat Jul 26 
05:12:48 2014 -0700| [019a28cd630286ecb2b06ee62025a17c821b493e] | committer: 
Diego Biurrun

sanm: Use correct printf conversion specifiers for POSIX int types

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=019a28cd630286ecb2b06ee62025a17c821b493e
---

 libavcodec/sanm.c |   10 ++
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/libavcodec/sanm.c b/libavcodec/sanm.c
index 9f2f22b..41c6551 100644
--- a/libavcodec/sanm.c
+++ b/libavcodec/sanm.c
@@ -1356,14 +1356,14 @@ static int decode_frame(AVCodecContext *avctx, void 
*data,
 pos  = bytestream2_tell(&ctx->gb);
 
 if (bytestream2_get_bytes_left(&ctx->gb) < size) {
-av_log(avctx, AV_LOG_ERROR, "Incorrect chunk size %d.\n", 
size);
+av_log(avctx, AV_LOG_ERROR, "Incorrect chunk size 
%"PRIu32".\n", size);
 break;
 }
 switch (sig) {
 case MKBETAG('N', 'P', 'A', 'L'):
 if (size != PALETTE_SIZE * 3) {
 av_log(avctx, AV_LOG_ERROR,
-   "Incorrect palette block size %d.\n", size);
+   "Incorrect palette block size %"PRIu32".\n", size);
 return AVERROR_INVALIDDATA;
 }
 for (i = 0; i < PALETTE_SIZE; i++)
@@ -1389,7 +1389,8 @@ static int decode_frame(AVCodecContext *avctx, void *data,
 }
 } else {
 if (size < PALETTE_DELTA * 2 + 4) {
-av_log(avctx, AV_LOG_ERROR, "Incorrect palette change 
block size %d.\n",
+av_log(avctx, AV_LOG_ERROR,
+   "Incorrect palette change block size 
%"PRIu32".\n",
size);
 return AVERROR_INVALIDDATA;
 }
@@ -1412,7 +1413,8 @@ static int decode_frame(AVCodecContext *avctx, void *data,
 break;
 default:
 bytestream2_skip(&ctx->gb, size);
-av_log(avctx, AV_LOG_DEBUG, "Unknown/unsupported chunk %x.\n", 
sig);
+av_log(avctx, AV_LOG_DEBUG,
+   "Unknown/unsupported chunk %"PRIx32".\n", sig);
 break;
 }
 

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


[FFmpeg-cvslog] Merge commit '019a28cd630286ecb2b06ee62025a17c821b493e'

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Tue Jul 29 
01:22:05 2014 +0200| [d55d8229fb120aeed7387ca749f59c404dec6304] | committer: 
Michael Niedermayer

Merge commit '019a28cd630286ecb2b06ee62025a17c821b493e'

* commit '019a28cd630286ecb2b06ee62025a17c821b493e':
  sanm: Use correct printf conversion specifiers for POSIX int types

Merged-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d55d8229fb120aeed7387ca749f59c404dec6304
---



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


[FFmpeg-cvslog] Merge commit '942269fd00cb48328e4cffb6e21a0b691ce9f6bc'

2014-07-28 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Tue Jul 29 
01:32:48 2014 +0200| [983109bbd99939c0c3a35c96b1c36e823bf30f6b] | committer: 
Michael Niedermayer

Merge commit '942269fd00cb48328e4cffb6e21a0b691ce9f6bc'

* commit '942269fd00cb48328e4cffb6e21a0b691ce9f6bc':
  caf: Use correct printf conversion specifiers for POSIX int types

Conflicts:
libavformat/cafdec.c

See: 1f36ebf63a8d6ffccf4bf286849d77f76aad8b8f
Merged-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=983109bbd99939c0c3a35c96b1c36e823bf30f6b
---



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


[FFmpeg-cvslog] caf: Use correct printf conversion specifiers for POSIX int types

2014-07-28 Thread Diego Biurrun
ffmpeg | branch: master | Diego Biurrun  | Mon Jul 28 
09:21:57 2014 -0700| [942269fd00cb48328e4cffb6e21a0b691ce9f6bc] | committer: 
Diego Biurrun

caf: Use correct printf conversion specifiers for POSIX int types

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=942269fd00cb48328e4cffb6e21a0b691ce9f6bc
---

 libavformat/cafdec.c |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavformat/cafdec.c b/libavformat/cafdec.c
index 7966225..6574623 100644
--- a/libavformat/cafdec.c
+++ b/libavformat/cafdec.c
@@ -292,7 +292,7 @@ static int read_header(AVFormatContext *s)
 default:
 #define _(x) ((x) >= ' ' ? (x) : ' ')
 av_log(s, AV_LOG_WARNING,
-   "skipping CAF chunk: %08"PRIX32" 
(%"PRIu8"%"PRIu8"%"PRIu8"%"PRIu8")\n",
+   "skipping CAF chunk: %08"PRIX32" 
(%"PRIu32"%"PRIu32"%"PRIu32"%"PRIu32")\n",
 tag, _(tag>>24), _((tag>>16)&0xFF), _((tag>>8)&0xFF), 
_(tag&0xFF));
 #undef _
 case MKBETAG('f','r','e','e'):

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


[FFmpeg-cvslog] x86/hevc_deblock: use psignw instead of pmullw where possible

2014-07-28 Thread James Almer
ffmpeg | branch: master | James Almer  | Mon Jul 28 21:11:49 
2014 -0300| [4f91bb0ff0bd8732baeeba4c9f3a96780151a6da] | committer: Michael 
Niedermayer

x86/hevc_deblock: use psignw instead of pmullw where possible

It's slightly faster

Signed-off-by: James Almer 
Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4f91bb0ff0bd8732baeeba4c9f3a96780151a6da
---

 libavcodec/x86/hevc_deblock.asm |8 
 1 file changed, 8 insertions(+)

diff --git a/libavcodec/x86/hevc_deblock.asm b/libavcodec/x86/hevc_deblock.asm
index ecebd36..e38181d 100644
--- a/libavcodec/x86/hevc_deblock.asm
+++ b/libavcodec/x86/hevc_deblock.asm
@@ -324,7 +324,11 @@ ALIGN 16
 movd m4, [tcq+4]; tc1
 punpcklwdm4, m4
 shufps   m6, m4, 0; tc0, tc1
+%if cpuflag(ssse3)
+psignw   m4, m6, [pw_m1]; -tc0, -tc1
+%else
 pmullw   m4, m6, [pw_m1]; -tc0, -tc1
+%endif
 ;end tc calculations
 
 paddwm5, [pw_4]; +4
@@ -609,7 +613,11 @@ ALIGN 16
 pminsw  m12, m9;  av_clip(delta0, -tc, tc)
 
 psrawm9, 1;   tc -> tc / 2
+%if cpuflag(ssse3)
+psignw  m14, m9, [pw_m1]; -tc / 2
+%else
 pmullw  m14, m9, [pw_m1]; -tc / 2
+%endif
 
 pavgw   m15, m1, m3;   (p2 + p0 + 1) >> 1
 psubw   m15, m2;  ((p2 + p0 + 1) >> 1) - p1

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


[FFmpeg-cvslog] hevc_filter: run vertical and horizontal together

2014-07-28 Thread Christophe Gisquet
ffmpeg | branch: master | Christophe Gisquet  | 
Sat Jul 26 21:40:53 2014 +0200| [65746bfbae3d1077656b48820f0c18c5703e34f7] | 
committer: Michael Niedermayer

hevc_filter: run vertical and horizontal together

This should help cache locality. On win64:
Before: 1397x cycles, 16216 bytes
After:  1369x cycles, 16040 bytes

Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=65746bfbae3d1077656b48820f0c18c5703e34f7
---

 libavcodec/hevc_filter.c |   90 +++---
 1 file changed, 45 insertions(+), 45 deletions(-)

diff --git a/libavcodec/hevc_filter.c b/libavcodec/hevc_filter.c
index bf471ce..9f59170 100644
--- a/libavcodec/hevc_filter.c
+++ b/libavcodec/hevc_filter.c
@@ -373,8 +373,11 @@ static void deblocking_filter_CTB(HEVCContext *s, int x0, 
int y0)
 tc_offset   = cur_tc_offset;
 beta_offset = cur_beta_offset;
 
-// vertical filtering luma
+x_end2 = x_end;
+if (x_end2 != s->sps->width)
+x_end2 -= 8;
 for (y = y0; y < y_end; y += 8) {
+// vertical filtering luma
 for (x = x0 ? x0 : 8; x < x_end; x += 8) {
 const int bs0 = s->vertical_bs[(x +  y  * s->bs_width) >> 2];
 const int bs1 = s->vertical_bs[(x + (y + 4) * s->bs_width) >> 2];
@@ -400,47 +403,12 @@ static void deblocking_filter_CTB(HEVCContext *s, int x0, 
int y0)
beta, tc, no_p, no_q);
 }
 }
-}
-
-// vertical filtering chroma
-for (chroma = 1; chroma <= 2; chroma++) {
-int h = 1 << s->sps->hshift[chroma];
-int v = 1 << s->sps->vshift[chroma];
-for (y = y0; y < y_end; y += (8 * v)) {
-for (x = x0 ? x0 : 8 * h; x < x_end; x += (8 * h)) {
-const int bs0 = s->vertical_bs[(x +  y* 
s->bs_width) >> 2];
-const int bs1 = s->vertical_bs[(x + (y + (4 * v)) * 
s->bs_width) >> 2];
 
-if ((bs0 == 2) || (bs1 == 2)) {
-const int qp0 = (get_qPy(s, x - 1, y)   + 
get_qPy(s, x, y)   + 1) >> 1;
-const int qp1 = (get_qPy(s, x - 1, y + (4 * v)) + 
get_qPy(s, x, y + (4 * v)) + 1) >> 1;
+if(!y)
+ continue;
 
-c_tc[0] = (bs0 == 2) ? chroma_tc(s, qp0, chroma, 
tc_offset) : 0;
-c_tc[1] = (bs1 == 2) ? chroma_tc(s, qp1, chroma, 
tc_offset) : 0;
-src   = &s->frame->data[chroma][(y >> 
s->sps->vshift[chroma]) * s->frame->linesize[chroma] + ((x >> 
s->sps->hshift[chroma]) << s->sps->pixel_shift)];
-if (pcmf) {
-no_p[0] = get_pcm(s, x - 1, y);
-no_p[1] = get_pcm(s, x - 1, y + (4 * v));
-no_q[0] = get_pcm(s, x, y);
-no_q[1] = get_pcm(s, x, y + (4 * v));
-s->hevcdsp.hevc_v_loop_filter_chroma_c(src,
-   
s->frame->linesize[chroma],
-   c_tc, no_p, 
no_q);
-} else
-s->hevcdsp.hevc_v_loop_filter_chroma(src,
- 
s->frame->linesize[chroma],
- c_tc, no_p, no_q);
-}
-}
-}
-}
-
-// horizontal filtering luma
-x_end2 = x_end;
-if (x_end != s->sps->width)
-x_end -= 8;
-for (y = y0 ? y0 : 8; y < y_end; y += 8) {
-for (x = x0 ? x0 - 8 : 0; x < x_end; x += 8) {
+// horizontal filtering luma
+for (x = x0 ? x0 - 8 : 0; x < x_end2; x += 8) {
 const int bs0 = s->horizontal_bs[( x  + y * s->bs_width) >> 2];
 const int bs1 = s->horizontal_bs[((x + 4) + y * s->bs_width) >> 2];
 if (bs0 || bs1) {
@@ -469,15 +437,47 @@ static void deblocking_filter_CTB(HEVCContext *s, int x0, 
int y0)
 }
 }
 
-// horizontal filtering chroma
 for (chroma = 1; chroma <= 2; chroma++) {
 int h = 1 << s->sps->hshift[chroma];
 int v = 1 << s->sps->vshift[chroma];
-if (x_end2 != s->sps->width)
- x_end = x_end2 - 8 * h;
-for (y = y0 ? y0 : 8 * v; y < y_end; y += (8 * v)) {
+
+// vertical filtering chroma
+for (y = y0; y < y_end; y += (8 * v)) {
+for (x = x0 ? x0 : 8 * h; x < x_end; x += (8 * h)) {
+const int bs0 = s->vertical_bs[(x +  y* 
s->bs_width) >> 2];
+const int bs1 = s->vertical_bs[(x + (y + (4 * v)) * 
s->bs_width) >> 2];
+
+if ((bs0 == 2) || (bs1 == 2)) {
+const int qp0 = (get_qPy(s, x - 1, y)   + 
get_qPy(s, x, y)   + 1) >> 1;
+const int qp1 = (get_qPy(s, x - 1, y + (4 * v)) + 
get_qPy(s, x, y + (4 * v)