Commit Graph

10317 Commits

Author SHA1 Message Date
Michael Niedermayer
eaf655384b avienc: use av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-17 17:10:05 +02:00
Ronald S. Bultje
17fad33f81 Change all uses of restrict to use av_restrict instead.
Defining restrict results - for some compilers - in changing other
uses of the restrict keyword also, e.g. __declspec(restrict) gets
changed to __declspec(__restrict) on MSVC. This causes compilation
failures. Therefore, using a private namespace macro instead is
more reliable and robust.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-17 00:38:39 +02:00
Michael Niedermayer
5c14b282d1 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  flacdec: read attached pictures.
  lavf: don't segfault when a NULL filename is passed to avformat_open_input()

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-16 23:22:42 +02:00
Michael Niedermayer
0354412aa3 ffmenc: use av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-16 17:59:01 +02:00
Anton Khirnov
ae702edf43 flacdec: read attached pictures. 2012-06-16 17:10:23 +02:00
Anton Khirnov
a5db8e4a1a lavf: don't segfault when a NULL filename is passed to avformat_open_input()
This can easily happen when the caller is using a custom AVIOContext.

Behave as if the filename was an empty string in this case.

CC: libav-stable@libav.org
2012-06-16 17:09:33 +02:00
Michael Niedermayer
90d8506fbf Merge remote-tracking branch 'qatar/master'
* qatar/master:
  af_resample: fix format modifier in debug string for FF_API_SAMPLERATE64
  segment: remove unnecessary <strings.h> include
  fate: add snow hpel tests

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-15 20:56:06 +02:00
Janne Grunau
1cdcf043ca segment: remove unnecessary <strings.h> include 2012-06-15 19:10:58 +02:00
Michael Niedermayer
dd2086140c nutenc: use av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-15 19:44:42 +02:00
Michael Niedermayer
17bbb818ae amr: use av_assert()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-15 19:44:42 +02:00
Michael Niedermayer
47f8303069 lavf/aviobuf: use av_assert()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-15 19:44:42 +02:00
Michael Bradshaw
67703d64d7 lavf: cosmetic: format else with indentation
Signed-off-by: Michael Bradshaw <mbradshaw@sorensonmedia.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-15 19:44:42 +02:00
Clément Bœsch
608bda925a lavf/{srt,microdvd}: correctly raise error on avformat_new_stream() error. 2012-06-15 18:40:14 +02:00
Martin Sliwka
9b6f2c7483 file: Fix handling of windows named pipes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-15 15:05:33 +02:00
Michael Niedermayer
11153a9371 avio: Collect and print statistics of bytes read & seeks
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-15 11:24:16 +02:00
Michael Niedermayer
59c122b3b0 matroskadec: add assert on lack of overflow in pkt_size+offset
currently a overflow there should be impossible but future changes to
the code could easily introduce a bug that no longer limits the 2
values sufficiently so better protect it via av_assert.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-15 01:35:52 +02:00
Michael Niedermayer
4b7c52346a matroskadec: change size check in matroska_decode_buffer() to unsigned
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-15 01:29:30 +02:00
Michael Niedermayer
08169fc3d2 matroskadec: move lace_size check up so it catches all code pathes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-15 01:28:40 +02:00
Michael Niedermayer
88a740afde matroskadec: change assert to av_assert0()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-15 01:27:56 +02:00
Dale Curtis
71529bd8c5 Fix incorrect unsigned->signed conversion.
Signed-off-by: Dale Curtis <dalecurtis@chromium.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-15 01:17:13 +02:00
Michael Niedermayer
15f8941108 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Avoid C99 variable declarations within for statements.
  rtmp: Read and handle incoming packets while writing data
  doc: document THREAD_TYPE fate variable
  rtpdec: Don't require frames to start with a Mode A packet
  avconv: don't try to free threads that were not initialized.

Conflicts:
	doc/fate.texi
	ffplay.c
	libavdevice/dv1394.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-15 00:14:21 +02:00
Michael Niedermayer
01a14ce042 riff: use av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-14 23:52:56 +02:00
Michael Niedermayer
9d87c8e6f8 rawdec: use av_assert()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-14 23:52:40 +02:00
Michael Niedermayer
948e97a2cc pcmdec: use av_assert()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-14 23:52:23 +02:00
Samuel Pitoiset
7dc747f50b rtmp: Read and handle incoming packets while writing data
This makes sure all incoming packets are read and handled (and reacted
to) while sending an FLV stream over RTMP to a server. If there were
enough incoming data to fill the TCP buffers, this could potentially
make things block at unexpected places. For the upcoming RTMPT support,
we need to consume all incoming data before we can send the next
request.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-14 22:22:58 +03:00
Martin Storsjö
d1beee0701 rtpdec: Don't require frames to start with a Mode A packet
While there is no reason for starting a frame with anything else
than a Mode A packet, some senders seem to consistently use Mode B
packets for everything. This fixes depacketization of such streams.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-14 22:11:43 +03:00
Martin T. H. Sandsmark
a5c1a0c070 asfdec: fix returned error codes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-14 02:45:11 +02:00
Michael Niedermayer
c7b9eab2be Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rtmp: Add a new option 'rtmp_buffer', for setting the client buffer time
  rtmp: Set the client buffer time to 3s instead of 0.26s
  rtmp: Handle server bandwidth packets
  rtmp: Display a verbose message when an unknown packet type is received
  lavfi/audio: use av_samples_copy() instead of custom code.
  configure: add all filters hardcoded into avconv to avconv_deps
  avfiltergraph: remove a redundant call to avfilter_get_by_name().
  lavfi: allow building without swscale.
  build: Do not delete tests/vsynth2 directory, which is no longer created.
  lavfi: replace AVFilterContext.input/output_count with nb_inputs/outputs
  lavfi: make AVFilterPad opaque after two major bumps.
  lavfi: add avfilter_pad_get_type() and avfilter_pad_get_name().
  lavfi: make avfilter_get_video_buffer() private on next bump.
  jack: update to new latency range API as the old one has been deprecated
  rtmp: Tokenize the AMF connection parameters manually instead of using strtok_r
  ppc: Rename H.264 optimization template file for consistency.
  lavfi: add channelsplit audio filter.
  golomb: check remaining bits during unary decoding in get_ur_golomb_jpegls()
  sws: fix planar RGB input conversions for 9/10/16 bpp.

Conflicts:
	Changelog
	configure
	doc/APIchanges
	ffmpeg.c
	libavcodec/golomb.h
	libavcodec/v210dec.h
	libavfilter/Makefile
	libavfilter/allfilters.c
	libavfilter/asrc_anullsrc.c
	libavfilter/audio.c
	libavfilter/avfilter.c
	libavfilter/avfilter.h
	libavfilter/avfiltergraph.c
	libavfilter/buffersrc.c
	libavfilter/formats.c
	libavfilter/version.h
	libavfilter/vf_frei0r.c
	libavfilter/vf_pad.c
	libavfilter/vf_scale.c
	libavfilter/video.h
	libavfilter/vsrc_color.c
	libavformat/rtmpproto.c
	libswscale/input.c
	tests/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-13 22:43:57 +02:00
Michael Niedermayer
4a6d790a6f nutenc: use av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-13 18:54:17 +02:00
Michael Niedermayer
53eaca5d6b mpegtsenc: use av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-13 18:51:38 +02:00
Samuel Pitoiset
8517e9c476 rtmp: Add a new option 'rtmp_buffer', for setting the client buffer time
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-13 17:04:39 +03:00
Samuel Pitoiset
9477c035a7 rtmp: Set the client buffer time to 3s instead of 0.26s
This factorizes existing code into a new function gen_buffer_time(),
which generates the client buffer time message and sends it to the
server.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-13 16:53:32 +03:00
Samuel Pitoiset
c2d38beab2 rtmp: Handle server bandwidth packets
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-13 16:52:52 +03:00
Samuel Pitoiset
9ff930aace rtmp: Display a verbose message when an unknown packet type is received
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-13 16:52:31 +03:00
Martin Storsjö
0533868642 rtmp: Tokenize the AMF connection parameters manually instead of using strtok_r
This fixes builds on platforms without strtok_r (windows).

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-13 11:36:47 +03:00
Samuel Pitoiset
0a9a225733 rtmp: Fix a possible access to invalid memory location when the playpath is too short.
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-12 14:33:57 +03:00
Michael Niedermayer
dc1c79be1b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avfilter: Log an error if avfilter fails to configure a link.
  avconv: support only native pthreads.
  rtmp: Fix a possible access to invalid memory location when the playpath is too short.

Conflicts:
	ffmpeg.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-12 20:44:57 +02:00
Michael Niedermayer
2a622c2369 lavf: add a "warning" when discarding a oddly backward subtitle or data starttime
Idea-by: ohsix
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-12 19:28:08 +02:00
Michael Niedermayer
47695b1d65 lavf: handle data like subtitles in start time calculation.
This fixes an issue with a crazy data track starting with a large
negative timestamp.

It could as well be solved in all user apps, but this is looking
attractively simpler ...

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-12 19:19:00 +02:00
Michael Niedermayer
f91b635b52 rtmpproto: replace strtok_r by av_strtok its unavailable in mingw
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-11 23:04:24 +02:00
Michael Niedermayer
94d5650266 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rtmp: Do not send extension for flv files
  rtmp: support connection parameters
  doc: Add documentation for the newly added rtmp_* options

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-11 21:55:32 +02:00
Michael Niedermayer
d9a9518fba flvenc: use av_assert instead of assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-11 20:14:22 +02:00
Samuel Pitoiset
f862537de8 rtmp: Do not send extension for flv files
This fixes bugzilla bug #304.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-11 13:48:39 +03:00
Samuel Pitoiset
8ee3e1874e rtmp: support connection parameters
Allow using connection parameters in order to append arbitrary
AMF data like "B:1 S:authMe O:1 NN:code:1.23 NS:flag:ok O:0" to the
Connect message. You can pass these parameters through the -rtmp_conn
option.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-11 13:46:50 +03:00
Clément Bœsch
20e46aafbd mov: export orphan tmcd track metadata to global format metadata. 2012-06-11 07:40:58 +02:00
Clément Bœsch
1ec23d9c02 mov: copy timecode metadata from tmcd track to the related video stream.
Apple softwares seem not to add a tref for the timecode (the next commit
fixes this issue), but at least FFmpeg does.

This can be used to generate a sample that demonstrates the feature:

    ./ffmpeg -f lavfi -i testsrc    \
             -f lavfi -i mptestsrc  \
             -f lavfi -i rgbtestsrc \
             -map 0 -map 1 -map 2   \
             -metadata:s:0 timecode=00:00:00:12 \
             -metadata:s:2 timecode=01:02:12:20 \
             -t 10 -y out.mov
    ./ffprobe out.mov

The timecode metadata being transmitted to the video streams, it can be
kept while transmuxed/transcoded.
2012-06-11 07:40:26 +02:00
Clément Bœsch
0d96ec19eb mov: parse tref atom. 2012-06-11 07:35:14 +02:00
Clément Bœsch
9fb2e234d0 movenc: add timecode track support. 2012-06-11 07:35:14 +02:00
Clément Bœsch
9846a9c701 riff: add ISMP/timecode tag. 2012-06-11 07:28:26 +02:00
Michael Niedermayer
91bdced363 mpegtsenc: prevent pcr_packet_period==0
a period of 1 is the smallest that makes sense

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-10 16:50:06 +02:00