avio: avio_ prefixes for get_* functions
In the name of consistency:get_byte -> avio_r8get_<type> -> avio_r<type>get_buffer -> avio_read
get_partial_buffer will be made private later
get_strz is left out becase I want to change it later to return...
VC1: merge idct8x8, coeff adjustments and put_pixels.
Merging these functions allows merging some loops, which makes theresults (particularly after SIMD optimizations) much faster.(cherry picked from commit f8bed30d8b176fa030f6737765338bb4a2bcabc9)
avio: rename av_alloc_put_byte -> avio_alloc_context for consistency
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>(cherry picked from commit 8d9ac969cb4ac3e3e18f6425703af4d7aec6c513)
dsputil: make {add/put/put_signed}_pixels_clamped() non-static.(cherry picked from commit 484a337cd7cd8bb180c4a1bd3321881f1c874a92)
VC1: inline vc1_put_block() in vc1_decode_i_blocks().
Advantage is that it allows us to combine several loops into a singleone, and these can eventually be merged into the IDCT itself. Also, itallows us to remove vc1_put_block(), and makes CODEC_FLAG_GRAY faster....
Makefile: include deps from tools directory
This ensures the tools are rebuilt when necessary. Specifically,lavfi-showfiltfmts was sometimes not rebuilt causing spurious testfailures.
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 08df7f866663f83ba42398cea9f3eeff4681ea9a)
amrnb: use correct size when copying lsf_r array
lsf_r is an array of int16_t, not float.
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 1efa772e20be5869817b2370a557bb14e7ce2fff)
x86: use raw opcode for xgetbv instruction
This allows the CPU detection to work with assemblers not supportingthe xgetbv mnemonic. These include clang and some BSD versions.
All AVX code will be written for yasm, where the main assembleris not involved....
Add shadow support to the drawtext filter
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
factor draw_glyphs out of drawtext filter
Fix and optimize yuv blend in the drawtext filter
get rid of divisions in the inner loop of the drawtext filter
fix chroma alpha in the drawtext filter
Simplify chroma blend in the drawtext filter
lavfi: add fade filter
Port fade filter from libavfilter soc repo, with minor fixes byStefano.
lavfi: put color source in a dedicated file
Move the color source code from vf_pad.c to vsrc_color.c.
lavfi: add drawutils
Add drawutils.h and drawutils.c, and use them in the pad filter.The new functions are going to be shared by other filters.
Update version and APIchanges.
Update libavformat/version.h and doc/APIChanges after renaminginit_put_byte() and ByteIOContext to ffio_init_context() (private)and AVIOContext, (public), and deprecating the originals.(cherry picked from commit d2bbf82e65e4a128ab1f0bf48df5d1e43c43c698)
avio: move init_put_byte() to a new private header and rename it
init_put_byte should never be used outside of lavf, sincesizeof(AVIOContext) isn't part of public ABI.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>(cherry picked from commit e731b8d8729e75bfb69f5540e6446d6118dac549)
avio: rename ByteIOContext to AVIOContext.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>(cherry picked from commit ae628ec1fd7f54c102bf9e667a3edd404b9b9128)
VC1: don't use vc1_put_block() in vc1_decode_i_blocks_adv().
Advanced profile never uses "range reduction", so vc1_put_block() quiteliterally just calls put_pixels_clamped() from vc1_decode_i_blocks_adv().By inlining the function, we can prevent calling IDCT8x8 if...
x86: check for AVX support
This adds configure and runtime checks for AVX support on x86 CPUs.
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 87f1355f9b4fc11414d0e6a91404203c2745f89f)
MMS: also discover streams in extended stream properties object
Allows playback of nonprimary audio streams in multiple bitrate sources,such as mmsh://wmscr1.dr.dk/e02ch03m
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>(cherry picked from commit 74d6871d6244865b5863a01c3dab16a2f06a1706)
dsputil_mmx.c: remove ff_vector128.
Remove ff_vector128, it is identical to ff_pb_80.(cherry picked from commit bf6fa732459399fac215bdfa44dd39a6fb1d1e01)
Fix invalid reads in VC1 decoder
Patch discussed and taken from https://roundup.ffmpeg.org/issue2584(cherry picked from commit 2bbec1eda46d907605772a8b6e8263caa4bc4c82)
Fix VP3 edge emulation
With negative stride, the start of the edge_emu buffer should be pointing tothe last line, not the end of the buffer.With positive stride, pointing to the end of the buffer was completely wrong.(cherry picked from commit a89f4ca005efa5ee82089583c7b8bc00bcee816a)
aacdec: dsputilize the scalar multiplication in intensity stereo(cherry picked from commit 9707f84fa73c23352937fc7e4e0a85eaf3135cbc)
VP3: fix decoding of videos with stride > 2048
Also remove qscale_table code; this didn't make sense anyways as VP3 doesn'tuse an MPEG-like quantizer scale.(cherry picked from commit 902685b8abf4e2089802528a32a50f3c68033fda)
Fix issue2619.regression introduced in 1762d9ced70ccc46c5d3e5d64e56a48d0fbbd4f7
targa: fix potential buffer overreads
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 351423ae1f861da1c647d30c73503fde2b1f3dad)
Fix PPC build.(cherry picked from commit ed040f35f298b39f1ddd45a133c82cb5d6d79dda)
VP8: init one less near_mv
This one didn't actually need to be initialized.(cherry picked from commit 891b1f15a7e45a2a5f91cb4c27d11259ef8e012f)
Force inlining of avutil common routines
On some versions of gcc, these weren't always getting inlined due to hittingthe inline cap limit in some files. This is generally bad, as most of thesefunctions are smaller inlined than not.(cherry picked from commit eb3755a5aa65da685d81399cfae4bd35e4a178b6)
VP8: split out declarations to new header(cherry picked from commit bcf4568f183055331415ba230e82af6d59faac1c)
VP8: faster MV clipping(cherry picked from commit 7634771e70575b2a5abaeb420c5b3c2f9948c693)
dsputil: move VC1-specific stuff into VC1DSPContext.(cherry picked from commit 12802ec0601c3bd7b9c7a2503518e28fd5e7d744)
VC1: simplify a calculation in a loop.(cherry picked from commit 0b16cdc3fa1d73056649abf43288be0a7624fdcc)
VC1: transpose IDCT 8x8 coeffs while reading.(cherry picked from commit 1da6ea39542424ddb691dc6cf08d611a4c6db247)
ffserver: Try matching the RTSP url without a trailing slash
If the client sends PLAY/PAUSE requests with the same url asspecified in Content-Base, these requests may have urls withtrailing slashes.(cherry picked from commit c2ca851b234e169b50730ef357aeade8047491eb)
Add SHA1s to APIChanges for av_dump_format, av_parse_time and av_find_info_tagSigned-off-by: Janne Grunau <janne-ffmpeg@jannau.net>(cherry picked from commit c3dbfa1afd7d989e3bba4c6bfc492a52c012e9b3)
lavf, lavu: bump minor versions and add an APIChanges entry for av_ prefixes
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>(cherry picked from commit 09d171b98879f58be1a766d5f277e131b18e98a1)
Move find_info_tag to lavu and add av_ prefix to it
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>(cherry picked from commit ab0287fcbdebc8ff416214535d7ee8424406990e)
mdct: remove unnecessary multiplication
3*n4 was already calculated in n3.(cherry picked from commit 979395bbbb9381b522b44c3448c24aef9c819ffc)
ac3enc: fix bug in stereo rematrixing decision.
The rematrixing strategy reuse flags are not reset between frames, so theyneed to be initialized for all blocks, not just block 0.
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 5b54d4b376fbd2c291b8a6dba7d425e28f654bcf)
Replace remaining uses of parse_date with av_parse_time.
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 9fcae9735e3b97366dcee9ca3c2f6cf4faf6756f)
Deprecate parse_date() in favor of av_parse_time().
The new av_parse_time() is created in libavutil/parseutils.h, all theinternal functions used by parse_date are moved tolibavutil/parseutils.c and made static.
Signed-off-by: Mans Rullgard <mans@mansr.com>...
lavf: add av_ prefix to dump_format()
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 610219a598095f938705f200dfe3946455ef871a)
rtsp: udp_read_packet returning 0 doesn't mean success
If udp_read_packet returns 0, rtsp_st isn't set and we shouldn'ttreat it as a successfully received packet (which is counted andpossibly triggers a RTCP receiver report).
This fixes issue 2612.(cherry picked from commit 2c35a6bde95a382e2d48570255deb67a7633fa46)
ffserver: set the sample aspect ratio
Hi.
It seems that ffserver sets sample_aspect_ratio to an invalid value and lavfrejects it.
I am not sure what I am doing here, but the attached patch actually solvessomething: using the following config:
CustomLog -...
documentation: add encoders chapter
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>(cherry picked from commit 0fa904c9d845d4a47372e619067e21991bb39b06)
In graph2dot, print more specific audio information for audio links.
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>(cherry picked from commit 009026efb1e3b3a5f05fd9934019a6300b25f364)
spdifenc: set flag AVFMT_NOTIMESTAMPS
There are no timestamps in IEC 61937.
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>(cherry picked from commit 6c60fcf89afc84c9dc863669d78e611d7c72fe41)
Reduce picture size for yadif.Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Change yadif to not use out of picture lines.Fixes issue2272.
ac3dsp: Change punpckhqdq to movhlps in ac3_max_msb_abs_int16().
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>(cherry picked from commit 1f004fc512babe8215e2aa31fa4770aa27812cab)
fix nsvdec.c compilation if DEBUG macro defined
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>(cherry picked from commit 41cdc1ff1e86f1bfb935e1bde53ccc9c645ff71e)
Fix av_find_best_stream when using a program
The current implementation has a bug, it is returning the stream indexin the found program, and not the stream index in the list of allstreams. The attached patch fixes this issue.
Document audio_resample_close().
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Document that av_write_header sets stream time_base to a value of it chosing.
spdifenc: update 482d98f69b2eb7a7b0b5054101a43db384e9432b to the latest patch
"spdifenc: IEC 61937 encapsulation of DTS-HD for HDMI" (cherry picked from commit ec25f83bd98e10c023e6c7b07da1dcfc4d80cefc)
ac3enc: change default floor code to 7.
This is to match the value in every (E-)AC-3 file from commercial sources.It has a negligible effect on audio quality.
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 50d7140441b61809ad4ba4ea7b4ad8fe77bc6888)
os_support: fix poll() implementation
Our poll implementation does not iterate over the pollfd array properlywhile setting the revents.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>(cherry picked from commit 9ac2085dbf1821b7995fe360038c1bf0f3940032)
Merge libavcore into libavutil
Done to keep ABI compatible. Otherwise this is just silly
vbv_delay AVOption for ABI compatibility
APIchanges: update for 55bad0c: vbv_delay
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 8ed4cc65a19b5a6cc7ae6ed5072be2d3836dbeb2)
Pass VBV delay to the calling application via ctx
VBV delay is useful for T-STD compliance in some TS muxers. It iscertainly possible to retrieve it by parsing the output of FFmpeg, butgetting it from the context makes it simpler and less error-prone....
binkaudio: remove unused copy of AVCodecContext*
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 71f88b1f3843fdb676d6f72181da0c8c460341d8)
binkaudio: fix channel count check
Perform validity check on AVFormatContext.channels instead ofuninitialised field.
This fixes issue 2001.
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 9806fbd5351fa84f99fa5b18fe06859acb514f34)
fix nsvdec.c compilation if DEBUG defined
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>(cherry picked from commit d06497f316ed819ea0ca0fad2535342ec42c79a5)
aacdec: Implement LTP support.
Ported from gsoc svn.(cherry picked from commit ead15f1dc196ad164d105e31c8c9025f8a4ee4e7)
APIchanges: update for 12c14cd
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 77c330a046d668373cbd9542f3e1d4746916b02f)
mpegtsenc: whitespace cosmetics
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 2dd1ee4bfe85f41b771bf8fe1c2cfa2d833b5de3)
mpegtsenc: set audio_type according to st->disposition
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 3f2d3a1904c1ccdfdc3bd03a6dd6567986f681d9)
mpegts: set st->disposition according to ISO 639 language descriptor
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 60e7306643054e93dfc1962f89b24554bb76e18a)
apichanges: update for 24a83bd: add AV_DISPOSITION_CLEAN_EFFECTS flag
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 935ee1b9bba3d2fa1bf0d48eef278956307478cb)
lavf: add AV_DISPOSITION_CLEAN_EFFECTS flag
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 24a83bd10a1ed56cadd2c475b839887752f23183)
Better threshold for the gcd based r_frame_rate calculation.Fixes Gilmore Girls_Net 5_2011_01_08_16_10_53.wtv and RTL GP- WK Superbike - Qatar_RTL7_2009_03_14_15_49_23.wtv.
Fix spelling error.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>(cherry picked from commit b08f59dca493e7582ddfd08097c594bfb0ae6ff9)
mmst: fix reading uninitialized data for ping packets.
Fixes errors after a few minutes (first ping) when playing backmmst://wm.bbc.co.uk/wms/bbc7coyopa/bbc7_-_friday_0430.wma(cherry picked from commit 275189a2bd71cf49d66374c44d3de2262d323460)
Update APIchanges for 910b5b8
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 08a459f096106f13c03182eed4b7cb725dc4a0ae)
Remove disabled legacy code in ffplay.
The code was setting aspect ratio from the DTG active format, and waspresent and disabled since the creation of ffplay.
See thread:Subject: [FFmpeg-devel] [PATCH] Cosmetics: adopt compact notation in disabled code....
aac: remove dead SBR input scaling
It has been unused since 9d06d7bce3babb82ed650c13ed13a57f6f626a71
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 916dee9f45dab85cfc20b6bf63ce8722746e6508)
asfdec: fix build for big endian targets
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit aabc2682fcb70417abda0e78d27a425269a82fc8)
ac3enc: Add x86-optimized function to speed up log2_tab().
AC3DSPContext.ac3_max_msb_abs_int16() finds the maximum MSB of the absolutevalue of each element in an array of int16_t.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>(cherry picked from commit fbb6b49dabc3398440c6dfa838aa090a7a6ebc0d)
wtv: ignore empty data_guid chunks
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>(cherry picked from commit 1a973feb45826a1998b4286ecfe1fa7a602b8780)
asfdec: split reading stream properties out of asf_read_header()
This contains a rename from gsize->size
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>(cherry picked from commit 8bf6db1b29f3766732e2bb2bdd2681318fd8e215)
mmst: print packet type with error status code message
Signed-off-by: Francesco Cosoleto <cosoleto@gmail.com>Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>(cherry picked from commit 70630e35a436d890f3e3fbbe73b70042a375f326)
configure: fix non-standard regex used with expr
The colon operator of expr always anchors the pattern at the startof the string. An explicit ^ in the pattern has unspecifiedbehaviour, so remove it.
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 3ad464bfc7df6d0f68c7df9c907089b84d92ab75)
configure: report full gcc version string
This makes the cc_ident value, which is used in FATE reports, includeall interesting parts of the gcc version string.
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 5d57846bba7010dc6ee65c3503dd06600e5441a5)
configure: add cleanws() function
This function removes leading and trailing spaces and collapsesmultiple spaces into one.
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit bb7a22b5840e56c034227ad596b1165c03f2da27)
FFT: factor a shuffle out of the inner loop and merge it into fft_permute.
6% faster SSE FFT on Conroe, 2.5% on Penryn.
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>(cherry picked from commit e6b1ed693ae4098e6b9eabf938fc31ec0b09b120)
lavf: print stream disposition in dump_stream_format
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>(cherry picked from commit 3c33c0e26325f189dbf7f212f8e9042feb83bfb0)
spdifenc: fix byte order on big-endian systems
There is a check for HAVE_BIGENDIAN when outputting the IEC 61937stream. On big-endian systems the payload data is not byteswapped,causing in effect the outputted payload data to be in a different byteorder on big-endian than on little-endian systems....
spdifenc: IEC 61937 encapsulation of DTS-HD for HDMI
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>(cherry picked from commit 482d98f69b2eb7a7b0b5054101a43db384e9432b)
bink: permute Bink version 'b' quant matrices by inverse scan order
This fixes visual glitches in Bink version 'b' files, as the quantizationtables were not being permuted.
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 231539217431c32d4f22a16ee2834e24f54611f4)
bink: simplify how quantization matrices are passed to read_dct_coeffs()
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit cb62510cab8b745e65eb966c72ab7e9b122d564b)
Fix MMX rgb24 to yuv conversion with gcc 4.6
When built with gcc 4.6, the MMX rgb24 to yuv conversion giveswrong output. The compiler produces this warning:
libswscale/swscale_template.c:1885:5: warning: use of memory input without lvalue in asm operand 4 is deprecated...
movenc: Force first sample as SYNC
Signed-off-by: Mans Rullgard <mans@mansr.com>(cherry picked from commit 44b11207248c6ca6edb7d3469c0fbdca45dbfa70)
Make avfilter_config_links() propagate audio information of the source link if it is not explicitely set by the filter.