1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-18 03:19:31 +02:00
Commit Graph

10503 Commits

Author SHA1 Message Date
Michael Niedermayer
b27c7d70d8 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mss1: fix decoding masked regions in interframes
  mxfdec: fix off by one error.
  mxfdec: only parse next partition pack if parsing forward
  mxfdec: let pkt->pts = mxf->current_edit_unit if intra-only
  mxfdec: fix frame height vs field height confusion
  mxfdec: Add intra_only flag to MXFTrack
  mxfdec: fix Avid AirSpeed files being misinterpreted as OP1a
  mxfdec: truncate packets that extend past the next edit unit
  mxfdec: set pixel format for cdci picture formats
  mxfdec: detect uncomp pictures using essence container ul
  mxfdec: set track edit rate num/den in expected order
  x86/cpu: implement get/set_eflags using intrinsics
  x86/cpu: implement support for cpuid through intrinsics
  x86/cpu: implement support for xgetbv through intrinsics
  lavu: use intrinsics for emms on systems lacking inline asm support
  mem: Don't abort on av_malloc(0) in debug mode

Conflicts:
	configure
	libavformat/mxf.h
	libavformat/mxfdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-10 20:51:51 +02:00
Michael Niedermayer
f39bbc9d21 mxfdec: fix off by one error.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-07-10 13:51:05 +02:00
Tomas Härdin
83728d2d36 mxfdec: only parse next partition pack if parsing forward
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-07-10 13:51:04 +02:00
Tomas Härdin
34ca5ae51d mxfdec: let pkt->pts = mxf->current_edit_unit if intra-only
We cannot do this in general since we could be reading
a file with B-frames while lacking an index.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-07-10 13:51:04 +02:00
Joseph Artsimovich
634d670538 mxfdec: fix frame height vs field height confusion
Reviewed-by: Tomas Härdin <tomas.hardin@codemill.se>
Reveiwed-by: Baptiste Coudurier <baptiste.coudurier@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-07-10 13:51:04 +02:00
Tomas Härdin
5ed032fb8b mxfdec: Add intra_only flag to MXFTrack
This allows future assumptions to be made without affecting non-intra files.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-07-10 13:51:04 +02:00
Tomas Härdin
fb8fa3c67c mxfdec: fix Avid AirSpeed files being misinterpreted as OP1a
The "ECs != 1 -> OP1a" assumption was wrong. Luckily, the file
that triggered that behavior had two ECs, not zero. Hence
distinguishing between them is simple in this case.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-07-10 13:51:04 +02:00
Tomas Härdin
1fadf53e00 mxfdec: truncate packets that extend past the next edit unit
This fixes rare cases where OPAtom may be treated
as OP1a, causing all essence to be read into RAM.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-07-10 13:51:04 +02:00
Philip de Nier
fda891e108 mxfdec: set pixel format for cdci picture formats
The properties of the CDCI Descriptor are insufficient to specify
the pixel format for uncompressed picture data. SMPTE 377-1 and
RP224v10 have defined a set of picture coding labels to indicate what
formatting was used.

This patch uses 2 labels to detect UYVY422 or YUYV422 pixel formats.

It defaults to UYVY422 for 8-bit 4:2:2 pictures to support files
that were created before the coding labels were introduced ~2008

The codec pix_fmt default was changed from 0 (PIX_FMT_YUV420P) to
-1 (PIX_FMT_NONE)

Reviewed-by: Baptiste Coudurier <baptiste.coudurier@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-10 13:51:04 +02:00
Philip de Nier
dfefede00e mxfdec: detect uncomp pictures using essence container ul
This supports detection of uncompressed picture in files that
didn't include a Picture Coding Label. The lables weren't
available until SMPTE 377-1 and RP224v10

Reviewed-by: Baptiste Coudurier <baptiste.coudurier@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-07-10 13:51:04 +02:00
Philip de Nier
5255ca24cd mxfdec: set track edit rate num/den in expected order
This matches the order used for the index table edit rate.

