Sometimes the scan finds nothing that qualifies for addition to
the array and pos is zero after the loops. The code forces pos to
1 and the array is then processed as if it had one valid element in it,
producing some amusing but not very useful results.
I don't see the rationale for this. If pos is zero coming out of the
loops, the only appropriate thing to do is set t->angle to zero. The
attached patch does that. It's worked properly in several tests so far.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* qatar/master:
sgidec: Use bytestream2 functions to prevent buffer overreads.
cosmetics: Move static and inline attributes to more standard places.
configure: provide libavfilter/version.h header to get_version()
swscale: change yuv2yuvX code to use cpuflag().
libx264: Don't leave max_b_frames as -1 if the user didn't set it
FATE: convert output to rgba for the targa tests which currently output pal8
fate: add missing reference files for targa tests in 9c2f9b0e2
FATE: enable the 2 remaining targa conformance suite tests
targa: add support for rgb555 palette
FATE: fix targa tests on big-endian systems
Conflicts:
libavcodec/sgidec.c
libavcodec/targa.c
libswscale/x86/output.asm
tests/fate/image.mak
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Variable totalangles was created and assigned, but never used.
Signed-off-by: Ray Simard <rhs.ffmpeg@sylvan-glade.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
Initialize Transform structs t and orig to zero.
Signed-off-by: Ray Simard <rhs.ffmpeg@sylvan-glade.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
* qatar/master: (21 commits)
utils: Check for extradata size overflows.
ARM: rv34: fix asm syntax in dc transform functions
avio: Fix the value of the deprecated URL_FLAG_NONBLOCK
rv34: fix and optimise frame dependency checking
rv34: NEON optimised dc only inverse transform
avprobe: use avio_size() instead of deprecated AVFormatContext.file_size.
ffmenc: remove references to deprecated AVFormatContext.timestamp.
lavf: undeprecate read_seek().
avserver: remove code using deprecated CODEC_CAP_PARSE_ONLY.
lavc: replace some remaining FF_I_TYPE with AV_PICTURE_TYPE_I
lavc: ifdef out parse_only AVOption
nellymoserdec: SAMPLE_FMT -> AV_SAMPLE_FMT
mpegvideo_enc: ifdef out/replace references to deprecated codec flags.
riff: remove references to sonic codec ids
indeo4: add some missing static and const qualifiers
rv34: DC-only inverse transform
avconv: use AVFrame.width/height/format instead of corresponding AVCodecContext fields
lavfi: move version macros to a new installed header version.h
vsrc_buffer: release the buffer on uninit.
rgb2rgb: rgb12tobgr12()
...
Conflicts:
avconv.c
doc/APIchanges
ffprobe.c
libavfilter/Makefile
libavfilter/avfilter.h
libswscale/rgb2rgb.c
libswscale/rgb2rgb.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Using the double variant causes several pointless conversions between
double and int.
Worse, one of the conversions is in an inner loop together with a
function using MMX, resulting in undefined behaviour.
Based on debugging by Ray Simard.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Tested-by: Ray Simard <rhs.ffmpeg@sylvan-glade.com>
* qatar/master: (22 commits)
rv34: frame-level multi-threading
mpegvideo: claim ownership of referenced pictures
aacsbr: prevent out of bounds memcpy().
ipmovie: fix pts for CODEC_ID_INTERPLAY_DPCM
sierravmd: fix audio pts
bethsoftvideo: Use bytestream2 functions to prevent buffer overreads.
bmpenc: support for PIX_FMT_RGB444
swscale: fix crash in fast_bilinear code when compiled with -mred-zone.
swscale: specify register type.
rv34: use get_bits_left()
avconv: reinitialize the filtergraph on resolution change.
vsrc_buffer: error on changing frame parameters.
avconv: fix -copyinkf.
fate: Update file checksums after the mov muxer change in a78dbada55
movenc: Don't store a nonzero creation time if nothing was set by the caller
bmpdec: support for rgb444 with bitfields compression
rgb2rgb: allow conversion for <15 bpp
doc: fix stray reference to FFmpeg
v4l2: use C99 struct initializer
v4l2: poll the file descriptor
...
Conflicts:
avconv.c
libavcodec/aacsbr.c
libavcodec/bethsoftvideo.c
libavcodec/kmvc.c
libavdevice/v4l2.c
libavfilter/vsrc_buffer.c
libswscale/swscale_unscaled.c
libswscale/x86/input.asm
tests/ref/acodec/alac
tests/ref/acodec/pcm_s16be
tests/ref/acodec/pcm_s24be
tests/ref/acodec/pcm_s32be
tests/ref/acodec/pcm_s8
tests/ref/lavf/mov
tests/ref/vsynth1/dnxhd_1080i
tests/ref/vsynth1/mpeg4
tests/ref/vsynth1/qtrle
tests/ref/vsynth1/svq1
tests/ref/vsynth2/dnxhd_1080i
tests/ref/vsynth2/mpeg4
tests/ref/vsynth2/qtrle
tests/ref/vsynth2/svq1
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* qatar/master: (29 commits)
cabac: Move code only used within the CABAC test program into the test program.
vp56: Drop unnecessary cabac.h #include.
h264-test: Initialize AVCodecContext.av_class.
build: Skip compiling network.h and rtsp.h if networking is not enabled.
cosmetics: drop some pointless parentheses
Disable annoying warning without changing behavior
faq: Solutions for common problems with sample paths when running FATE.
avcodec: attempt to clarify the CODEC_CAP_DELAY documentation
avcodec: fix avcodec_encode_audio() documentation.
FATE: xmv-demux test; exercise the XMV demuxer without decoding the perceptual codecs inside.
vqf: recognize more metadata chunks
FATE test: BMV demuxer and associated video and audio decoders.
FATE: indeo4 video decoder test.
FATE: update xxan-wc4 test to a sample with more code coverage.
Change the recent h264_mp4toannexb bitstream filter test to output to an elementary stream rather than a program stream.
g722enc: validate AVCodecContext.trellis
g722enc: set frame_size, and also handle an odd number of input samples
g722enc: split encoding into separate functions for trellis vs. no trellis
mpegaudiodec: Use clearer pointer math
tta: Fix returned error code at EOF
...
Conflicts:
libavcodec/h264.c
libavcodec/indeo3.c
libavcodec/interplayvideo.c
libavcodec/ivi_common.c
libavcodec/libxvidff.c
libavcodec/mpegvideo.c
libavcodec/ppc/mpegvideo_altivec.c
libavcodec/tta.c
libavcodec/utils.c
libavfilter/vsrc_buffer.c
libavformat/Makefile
tests/fate/indeo.mak
tests/ref/acodec/g722
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Port MPlayer tinterlace filter from MPlayer, with some ideas taken
from the FFmbc/libavfilter port, with the following main differences:
* added support for full-scale YUVJ formats
* added support for YUVA420P
* request_frame() on the filter is forced to return a frame
* some code factorization (related to the copy_picture_fields() function)
* fixed black padding values for mode 3
Rationale: avfilter_copy_frame_props() was already defined in
libavfilter/avcodec.h, and keeping the lavc/lavfi API glue localized in a
specific file should ease maintainance and help the ones which use
libavfilter without depending on libavcodec.
* qatar/master:
fate: whitespace cosmetics
fate: split off video codec FATE tests into their own file
fate: split off audio codec FATE tests into their own file
fate: split off Electronic Arts codec FATE tests into their own file
fate: split off QuickTime codec FATE tests into their own file
fate: split off voice codec FATE tests into their own file
fate: split off demuxer FATE tests into their own file
cosmetics: Drop unnecessary parentheses around return values.
fate: drop pointless _audio and _video suffixes from xan tests
qt-faststart: K&R reformatting; fix comment typos
FATE: Add test for H.264 MP4->annex.B bitstream filter.
Conflicts:
ffplay.c
tests/fate.mak
tests/fate/h264.mak
tests/fate/image.mak
tests/fate/lossless-audio.mak
tests/fate/lossless-video.mak
tests/fate/qtrle.mak
tests/fate/real.mak
tests/fate/screen.mak
Merged-by: Michael Niedermayer <michaelni@gmx.at>
av_samples_alloc() behavior changed in bbb46f3ec, resulting in random
data filling the data[] and linesize[] arrays of the returned
AVFilterBufferRef, which was resulting in wrong behavior in case of code
checking on data[i] nullity.
In particular fixes crash in avfilter_filter_samples():
for (i = 0; samplesref->data[i]; i++)
memcpy(link->cur_buf->data[i], samplesref->data[i], samplesref->linesize[0]);
and correctly fills the linesize[] array for planar data.
* qatar/master:
avs: call release_buffer() at the end.
Add minor bumps and APIchanges entries for lavc/lavfi changes.
mpegvideo.c: K&R formatting and cosmetics.
avconv: avoid memcpy in vsrc_buffer when possible.
avconv: implement get_buffer()/release_buffer().
lavfi: add a new function av_buffersrc_buffer().
lavfi: add avfilter_copy_frame_props()
lavc: add format field to AVFrame
lavc: add width and height fields to AVFrame
lavc: add a sample_aspect_ratio field to AVFrame
doxy: add website-alike style to the html output
FAQ: add an entry for common error when using -profile
Conflicts:
avconv.c
cmdutils.c
doc/APIchanges
libavcodec/avcodec.h
libavcodec/mpegvideo.c
libavcodec/utils.c
libavcodec/version.h
libavfilter/Makefile
libavfilter/avfilter.c
libavfilter/avfilter.h
libavfilter/src_movie.c
libavfilter/vsrc_buffer.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
The sample aspect ratio is a per-frame property, so it makes sense to
define it in AVFrame rather than in the codec/stream context.
Simplify application-level sample aspect ratio information extraction,
and allow further simplifications.