Commit Graph

10727 Commits

Author SHA1 Message Date
Piotr Bandurski
5d2f89a23c movenc: fix remuxing of svq3 2012-08-05 23:58:10 +02:00
Reimar Döffinger
69aeba1396 oggdec: Initialize stream index to -1 in ogg_packet.
The previous method of having to initialize it outside lead
to incorrect code: even if it was initialized, it usually was
only initialized once, thus a packet that could not be matched
to any stream would just be processed with the return values
from the previous call.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-08-05 19:47:52 +02:00
Reimar Döffinger
a4163b2d65 oggdec: simplify start time calculation code.
Also slightly more correct behaviour in case streams_left for
some reason is 0 from the start.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-08-05 19:47:52 +02:00
Moritz Bunkus
fe40dc1cec matroskaenc: Implement support for ALAC 2012-08-05 18:34:28 +02:00
Michael Niedermayer
c30f53e4d8 matroskadec: prevent potential integer overflow
Iam not sure this can happen, but its safer we check.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-05 17:59:12 +02:00
Moritz Bunkus
bc3b422029 matroskadec: Implement support for ALAC
This patch implements support reading ALAC from Matroska files. The
only non-trivial thing about it is that only the ALAC magic cookie is
stored in Matroska's CodecPrivate element but not the "atom size",
"tag" and "tag version" fields that FFMPEG's ALAC decoder
expects. However, those are trivial to re-create.

Sample files are available:
http://www.bunkus.org/videotools/mkvtoolnix/samples/alac/alac-in-matroska.mka
and the CoreAudio file it was created from with today's mkvmerge:
http://www.bunkus.org/videotools/mkvtoolnix/samples/alac/alac-in-matroska-source.caf

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-05 17:59:12 +02:00
Philip Langdale
3eb56e8434 movenc: Fix unfreed memory found by valgrind.
Signed-off-by: Philip Langdale <philipl@overt.org>
2012-08-05 08:27:49 -07:00
Stefano Sabatini
9bece76009 lavf/img2dec: add start_number_range option 2012-08-05 15:45:48 +02:00
Michael Niedermayer
9e1c55cfde oggdec: check stream index before using it in ogg_get_length()
Fixes crash based on a uninitialized array index read.
If the read does not crash then out of array writes based
on the same index might have been triggered afterwards.

Found-by: inferno@chromium.org
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-05 05:08:15 +02:00
Stefano Sabatini
b0d23ae208 lavf/img2doc: document options 2012-08-05 00:47:48 +02:00
Stefano Sabatini
b5c7318bd7 lavf/img2dec: improve error logging in case of find_image_range() failure 2012-08-05 00:38:17 +02:00
Stefano Sabatini
2dfee8abf1 lavf/img2dec: sort options by name 2012-08-05 00:38:16 +02:00
Stefano Sabatini
48c1d1d3fa lavf/img2dec: introduce and use FIRST_INDEX_SEARCH_RANGE macro in find_image_range 2012-08-05 00:38:16 +02:00
Stefano Sabatini
07ef7b1a30 lavf/img2dec: fix out-of-range check in find_image_range()
Take the new parameter start_index into account.
2012-08-05 00:38:05 +02:00
Stefano Sabatini
59e4e40673 lavf/img2dec: doxygen find_image_range() function 2012-08-05 00:38:05 +02:00
Stefano Sabatini
e408e329d2 lavf/img2dec: rename find_image_range() "max_start" parameter to "start_index"
The new name seems more consistent with the assumed logic.

"start_index" represents the minimum accepted value as first index, and
not the maximum value as implicitely assumed by the previous name.
2012-08-05 00:37:39 +02:00
Stefano Sabatini
a30e776ff1 lavf/img2dec: fix weird start_number count logic
This seems consistent with the assumed meaning of the option.
2012-08-05 00:26:48 +02:00
Philip Langdale
7b24be557f avformat/srtdec: Write duration into packet from srt demuxer.
The current demuxer does not bother to write packet durations,
which makes it impossible to remux into a new format.