Reviewed-by: Baptiste Coudurier <baptiste.coudurier@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-07-10 13:51:03 +02:00
Carl Eugen Hoyos
7307746444 Recognize yuv10 image files as v210x.
Reviewed-by: Kieran Kunhya
2012-07-10 13:27:16 +02:00
Stefano Sabatini
aef9e94f73 lavf/segment: add -segment_time_delta option 2012-07-10 00:53:01 +02:00
Stefano Sabatini
2058b52cf8 lavf/segment: add -segment_times option
Address trac ticket #1504.
2012-07-10 00:49:43 +02:00
Michael Niedermayer
f8911b987d Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mss3: use standard zigzag table
  mss3: split DSP functions that are used in MTS2(MSS4) into separate file
  motion-test: do not use getopt()
  tcp: add initial timeout limit for incoming connections
  configure: Change the rdtsc check to a linker check
  avconv: propagate fatal errors from lavfi.
  lavfi: add error handling to filter_samples().
  fate-run: make avconv() properly deal with multiple inputs.
  asplit: don't leak the input buffer.
  af_resample: fix request_frame() behavior.
  af_asyncts: fix request_frame() behavior.
  libx264: support aspect ratio switching
  matroskadec: honor error_recognition when encountering unknown elements.
  lavr: resampling: add support for s32p, fltp, and dblp internal sample formats
  lavr: resampling: add filter type and Kaiser window beta to AVOptions
  lavr: Use AV_SAMPLE_FMT_NONE to auto-select the internal sample format
  lavr: mix: validate internal sample format in ff_audio_mix_init()

Conflicts:
	ffmpeg.c
	ffplay.c
	libavcodec/libx264.c
	libavfilter/audio.c
	libavfilter/split.c
	libavformat/tcp.c
	tests/fate-run.sh

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-09 22:40:12 +02:00
Jordi Ortiz
5427df0186 tcp: add initial timeout limit for incoming connections
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-09 17:30:19 +03:00
Al@dneg.com
c88a832735 movenc: Addtion of \251cmt field to udta
Allows support of comment in udta for libquicktime, also currently \251des is used
 which is ignored by mov.c.
\251cmt IS currently already picked up by mov.c

References

libquicktime
http://libquicktime.cvs.sourceforge.net/viewvc/libquicktime/libquicktime/src/udta.c?view=markup

Also listed here:
http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/QuickTime.html#UserData

Not listed here, but that`s not entirely surprising, as udta fields are expected to be somewhat arbitary.
http://developer.apple.com/library/mac/#documentation/QuickTime/qtff/QTFFChap2/qtff2.html#//apple_ref/doc/uid/TP40000939-CH204-BBCCFFGD

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-09 15:30:59 +02:00
Anton Khirnov
5b7a88f0ba matroskadec: honor error_recognition when encountering unknown elements. 2012-07-09 07:43:11 +02:00
Paul B Mahol
30659a2233 smush: properly flag audio packets
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-07-08 20:49:35 +00:00
Paul B Mahol
26fa84105b paf: properly flag video packets
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-07-08 20:49:04 +00:00
Michael Niedermayer
ca1f2b3e10 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  cmutils: include shellapi.h on Win32 (for CommandLineToArgvW).
  x86/timer: implement an intrinsic-based version for rdtsc (AV_READ_TIME).
  id3v2: add a mimetype for bmp pictures.
  flacdec: be less strict when parsing attached pictures.
  flacdec: don't create an attached picture stream until we have all information.

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-08 22:33:32 +02:00
Michael Niedermayer
d8ce478c43 lavf: limit "Adjusting PTS forward" code to video streams
It can end up slightly messing up a series of valid timestamps
after a invalid one.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-08 22:29:34 +02:00
Stefano Sabatini
3f345290dc lavf/segment: sort options 2012-07-08 17:38:24 +02:00
Stefano Sabatini
8dc31f8da8 lavf/segment: make use of av_parse_time() when parsing the -segment_time value
Increase flexibility/consistency.

Also rename recording_time field to time, for enhanced
consistency/readability.
2012-07-08 17:38:04 +02:00
Stefano Sabatini
7f08bfae6e lavf/segment: add segment_list_type option, extend format for the segment list file
Add list extended format which specifies in the list file the start and
ending time for each segment. This is required to make it available this
information to external tools, avoiding the need to perform file analysis
in the output segments.
2012-07-08 17:08:56 +02:00
Stefano Sabatini
b010d9b586 lavf/nutenc: provide meaningful error message and error code in case of invalid pts 2012-07-08 17:08:56 +02:00
Anton Khirnov
25b51b2c44 id3v2: add a mimetype for bmp pictures. 2012-07-07 20:34:41 +02:00
Anton Khirnov
b7d3a9a015 flacdec: be less strict when parsing attached pictures.
Only return an error if memory allocation fails or error recognition is
set to explode. Otherwise just print an error message and continue
reading the file.
2012-07-07 20:34:20 +02:00
Anton Khirnov
dba5b06ead flacdec: don't create an attached picture stream until we have all information.
This way we don't end with an invalid stream if parsing the picture
fails.
2012-07-07 20:33:44 +02:00
Michael Niedermayer
3245c8b669 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mxfdec: replace x>>av_log2(sizeof(..)) by x/sizeof(..).
  x86: h264_intrapred: Don't add the 'd' suffix to the SPLATB_REG macro

Conflicts:
	libavformat/mxfdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-07 20:29:43 +02:00
Ronald S. Bultje
fdaad6354f mxfdec: replace x>>av_log2(sizeof(..)) by x/sizeof(..).
Also replace x>>av_log2(sizeof(..)) + 1 by x/sizeof(..). The +1 is
probably meant to emulate av_log2_ceil(sizeof(..)) in cases where ".."
is not a power of two.
2012-07-07 10:09:59 -07:00
Michael Niedermayer
46a47077ee Merge remote-tracking branch 'qatar/master'
* qatar/master:
  configure: add functions for testing code fragments
  af_amix: avoid spurious EAGAIN.
  af_amix: return AVERROR(EAGAIN) when request_frame didn't produce output.
  af_amix: only consider negative return codes as errors.
  avconv: use only meaningful timestamps in start time check.
  avconv: fix the check for -ss as an output option.
  mss3: add forgotten 'static' qualifier for private table
  lavc: options: add planar names for request_sample_fmt
  flacdec: add planar output support
  flvdec: Treat all nellymoser versions as the same codec

Conflicts:
	ffmpeg.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-07 02:17:30 +02:00
Lou Logan
b22ecbc6a5 cosmetics: various spelling fixes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-06 17:08:22 +02:00
Michael Niedermayer
24823a761c Merge remote-tracking branch 'qatar/master'
* qatar/master:
  qdm2: remove broken and disabled dump_context() debug function
  x86: h264_intrapred: use newly introduced SPLAT* and PSHUFLW macros
  x86inc: add SPLATB_LOAD, SPLATB_REG, PSHUFLW macros
  x86inc: modify ALIGN to not generate long nops on i586
  x86: h264_intrapred: port to cpuflag macros
  avplay: update input filter pointer when the filtergraph is reset.
  avconv: fix parsing of -force_key_frames option.
  h264: use templates to avoid excessive inlining
  xtea: Make the count parameter match the documentation
  blowfish: Make the count parameter match the documentation
  mpegvideo: Don't use ff_mspel_motion() for vc1
  xtea: invert branch and loop precedence
  blowfish: invert branch and loop precedence
  flvdec: optionally trust the metadata
  avconv: Set audio filter time base to the sample rate
  vp8: Add ifdef guards around the sse2 loopfilter in the sse2slow branch too

Conflicts:
	ffmpeg.c
	ffplay.c
	libavcodec/h264.c
	libavcodec/mpegvideo_common.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-05 21:55:31 +02:00
Martin Storsjö
e43f56b205 flvdec: Treat all nellymoser versions as the same codec
This avoids creating new AVStreams for them when switching between
different variants of them, since we can handle changes between
different sample rates of nellymoser within the same stream.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-05 22:07:45 +03:00
Matthieu Bouron
d99001cab3 mxfenc: support dnxhd codec 2012-07-05 13:34:49 +02:00
Matthieu Bouron
135e684311 mxfenc: support smpte dv codec
After some internal talks it seems the code is similar to what is in FFmbc
by Baptiste Coudurier; Baptiste accepted to relicense the similiar chunks
from GPL to LGPL.
2012-07-05 13:34:43 +02:00
Georg Lippitsch
325fb246f2 FireWire DV/HDV input device using libiec61883
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2012-07-05 13:02:49 +02:00
Alexander Strasser
1fe6cb448a lavf/file: cosmetic: Use "not" instead of "equals zero"
This is more similar to the "overall" FFmpeg coding style.
2012-07-05 10:55:49 +02:00
Alexander Strasser
585bd4922a lavf/file: cosmetic: Remove superfluous ternary operator 2012-07-05 10:55:49 +02:00
Luca Barbato
5b54a90c8b flvdec: optionally trust the metadata
In certain conditions video or audio frames might appear way later in the
stream.
2012-07-05 10:37:34 +02:00
Paul B Mahol
7de4a16508 PAF demuxer and decoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-07-05 02:54:34 +00:00
Carl Eugen Hoyos
73bb4e9ca6 nut: add 12/14 bit yuv to nut/raw
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-05 04:23:55 +02:00
Michael Niedermayer
039e9fe01c Merge remote-tracking branch 'qatar/master'
* qatar/master: (29 commits)
  lavfi: reclassify showfiltfmts as a TESTPROG
  graph2dot: fix printf format specifier
  swscale: yuv2planeX 8bit >=sse2 functions need aligned stack on x86-32.
  vp8: loopfilter >=sse2 functions need aligned stack on x86-32.
  amr: remove shift out of the AMR_BIT() macro.
  dsputilenc: group yasm and inline asm function pointer assignment.
  mov: use forward declaration of a function instead of a table.
  Clarify Doxygen comment for FF_API_* #defines.
  configure: simplify get_version()
  Create version.h headers for libraries that lack them
  gitignore: Use full path instead of relative path to specify patterns
  mpegvideo: remove VLAs
  Add XTEA encryption support in libavutil
  Add Blowfish encryption support in libavutil
  eval: Add the isinf() function and tests for it
  flacdec: move lpc filter to flacdsp
  flacdec: split off channel decorrelation as flacdsp
  avplay: Add an option for not limiting the input buffer size
  FATE: add a test for WMA cover art.
  FATE: add a test for apetag cover art
  ...

Conflicts:
	.gitignore
	configure
	ffplay.c
	libavcodec/Makefile
	libavcodec/error_resilience.c
	libavcodec/mpegvideo.c
	libavcodec/ratecontrol.c
	libavdevice/avdevice.h
	libavfilter/Makefile
	libavfilter/filtfmts.c
	libavfilter/version.h
	libavformat/mov.c
	libavformat/version.h
	libavutil/Makefile
	libavutil/avutil.h
	libavutil/version.h
	libswscale/swscale.h
	libswscale/x86/swscale_mmx.c
	tests/fate/libavutil.mak
	tests/lavfi-regression.sh
	tools/graph2dot.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-04 21:03:28 +02:00
Ronald S. Bultje
1ce1e6360d mov: use forward declaration of a function instead of a table.
MSVC gives a compile error on the tentative definition of
mov_default_parse_table[].
2012-07-04 07:45:30 -07:00
Diego Biurrun
2047e40e6e Clarify Doxygen comment for FF_API_* #defines. 2012-07-04 15:10:10 +02:00
Piotr Bandurski
a54bc1ebb8 riff: add "YUV8" FourCC
sample:

http://samples.mplayerhq.hu/V-codecs/yuv8/MAILTEST.AVI

Reviewed-by: compn <tempn@twmi.rr.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-04 04:17:00 +02:00
Michael Niedermayer
86e107a7d4 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  cosmetics: Consistently use C-style comments with multiple inclusion guards
  anm: fix a few Doxygen comments
  misc typo and wording fixes
  attributes: add av_noreturn
  attributes: drop pointless define guards
  configure: do not disable av_always_inline with --enable-small
  flvdec: initial stream switch support
  avplay: fix write on freed memory for rawvideo
  snow: remove a VLA used for edge emulation
  x86: lavfi: fix gradfun/yadif build with mmx/sse disabled
  snow: remove the runs[] VLA.
  snow: Check mallocs at init
  flacdec: remove redundant setting of avctx->sample_fmt

Conflicts:
	ffplay.c
	libavcodec/h264.c
	libavcodec/snow.c
	libavcodec/snow.h
	libavcodec/snowdec.c
	libavcodec/snowenc.c
	libavformat/flvdec.c
	libavutil/attributes.h
	tools/patcheck

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-04 00:32:31 +02:00
Stefano Sabatini
af392efe51 lavf/segment: rename SegmentContext.pb to list_pb
The new name is more auto-explicative, as the pb is used for the segment
list file.
2012-07-04 00:02:56 +02:00
Stefano Sabatini
d8013f38ab lavf/segment: add error log in case of invalid filename template
Better rather than silently exit.
2012-07-03 23:26:07 +02:00