[FFmpeg-cvslog] [ffmpeg-web] branch master updated. 11945cf web/download: Fix link for linux static builds 64-bit kernel 2.6.32 and above
The branch, master has been updated via 11945cf1567ba8023d48f5ad99dcdeff2b6e2ff8 (commit) via 35b00c563d5c964538478c8e5d52cf7afdc092db (commit) from fc0ae34814fd5130f833801d7a78c5985c6b5f7e (commit) - Log - commit 11945cf1567ba8023d48f5ad99dcdeff2b6e2ff8 Author: db0company AuthorDate: Mon Jul 21 20:37:35 2014 +0200 Commit: Michael Niedermayer CommitDate: Wed Jul 23 09:32:21 2014 +0200 web/download: Fix link for linux static builds 64-bit kernel 2.6.32 and above Reviewed-by: Lou Logan diff --git a/src/download b/src/download index 7ddb4e4..fb30ed0 100644 --- a/src/download +++ b/src/download @@ -72,7 +72,7 @@ http://ffmpeg.gusari.org/static/";>32-bit and 64-bit with kernel 3.2.x and above - http://ffmpeg.gusari.org/static/";>64-bit + http://johnvansickle.com/ffmpeg/";>64-bit with kernel 2.6.32 and above commit 35b00c563d5c964538478c8e5d52cf7afdc092db Author: db0company AuthorDate: Mon Jul 21 20:37:34 2014 +0200 Commit: Michael Niedermayer CommitDate: Wed Jul 23 09:31:35 2014 +0200 web/download: Fix redundant git word on snapshot button Reviewed-by: Lou Logan diff --git a/src/download b/src/download index 5eb0b0c..7ddb4e4 100644 --- a/src/download +++ b/src/download @@ -137,7 +137,7 @@ - Git Snapshot + Snapshot http://git.videolan.org/?p=ffmpeg.git;a=tree"; class="btn btn-success"> Browse --- Summary of changes: src/download |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] avcodec/x86/hevc_deblock: Fix compilation with nasm.
ffmpeg | branch: master | Carl Eugen Hoyos | Wed Jul 23 00:51:29 2014 +0200| [c75fdee747179e21e3cc137b2565ba911b17f9c5] | committer: Carl Eugen Hoyos avcodec/x86/hevc_deblock: Fix compilation with nasm. > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c75fdee747179e21e3cc137b2565ba911b17f9c5 --- libavcodec/x86/hevc_deblock.asm |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/x86/hevc_deblock.asm b/libavcodec/x86/hevc_deblock.asm index 395b20e..b263dca 100644 --- a/libavcodec/x86/hevc_deblock.asm +++ b/libavcodec/x86/hevc_deblock.asm @@ -355,7 +355,7 @@ ALIGN 16 %if %1 > 8 shl betaq, %1 - 8 %endif -movdm13, betaq +movdm13, betad SPLATW m13, m13, 0 ;end beta calculations @@ -619,7 +619,7 @@ ALIGN 16 paddw m15, m2; p1' ;beta calculations -movdm10, betaq +movdm10, betad SPLATW m10, m10, 0 movdm13, r7d; 1dp0 + 1dp3 ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] g2meet: allow size changes within original sizes
ffmpeg | branch: release/2.2 | Vittorio Giovara | Tue Jul 15 15:22:11 2014 -0400| [68fd80ee1ca22c39b6ef4e6641b5b2e0d4d89a14] | committer: Vittorio Giovara g2meet: allow size changes within original sizes > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=68fd80ee1ca22c39b6ef4e6641b5b2e0d4d89a14 --- libavcodec/g2meet.c |9 +++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/libavcodec/g2meet.c b/libavcodec/g2meet.c index 89fafef..e1e7177 100644 --- a/libavcodec/g2meet.c +++ b/libavcodec/g2meet.c @@ -87,6 +87,7 @@ typedef struct G2MContext { intcompression; intwidth, height, bpp; +intorig_width, orig_height; inttile_width, tile_height; inttiles_x, tiles_y, tile_x, tile_y; @@ -698,8 +699,8 @@ static int g2m_decode_frame(AVCodecContext *avctx, void *data, } c->width = bytestream2_get_be32(&bc); c->height = bytestream2_get_be32(&bc); -if (c->width < 16 || c->width > avctx->width || -c->height < 16 || c->height > avctx->height) { +if (c->width < 16 || c->width > c->orig_width || +c->height < 16 || c->height > c->orig_height) { av_log(avctx, AV_LOG_ERROR, "Invalid frame dimensions %dx%d\n", c->width, c->height); @@ -860,6 +861,10 @@ static av_cold int g2m_decode_init(AVCodecContext *avctx) avctx->pix_fmt = AV_PIX_FMT_RGB24; +// store original sizes and check against those if resize happens +c->orig_width = avctx->width; +c->orig_height = avctx->height; + return 0; } ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] Merge commit '68fd80ee1ca22c39b6ef4e6641b5b2e0d4d89a14' into release/2.2
ffmpeg | branch: release/2.2 | Michael Niedermayer | Wed Jul 23 10:42:11 2014 +0200| [3e78f8689167d6edcf15afb2836ede9505bca1a2] | committer: Michael Niedermayer Merge commit '68fd80ee1ca22c39b6ef4e6641b5b2e0d4d89a14' into release/2.2 * commit '68fd80ee1ca22c39b6ef4e6641b5b2e0d4d89a14': g2meet: allow size changes within original sizes Merged-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=3e78f8689167d6edcf15afb2836ede9505bca1a2 --- ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] vc1: Do not return an error when skipping b frames
ffmpeg | branch: release/2.2 | Alessandro Ghedini | Mon Apr 21 19:10:52 2014 +0200| [4ddac7199b247e4ed04296db944f29f5148e9860] | committer: Michael Niedermayer vc1: Do not return an error when skipping b frames This caused mpv (and possibly others) to fallback to software decoding after seeking a VC1 stream. Bug-Id: 667 Signed-off-by: Luca Barbato (cherry picked from commit cdf6eb5a9710566be217a3f17d3d94ac4e4d2662) Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4ddac7199b247e4ed04296db944f29f5148e9860 --- libavcodec/vc1dec.c |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/vc1dec.c b/libavcodec/vc1dec.c index 593e69f..4e1b8bf 100644 --- a/libavcodec/vc1dec.c +++ b/libavcodec/vc1dec.c @@ -6005,7 +6005,7 @@ static int vc1_decode_frame(AVCodecContext *avctx, void *data, /* skip B-frames if we don't have reference frames */ if (s->last_picture_ptr == NULL && (s->pict_type == AV_PICTURE_TYPE_B || s->droppable)) { -goto err; +goto end; } if ((avctx->skip_frame >= AVDISCARD_NONREF && s->pict_type == AV_PICTURE_TYPE_B) || (avctx->skip_frame >= AVDISCARD_NONKEY && s->pict_type != AV_PICTURE_TYPE_I) || ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
Re: [FFmpeg-cvslog] Autodetect big-endian tiff files.
Clément Bœsch pkh.me> writes: > > -if (AV_RB32(b) == 0x49492a00) > > +if (AV_RB32(b) == 0x49492a00 || > > +AV_RB32(b) == 0x4D4D002a) > > does this weird case mix have a particular signification? No, I unfortunately copie "2a" from the line above and "4D4D" from a specification. Carl Eugen ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] Merge commit '2b6ab3a2bd7e7cee5e7a55dd2e48b8feb4a826bb'
ffmpeg | branch: master | Michael Niedermayer | Wed Jul 23 14:15:20 2014 +0200| [d0cb6caf691ccd52fae1b3000691108cfacd327c] | committer: Michael Niedermayer Merge commit '2b6ab3a2bd7e7cee5e7a55dd2e48b8feb4a826bb' * commit '2b6ab3a2bd7e7cee5e7a55dd2e48b8feb4a826bb': mpegvideo: Move QUANT_BIAS_SHIFT define to the only place it is used Merged-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d0cb6caf691ccd52fae1b3000691108cfacd327c --- ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] mpegvideo: Move QUANT_BIAS_SHIFT define to the only place it is used
ffmpeg | branch: master | Diego Biurrun | Tue Jul 22 11:10:13 2014 -0700| [2b6ab3a2bd7e7cee5e7a55dd2e48b8feb4a826bb] | committer: Diego Biurrun mpegvideo: Move QUANT_BIAS_SHIFT define to the only place it is used > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=2b6ab3a2bd7e7cee5e7a55dd2e48b8feb4a826bb --- libavcodec/mpegvideo.h |2 +- libavcodec/mpegvideo_enc.c |2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/libavcodec/mpegvideo.h b/libavcodec/mpegvideo.h index 3bd87df..1a7c1b1 100644 --- a/libavcodec/mpegvideo.h +++ b/libavcodec/mpegvideo.h @@ -430,7 +430,7 @@ typedef struct MpegEncContext { uint16_t chroma_intra_matrix[64]; uint16_t inter_matrix[64]; uint16_t chroma_inter_matrix[64]; -#define QUANT_BIAS_SHIFT 8 + int intra_quant_bias;///< bias for the quantizer int inter_quant_bias;///< bias for the quantizer int min_qcoeff; ///< minimum encodable coefficient diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index ea24902..fa4840e 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -58,6 +58,8 @@ #include "bytestream.h" #include +#define QUANT_BIAS_SHIFT 8 + static int encode_picture(MpegEncContext *s, int picture_number); static int dct_quantize_refine(MpegEncContext *s, int16_t *block, int16_t *weight, int16_t *orig, int n, int qscale); static int sse_mb(MpegEncContext *s); ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] fft-test: Make global exptab variable static
ffmpeg | branch: master | Diego Biurrun | Mon Jul 21 01:53:16 2014 -0700| [20ec0daaa1cdd3996ac6ed0198de961129474044] | committer: Diego Biurrun fft-test: Make global exptab variable static > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=20ec0daaa1cdd3996ac6ed0198de961129474044 --- libavcodec/fft-test.c |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/fft-test.c b/libavcodec/fft-test.c index 2f2f2e9..dbe624d 100644 --- a/libavcodec/fft-test.c +++ b/libavcodec/fft-test.c @@ -59,7 +59,7 @@ # define FMT "%6d" #endif -struct { +static struct { float re, im; } *exptab; ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] Merge commit '20ec0daaa1cdd3996ac6ed0198de961129474044'
ffmpeg | branch: master | Michael Niedermayer | Wed Jul 23 14:26:55 2014 +0200| [54256482cbc0ef334c076d3b07bc6023588495f2] | committer: Michael Niedermayer Merge commit '20ec0daaa1cdd3996ac6ed0198de961129474044' * commit '20ec0daaa1cdd3996ac6ed0198de961129474044': fft-test: Make global exptab variable static Merged-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=54256482cbc0ef334c076d3b07bc6023588495f2 --- ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] avcodec/h264: support AV_PKT_DATA_NEW_EXTRADATA
ffmpeg | branch: master | Michael Niedermayer | Wed Jul 23 17:39:30 2014 +0200| [601c2388549ff395bc99383029e92c2219152af0] | committer: Michael Niedermayer avcodec/h264: support AV_PKT_DATA_NEW_EXTRADATA Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=601c2388549ff395bc99383029e92c2219152af0 --- libavcodec/h264.c |6 ++ 1 file changed, 6 insertions(+) diff --git a/libavcodec/h264.c b/libavcodec/h264.c index f4fcef0..10905db 100644 --- a/libavcodec/h264.c +++ b/libavcodec/h264.c @@ -1891,6 +1891,12 @@ static int h264_decode_frame(AVCodecContext *avctx, void *data, return buf_index; } +if (h->is_avc && av_packet_get_side_data(avpkt, AV_PKT_DATA_NEW_EXTRADATA, NULL)) { +int side_size; +uint8_t *side = av_packet_get_side_data(avpkt, AV_PKT_DATA_NEW_EXTRADATA, &side_size); +if (is_extra(side, side_size)) +ff_h264_decode_extradata(h, side, side_size); +} if(h->is_avc && buf_size >= 9 && buf[0]==1 && buf[2]==0 && (buf[4]&0xFC)==0xFC && (buf[5]&0x1F) && buf[8]==0x67){ if (is_extra(buf, buf_size)) return ff_h264_decode_extradata(h, buf, buf_size); ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] avformat/flvdec: use AV_PKT_DATA_NEW_EXTRADATA for h264 too
ffmpeg | branch: master | Michael Niedermayer | Wed Jul 23 17:08:56 2014 +0200| [01b236b70438527946b0dd79894c0105bc668c91] | committer: Michael Niedermayer avformat/flvdec: use AV_PKT_DATA_NEW_EXTRADATA for h264 too Fixes Ticket 3787 Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=01b236b70438527946b0dd79894c0105bc668c91 --- libavformat/flvdec.c |3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavformat/flvdec.c b/libavformat/flvdec.c index 899a036..a97fc32 100644 --- a/libavformat/flvdec.c +++ b/libavformat/flvdec.c @@ -951,7 +951,8 @@ retry_duration: dts = pts = AV_NOPTS_VALUE; } } -if (type == 0 && (!st->codec->extradata || st->codec->codec_id == AV_CODEC_ID_AAC)) { +if (type == 0 && (!st->codec->extradata || st->codec->codec_id == AV_CODEC_ID_AAC || +st->codec->codec_id == AV_CODEC_ID_H264)) { AVDictionaryEntry *t; if (st->codec->extradata) { ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] avcodec/h264: factor is_extra() out
ffmpeg | branch: master | Michael Niedermayer | Wed Jul 23 17:38:41 2014 +0200| [1bf371b24ebd0804d2cc041b45eba295b02d80c6] | committer: Michael Niedermayer avcodec/h264: factor is_extra() out Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=1bf371b24ebd0804d2cc041b45eba295b02d80c6 --- libavcodec/h264.c | 44 1 file changed, 24 insertions(+), 20 deletions(-) diff --git a/libavcodec/h264.c b/libavcodec/h264.c index ba3a789..f4fcef0 100644 --- a/libavcodec/h264.c +++ b/libavcodec/h264.c @@ -1819,6 +1819,28 @@ static int output_frame(H264Context *h, AVFrame *dst, H264Picture *srcp) return 0; } +static int is_extra(const uint8_t *buf, int buf_size) +{ +int cnt= buf[5]&0x1f; +const uint8_t *p= buf+6; +while(cnt--){ +int nalsize= AV_RB16(p) + 2; +if(nalsize > buf_size - (p-buf) || p[2]!=0x67) +return 0; +p += nalsize; +} +cnt = *(p++); +if(!cnt) +return 0; +while(cnt--){ +int nalsize= AV_RB16(p) + 2; +if(nalsize > buf_size - (p-buf) || p[2]!=0x68) +return 0; +p += nalsize; +} +return 1; +} + static int h264_decode_frame(AVCodecContext *avctx, void *data, int *got_frame, AVPacket *avpkt) { @@ -1870,27 +1892,9 @@ static int h264_decode_frame(AVCodecContext *avctx, void *data, return buf_index; } if(h->is_avc && buf_size >= 9 && buf[0]==1 && buf[2]==0 && (buf[4]&0xFC)==0xFC && (buf[5]&0x1F) && buf[8]==0x67){ -int cnt= buf[5]&0x1f; -const uint8_t *p= buf+6; -while(cnt--){ -int nalsize= AV_RB16(p) + 2; -if(nalsize > buf_size - (p-buf) || p[2]!=0x67) -goto not_extra; -p += nalsize; -} -cnt = *(p++); -if(!cnt) -goto not_extra; -while(cnt--){ -int nalsize= AV_RB16(p) + 2; -if(nalsize > buf_size - (p-buf) || p[2]!=0x68) -goto not_extra; -p += nalsize; -} - -return ff_h264_decode_extradata(h, buf, buf_size); +if (is_extra(buf, buf_size)) +return ff_h264_decode_extradata(h, buf, buf_size); } -not_extra: buf_index = decode_nal_units(h, buf, buf_size, 0); if (buf_index < 0) ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] lavd/lavfi: work with non-mappable files for graph_file option
ffmpeg | branch: master | Andrey Utkin | Wed Jul 23 16:12:39 2014 +0300| [b6a6459a24c6279502abeae064c28c1187fd0b0f] | committer: Michael Niedermayer lavd/lavfi: work with non-mappable files for graph_file option Example of non-mappable file is /dev/stdin. Previously passing it as graph_file value returned error. Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b6a6459a24c6279502abeae064c28c1187fd0b0f --- libavdevice/lavfi.c | 30 +++--- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/libavdevice/lavfi.c b/libavdevice/lavfi.c index d1904dd..f1c88ac 100644 --- a/libavdevice/lavfi.c +++ b/libavdevice/lavfi.c @@ -115,23 +115,23 @@ av_cold static int lavfi_read_header(AVFormatContext *avctx) } if (lavfi->graph_filename) { -uint8_t *file_buf, *graph_buf; -size_t file_bufsize; -ret = av_file_map(lavfi->graph_filename, - &file_buf, &file_bufsize, 0, avctx); +AVBPrint graph_file_pb; +AVIOContext *avio = NULL; +ret = avio_open(&avio, lavfi->graph_filename, AVIO_FLAG_READ); if (ret < 0) -goto end; - -/* create a 0-terminated string based on the read file */ -graph_buf = av_malloc(file_bufsize + 1); -if (!graph_buf) { -av_file_unmap(file_buf, file_bufsize); -FAIL(AVERROR(ENOMEM)); +FAIL(ret); +av_bprint_init(&graph_file_pb, 0, AV_BPRINT_SIZE_UNLIMITED); +ret = avio_read_to_bprint(avio, &graph_file_pb, INT_MAX); +avio_close(avio); +av_bprint_chars(&graph_file_pb, '\0', 1); +if (!ret && !av_bprint_is_complete(&graph_file_pb)) +ret = AVERROR(ENOMEM); +if (ret) { +av_bprint_finalize(&graph_file_pb, NULL); +FAIL(ret); } -memcpy(graph_buf, file_buf, file_bufsize); -graph_buf[file_bufsize] = 0; -av_file_unmap(file_buf, file_bufsize); -lavfi->graph_str = graph_buf; +if ((ret = av_bprint_finalize(&graph_file_pb, &lavfi->graph_str))) +FAIL(ret); } if (!lavfi->graph_str) ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] avio: Introduce avio_read_to_bprint(avioctx, bp, max_size)
ffmpeg | branch: master | Andrey Utkin | Wed Jul 23 16:12:38 2014 +0300| [8a4c0866dc7d718b5ee3f0af60d4317cd133d83f] | committer: Michael Niedermayer avio: Introduce avio_read_to_bprint(avioctx, bp, max_size) Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=8a4c0866dc7d718b5ee3f0af60d4317cd133d83f --- doc/APIchanges|3 +++ libavformat/avio.h|9 + libavformat/aviobuf.c | 18 ++ libavformat/version.h |4 ++-- 4 files changed, 32 insertions(+), 2 deletions(-) diff --git a/doc/APIchanges b/doc/APIchanges index 1a9d103..22a6be8 100644 --- a/doc/APIchanges +++ b/doc/APIchanges @@ -15,6 +15,9 @@ libavutil: 2012-10-22 API changes, most recent first: +2014-07-23 - XXX - lavf 55.49.100 - avio.h + Add avio_read_to_bprint() + 2014-07-14 - 62227a7 - lavf 55.47.100 - avformat.h Add av_stream_get_parser() diff --git a/libavformat/avio.h b/libavformat/avio.h index 4004b6f..9b16843 100644 --- a/libavformat/avio.h +++ b/libavformat/avio.h @@ -31,6 +31,7 @@ #include "libavutil/common.h" #include "libavutil/dict.h" #include "libavutil/log.h" +#include "libavutil/bprint.h" #include "libavformat/version.h" @@ -500,4 +501,12 @@ int avio_pause(AVIOContext *h, int pause); int64_t avio_seek_time(AVIOContext *h, int stream_index, int64_t timestamp, int flags); +/** + * Read contents of h into print buffer, up to max_size bytes, or up to EOF. + * + * @return 0 for success (max_size bytes read or EOF reached), negative error + * code otherwise + */ +int avio_read_to_bprint(AVIOContext *h, AVBPrint *pb, size_t max_size); + #endif /* AVFORMAT_AVIO_H */ diff --git a/libavformat/aviobuf.c b/libavformat/aviobuf.c index 738459e..463d90a 100644 --- a/libavformat/aviobuf.c +++ b/libavformat/aviobuf.c @@ -953,6 +953,24 @@ int64_t avio_seek_time(AVIOContext *s, int stream_index, return ret; } +int avio_read_to_bprint(AVIOContext *h, AVBPrint *pb, size_t max_size) +{ +int ret; +char buf[1024]; +while (max_size) { +ret = avio_read(h, buf, FFMIN(max_size, sizeof(buf))); +if (ret == AVERROR_EOF) +return 0; +if (ret <= 0) +return ret; +av_bprint_append_data(pb, buf, ret); +if (!av_bprint_is_complete(pb)) +return AVERROR(ENOMEM); +max_size -= ret; +} +return 0; +} + /* output in a dynamic buffer */ typedef struct DynBuffer { diff --git a/libavformat/version.h b/libavformat/version.h index 4e28112..5ad2338 100644 --- a/libavformat/version.h +++ b/libavformat/version.h @@ -30,8 +30,8 @@ #include "libavutil/version.h" #define LIBAVFORMAT_VERSION_MAJOR 55 -#define LIBAVFORMAT_VERSION_MINOR 48 -#define LIBAVFORMAT_VERSION_MICRO 101 +#define LIBAVFORMAT_VERSION_MINOR 49 +#define LIBAVFORMAT_VERSION_MICRO 100 #define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \ LIBAVFORMAT_VERSION_MINOR, \ ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] mpegenccontext: Remove unused dct_unquantize_h261 function pointers
ffmpeg | branch: master | Nidhi Makhijani | Wed Jul 23 17:45:01 2014 +0530| [eac77fcd56fc2a3391f0d86faf54302afb368ff7] | committer: Diego Biurrun mpegenccontext: Remove unused dct_unquantize_h261 function pointers Signed-off-by: Diego Biurrun > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=eac77fcd56fc2a3391f0d86faf54302afb368ff7 --- libavcodec/mpegvideo.h |4 1 file changed, 4 deletions(-) diff --git a/libavcodec/mpegvideo.h b/libavcodec/mpegvideo.h index 1a7c1b1..5ddb4f3 100644 --- a/libavcodec/mpegvideo.h +++ b/libavcodec/mpegvideo.h @@ -628,10 +628,6 @@ typedef struct MpegEncContext { int16_t *block/*align 16*/, int n, int qscale); void (*dct_unquantize_h263_inter)(struct MpegEncContext *s, int16_t *block/*align 16*/, int n, int qscale); -void (*dct_unquantize_h261_intra)(struct MpegEncContext *s, - int16_t *block/*align 16*/, int n, int qscale); -void (*dct_unquantize_h261_inter)(struct MpegEncContext *s, - int16_t *block/*align 16*/, int n, int qscale); void (*dct_unquantize_intra)(struct MpegEncContext *s, // unquantizer to use (mpeg4 can use both) int16_t *block/*align 16*/, int n, int qscale); void (*dct_unquantize_inter)(struct MpegEncContext *s, // unquantizer to use (mpeg4 can use both) ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] Merge commit 'eac77fcd56fc2a3391f0d86faf54302afb368ff7'
ffmpeg | branch: master | Michael Niedermayer | Wed Jul 23 20:20:04 2014 +0200| [97d2b8d6f5a4b75ad80a265c30604870ebb97470] | committer: Michael Niedermayer Merge commit 'eac77fcd56fc2a3391f0d86faf54302afb368ff7' * commit 'eac77fcd56fc2a3391f0d86faf54302afb368ff7': mpegenccontext: Remove unused dct_unquantize_h261 function pointers Merged-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=97d2b8d6f5a4b75ad80a265c30604870ebb97470 --- ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] Merge commit 'd445c865f87e7f13230e4dac3f77f5af21da95cb'
ffmpeg | branch: master | Michael Niedermayer | Wed Jul 23 20:40:41 2014 +0200| [09f5b3750f2d8164497ff4bdca74d01c9b25a361] | committer: Michael Niedermayer Merge commit 'd445c865f87e7f13230e4dac3f77f5af21da95cb' * commit 'd445c865f87e7f13230e4dac3f77f5af21da95cb': fft-test: Reduce variable scope where sensibly possible Conflicts: libavcodec/fft-test.c Merged-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=09f5b3750f2d8164497ff4bdca74d01c9b25a361 --- ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] fft-test: Reduce variable scope where sensibly possible
ffmpeg | branch: master | Diego Biurrun | Wed Jun 25 17:35:03 2014 -0700| [d445c865f87e7f13230e4dac3f77f5af21da95cb] | committer: Diego Biurrun fft-test: Reduce variable scope where sensibly possible Also merge variable declaration and initialization. > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d445c865f87e7f13230e4dac3f77f5af21da95cb --- libavcodec/fft-test.c | 87 - 1 file changed, 36 insertions(+), 51 deletions(-) diff --git a/libavcodec/fft-test.c b/libavcodec/fft-test.c index dbe624d..02096a4 100644 --- a/libavcodec/fft-test.c +++ b/libavcodec/fft-test.c @@ -65,16 +65,13 @@ static struct { static void fft_ref_init(int nbits, int inverse) { -int n, i; -double c1, s1, alpha; +int i, n = 1 << nbits; -n = 1 << nbits; exptab = av_malloc((n / 2) * sizeof(*exptab)); for (i = 0; i < (n/2); i++) { -alpha = 2 * M_PI * (float)i / (float)n; -c1 = cos(alpha); -s1 = sin(alpha); +double alpha = 2 * M_PI * (float)i / (float)n; +double c1 = cos(alpha), s1 = sin(alpha); if (!inverse) s1 = -s1; exptab[i].re = c1; @@ -84,18 +81,16 @@ static void fft_ref_init(int nbits, int inverse) static void fft_ref(FFTComplex *tabr, FFTComplex *tab, int nbits) { -int n, i, j, k, n2; -double tmp_re, tmp_im, s, c; -FFTComplex *q; +int i, j; +int n = 1 << nbits; +int n2 = n >> 1; -n = 1 << nbits; -n2 = n >> 1; for (i = 0; i < n; i++) { -tmp_re = 0; -tmp_im = 0; -q = tab; +double tmp_re = 0, tmp_im = 0; +FFTComplex *q = tab; for (j = 0; j < n; j++) { -k = (i * j) & (n - 1); +double s, c; +int k = (i * j) & (n - 1); if (k >= n2) { c = -exptab[k - n2].re; s = -exptab[k - n2].im; @@ -114,15 +109,13 @@ static void fft_ref(FFTComplex *tabr, FFTComplex *tab, int nbits) #if CONFIG_MDCT static void imdct_ref(FFTSample *out, FFTSample *in, int nbits) { -int n = 1<> 1; +{ +int fft_size_2 = fft_size >> 1; if (do_inverse) { tab1[ 0].im = 0; tab1[fft_size_2].im = 0; @@ -418,6 +402,7 @@ int main(int argc, char **argv) err = check_diff((float *)tab_ref, (float *)tab2, fft_size, 1.0); } break; +} #endif /* CONFIG_RDFT */ #if CONFIG_DCT case TRANSFORM_DCT: ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] Merge commit '7288b345850792430302a8f85a4b29140b770497'
ffmpeg | branch: master | Michael Niedermayer | Wed Jul 23 20:48:05 2014 +0200| [088875b6b8553cfa591a5edafd3652e4bb80c695] | committer: Michael Niedermayer Merge commit '7288b345850792430302a8f85a4b29140b770497' * commit '7288b345850792430302a8f85a4b29140b770497': fft-test: Drop unnecessary pointer indirection for context structs Conflicts: libavcodec/fft-test.c Merged-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=088875b6b8553cfa591a5edafd3652e4bb80c695 --- ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] fft-test: Drop unnecessary pointer indirection for context structs
ffmpeg | branch: master | Diego Biurrun | Thu Jun 26 16:14:30 2014 -0700| [7288b345850792430302a8f85a4b29140b770497] | committer: Diego Biurrun fft-test: Drop unnecessary pointer indirection for context structs > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=7288b345850792430302a8f85a4b29140b770497 --- libavcodec/fft-test.c | 47 +++ 1 file changed, 23 insertions(+), 24 deletions(-) diff --git a/libavcodec/fft-test.c b/libavcodec/fft-test.c index 02096a4..7db33ea 100644 --- a/libavcodec/fft-test.c +++ b/libavcodec/fft-test.c @@ -228,11 +228,10 @@ int main(int argc, char **argv) FFTComplex *tab, *tab1, *tab_ref; FFTSample *tab2; enum tf_transform transform = TRANSFORM_FFT; -FFTContext s1, *s = &s1; -FFTContext m1, *m = &m1; +FFTContext m, s; #if FFT_FLOAT -RDFTContext r1, *r = &r1; -DCTContext d1, *d = &d1; +RDFTContext r; +DCTContext d; #endif /* FFT_FLOAT */ int it, i, err = 1; int do_speed = 0, do_inverse = 0; @@ -296,7 +295,7 @@ int main(int argc, char **argv) av_log(NULL, AV_LOG_INFO,"IMDCT"); else av_log(NULL, AV_LOG_INFO,"MDCT"); -ff_mdct_init(m, fft_nbits, do_inverse, scale); +ff_mdct_init(&m, fft_nbits, do_inverse, scale); break; #endif /* CONFIG_MDCT */ case TRANSFORM_FFT: @@ -304,7 +303,7 @@ int main(int argc, char **argv) av_log(NULL, AV_LOG_INFO,"IFFT"); else av_log(NULL, AV_LOG_INFO,"FFT"); -ff_fft_init(s, fft_nbits, do_inverse); +ff_fft_init(&s, fft_nbits, do_inverse); fft_ref_init(fft_nbits, do_inverse); break; #if FFT_FLOAT @@ -314,7 +313,7 @@ int main(int argc, char **argv) av_log(NULL, AV_LOG_INFO,"IDFT_C2R"); else av_log(NULL, AV_LOG_INFO,"DFT_R2C"); -ff_rdft_init(r, fft_nbits, do_inverse ? IDFT_C2R : DFT_R2C); +ff_rdft_init(&r, fft_nbits, do_inverse ? IDFT_C2R : DFT_R2C); fft_ref_init(fft_nbits, do_inverse); break; #endif /* CONFIG_RDFT */ @@ -324,7 +323,7 @@ int main(int argc, char **argv) av_log(NULL, AV_LOG_INFO,"DCT_III"); else av_log(NULL, AV_LOG_INFO,"DCT_II"); -ff_dct_init(d, fft_nbits, do_inverse ? DCT_III : DCT_II); +ff_dct_init(&d, fft_nbits, do_inverse ? DCT_III : DCT_II); break; #endif /* CONFIG_DCT */ #endif /* FFT_FLOAT */ @@ -349,12 +348,12 @@ int main(int argc, char **argv) case TRANSFORM_MDCT: if (do_inverse) { imdct_ref((FFTSample *)tab_ref, (FFTSample *)tab1, fft_nbits); -m->imdct_calc(m, tab2, (FFTSample *)tab1); +m.imdct_calc(&m, tab2, (FFTSample *)tab1); err = check_diff((FFTSample *)tab_ref, tab2, fft_size, scale); } else { mdct_ref((FFTSample *)tab_ref, (FFTSample *)tab1, fft_nbits); -m->mdct_calc(m, tab2, (FFTSample *)tab1); +m.mdct_calc(&m, tab2, (FFTSample *)tab1); err = check_diff((FFTSample *)tab_ref, tab2, fft_size / 2, scale); } @@ -362,8 +361,8 @@ int main(int argc, char **argv) #endif /* CONFIG_MDCT */ case TRANSFORM_FFT: memcpy(tab, tab1, fft_size * sizeof(FFTComplex)); -s->fft_permute(s, tab); -s->fft_calc(s, tab); +s.fft_permute(&s, tab); +s.fft_calc(&s, tab); fft_ref(tab_ref, tab1, fft_nbits); err = check_diff((FFTSample *)tab_ref, (FFTSample *)tab, fft_size * 2, 1.0); @@ -384,7 +383,7 @@ int main(int argc, char **argv) memcpy(tab2, tab1, fft_size * sizeof(FFTSample)); tab2[1] = tab1[fft_size_2].re; -r->rdft_calc(r, tab2); +r.rdft_calc(&r, tab2); fft_ref(tab_ref, tab1, fft_nbits); for (i = 0; i < fft_size; i++) { tab[i].re = tab2[i]; @@ -396,7 +395,7 @@ int main(int argc, char **argv) tab2[i]= tab1[i].re; tab1[i].im = 0; } -r->rdft_calc(r, tab2); +r.rdft_calc(&r, tab2); fft_ref(tab_ref, tab1, fft_nbits); tab_ref[0].im = tab_ref[fft_size_2].re; err = check_diff((float *)tab_ref, (float *)tab2, fft_size, 1.0); @@ -407,7 +406,7 @@ int main(int argc, char **argv) #if CONFIG_DCT case TRANSFORM_DCT: memcpy(tab, tab1, fft_size * sizeof(FFTComplex)); -d->dct_calc(d, tab); +d.dct_calc(&d, tab); if (do_inverse) { idct_ref(tab_ref, tab1, fft_nbits); } else { @@ -434,23 +433,23 @@ int main(int argc, char **argv) switch (transform) { case TRANSFORM_MDCT: if (do_inverse) { -m->imdct_calc(m, (FFTSample *)tab, (FFTSample *)tab1); +m.imdct_calc(&m, (FFTSample *)tab, (FFTSample *)tab1); } else { -
[FFmpeg-cvslog] hevcdsp: change types of SAO parameters
ffmpeg | branch: master | Christophe Gisquet | Wed Jul 23 13:39:40 2014 +0200| [ca081217cda87bf8c5a32b0584665bce9b266d95] | committer: Michael Niedermayer hevcdsp: change types of SAO parameters From openhevc Reviewed-by: Mickaël Raulet Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=ca081217cda87bf8c5a32b0584665bce9b266d95 --- libavcodec/hevcdsp.h |4 ++-- libavcodec/hevcdsp_template.c |8 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/libavcodec/hevcdsp.h b/libavcodec/hevcdsp.h index 8564deb..ba42984 100644 --- a/libavcodec/hevcdsp.h +++ b/libavcodec/hevcdsp.h @@ -31,11 +31,11 @@ typedef struct SAOParams { int offset_abs[3][4]; ///< sao_offset_abs int offset_sign[3][4]; ///< sao_offset_sign -int band_position[3]; ///< sao_band_position +uint8_t band_position[3]; ///< sao_band_position int eo_class[3];///< sao_eo_class -int offset_val[3][5]; ///offset_val[c_idx]; +int16_t *sao_offset_val = sao->offset_val[c_idx]; int sao_left_class = sao->band_position[c_idx]; stride_dst /= sizeof(pixel); @@ -368,7 +368,7 @@ static void FUNC(sao_edge_filter)(uint8_t *_dst, uint8_t *_src, { { -1, -1 }, { 1, 1 } }, // 45 degree { { 1, -1 }, { -1, 1 } }, // 135 degree }; -int *sao_offset_val = sao->offset_val[c_idx]; +int16_t *sao_offset_val = sao->offset_val[c_idx]; int sao_eo_class= sao->eo_class[c_idx]; pixel *dst = (pixel *)_dst; pixel *src = (pixel *)_src; @@ -406,7 +406,7 @@ static void FUNC(sao_edge_filter_0)(uint8_t *_dst, uint8_t *_src, int x, y; pixel *dst = (pixel *)_dst; pixel *src = (pixel *)_src; -int *sao_offset_val = sao->offset_val[c_idx]; +int16_t *sao_offset_val = sao->offset_val[c_idx]; int sao_eo_class= sao->eo_class[c_idx]; int init_x = 0, init_y = 0, width = _width, height = _height; @@ -459,7 +459,7 @@ static void FUNC(sao_edge_filter_1)(uint8_t *_dst, uint8_t *_src, int x, y; pixel *dst = (pixel *)_dst; pixel *src = (pixel *)_src; -int *sao_offset_val = sao->offset_val[c_idx]; +int16_t *sao_offset_val = sao->offset_val[c_idx]; int sao_eo_class= sao->eo_class[c_idx]; int init_x = 0, init_y = 0, width = _width, height = _height; ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] hevc_mvs: avoid deriving tmvp in amvp
ffmpeg | branch: master | Christophe Gisquet | Wed Jul 23 18:27:44 2014 +0200| [373677f95816924a3790c174e83ec2e378962c44] | committer: Michael Niedermayer hevc_mvs: avoid deriving tmvp in amvp Reduces on a sequence number of calls from 933685 to 586271. Reviewed-by: Mickaël Raulet Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=373677f95816924a3790c174e83ec2e378962c44 --- libavcodec/hevc_mvs.c |3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavcodec/hevc_mvs.c b/libavcodec/hevc_mvs.c index 52cfb29..1d4c002 100644 --- a/libavcodec/hevc_mvs.c +++ b/libavcodec/hevc_mvs.c @@ -751,7 +751,8 @@ scalef: mvpcand_list[numMVPCandLX++] = mxB; //temporal motion vector prediction candidate -if (numMVPCandLX < 2 && s->sh.slice_temporal_mvp_enabled_flag) { +if (numMVPCandLX < 2 && s->sh.slice_temporal_mvp_enabled_flag && +mvp_lx_flag == numMVPCandLX) { Mv mv_col; int available_col = temporal_luma_motion_vector(s, x0, y0, nPbW, nPbH, ref_idx, ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] [ffmpeg-web] branch master updated. f02ce17 web/projects: move projects to wiki
The branch, master has been updated via f02ce174bf3921a8cdba4e8603afcbc5b0158c6a (commit) from 11945cf1567ba8023d48f5ad99dcdeff2b6e2ff8 (commit) - Log - commit f02ce174bf3921a8cdba4e8603afcbc5b0158c6a Author: Lou Logan AuthorDate: Tue Jul 22 16:19:27 2014 -0800 Commit: Lou Logan CommitDate: Wed Jul 23 12:10:16 2014 -0800 web/projects: move projects to wiki This allows users to add their own project to the list. * Added link to wiki page on projects.html. * Deleted projects link from menu Signed-off-by: Lou Logan diff --git a/src/projects b/src/projects index 51f8310..26ba17f 100644 --- a/src/projects +++ b/src/projects @@ -1,165 +1,5 @@ - These are some of the free projects and programs known to incorporate work from - FFmpeg. If you would like to see another project added here, please send - an email to the ffmpeg-devel mailing list. +This page has been moved to the +http://trac.ffmpeg.org/wiki/Projects";>Projects page on the +http://trac.ffmpeg.org/";>FFmpeg Wiki. - - - - - - - http://sourceforge.net/projects/ac3encode/";>ac3encode - http://alembik.sourceforge.net/";>Alembik - http://code.google.com/p/amv-codec-tools/";>AMV codec tools - http://atglas.sourceforge.net/";>AtGLas - http://code.google.com/p/avbin/";>AVbin - http://avifile.sourceforge.net/";>avifile - http://gatos.sourceforge.net/avview.php";>Avview - http://www.bebits.com/app/2575";>BeOS FFmpeg decoders - http://www.bebits.com/app/2867";>BeOS HybridDivx - http://bino3d.org/";>Bino - http://www.independentsounds.de/";>Blaze - http://www.blender.org/";>Blender - http://www.chromium.org/";>Chromium - http://www.google.com/chrome";>Google Chrome - http://sourceforge.net/projects/chronictv/";>chronictv - http://cinelerra.org/";>Cinelerra - http://ccv.nuigroup.com/";>Community Core Vision - http://www.corecodec.com/products/coreplayer";>CorePlayer - http://datura.sourceforge.net/";>Datura - http://sourceforge.net/projects/divxtodvd/";>DivXtoDVD - http://labs.divx.com/DrDivX";>Dr. Divx - http://code.google.com/p/drag2dv/";>Drag2DV - http://dvbcut.sourceforge.net/";>dvbcut - http://www.dvdflick.net/";>DVDFlick - http://sites.google.com/site/dvrmstompeg/dvr-mstompegconverter";>DVR-MS to MPEG Converter - http://sourceforge.net/projects/easyvob2divx/";>Easy VOB 2 DivX - http://www.easywma.com/";>EasyWMA - http://www.easywma.com/wmv/";>EasyWMV - http://www.electricsheep.org";>Electric Sheep - http://dcunningham.net/applications/encodehd/";>EncodeHD - http://sourceforge.net/projects/ffdshow/";>ffdshow - http://ffdshow-tryout.sourceforge.net/";>ffdshow-tryouts - http://corz.org/windows/software/ffe/";>ffe - http://code.google.com/p/ffmbc/";>FFmedia Broadcast - http://www.thilobrai.onlinehome.de/ffmpegGUI.htm";>ffmpeg-GUI - http://ffmpeg-php.sourceforge.net/";>ffmpeg-php - http://www.v2v.cc/~j/ffmpeg2theora/";>ffmpeg2theora - http://code.google.com/p/ffmpeg4iphone/";>ffmpeg4iphone - http://sourceforge.net/projects/qt-ffmpeg/";>FFMPEG for QT - https://github.com/wseemann/FFmpegMediaMetadataRetriever";>FFmpegMediaMetadataRetriever - http://code.google.com/p/ffmpegthumbnailer/";>FFMpegThumbnailer - http://www.ffmpegx.com/";>ffmpegX for Mac OS X - http://ffmpegyag.sourceforge.net";>FFmpegYAG - http://colabti.org/convertx/ffrecord.html";>FFRecord - http://www.tagtraum.com/ffsampledsp/";>FFSampledSP - Java Sound for Win/OS X - http://fftv.sourceforge.net/";>fftv - http://aldorandenet.free.fr/codecs/";>FFusion, Alternative Codecs for Mac OS X - http://firefogg.org";>Firefogg - http://fmj.sourceforge.net/";>FMJ - http://fobs.sourceforge.net/";>Fobs - http://freej.org/";>FreeJ - http://frogger.rules.pl/";>Frogger - http://galleryproject.org/";>Gallery - https://github.com/lano1106/glcs";>glcs - http://gmerlin.sourceforge.net/";>gmerlin - http://gnashdev.org/";>Gnash - http://gpac.sourceforge.net/";>GPAC - http://gstreamer.freedesktop.org";>GStreamer - http://handbrake.fr/";>HandBrake - http://www.homer-conferencing.com";>Homer Conferencing - http://sourceforge.net/projects/hypervideoconve/";>Hyper Video Converter - http://www.eingrad.com/products/internet-radio-box/";>Internet Radio Box - http://jffmpeg.sourceforge.net/";>Jffmpeg - http://www.jwplayer.com/hosting-and-streaming/";>JW Platform - http://www.kdenlive.org/";>Kdenlive - http://code.google.com/p/kmediafactory/";>KMediaFactory - http://savannah.nongnu.org/projects/kinetophone";>Kinetophone - http://ktoon.net/";>KTooN - http://libdlna.geexbox.org/";>libdlna - http://libquicktime.sourceforge.net/";>libquicktime -
[FFmpeg-cvslog] x86: hevcdsp: align
ffmpeg | branch: master | Christophe Gisquet | Tue Jul 22 10:57:34 2014 +0200| [670b7f203ad24bccfe9effe81769b41f769052a6] | committer: Michael Niedermayer x86: hevcdsp: align Reviewed-by: Mickaël Raulet Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=670b7f203ad24bccfe9effe81769b41f769052a6 --- libavcodec/x86/hevcdsp_init.c | 56 - 1 file changed, 27 insertions(+), 29 deletions(-) diff --git a/libavcodec/x86/hevcdsp_init.c b/libavcodec/x86/hevcdsp_init.c index 6759863..f7c35fd 100644 --- a/libavcodec/x86/hevcdsp_init.c +++ b/libavcodec/x86/hevcdsp_init.c @@ -424,24 +424,23 @@ void ff_hevcdsp_init_x86(HEVCDSPContext *c, const int bit_depth) if (bit_depth == 8) { if (EXTERNAL_MMXEXT(mm_flags)) { -c->transform_dc_add[0]= ff_hevc_idct4_dc_add_8_mmxext; -c->transform_dc_add[1]= ff_hevc_idct8_dc_add_8_mmxext; - +c->transform_dc_add[0]= ff_hevc_idct4_dc_add_8_mmxext; +c->transform_dc_add[1]= ff_hevc_idct8_dc_add_8_mmxext; } if (EXTERNAL_SSE2(mm_flags)) { -c->hevc_v_loop_filter_chroma = ff_hevc_v_loop_filter_chroma_8_sse2; -c->hevc_h_loop_filter_chroma = ff_hevc_h_loop_filter_chroma_8_sse2; -if (ARCH_X86_64) { -c->hevc_v_loop_filter_luma = ff_hevc_v_loop_filter_luma_8_sse2; -c->hevc_h_loop_filter_luma = ff_hevc_h_loop_filter_luma_8_sse2; -} - -c->transform_dc_add[2]= ff_hevc_idct16_dc_add_8_sse2; -c->transform_dc_add[3]= ff_hevc_idct32_dc_add_8_sse2; +c->hevc_v_loop_filter_chroma = ff_hevc_v_loop_filter_chroma_8_sse2; +c->hevc_h_loop_filter_chroma = ff_hevc_h_loop_filter_chroma_8_sse2; +if (ARCH_X86_64) { +c->hevc_v_loop_filter_luma = ff_hevc_v_loop_filter_luma_8_sse2; +c->hevc_h_loop_filter_luma = ff_hevc_h_loop_filter_luma_8_sse2; +} + +c->transform_dc_add[2]= ff_hevc_idct16_dc_add_8_sse2; +c->transform_dc_add[3]= ff_hevc_idct32_dc_add_8_sse2; } if (EXTERNAL_SSSE3(mm_flags) && ARCH_X86_64) { -c->hevc_v_loop_filter_luma = ff_hevc_v_loop_filter_luma_8_ssse3; -c->hevc_h_loop_filter_luma = ff_hevc_h_loop_filter_luma_8_ssse3; +c->hevc_v_loop_filter_luma = ff_hevc_v_loop_filter_luma_8_ssse3; +c->hevc_h_loop_filter_luma = ff_hevc_h_loop_filter_luma_8_ssse3; } if (EXTERNAL_SSE4(mm_flags) && ARCH_X86_64) { @@ -460,27 +459,26 @@ void ff_hevcdsp_init_x86(HEVCDSPContext *c, const int bit_depth) } } else if (bit_depth == 10) { if (EXTERNAL_MMXEXT(mm_flags)) { -c->transform_dc_add[0]= ff_hevc_idct4_dc_add_10_mmxext; +c->transform_dc_add[0]= ff_hevc_idct4_dc_add_10_mmxext; } if (EXTERNAL_SSE2(mm_flags)) { -c->hevc_v_loop_filter_chroma = ff_hevc_v_loop_filter_chroma_10_sse2; -c->hevc_h_loop_filter_chroma = ff_hevc_h_loop_filter_chroma_10_sse2; -if (ARCH_X86_64) { -c->hevc_v_loop_filter_luma = ff_hevc_v_loop_filter_luma_10_sse2; -c->hevc_h_loop_filter_luma = ff_hevc_h_loop_filter_luma_10_sse2; -} - -c->transform_dc_add[1]= ff_hevc_idct8_dc_add_10_sse2; -c->transform_dc_add[2]= ff_hevc_idct16_dc_add_10_sse2; -c->transform_dc_add[3]= ff_hevc_idct32_dc_add_10_sse2; -} +c->hevc_v_loop_filter_chroma = ff_hevc_v_loop_filter_chroma_10_sse2; +c->hevc_h_loop_filter_chroma = ff_hevc_h_loop_filter_chroma_10_sse2; +if (ARCH_X86_64) { +c->hevc_v_loop_filter_luma = ff_hevc_v_loop_filter_luma_10_sse2; +c->hevc_h_loop_filter_luma = ff_hevc_h_loop_filter_luma_10_sse2; +} + +c->transform_dc_add[1]= ff_hevc_idct8_dc_add_10_sse2; +c->transform_dc_add[2]= ff_hevc_idct16_dc_add_10_sse2; +c->transform_dc_add[3]= ff_hevc_idct32_dc_add_10_sse2; +} if (EXTERNAL_SSSE3(mm_flags) && ARCH_X86_64) { -c->hevc_v_loop_filter_luma = ff_hevc_v_loop_filter_luma_10_ssse3; -c->hevc_h_loop_filter_luma = ff_hevc_h_loop_filter_luma_10_ssse3; +c->hevc_v_loop_filter_luma = ff_hevc_v_loop_filter_luma_10_ssse3; +c->hevc_h_loop_filter_luma = ff_hevc_h_loop_filter_luma_10_ssse3; } if (EXTERNAL_SSE4(mm_flags) && ARCH_X86_64) { - EPEL_LINKS(c->put_hevc_epel, 0, 0, pel_pixels, 10, sse4); EPEL_LINKS(c->put_hevc_epel, 0, 1, e
[FFmpeg-cvslog] [ffmpeg-web] branch master updated. be17b4e web/download: drop "Mac" from title
The branch, master has been updated via be17b4e850fda7a81126865e87cae78d709fb817 (commit) from f02ce174bf3921a8cdba4e8603afcbc5b0158c6a (commit) - Log - commit be17b4e850fda7a81126865e87cae78d709fb817 Author: Lou Logan AuthorDate: Wed Jul 23 12:56:49 2014 -0800 Commit: Lou Logan CommitDate: Wed Jul 23 12:56:49 2014 -0800 web/download: drop "Mac" from title Since 2012 Apple no longer associates the "Mac" moniker with OS X. Signed-off-by: Lou Logan diff --git a/src/download b/src/download index fb30ed0..c879f46 100644 --- a/src/download +++ b/src/download @@ -90,7 +90,7 @@ -Mac OS X Packages +OS X Packages http://www.evermeet.cx/ffmpeg/";> --- Summary of changes: src/download |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) hooks/post-receive -- ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] fft-test: Check memory allocations
ffmpeg | branch: master | Diego Biurrun | Mon Jul 21 02:12:32 2014 -0700| [c3c96deb5f8cbbdb700ba97920ceedddacb5dcb9] | committer: Diego Biurrun fft-test: Check memory allocations > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c3c96deb5f8cbbdb700ba97920ceedddacb5dcb9 --- libavcodec/fft-test.c | 17 + 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/libavcodec/fft-test.c b/libavcodec/fft-test.c index 7db33ea..98bf6f5 100644 --- a/libavcodec/fft-test.c +++ b/libavcodec/fft-test.c @@ -63,11 +63,13 @@ static struct { float re, im; } *exptab; -static void fft_ref_init(int nbits, int inverse) +static int fft_ref_init(int nbits, int inverse) { int i, n = 1 << nbits; exptab = av_malloc((n / 2) * sizeof(*exptab)); +if (!exptab) +return AVERROR(ENOMEM); for (i = 0; i < (n/2); i++) { double alpha = 2 * M_PI * (float)i / (float)n; @@ -77,6 +79,7 @@ static void fft_ref_init(int nbits, int inverse) exptab[i].re = c1; exptab[i].im = s1; } +return 0; } static void fft_ref(FFTComplex *tabr, FFTComplex *tab, int nbits) @@ -287,6 +290,9 @@ int main(int argc, char **argv) tab_ref = av_malloc(fft_size * sizeof(FFTComplex)); tab2 = av_malloc(fft_size * sizeof(FFTSample)); +if (!(tab && tab1 && tab_ref && tab2)) +goto cleanup; + switch (transform) { #if CONFIG_MDCT case TRANSFORM_MDCT: @@ -304,7 +310,8 @@ int main(int argc, char **argv) else av_log(NULL, AV_LOG_INFO,"FFT"); ff_fft_init(&s, fft_nbits, do_inverse); -fft_ref_init(fft_nbits, do_inverse); +if (err = fft_ref_init(fft_nbits, do_inverse) < 0) +goto cleanup; break; #if FFT_FLOAT #if CONFIG_RDFT @@ -314,7 +321,8 @@ int main(int argc, char **argv) else av_log(NULL, AV_LOG_INFO,"DFT_R2C"); ff_rdft_init(&r, fft_nbits, do_inverse ? IDFT_C2R : DFT_R2C); -fft_ref_init(fft_nbits, do_inverse); +if (err = fft_ref_init(fft_nbits, do_inverse) < 0) +goto cleanup; break; #endif /* CONFIG_RDFT */ #if CONFIG_DCT @@ -329,7 +337,7 @@ int main(int argc, char **argv) #endif /* FFT_FLOAT */ default: av_log(NULL, AV_LOG_ERROR, "Requested transform not supported\n"); -return 1; +goto cleanup; } av_log(NULL, AV_LOG_INFO," %d test\n", fft_size); @@ -488,6 +496,7 @@ int main(int argc, char **argv) #endif /* FFT_FLOAT */ } +cleanup: av_free(tab); av_free(tab1); av_free(tab2); ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] Merge commit 'c3c96deb5f8cbbdb700ba97920ceedddacb5dcb9'
ffmpeg | branch: master | Michael Niedermayer | Thu Jul 24 00:35:40 2014 +0200| [074bb7515e33780be35dd62e881cacd485cea382] | committer: Michael Niedermayer Merge commit 'c3c96deb5f8cbbdb700ba97920ceedddacb5dcb9' * commit 'c3c96deb5f8cbbdb700ba97920ceedddacb5dcb9': fft-test: Check memory allocations Conflicts: libavcodec/fft-test.c Merged-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=074bb7515e33780be35dd62e881cacd485cea382 --- ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] avcodec/fft-test: fix memory alloc checks
ffmpeg | branch: master | Michael Niedermayer | Thu Jul 24 00:46:15 2014 +0200| [629e5e28f70a3511d7267f328773b191c5f086ac] | committer: Michael Niedermayer avcodec/fft-test: fix memory alloc checks Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=629e5e28f70a3511d7267f328773b191c5f086ac --- libavcodec/fft-test.c |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/fft-test.c b/libavcodec/fft-test.c index aafcef0..755c85d 100644 --- a/libavcodec/fft-test.c +++ b/libavcodec/fft-test.c @@ -316,7 +316,7 @@ int main(int argc, char **argv) else av_log(NULL, AV_LOG_INFO,"FFT"); ff_fft_init(&s, fft_nbits, do_inverse); -if (err = fft_ref_init(fft_nbits, do_inverse) < 0) +if ((err = fft_ref_init(fft_nbits, do_inverse)) < 0) goto cleanup; break; #if FFT_FLOAT @@ -327,7 +327,7 @@ int main(int argc, char **argv) else av_log(NULL, AV_LOG_INFO,"DFT_R2C"); ff_rdft_init(&r, fft_nbits, do_inverse ? IDFT_C2R : DFT_R2C); -if (err = fft_ref_init(fft_nbits, do_inverse) < 0) +if ((err = fft_ref_init(fft_nbits, do_inverse)) < 0) goto cleanup; break; #endif /* CONFIG_RDFT */ ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] fft-test: K&R formatting cosmetics
ffmpeg | branch: master | Diego Biurrun | Fri Jul 18 05:37:11 2014 -0700| [6133d65861f265d429ade53e910fe877c95a1615] | committer: Diego Biurrun fft-test: K&R formatting cosmetics Also rearrange #includes into canonical order. > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=6133d65861f265d429ade53e910fe877c95a1615 --- libavcodec/fft-test.c | 159 + 1 file changed, 82 insertions(+), 77 deletions(-) diff --git a/libavcodec/fft-test.c b/libavcodec/fft-test.c index 98bf6f5..1d3d32c 100644 --- a/libavcodec/fft-test.c +++ b/libavcodec/fft-test.c @@ -23,14 +23,8 @@ * FFT and MDCT tests. */ -#include "libavutil/cpu.h" -#include "libavutil/mathematics.h" -#include "libavutil/lfg.h" -#include "libavutil/log.h" -#include "libavutil/time.h" -#include "fft.h" -#include "dct.h" -#include "rdft.h" +#include "config.h" + #include #if HAVE_UNISTD_H #include @@ -39,24 +33,34 @@ #include #include +#include "libavutil/cpu.h" +#include "libavutil/lfg.h" +#include "libavutil/log.h" +#include "libavutil/mathematics.h" +#include "libavutil/time.h" + +#include "dct.h" +#include "fft.h" +#include "rdft.h" + /* reference fft */ -#define MUL16(a,b) ((a) * (b)) +#define MUL16(a, b) ((a) * (b)) -#define CMAC(pre, pim, are, aim, bre, bim) \ -{\ - pre += (MUL16(are, bre) - MUL16(aim, bim));\ - pim += (MUL16(are, bim) + MUL16(bre, aim));\ -} +#define CMAC(pre, pim, are, aim, bre, bim) \ +{ \ +pre += (MUL16(are, bre) - MUL16(aim, bim)); \ +pim += (MUL16(are, bim) + MUL16(bre, aim)); \ +} #if FFT_FLOAT -# define RANGE 1.0 -# define REF_SCALE(x, bits) (x) -# define FMT "%10.6f" +#define RANGE 1.0 +#define REF_SCALE(x, bits) (x) +#define FMT "%10.6f" #else -# define RANGE 16384 -# define REF_SCALE(x, bits) ((x) / (1<<(bits))) -# define FMT "%6d" +#define RANGE 16384 +#define REF_SCALE(x, bits) ((x) / (1 << (bits))) +#define FMT "%6d" #endif static struct { @@ -71,8 +75,8 @@ static int fft_ref_init(int nbits, int inverse) if (!exptab) return AVERROR(ENOMEM); -for (i = 0; i < (n/2); i++) { -double alpha = 2 * M_PI * (float)i / (float)n; +for (i = 0; i < (n / 2); i++) { +double alpha = 2 * M_PI * (float) i / (float) n; double c1 = cos(alpha), s1 = sin(alpha); if (!inverse) s1 = -s1; @@ -116,9 +120,9 @@ static void imdct_ref(FFTSample *out, FFTSample *in, int nbits) for (i = 0; i < n; i++) { double sum = 0; -for (k = 0; k < n/2; k++) { +for (k = 0; k < n / 2; k++) { int a = (2 * i + 1 + (n / 2)) * (2 * k + 1); -double f = cos(M_PI * a / (double)(2 * n)); +double f = cos(M_PI * a / (double) (2 * n)); sum += f * in[k]; } out[i] = REF_SCALE(-sum, nbits - 2); @@ -131,7 +135,7 @@ static void mdct_ref(FFTSample *output, FFTSample *input, int nbits) int i, k, n = 1 << nbits; /* do it by hand */ -for (k = 0; k < n/2; k++) { +for (k = 0; k < n / 2; k++) { double s = 0; for (i = 0; i < n; i++) { double a = (2 * M_PI * (2 * i + 1 + n / 2) * (2 * k + 1) / (4 * n)); @@ -158,6 +162,7 @@ static void idct_ref(float *output, float *input, int nbits) output[i] = 2 * s / n; } } + static void dct_ref(float *output, float *input, int nbits) { int i, k, n = 1 << nbits; @@ -175,10 +180,9 @@ static void dct_ref(float *output, float *input, int nbits) #endif /* CONFIG_DCT */ #endif /* FFT_FLOAT */ - static FFTSample frandom(AVLFG *prng) { -return (int16_t)av_lfg_get(prng) / 32768.0 * RANGE; +return (int16_t) av_lfg_get(prng) / 32768.0 * RANGE; } static int check_diff(FFTSample *tab1, FFTSample *tab2, int n, double scale) @@ -193,17 +197,18 @@ static int check_diff(FFTSample *tab1, FFTSample *tab2, int n, double scale) i, tab1[i], tab2[i]); err = 1; } -error+= e*e; -if(e>max) max= e; +error += e * e; +if (e > max) +max = e; } -av_log(NULL, AV_LOG_INFO, "max:%f e:%g\n", max, sqrt(error)/n); +av_log(NULL, AV_LOG_INFO, "max:%f e:%g\n", max, sqrt(error) / n); return err; } - static void help(void) { -av_log(NULL, AV_LOG_INFO,"usage: fft-test [-h] [-s] [-i] [-n b]\n" +av_log(NULL, AV_LOG_INFO, + "usage: fft-test [-h] [-s] [-i] [-n b]\n" "-h print this help\n" "-s speed test\n" "-m (I)MDCT test\n" @@ -211,8 +216,7 @@ static void help(void) "-r (I)RDFT test\n" "-i inverse transform test\n" "-n b set the transform size to 2^b\n" - "-f x set scale factor for output data of (I)MDCT to x\n" - ); + "-f x set scale factor for output data of (I)MDCT to x\n"); } enum tf_transform
[FFmpeg-cvslog] Merge commit '6133d65861f265d429ade53e910fe877c95a1615'
ffmpeg | branch: master | Michael Niedermayer | Thu Jul 24 01:22:31 2014 +0200| [02ea384abd8ef53a1e4654ab0c9e72e08141d751] | committer: Michael Niedermayer Merge commit '6133d65861f265d429ade53e910fe877c95a1615' * commit '6133d65861f265d429ade53e910fe877c95a1615': fft-test: K&R formatting cosmetics Conflicts: libavcodec/fft-test.c Merged-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=02ea384abd8ef53a1e4654ab0c9e72e08141d751 --- ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] fft-test: Pass correct struct members to (i)dct functions
ffmpeg | branch: master | Diego Biurrun | Wed Jul 23 07:33:28 2014 -0700| [d0de7330b973b354e2ceb0b99fd545b868b0a9c4] | committer: Diego Biurrun fft-test: Pass correct struct members to (i)dct functions This fixes a number of incompatible pointer type warnings. > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d0de7330b973b354e2ceb0b99fd545b868b0a9c4 --- libavcodec/fft-test.c |6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libavcodec/fft-test.c b/libavcodec/fft-test.c index 1d3d32c..2adde93 100644 --- a/libavcodec/fft-test.c +++ b/libavcodec/fft-test.c @@ -420,11 +420,11 @@ int main(int argc, char **argv) #if CONFIG_DCT case TRANSFORM_DCT: memcpy(tab, tab1, fft_size * sizeof(FFTComplex)); -d.dct_calc(&d, tab); +d.dct_calc(&d, &tab->re); if (do_inverse) -idct_ref(tab_ref, tab1, fft_nbits); +idct_ref(&tab_ref->re, &tab1->re, fft_nbits); else -dct_ref(tab_ref, tab1, fft_nbits); +dct_ref(&tab_ref->re, &tab1->re, fft_nbits); err = check_diff((float *) tab_ref, (float *) tab, fft_size, 1.0); break; #endif /* CONFIG_DCT */ ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] Merge commit 'd0de7330b973b354e2ceb0b99fd545b868b0a9c4'
ffmpeg | branch: master | Michael Niedermayer | Thu Jul 24 01:50:01 2014 +0200| [ab0f78ea9e9f87015910ef235b6d1e6d2ccb] | committer: Michael Niedermayer Merge commit 'd0de7330b973b354e2ceb0b99fd545b868b0a9c4' * commit 'd0de7330b973b354e2ceb0b99fd545b868b0a9c4': fft-test: Pass correct struct members to (i)dct functions Conflicts: libavcodec/fft-test.c Merged-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=ab0f78ea9e9f87015910ef235b6d1e6d2ccb --- ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] Merge commit 'ce2e858f5b3416c2d54f7f8c14e901f75c48b785'
ffmpeg | branch: master | Michael Niedermayer | Thu Jul 24 02:08:14 2014 +0200| [8b59ab1af0ddfe933bfa6b97745b15748c678b4c] | committer: Michael Niedermayer Merge commit 'ce2e858f5b3416c2d54f7f8c14e901f75c48b785' * commit 'ce2e858f5b3416c2d54f7f8c14e901f75c48b785': http: K&R formatting cosmetics Conflicts: libavformat/http.c Merged-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=8b59ab1af0ddfe933bfa6b97745b15748c678b4c --- ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] http: K&R formatting cosmetics
ffmpeg | branch: master | Diego Biurrun | Tue Jul 22 11:42:03 2014 -0700| [ce2e858f5b3416c2d54f7f8c14e901f75c48b785] | committer: Diego Biurrun http: K&R formatting cosmetics Also comment some #endifs and reshuffle headers into canonical order. > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=ce2e858f5b3416c2d54f7f8c14e901f75c48b785 --- libavformat/http.c | 214 +++- 1 file changed, 110 insertions(+), 104 deletions(-) diff --git a/libavformat/http.c b/libavformat/http.c index d7f6029..bd75611 100644 --- a/libavformat/http.c +++ b/libavformat/http.c @@ -19,28 +19,30 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +#include "config.h" + +#if CONFIG_ZLIB +#include +#endif /* CONFIG_ZLIB */ + #include "libavutil/avstring.h" +#include "libavutil/opt.h" + #include "avformat.h" +#include "http.h" +#include "httpauth.h" #include "internal.h" #include "network.h" -#include "http.h" #include "os_support.h" -#include "httpauth.h" #include "url.h" -#include "libavutil/opt.h" - -#if CONFIG_ZLIB -#include -#endif /* XXX: POST protocol is not completely implemented because avconv uses - only a subset of it. */ + * only a subset of it. */ /* The IO buffer size is unrelated to the max URL size in itself, but needs * to be large enough to fit the full request headers (including long - * path names). - */ -#define BUFFER_SIZE MAX_URL_SIZE + * path names). */ +#define BUFFER_SIZE MAX_URL_SIZE #define MAX_REDIRECTS 8 typedef struct { @@ -82,7 +84,7 @@ typedef struct { int compressed; z_stream inflate_stream; uint8_t *inflate_buffer; -#endif +#endif /* CONFIG_ZLIB */ AVDictionary *chained_options; int send_expect_100; char *method; @@ -92,27 +94,28 @@ typedef struct { #define D AV_OPT_FLAG_DECODING_PARAM #define E AV_OPT_FLAG_ENCODING_PARAM #define DEFAULT_USER_AGENT "Lavf/" AV_STRINGIFY(LIBAVFORMAT_VERSION) + static const AVOption options[] = { -{"chunked_post", "use chunked transfer-encoding for posts", OFFSET(chunked_post), AV_OPT_TYPE_INT, {.i64 = 1}, 0, 1, E }, -{"headers", "set custom HTTP headers, can override built in default headers", OFFSET(headers), AV_OPT_TYPE_STRING, { 0 }, 0, 0, D|E }, -{"content_type", "set a specific content type for the POST messages", OFFSET(content_type), AV_OPT_TYPE_STRING, { 0 }, 0, 0, D|E }, -{"user_agent", "override User-Agent header", OFFSET(user_agent), AV_OPT_TYPE_STRING, {.str = DEFAULT_USER_AGENT}, 0, 0, D }, -{"user-agent", "override User-Agent header, for compatibility with ffmpeg", OFFSET(user_agent), AV_OPT_TYPE_STRING, {.str = DEFAULT_USER_AGENT}, 0, 0, D }, -{"multiple_requests", "use persistent connections", OFFSET(multiple_requests), AV_OPT_TYPE_INT, {.i64 = 0}, 0, 1, D|E }, -{"post_data", "set custom HTTP post data", OFFSET(post_data), AV_OPT_TYPE_BINARY, .flags = D|E }, -{"mime_type", "export the MIME type", OFFSET(mime_type), AV_OPT_TYPE_STRING, {0}, 0, 0, AV_OPT_FLAG_EXPORT | AV_OPT_FLAG_READONLY }, -{"icy", "request ICY metadata", OFFSET(icy), AV_OPT_TYPE_INT, {.i64 = 0}, 0, 1, D }, -{"icy_metadata_headers", "return ICY metadata headers", OFFSET(icy_metadata_headers), AV_OPT_TYPE_STRING, {0}, 0, 0, AV_OPT_FLAG_EXPORT }, -{"icy_metadata_packet", "return current ICY metadata packet", OFFSET(icy_metadata_packet), AV_OPT_TYPE_STRING, {0}, 0, 0, AV_OPT_FLAG_EXPORT }, -{"auth_type", "HTTP authentication type", OFFSET(auth_state.auth_type), AV_OPT_TYPE_INT, {.i64 = HTTP_AUTH_NONE}, HTTP_AUTH_NONE, HTTP_AUTH_BASIC, D|E, "auth_type" }, -{"none", "No auth method set, autodetect", 0, AV_OPT_TYPE_CONST, {.i64 = HTTP_AUTH_NONE}, 0, 0, D|E, "auth_type" }, -{"basic", "HTTP basic authentication", 0, AV_OPT_TYPE_CONST, {.i64 = HTTP_AUTH_BASIC}, 0, 0, D|E, "auth_type" }, -{"send_expect_100", "Force sending an Expect: 100-continue header for POST", OFFSET(send_expect_100), AV_OPT_TYPE_INT, {.i64 = 0}, 0, 1, E }, -{"location", "The actual location of the data received", OFFSET(location), AV_OPT_TYPE_STRING, { 0 }, 0, 0, D|E }, -{"offset", "initial byte offset", OFFSET(off), AV_OPT_TYPE_INT64, {.i64 = 0}, 0, INT64_MAX, D }, -{"end_offset", "try to limit the request to bytes preceding this offset", OFFSET(end_off), AV_OPT_TYPE_INT64, {.i64 = 0}, 0, INT64_MAX, D }, -{"method", "Override the HTTP method", OFFSET(method), AV_OPT_TYPE_STRING, { .str = NULL }, 0, 0, E, }, -{NULL} +{ "chunked_post", "use chunked transfer-encoding for posts", OFFSET(chunked_post), AV_OPT_TYPE_INT, { .i64 = 1 }, 0, 1, E }, +{ "headers", "set custom HTTP headers, can override built in default headers", OFFSET(headers), AV_OPT_TYPE_STRING, { 0 }, 0, 0, D | E }, +{ "content_type", "set a specific content type for the POST messages", OFFSET(content_type), AV_OPT_TYPE_STRING, { 0 }, 0, 0, D | E }, +{ "user_agent", "override User-Agent header", OFFSET(user_agent), AV_OPT_TYPE_STRING, { .str = DEFAULT_USER_AGENT },
[FFmpeg-cvslog] lavfi/src_movie: minor simplifications
ffmpeg | branch: master | Lukasz Marek | Sun May 11 06:08:09 2014 +0200| [f7539562522ba44db5d1467d43b917638d58bb05] | committer: Michael Niedermayer lavfi/src_movie: minor simplifications Signed-off-by: Lukasz Marek Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=f7539562522ba44db5d1467d43b917638d58bb05 --- libavfilter/src_movie.c |8 +++- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/libavfilter/src_movie.c b/libavfilter/src_movie.c index dd3b516..0b97b82 100644 --- a/libavfilter/src_movie.c +++ b/libavfilter/src_movie.c @@ -192,7 +192,7 @@ static av_cold int movie_common_init(AVFilterContext *ctx) MovieContext *movie = ctx->priv; AVInputFormat *iformat = NULL; int64_t timestamp; -int nb_streams, ret, i; +int nb_streams = 1, ret, i; char default_streams[16], *stream_specs, *spec, *cursor; char name[16]; AVStream *st; @@ -211,7 +211,7 @@ static av_cold int movie_common_init(AVFilterContext *ctx) movie->stream_index); stream_specs = default_streams; } -for (cursor = stream_specs, nb_streams = 1; *cursor; cursor++) +for (cursor = stream_specs; *cursor; cursor++) if (*cursor == '+') nb_streams++; @@ -283,11 +283,9 @@ static av_cold int movie_common_init(AVFilterContext *ctx) return AVERROR(ENOMEM); for (i = 0; i <= movie->max_stream_index; i++) movie->out_index[i] = -1; -for (i = 0; i < nb_streams; i++) -movie->out_index[movie->st[i].st->index] = i; - for (i = 0; i < nb_streams; i++) { AVFilterPad pad = { 0 }; +movie->out_index[movie->st[i].st->index] = i; snprintf(name, sizeof(name), "out%d", i); pad.type = movie->st[i].st->codec->codec_type; pad.name = av_strdup(name); ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] lavfi/src_movie: remove frame from priv context
ffmpeg | branch: master | Lukasz Marek | Sun May 11 06:08:08 2014 +0200| [97392553656a7f4fabde9ded4d2b7f538d98ee17] | committer: Michael Niedermayer lavfi/src_movie: remove frame from priv context This variable is used only inside one function. There is no need to store it in context. This also may prevent crush by double free frame. Signed-off-by: Lukasz Marek Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=97392553656a7f4fabde9ded4d2b7f538d98ee17 --- libavfilter/src_movie.c | 28 +--- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/libavfilter/src_movie.c b/libavfilter/src_movie.c index bcc8e05..dd3b516 100644 --- a/libavfilter/src_movie.c +++ b/libavfilter/src_movie.c @@ -63,7 +63,6 @@ typedef struct MovieContext { AVFormatContext *format_ctx; int eof; AVPacket pkt, pkt0; -AVFrame *frame; ///< video frame to store the decoded images in int max_stream_index; /**< max stream # actually used for output */ MovieStream *st; /**< array of all streams, one per output */ @@ -325,7 +324,6 @@ static av_cold void movie_uninit(AVFilterContext *ctx) } av_freep(&movie->st); av_freep(&movie->out_index); -av_frame_free(&movie->frame); if (movie->format_ctx) avformat_close_input(&movie->format_ctx); } @@ -453,6 +451,7 @@ static int movie_push_frame(AVFilterContext *ctx, unsigned out_id) MovieStream *st; int ret, got_frame = 0, pkt_out_id; AVFilterLink *outlink; +AVFrame *frame; if (!pkt->size) { if (movie->eof) { @@ -495,17 +494,17 @@ static int movie_push_frame(AVFilterContext *ctx, unsigned out_id) st = &movie->st[pkt_out_id]; outlink = ctx->outputs[pkt_out_id]; -movie->frame = av_frame_alloc(); -if (!movie->frame) +frame = av_frame_alloc(); +if (!frame) return AVERROR(ENOMEM); frame_type = st->st->codec->codec_type; switch (frame_type) { case AVMEDIA_TYPE_VIDEO: -ret = avcodec_decode_video2(st->st->codec, movie->frame, &got_frame, pkt); +ret = avcodec_decode_video2(st->st->codec, frame, &got_frame, pkt); break; case AVMEDIA_TYPE_AUDIO: -ret = avcodec_decode_audio4(st->st->codec, movie->frame, &got_frame, pkt); +ret = avcodec_decode_audio4(st->st->codec, frame, &got_frame, pkt); break; default: ret = AVERROR(ENOSYS); @@ -513,7 +512,7 @@ static int movie_push_frame(AVFilterContext *ctx, unsigned out_id) } if (ret < 0) { av_log(ctx, AV_LOG_WARNING, "Decode error: %s\n", av_err2str(ret)); -av_frame_free(&movie->frame); +av_frame_free(&frame); av_free_packet(&movie->pkt0); movie->pkt.size = 0; movie->pkt.data = NULL; @@ -532,26 +531,25 @@ static int movie_push_frame(AVFilterContext *ctx, unsigned out_id) if (!got_frame) { if (!ret) st->done = 1; -av_frame_free(&movie->frame); +av_frame_free(&frame); return 0; } -movie->frame->pts = av_frame_get_best_effort_timestamp(movie->frame); +frame->pts = av_frame_get_best_effort_timestamp(frame); av_dlog(ctx, "movie_push_frame(): file:'%s' %s\n", movie->file_name, -describe_frame_to_str((char[1024]){0}, 1024, movie->frame, frame_type, outlink)); +describe_frame_to_str((char[1024]){0}, 1024, frame, frame_type, outlink)); if (st->st->codec->codec_type == AVMEDIA_TYPE_VIDEO) { -if (movie->frame->format != outlink->format) { +if (frame->format != outlink->format) { av_log(ctx, AV_LOG_ERROR, "Format changed %s -> %s, discarding frame\n", av_get_pix_fmt_name(outlink->format), -av_get_pix_fmt_name(movie->frame->format) +av_get_pix_fmt_name(frame->format) ); -av_frame_free(&movie->frame); +av_frame_free(&frame); return 0; } } -ret = ff_filter_frame(outlink, movie->frame); -movie->frame = NULL; +ret = ff_filter_frame(outlink, frame); if (ret < 0) return ret; ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog