[FFmpeg-cvslog] avcodec/mediacodecdec: remove unneeded else block in ff_mediacodec_dec_send()

2019-06-13 Thread Matthieu Bouron
ffmpeg | branch: master | Matthieu Bouron  | Wed Apr 
24 09:59:29 2019 +0200| [fef5ba40231db053afd611874ebbadbead6cbf8e] | committer: 
Matthieu Bouron

avcodec/mediacodecdec: remove unneeded else block in ff_mediacodec_dec_send()

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

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

diff --git a/libavcodec/mediacodecdec_common.c 
b/libavcodec/mediacodecdec_common.c
index f7a06cdc6d..f90e2f1a23 100644
--- a/libavcodec/mediacodecdec_common.c
+++ b/libavcodec/mediacodecdec_common.c
@@ -632,7 +632,8 @@ int ff_mediacodec_dec_send(AVCodecContext *avctx, 
MediaCodecDecContext *s,
 
 s->draining = 1;
 return 0;
-} else {
+}
+
 size = FFMIN(pkt->size - offset, size);
 memcpy(data, pkt->data + offset, size);
 offset += size;
@@ -645,7 +646,6 @@ int ff_mediacodec_dec_send(AVCodecContext *avctx, 
MediaCodecDecContext *s,
 
 av_log(avctx, AV_LOG_TRACE,
"Queued input buffer %zd size=%zd ts=%"PRIi64"\n", index, 
size, pts);
-}
 }
 
 if (offset == 0)

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

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".

[FFmpeg-cvslog] avcodec/mediacodecdec: re-indent after previous commit

2019-06-13 Thread Matthieu Bouron
ffmpeg | branch: master | Matthieu Bouron  | Wed Apr 
24 09:59:30 2019 +0200| [7c2c5c4940a61311d153ef4e4a61fa827c341615] | committer: 
Matthieu Bouron

avcodec/mediacodecdec: re-indent after previous commit

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

 libavcodec/mediacodecdec_common.c | 20 ++--
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/libavcodec/mediacodecdec_common.c 
b/libavcodec/mediacodecdec_common.c
index f90e2f1a23..1656cd6664 100644
--- a/libavcodec/mediacodecdec_common.c
+++ b/libavcodec/mediacodecdec_common.c
@@ -634,18 +634,18 @@ int ff_mediacodec_dec_send(AVCodecContext *avctx, 
MediaCodecDecContext *s,
 return 0;
 }
 
-size = FFMIN(pkt->size - offset, size);
-memcpy(data, pkt->data + offset, size);
-offset += size;
+size = FFMIN(pkt->size - offset, size);
+memcpy(data, pkt->data + offset, size);
+offset += size;
 
-status = ff_AMediaCodec_queueInputBuffer(codec, index, 0, size, 
pts, 0);
-if (status < 0) {
-av_log(avctx, AV_LOG_ERROR, "Failed to queue input buffer 
(status = %d)\n", status);
-return AVERROR_EXTERNAL;
-}
+status = ff_AMediaCodec_queueInputBuffer(codec, index, 0, size, pts, 
0);
+if (status < 0) {
+av_log(avctx, AV_LOG_ERROR, "Failed to queue input buffer (status 
= %d)\n", status);
+return AVERROR_EXTERNAL;
+}
 
-av_log(avctx, AV_LOG_TRACE,
-   "Queued input buffer %zd size=%zd ts=%"PRIi64"\n", index, 
size, pts);
+av_log(avctx, AV_LOG_TRACE,
+   "Queued input buffer %zd size=%zd ts=%"PRIi64"\n", index, size, 
pts);
 }
 
 if (offset == 0)

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

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".

[FFmpeg-cvslog] avcodec/mediacodecdec: try to receive a frame after signaling EOF to the codec

2019-06-13 Thread Matthieu Bouron
ffmpeg | branch: master | Matthieu Bouron  | Wed Apr 
24 09:59:28 2019 +0200| [d83985ce11d0f68d293e52fdccfc62fe9d28d54f] | committer: 
Matthieu Bouron

avcodec/mediacodecdec: try to receive a frame after signaling EOF to the codec

Avoids returning EAGAIN after signaling EOF to the codec in
ff_mediacodec_dec_send() so we can try to receive a frame before
returning in mediacodec_receive_frame().

This helps avoiding an extra round-trip between avcodec_send_frame() and
avcodec_receive_frame() while draining the remaining frames.

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

 libavcodec/mediacodecdec.c| 1 +
 libavcodec/mediacodecdec_common.c | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/libavcodec/mediacodecdec.c b/libavcodec/mediacodecdec.c
index 3a4240aa95..e353e34bd5 100644
--- a/libavcodec/mediacodecdec.c
+++ b/libavcodec/mediacodecdec.c
@@ -461,6 +461,7 @@ static int mediacodec_receive_frame(AVCodecContext *avctx, 
AVFrame *frame)
 ret = ff_mediacodec_dec_send(avctx, s->ctx, &null_pkt, true);
 if (ret < 0)
 return ret;
+return ff_mediacodec_dec_receive(avctx, s->ctx, frame, true);
 } else if (ret == AVERROR(EAGAIN) && s->ctx->current_input_buffer < 0) 
{
 return ff_mediacodec_dec_receive(avctx, s->ctx, frame, true);
 } else if (ret < 0) {
diff --git a/libavcodec/mediacodecdec_common.c 
b/libavcodec/mediacodecdec_common.c
index 7c2661f672..f7a06cdc6d 100644
--- a/libavcodec/mediacodecdec_common.c
+++ b/libavcodec/mediacodecdec_common.c
@@ -631,7 +631,7 @@ int ff_mediacodec_dec_send(AVCodecContext *avctx, 
MediaCodecDecContext *s,
"Queued input buffer %zd size=%zd ts=%"PRIi64"\n", index, 
size, pts);
 
 s->draining = 1;
-break;
+return 0;
 } else {
 size = FFMIN(pkt->size - offset, size);
 memcpy(data, pkt->data + offset, size);

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

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".

[FFmpeg-cvslog] avformat/id3v2enc: fix bug, CTOC flags take only one byte

2019-06-13 Thread Paul B Mahol
ffmpeg | branch: master | Paul B Mahol  | Thu Jun 13 23:11:10 
2019 +0200| [6473a5d35c16b1e673c07f0927ec5d2e10433e79] | committer: Paul B Mahol

avformat/id3v2enc: fix bug, CTOC flags take only one byte

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

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

diff --git a/libavformat/id3v2enc.c b/libavformat/id3v2enc.c
index 8d976f2d95..c13b93a7d8 100644
--- a/libavformat/id3v2enc.c
+++ b/libavformat/id3v2enc.c
@@ -269,7 +269,7 @@ static int write_ctoc(AVFormatContext *s, ID3v2EncContext 
*id3, int enc)
 goto fail;
 
 id3->len += avio_put_str(dyn_bc, "toc");
-avio_wb16(dyn_bc, 0x03);
+avio_w8(dyn_bc, 0x03);
 avio_w8(dyn_bc, s->nb_chapters);
 for (int i = 0; i < s->nb_chapters; i++) {
 snprintf(name, 122, "ch%d", i);

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

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".

[FFmpeg-cvslog] lavf/qsv_vpp: add frame format option

2019-06-13 Thread Zhong Li
ffmpeg | branch: master | Zhong Li  | Fri May 31 08:44:47 
2019 +0800| [4208b428c4730f86438ec777642c6e455845b670] | committer: Zhong Li

lavf/qsv_vpp: add frame format option

1. Currently output format is hard-coded as NV12, thus means
   CSC is always done for not NV12 input such as P010.
   Follow original input format as default output.
2. Add an option to specify output format.

Signed-off-by: Zhong Li 

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

 libavfilter/vf_vpp_qsv.c | 37 -
 1 file changed, 36 insertions(+), 1 deletion(-)

diff --git a/libavfilter/vf_vpp_qsv.c b/libavfilter/vf_vpp_qsv.c
index dd05e8baff..915cf748c4 100644
--- a/libavfilter/vf_vpp_qsv.c
+++ b/libavfilter/vf_vpp_qsv.c
@@ -57,6 +57,10 @@ typedef struct VPPContext{
 
 int out_width;
 int out_height;
+/**
+ * Output sw format. AV_PIX_FMT_NONE for no conversion.
+ */
+enum AVPixelFormat out_format;
 
 AVRational framerate;   /* target framerate */
 int use_frc;/* use framerate conversion */
@@ -79,6 +83,7 @@ typedef struct VPPContext{
 
 char *cx, *cy, *cw, *ch;
 char *ow, *oh;
+char *output_format_str;
 } VPPContext;
 
 static const AVOption options[] = {
@@ -104,6 +109,8 @@ static const AVOption options[] = {
 { "width",  "Output video width",  OFFSET(ow), AV_OPT_TYPE_STRING, { 
.str="cw" }, 0, 255, .flags = FLAGS },
 { "h",  "Output video height", OFFSET(oh), AV_OPT_TYPE_STRING, { 
.str="w*ch/cw" }, 0, 255, .flags = FLAGS },
 { "height", "Output video height", OFFSET(oh), AV_OPT_TYPE_STRING, { 
.str="w*ch/cw" }, 0, 255, .flags = FLAGS },
+{ "format", "Output pixel format", OFFSET(output_format_str), 
AV_OPT_TYPE_STRING, { .str = "same" }, .flags = FLAGS },
+
 { NULL }
 };
 
@@ -207,6 +214,23 @@ release:
 return ret;
 }
 
+static av_cold int vpp_init(AVFilterContext *ctx)
+{
+VPPContext  *vpp  = ctx->priv;
+
+if (!strcmp(vpp->output_format_str, "same")) {
+vpp->out_format = AV_PIX_FMT_NONE;
+} else {
+vpp->out_format = av_get_pix_fmt(vpp->output_format_str);
+if (vpp->out_format == AV_PIX_FMT_NONE) {
+av_log(ctx, AV_LOG_ERROR, "Unrecognized output pixel format: 
%s\n", vpp->output_format_str);
+return AVERROR(EINVAL);
+}
+}
+
+return 0;
+}
+
 static int config_input(AVFilterLink *inlink)
 {
 AVFilterContext *ctx = inlink->dst;
@@ -251,6 +275,7 @@ static int config_output(AVFilterLink *outlink)
 QSVVPPCrop  crop  = { 0 };
 mfxExtBuffer*ext_buf[ENH_FILTERS_COUNT];
 AVFilterLink*inlink = ctx->inputs[0];
+enum AVPixelFormat in_format;
 
 outlink->w  = vpp->out_width;
 outlink->h  = vpp->out_height;
@@ -258,10 +283,19 @@ static int config_output(AVFilterLink *outlink)
 outlink->time_base  = av_inv_q(vpp->framerate);
 
 param.filter_frame  = NULL;
-param.out_sw_format = AV_PIX_FMT_NV12;
 param.num_ext_buf   = 0;
 param.ext_buf   = ext_buf;
 
+if (inlink->format == AV_PIX_FMT_QSV) {
+ if (!inlink->hw_frames_ctx || !inlink->hw_frames_ctx->data)
+ return AVERROR(EINVAL);
+ else
+ in_format = 
((AVHWFramesContext*)inlink->hw_frames_ctx->data)->sw_format;
+} else
+in_format = inlink->format;
+
+param.out_sw_format  = (vpp->out_format == AV_PIX_FMT_NONE) ? in_format : 
vpp->out_format;
+
 if (vpp->use_crop) {
 crop.in_idx = 0;
 crop.x = vpp->crop_x;
@@ -422,6 +456,7 @@ AVFilter ff_vf_vpp_qsv = {
 .description   = NULL_IF_CONFIG_SMALL("Quick Sync Video VPP."),
 .priv_size = sizeof(VPPContext),
 .query_formats = query_formats,
+.init  = vpp_init,
 .uninit= vpp_uninit,
 .inputs= vpp_inputs,
 .outputs   = vpp_outputs,

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

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".

[FFmpeg-cvslog] avformat/dashdec: add http_proxy, referer and rw_timeout http method support for segments

2019-06-13 Thread Steven Liu
ffmpeg | branch: master | Steven Liu  | Mon Jun  3 
17:03:41 2019 +0800| [aea524e6e325ff27e4cd0d98212fc5b335c1af48] | committer: 
Steven Liu

avformat/dashdec: add http_proxy, referer and rw_timeout http method support 
for segments

Signed-off-by: Steven Liu 

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

 libavformat/dashdec.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/libavformat/dashdec.c b/libavformat/dashdec.c
index 2c50f23c06..6b73da62fa 100644
--- a/libavformat/dashdec.c
+++ b/libavformat/dashdec.c
@@ -1834,7 +1834,9 @@ end:
 static int save_avio_options(AVFormatContext *s)
 {
 DASHContext *c = s->priv_data;
-const char *opts[] = { "headers", "user_agent", "cookies", NULL }, **opt = 
opts;
+const char *opts[] = {
+"headers", "user_agent", "cookies", "http_proxy", "referer", 
"rw_timeout", NULL };
+const char **opt = opts;
 uint8_t *buf = NULL;
 int ret = 0;
 

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

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".

[FFmpeg-cvslog] avformat/hls: avformat_find_stream_info when the audio list in the variant

2019-06-13 Thread Steven Liu
ffmpeg | branch: master | Steven Liu  | Tue Jun  4 
15:27:11 2019 +0800| [5d0652916f2f514f077de6592407cd2c4bf3655c] | committer: 
Steven Liu

avformat/hls: avformat_find_stream_info when the audio list in the variant

Signed-off-by: Steven Liu 

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

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

diff --git a/libavformat/hls.c b/libavformat/hls.c
index b5df9ae523..14f1bf8d44 100644
--- a/libavformat/hls.c
+++ b/libavformat/hls.c
@@ -1948,7 +1948,7 @@ static int hls_read_header(AVFormatContext *s)
  * but for other streams we can rely on our user calling 
avformat_find_stream_info()
  * on us if they want to.
  */
-if (pls->is_id3_timestamped) {
+if (pls->is_id3_timestamped || (pls->n_renditions > 0 && 
pls->renditions[0]->type == AVMEDIA_TYPE_AUDIO)) {
 ret = avformat_find_stream_info(pls->ctx, NULL);
 if (ret < 0)
 goto fail;

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

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".

[FFmpeg-cvslog] avformat/hlsenc: add EXT-X-I-FRAMES-ONLY tag support

2019-06-13 Thread Steven Liu
ffmpeg | branch: master | Steven Liu  | Sun Jun  2 
22:03:17 2019 +0800| [fa7a6dbd7607ba34fba696b6b5a16a7b137ca96f] | committer: 
Steven Liu

avformat/hlsenc: add EXT-X-I-FRAMES-ONLY tag support

Signed-off-by: Steven Liu 

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

 doc/muxers.texi   |  4 
 libavformat/dashenc.c |  4 ++--
 libavformat/hlsenc.c  | 27 ++-
 libavformat/hlsplaylist.c | 11 ---
 libavformat/hlsplaylist.h |  5 +++--
 5 files changed, 39 insertions(+), 12 deletions(-)

diff --git a/doc/muxers.texi b/doc/muxers.texi
index c73719c421..50147c4d20 100644
--- a/doc/muxers.texi
+++ b/doc/muxers.texi
@@ -852,6 +852,10 @@ including the file containing the AES encryption key.
 Add the @code{#EXT-X-INDEPENDENT-SEGMENTS} to playlists that has video segments
 and when all the segments of that playlist are guaranteed to start with a Key 
frame.
 
+@item iframes_only
+Add the @code{#EXT-X-I-FRAMES-ONLY} to playlists that has video segments
+and can play only I-frames in the @code{#EXT-X-BYTERANGE} mode.
+
 @item split_by_time
 Allow segments to start on frames other than keyframes. This improves
 behavior on some players when the time between keyframes is inconsistent,
diff --git a/libavformat/dashenc.c b/libavformat/dashenc.c
index 94b198ceb8..3fd7e78166 100644
--- a/libavformat/dashenc.c
+++ b/libavformat/dashenc.c
@@ -471,7 +471,7 @@ static void write_hls_media_playlist(OutputStream *os, 
AVFormatContext *s,
 }
 
 ff_hls_write_playlist_header(c->m3u8_out, 6, -1, target_duration,
- start_number, PLAYLIST_TYPE_NONE);
+ start_number, PLAYLIST_TYPE_NONE, 0);
 
 ff_hls_write_init_file(c->m3u8_out, os->initfile, c->single_file,
os->init_range_length, os->init_start_pos);
@@ -491,7 +491,7 @@ static void write_hls_media_playlist(OutputStream *os, 
AVFormatContext *s,
 (double) seg->duration / timescale, 0,
 seg->range_length, seg->start_pos, NULL,
 c->single_file ? os->initfile : seg->file,
-&prog_date_time);
+&prog_date_time, 0, 0, 0);
 if (ret < 0) {
 av_log(os->ctx, AV_LOG_WARNING, "ff_hls_write_file_entry get 
error\n");
 }
diff --git a/libavformat/hlsenc.c b/libavformat/hlsenc.c
index 1613c34509..9884f74d51 100644
--- a/libavformat/hlsenc.c
+++ b/libavformat/hlsenc.c
@@ -75,6 +75,8 @@ typedef struct HLSSegment {
 int discont;
 int64_t pos;
 int64_t size;
+int64_t keyframe_pos;
+int64_t keyframe_size;
 unsigned var_stream_idx;
 
 char key_uri[LINE_BUFFER_SIZE + 1];
@@ -99,6 +101,7 @@ typedef enum HLSFlags {
 HLS_TEMP_FILE = (1 << 11),
 HLS_PERIODIC_REKEY = (1 << 12),
 HLS_INDEPENDENT_SEGMENTS = (1 << 13),
+HLS_I_FRAMES_ONLY = (1 << 14),
 } HLSFlags;
 
 typedef enum {
@@ -125,6 +128,9 @@ typedef struct VariantStream {
 double dpp;   // duration per packet
 int64_t start_pts;
 int64_t end_pts;
+int64_t video_lastpos;
+int64_t video_keyframe_pos;
+int64_t video_keyframe_size;
 double duration;  // last segment duration computed so far, in seconds
 int64_t start_pos;// last segment starting position
 int64_t size; // last segment size
@@ -994,6 +1000,8 @@ static int hls_append_segment(struct AVFormatContext *s, 
HLSContext *hls,
 en->duration = duration;
 en->pos  = pos;
 en->size = size;
+en->keyframe_pos  = vs->video_keyframe_pos;
+en->keyframe_size = vs->video_keyframe_size;
 en->next = NULL;
 en->discont  = 0;
 
@@ -1411,7 +1419,7 @@ static int hls_window(AVFormatContext *s, int last, 
VariantStream *vs)
 
 vs->discontinuity_set = 0;
 ff_hls_write_playlist_header(hls->m3u8_out, hls->version, hls->allowcache,
- target_duration, sequence, hls->pl_type);
+ target_duration, sequence, hls->pl_type, 
hls->flags & HLS_I_FRAMES_ONLY);
 
 if((hls->flags & HLS_DISCONT_START) && sequence==hls->start_sequence && 
vs->discontinuity_set==0 ){
 avio_printf(hls->m3u8_out, "#EXT-X-DISCONTINUITY\n");
@@ -1439,7 +1447,7 @@ static int hls_window(AVFormatContext *s, int last, 
VariantStream *vs)
 ret = ff_hls_write_file_entry(hls->m3u8_out, en->discont, 
byterange_mode,
   en->duration, hls->flags & 
HLS_ROUND_DURATIONS,
   en->size, en->pos, vs->baseurl,
-  en->filename, prog_date_time_p);
+  en->filename, prog_date_time_p, 
en->keyframe_size, en->keyframe_pos, hls->flags & HLS_I_FRAMES_ONLY);
 if (ret < 0) {
 av_log(s, AV_LOG_WARN

[FFmpeg-cvslog] avformat/hls: add http 2.0 version number compare for the http_multiple

2019-06-13 Thread Steven Liu
ffmpeg | branch: master | Steven Liu  | Tue Jun  4 
15:58:35 2019 +0800| [bee0fba7e69f0cfa32bd588425529dfbcc8c9254] | committer: 
Steven Liu

avformat/hls: add http 2.0 version number compare for the http_multiple

Signed-off-by: Steven Liu 

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

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

diff --git a/libavformat/hls.c b/libavformat/hls.c
index 14f1bf8d44..e10cfeb414 100644
--- a/libavformat/hls.c
+++ b/libavformat/hls.c
@@ -1473,7 +1473,7 @@ reload:
 uint8_t *http_version_opt = NULL;
 int r = av_opt_get(v->input, "http_version", AV_OPT_SEARCH_CHILDREN, 
&http_version_opt);
 if (r >= 0) {
-c->http_multiple = strncmp((const char *)http_version_opt, "1.1", 
3) == 0;
+c->http_multiple = (!strncmp((const char *)http_version_opt, 
"1.1", 3) || !strncmp((const char *)http_version_opt, "2.0", 3));
 av_freep(&http_version_opt);
 }
 }

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

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".

[FFmpeg-cvslog] doc/formats: document f_strict/strict for AVFormatContext

2019-06-13 Thread Jun Zhao
ffmpeg | branch: master | Jun Zhao  | Sat Jun  8 
20:07:44 2019 +0800| [6f34fca8a8ad0ef25ec34cfa7e0da46aa0762231] | committer: 
Jun Zhao

doc/formats: document f_strict/strict for AVFormatContext

document f_strict/strict option for AVFormatContext

Signed-off-by: Jun Zhao 

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

 doc/formats.texi | 22 ++
 1 file changed, 22 insertions(+)

diff --git a/doc/formats.texi b/doc/formats.texi
index a992506ac1..729c77b01d 100644
--- a/doc/formats.texi
+++ b/doc/formats.texi
@@ -224,6 +224,28 @@ would require too many resources due to a large number of 
streams.
 @item skip_estimate_duration_from_pts @var{bool} (@emph{input})
 Skip estimation of input duration when calculated using PTS.
 At present, applicable for MPEG-PS and MPEG-TS.
+
+@item strict, f_strict @var{integer} (@emph{input/output})
+Specify how strictly to follow the standards. @code{f_strict} is deprecated and
+should be used only via the @command{ffmpeg} tool.
+
+Possible values:
+@table @samp
+@item very
+strictly conform to an older more strict version of the spec or reference 
software
+@item strict
+strictly conform to all the things in the spec no matter what consequences
+@item normal
+
+@item unofficial
+allow unofficial extensions
+@item experimental
+allow non standardized experimental things, experimental
+(unfinished/work in progress/not well tested) decoders and encoders.
+Note: experimental decoders can pose a security risk, do not use this for
+decoding untrusted input.
+@end table
+
 @end table
 
 @c man end FORMAT OPTIONS

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

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".

[FFmpeg-cvslog] doc/fftools-common-opts: document ffmpeg -h bsf=bitstream_filter_name

2019-06-13 Thread Jun Zhao
ffmpeg | branch: master | Jun Zhao  | Sat Jun  8 
22:52:47 2019 +0800| [c432a91d252fc44bc4a9a56c785632d1f3fa182f] | committer: 
Jun Zhao

doc/fftools-common-opts: document ffmpeg -h bsf=bitstream_filter_name

document ffmpeg -h bsf=bitstream_filter_name

Signed-off-by: Jun Zhao 

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

 doc/fftools-common-opts.texi | 4 
 1 file changed, 4 insertions(+)

diff --git a/doc/fftools-common-opts.texi b/doc/fftools-common-opts.texi
index 4c821bad07..1234de850e 100644
--- a/doc/fftools-common-opts.texi
+++ b/doc/fftools-common-opts.texi
@@ -109,6 +109,10 @@ Print detailed information about the muxer named 
@var{muxer_name}. Use the
 @item filter=@var{filter_name}
 Print detailed information about the filter name @var{filter_name}. Use the
 @option{-filters} option to get a list of all filters.
+
+@item bsf=@var{bitstream_filter_name}
+Print detailed information about the bitstream filter name 
@var{bitstream_filter_name}.
+Use the @option{-bsfs} option to get a list of all bitstream filters.
 @end table
 
 @item -version

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

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".

[FFmpeg-cvslog] lavf/webvtt: fix ffmpeg -h demuxer=webvtt can't dump options

2019-06-13 Thread Jun Zhao
ffmpeg | branch: master | Jun Zhao  | Tue Jun  4 
10:54:45 2019 +0800| [c351873e06bebbeecd7d7a62d451c3188769c4bf] | committer: 
Jun Zhao

lavf/webvtt: fix ffmpeg -h demuxer=webvtt can't dump options

fix ffmpeg -h demuxer=webvtt can't dump options

Signed-off-by: Jun Zhao 

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

 libavformat/webvttdec.c | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/libavformat/webvttdec.c b/libavformat/webvttdec.c
index e435de36c7..52579c5ed2 100644
--- a/libavformat/webvttdec.c
+++ b/libavformat/webvttdec.c
@@ -192,14 +192,14 @@ static int webvtt_read_close(AVFormatContext *s)
 }
 
 #define OFFSET(x) offsetof(WebVTTContext, x)
-#define KIND_FLAGS AV_OPT_FLAG_SUBTITLE_PARAM
+#define KIND_FLAGS AV_OPT_FLAG_SUBTITLE_PARAM|AV_OPT_FLAG_DECODING_PARAM
 
 static const AVOption options[] = {
 { "kind", "Set kind of WebVTT track", OFFSET(kind), AV_OPT_TYPE_INT, { 
.i64 = 0 }, 0, INT_MAX, KIND_FLAGS, "webvtt_kind" },
-{ "subtitles","WebVTT subtitles kind",0, AV_OPT_TYPE_CONST, { 
.i64 = 0 },   INT_MIN, INT_MAX, 0, "webvtt_kind" },
-{ "captions", "WebVTT captions kind", 0, AV_OPT_TYPE_CONST, { 
.i64 = AV_DISPOSITION_CAPTIONS }, INT_MIN, INT_MAX, 0, "webvtt_kind" },
-{ "descriptions", "WebVTT descriptions kind", 0, AV_OPT_TYPE_CONST, { 
.i64 = AV_DISPOSITION_DESCRIPTIONS }, INT_MIN, INT_MAX, 0, "webvtt_kind" },
-{ "metadata", "WebVTT metadata kind", 0, AV_OPT_TYPE_CONST, { 
.i64 = AV_DISPOSITION_METADATA }, INT_MIN, INT_MAX, 0, "webvtt_kind" },
+{ "subtitles","WebVTT subtitles kind",0, AV_OPT_TYPE_CONST, { 
.i64 = 0 },   INT_MIN, INT_MAX, KIND_FLAGS, 
"webvtt_kind" },
+{ "captions", "WebVTT captions kind", 0, AV_OPT_TYPE_CONST, { 
.i64 = AV_DISPOSITION_CAPTIONS }, INT_MIN, INT_MAX, KIND_FLAGS, 
"webvtt_kind" },
+{ "descriptions", "WebVTT descriptions kind", 0, AV_OPT_TYPE_CONST, { 
.i64 = AV_DISPOSITION_DESCRIPTIONS }, INT_MIN, INT_MAX, KIND_FLAGS, 
"webvtt_kind" },
+{ "metadata", "WebVTT metadata kind", 0, AV_OPT_TYPE_CONST, { 
.i64 = AV_DISPOSITION_METADATA }, INT_MIN, INT_MAX, KIND_FLAGS, 
"webvtt_kind" },
 { NULL }
 };
 

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

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".

[FFmpeg-cvslog] lavf/hls: More log message

2019-06-13 Thread Jun Zhao
ffmpeg | branch: master | Jun Zhao  | Fri Jun 14 
09:22:04 2019 +0800| [6f82bf9dd30d7a8d8e4c4978eac2fb540629e508] | committer: 
Jun Zhao

lavf/hls: More log message

More log message, it's will help the debugging

Reviewed-by: Steven Liu 
Signed-off-by: Jun Zhao 

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

 libavformat/hls.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/libavformat/hls.c b/libavformat/hls.c
index e10cfeb414..8c12fcef77 100644
--- a/libavformat/hls.c
+++ b/libavformat/hls.c
@@ -849,6 +849,7 @@ static int parse_playlist(HLSContext *c, const char *url,
 if (ptr)
 seg_offset = strtoll(ptr+1, NULL, 10);
 } else if (av_strstart(line, "#", NULL)) {
+av_log(c->ctx, AV_LOG_INFO, "Skip ('%s')\n", line);
 continue;
 } else if (line[0]) {
 if (is_variant) {
@@ -1398,8 +1399,8 @@ restart:
 v->needed = playlist_needed(v);
 
 if (!v->needed) {
-av_log(v->parent, AV_LOG_INFO, "No longer receiving playlist %d\n",
-v->index);
+av_log(v->parent, AV_LOG_INFO, "No longer receiving playlist %d 
('%s')\n",
+   v->index, v->url);
 return AVERROR_EOF;
 }
 

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

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".