Signed-off-by: Philip Langdale <philipl@overt.org>
2012-08-04 12:01:24 -07:00
Philip Langdale
18175ca9b2 movenc: Handle need for extra packets to express subtitle duration.
As packet duration is not stored inherently in MPEG4 containers,
subtitles have their duration expressed by storing an additional
empty packet with a pts matching the desired end time of the real
subtitle. Additionally, it is generally expected that all streams
start at time = 0, so an empty packet needs to be inserted at the
beginning of the stream, before the first real subtitle.

Unfortunately, ffmpeg lacks a proper way to express that a subtitle
might map to multiple packets, so the muxer is the only place we
can handle this.

Signed-off-by: Philip Langdale <philipl@overt.org>
2012-08-04 12:01:24 -07:00
Michael Niedermayer
759901f817 mpegdemux: support MLP/AOB
Fixes issue1731

Based-on-patch-by: carl
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-04 19:37:24 +02:00
Michael Niedermayer
ce7cf600be mpegdemux: move private stream 1 handling out of mpegps_read_pes_header
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-04 19:37:23 +02:00
Michael Niedermayer
afa6afcc9f mpegdemux: remove redundant dvd audio code
This is almost a revert of: (the file from the report still works)

commit 80e58c6153
Author: Benoit Fouet <benoit.fouet@free.fr>
Date:   Wed Feb 11 11:09:36 2009 +0000

    Allow demuxing of audio substreams stored as 0x06 type.
    Fixes issue 725: MPEG2 PS with PCM audio.
    On behalf of Jai.

    Originally committed as revision 17150 to svn://svn.ffmpeg.org/ffmpeg/trunk

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-04 19:37:21 +02:00
Michael Niedermayer
3e1cf49676 compute_pkt_fields: do not attempt to calculate dts when the delay hasnt been estimated.
Fixes ticket1242

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-04 15:42:44 +02:00
Michael Niedermayer
2107009e7d lavf: move nb_decoded_frames out of info.
This way the variable is available outside find_stream_info

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-04 15:42:44 +02:00
Michael Niedermayer
b288b4c63f has_decode_delay_been_guessed: adjust value for has_b_frames=0
needed for a mkv file

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-04 15:42:44 +02:00
Michael Niedermayer
c91ca5b95d lavf: move has_decode_delay_been_guessed() up to make it accessible to earlier functions
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-04 15:42:44 +02:00
Michael Niedermayer
668c873bed matroskadec: check element size against stream limit in ebml_parse_elem()
Fixes Ticket1195

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-04 02:27:51 +02:00
Paul B Mahol
d84dd35f8e paf: fix audio packet duration
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-08-03 15:18:12 +00:00
Michael Niedermayer
231ffb9243 flvdec: follow packets backward until a valid last timestamp is found
Fixed Ticket981

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-03 14:50:26 +02:00
Michael Niedermayer
71a5cd7dbc flvdec: perform duration search just once
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-03 14:50:26 +02:00
Clément Bœsch
bc42682749 lavf/movenc: fix invalid free with timecode meta and tmcd data copy.
Fixes ticket 1577.
2012-08-03 14:15:39 +02:00
Michael Niedermayer
31d8261cde mpegprobe: fix misdetection of mp3
Fixes tikcet1524

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-03 02:49:50 +02:00
Michael Niedermayer
9c6e23f5d2 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  x86: fft: fix imdct_half() for AVX
  rtmppkt: Add missing libavcodec/bytestream.h include.
  rtmp: add functions for reading AMF values
  vc1dec: remove useless #include simple_idct.h
  dct-test: always link with aandcttab.o
  vp8: pack struct VP8ThreadData more efficiently
  x86: remove libmpeg2 mmx(ext) idct functions
  eamad: Use dsputils instead of a custom bswap16_buf
  Canopus Lossless decoder

Conflicts:
	Changelog
	LICENSE
	libavcodec/avcodec.h
	libavcodec/cllc.c
	libavcodec/eamad.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-02 23:34:01 +02:00
Alex Rønne Petersen
150adea6da rtmppkt: Add missing libavcodec/bytestream.h include.
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-02 13:32:02 -04:00
Kifayat ullah
32aeba1275 mpegtsenc: Fix AC3 Sound issue with Blu-ray Players.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-02 16:55:17 +02:00
Nicolas George
93d428953c assdec: return EOF instead of EIO. 2012-08-02 14:39:45 +02:00
Jordi Ortiz
50468f93e3 rtmp: add functions for reading AMF values
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-08-02 14:06:44 +02:00
Michael Niedermayer
96cb143800 Merge remote-tracking branch 'dwbuiten/master'
* dwbuiten/master:
  Canopus Lossless decoder

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-02 04:48:47 +02:00
Derek Buitenhuis
45eaac02cb Canopus Lossless decoder
At the moment it only does BGR24, but I plan to add the rest after.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-01 22:06:16 -04:00
Derek Buitenhuis
91c86d3cf8 Canopus Lossless decoder
At the moment it only does BGR24, but I plan to add the rest after.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-01 22:02:19 -04:00
Michael Niedermayer
ec7ecb8811 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  dca: Switch dca_sample_rates to avpriv_ prefix; it is used across libs
  ARM: use =const syntax instead of explicit literal pools
  ARM: use standard syntax for all LDRD/STRD instructions
  fft: port FFT/IMDCT 3dnow functions to yasm, and disable on x86-64.
  dct-test: allow to compile without HAVE_INLINE_ASM.
  x86/dsputilenc: bury inline asm under HAVE_INLINE_ASM.
  dca: Move tables used outside of dcadec.c to a separate file.
  dca: Rename dca.c ---> dcadec.c
  x86: h264dsp: Remove unused variable ff_pb_3_1
  apetag: change a forgotten return to return 0

Conflicts:
	libavcodec/Makefile
	libavcodec/dca.c
	libavcodec/x86/fft_3dn.c
	libavcodec/x86/fft_3dn2.c
	libavcodec/x86/fft_mmx.asm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-01 23:33:06 +02:00
Nicolas George
ff2955a4f7 apetag: return value when required.
Should fix compilation on clang.
2012-08-01 13:33:51 +02:00
Diego Biurrun
19cf7163c1 dca: Switch dca_sample_rates to avpriv_ prefix; it is used across libs 2012-08-01 11:43:31 +02:00
Carl Eugen Hoyos
d1ebb25ac6 Skip chan tag padding.
Fixes ticket #1580
2012-08-01 08:33:18 +02:00
Paul B Mahol
c36bad3b89 xvma: remove unused variable
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-08-01 03:15:32 +00:00
Diego Biurrun
9e4bca16f8 dca: Move tables used outside of dcadec.c to a separate file. 2012-08-01 00:17:17 +02:00
Michael Niedermayer
d1dad7c824 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mpc8: return more meaningful error codes.
  mpc: return more meaningful error codes.
  wv,mpc8: don't return apetag data in packets.
  rtmp: do not warn about receiving metadata packets
  x86: h264dsp: Adjust YASM #ifdefs
  x86: yadif: Mark mmxext optimizations as such
  h264: convert loop filter strength dsp function to yasm.
  Improve descriptiveness of a number of codec and container long names

Conflicts:
	libavcodec/flvdec.c
	libavcodec/libopenjpegdec.c
	libavformat/apetag.c
	libavformat/mp3dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-31 22:41:00 +02:00
Anton Khirnov
921063877e apetag: change a forgotten return to return 0 2012-07-31 21:32:25 +02:00
Anton Khirnov
f2ed006c90 mpc8: return more meaningful error codes. 2012-07-31 20:54:22 +02:00
Anton Khirnov
263dbe9d95 mpc: return more meaningful error codes. 2012-07-31 20:54:17 +02:00