Set duration to 10 seconds, after it was increased from 5 to 200 seconds
in 8d80f3cb87.
200 seconds will generate too much data which is annoying especially when
testing.
Fixes use of the example with encoders which use tha AVFrame w/h/pix_fmt fields
FFV1 is one of these codecs
We cannot easily workaround the not set fields in common code because the API
has AVFrame constant for the encoders.
Alternatives would be to fix the API or to duplicate the struct and fill in
missing fields. Or as is to require all user apps to set this correctly and
maybe simplify for that case
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Fix PTS set on the frame when encoding, which must be specified in the
encoder timebase or this will confuse the encoder.
When muxing the packet, the PTS/DTS generated by the encoder is then
rescaled to the stream timebase.
- do not allocate resample dst buffer when resample is off
- free sample buffers in addition to freeing data pointer arrays
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Hi list! Since my last patch (fix 2 memleaks in doc/examples/muxing.c)
I found more problems to fix.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* commit 'eb891b3114f499e96b9faddd0b0ae856345dfbd9':
Replace all uses of avcodec_free_frame with av_frame_free().
Conflicts:
doc/examples/decoding_encoding.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit '9d3009c6c4b9b6734f07df7c88f6a42ded6cdf38':
avconv: print an error on applying options of the wrong type.
atomic: Check for __sync_val_compare_and_swap instead of __sync_synchronize
output-example: Update to use encode_video2 instead of the now dropped encode_video
Conflicts:
doc/examples/muxing.c
ffmpeg_opt.c
libavutil/atomic.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Do not re-call avcodec_get_context_defaults3(), it is already
called by avformat_new_stream() and it leaks the codec
priv_data that was already allocated.
Use avformat_free_context() instead of freeing (not)
everything manually.
Fix trac ticket #2322.
* commit '7751e4693dd10ec98c20fbd9887233b575034272':
ogg: check that the expected number of headers had been parsed
libx264: change default to closed gop to match x264cli
Use avcodec_free_frame() to free AVFrames.
lavf: use a malloced AVFrame in try_decode_frame().
lavc: add avcodec_free_frame().
lavc: ensure extended_data is set properly on decoding
lavc: initialize AVFrame.extended_data in avcodec_get_frame_defaults()
lavc: use av_mallocz to allocate AVFrames.
lavc: rename the argument of avcodec_alloc_frame/get_frame_defaults
Conflicts:
doc/APIchanges
doc/examples/decoding_encoding.c
libavcodec/utils.c
libavcodec/version.h
libavfilter/src_movie.c
libavformat/oggdec.c
libavformat/oggdec.h
libavformat/oggparsetheora.c
libavformat/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Favor the use of plain AVPicture over AVFrame, especially when the use of
AVFrame is not required like in the case of tmp_picture.
Also adopt more straightforward names, to avoid frame/picture confusion.
Fix warnings:
muxing.c: In function ‘write_video_frame’:
muxing.c:326:23: warning: passing argument 2 of ‘sws_scale’ from incompatible pointer type [enabled by default]
Make add_{audio,video}_stream return the found codec, and pass it to
avcodec_open2() through open_{audio,video} functions.
Fix failure:
No codec provided to avcodec_open2().
could not open codec
This is also consistent with the use of the avcodec_open2() API in the
codebase.
* qatar/master:
h264: drop ff_h264_ prefix from static function ff_h264_decode_rbsp_trailing()
h264: Make ff_h264_decode_end() static, it is not used externally.
output-example: K&R formatting cosmetics, comment spelling fixes
avf: make the example output the proper message
avf: fix audio writing in the output-example
mov: don't overwrite existing indexes.
lzw: fix potential integer overflow.
truemotion: forbid invalid VLC bitsizes and token values.
truemotion2: handle out-of-frame motion vectors through edge extension.
configure: Check for a different SDL function
Conflicts:
configure
doc/examples/muxing.c
libavcodec/truemotion2.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* qatar/master:
docs: use -bsf:[vas] instead of -[vas]bsf.
mpegaudiodec: Prevent premature clipping of mp3 input buffer.
lavf: move the packet keyframe setting code.
oggenc: free comment header for all codecs
lcl: error out if uncompressed input buffer is smaller than framesize.
mjpeg: abort decoding if packet is too large.
golomb: use HAVE_BITS_REMAINING() macro to prevent infloop on EOF.
get_bits: add HAVE_BITS_REMAINING macro.
lavf/output-example: use new audio encoding API correctly.
lavf/output-example: more proper usage of the new API.
tiff: Prevent overreads in the type_sizes array.
tiff: Make the TIFF_LONG and TIFF_SHORT types unsigned.
apetag: do not leak memory if avio_read() fails
apetag: propagate errors.
SBR DSP x86: implement SSE sbr_hf_g_filt
SBR DSP x86: implement SSE sbr_sum_square_sse
SBR DSP: use intptr_t for the ixh parameter.
Conflicts:
doc/bitstream_filters.texi
doc/examples/muxing.c
doc/ffmpeg.texi
libavcodec/golomb.h
libavcodec/x86/Makefile
libavformat/oggenc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* qatar/master:
doxy: remove reference to removed api
examples: unbreak compilation
ttadec: cosmetics: reindent
sunrast: use RLE trigger macro inplace of the hard coded value.
sunrastenc: set keyframe flag for the output packet.
mpegvideo_enc: switch to encode2().
mpegvideo_enc: force encoding delay of at least 1 frame when low_delay=0
Conflicts:
doc/examples/muxing.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* qatar/master:
cljr: K&R cosmetics
cljr: return a more sensible value when encountering invalid headers
cljr: drop unnecessary emms_c() calls without MMX code
cljr: remove useless casts
cljr: group encode/decode parts under single ifdefs
cljr: remove stray semicolon
cljr: add missing return statement in decode_end()
doc: add pulseaudio to the input list
avconv: remove unsubstantiated comment
shorten: avoid abort() on unknown audio types
cljr: add encoder
build: merge lists of HTML documentation targets
tests/examples: Mark some variables only used within their files as static.
tests/tools/examples: Replace direct exit() calls by return.
x86 cpuid: set vendor union members separately
cljr: release picture at end of decoding
rv40: NEON optimised rv40 qpel motion compensation
Conflicts:
doc/examples/muxing.c
libavcodec/cljr.c
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* qatar/master:
presets: rename presets directory
lavc: make avcodec_get_context_defaults3 "officially" public
lavf: replace av_new_stream->avformat_new_stream part II.
lavf,lavd: replace av_new_stream->avformat_new_stream part I.
lavf: add avformat_new_stream as a replacement for av_new_stream.
Use correct scaling table for bwd-pred MVs in second B-field
Ut Video decoder
Makefile: change presets extension to .avpreset
lavfi: add rgbtestsrc source, ported from MPlayer libmpcodecs
lavfi: add testsrc source
AVOptions: add documentation.
presets: update libx264 ffpresets
Conflicts:
Changelog
doc/APIchanges
doc/ffmpeg.texi
ffpresets/libx264-ipod320.ffpreset
ffpresets/libx264-ipod640.ffpreset
ffserver.c
libavcodec/avcodec.h
libavcodec/options.c
libavcodec/version.h
libavdevice/libdc1394.c
libavfilter/avfilter.h
libavfilter/vsrc_testsrc.c
libavformat/flvdec.c
libavformat/riff.c
libavformat/version.h
libavformat/wtv.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>