platform/upstream/libav.git
13 years agoUse avformat_free_context for cleaning up muxers
Martin Storsjö [Fri, 4 Feb 2011 10:04:18 +0000 (12:04 +0200)]
Use avformat_free_context for cleaning up muxers

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoAdd an APIchanges entry for avformat_free_context
Martin Storsjö [Fri, 4 Feb 2011 10:04:17 +0000 (12:04 +0200)]
Add an APIchanges entry for avformat_free_context

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agolibavformat: Add a function for freeing an AVFormatContext
Martin Storsjö [Fri, 4 Feb 2011 10:04:16 +0000 (12:04 +0200)]
libavformat: Add a function for freeing an AVFormatContext

This function is useful for freeing data structures allocated by
muxers, which currently have to be freed manually by the caller.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agolibavformat: Use avcodec_copy_context for chained muxers
Martin Storsjö [Fri, 4 Feb 2011 10:04:15 +0000 (12:04 +0200)]
libavformat: Use avcodec_copy_context for chained muxers

This avoids having the chained AVStream->codec point to the same
AVCodecContext owned by the outer AVStream. The downside is that
changes to the AVCodecContext made after calling av_write_header
cannot be detected automatically within the chained muxer.

This avoids having to manually unlink the chained AVStream->codec
by setting it to null before freeing the chained muxer via generic
freeing functions.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoVP8: slightly faster loopfilter sharpness logic
Jason Garrett-Glaser [Fri, 4 Feb 2011 07:37:30 +0000 (23:37 -0800)]
VP8: slightly faster loopfilter sharpness logic

13 years agoVP8: faster deblock strength calculation
Jason Garrett-Glaser [Fri, 4 Feb 2011 06:48:53 +0000 (22:48 -0800)]
VP8: faster deblock strength calculation

Convert hev_thresh logic to a LUT, simplify mbedge_lim calculation.

13 years agoRemove forgotten if (p) av_free(p) forms
Clément Bœsch [Thu, 3 Feb 2011 10:31:41 +0000 (11:31 +0100)]
Remove forgotten if (p) av_free(p) forms

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoRemove a few if (p) av_freep(&p) forms
Clément Bœsch [Thu, 3 Feb 2011 10:30:17 +0000 (11:30 +0100)]
Remove a few if (p) av_freep(&p) forms

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoVP8: faster filter_level clip
Jason Garrett-Glaser [Fri, 4 Feb 2011 03:44:32 +0000 (19:44 -0800)]
VP8: faster filter_level clip

13 years agoVP8: simplify lf_delta mb mode logic
Jason Garrett-Glaser [Fri, 4 Feb 2011 03:17:13 +0000 (19:17 -0800)]
VP8: simplify lf_delta mb mode logic

13 years agoMake avfilter_graph_free() free the graph.
Stefano Sabatini [Tue, 1 Feb 2011 19:02:17 +0000 (20:02 +0100)]
Make avfilter_graph_free() free the graph.

Make avfilter_graph_free() free not only the internal structures, but
also the allocated graph, and set the graph pointer to NULL for
increased safety.

Simplify usage.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoMake avfilter_graph_parse() not free the input graph
Stefano Sabatini [Tue, 1 Feb 2011 20:52:07 +0000 (21:52 +0100)]
Make avfilter_graph_parse() not free the input graph

Make avfilter_graph_parse() only release the internal structures
allocated during the parsing, and leave to free the graph itself to
the calling code.

This approach looks cleaner, as the graph is not allocated by the
function.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoadd ff_index_search_timestamp and ff_add_index_entry
Peter Ross [Sat, 22 Jan 2011 09:03:22 +0000 (20:03 +1100)]
add ff_index_search_timestamp and ff_add_index_entry

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoTCP: factor the poll() call
Nicolas George [Wed, 2 Feb 2011 17:45:44 +0000 (18:45 +0100)]
TCP: factor the poll() call

Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agowtv: filesystem implementation
Peter Ross [Sun, 23 Jan 2011 01:58:59 +0000 (12:58 +1100)]
wtv: filesystem implementation

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agotty.c: rename PKT_FLAG_KEY to AV_PKT_FLAG_KEY.
Anton Khirnov [Thu, 3 Feb 2011 13:34:02 +0000 (13:34 +0000)]
tty.c: rename PKT_FLAG_KEY to AV_PKT_FLAG_KEY.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoRename remaining occurrences of SAMPLE_FMT_* to AV_SAMPLE_FMT_*
Anton Khirnov [Thu, 3 Feb 2011 13:34:01 +0000 (13:34 +0000)]
Rename remaining occurrences of SAMPLE_FMT_* to AV_SAMPLE_FMT_*

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoReplace remaining occurrences of CODEC_TYPE_* with AVMEDIA_TYPE*
Anton Khirnov [Thu, 3 Feb 2011 13:34:00 +0000 (13:34 +0000)]
Replace remaining occurrences of CODEC_TYPE_* with AVMEDIA_TYPE*

Tested to compile with lavc major bump.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agosapenc: Free AVStream->info on cleanup
Martin Storsjö [Thu, 3 Feb 2011 12:10:12 +0000 (12:10 +0000)]
sapenc: Free AVStream->info on cleanup

This fixes yet another memory leak, present since SVN rev 25418.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agortmpproto: rename URLContext* argument in rtmp_write()
Anton Khirnov [Thu, 3 Feb 2011 11:17:35 +0000 (11:17 +0000)]
rtmpproto: rename URLContext* argument in rtmp_write()

Now the first argument is URLContext *h. However, the function logs to
LOG_CONTEXT, which is #defined as 's' for new lavf major versions.

Therefore, rename h -> s.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoAdd ProRes FOURCCs to isom.c
Tomas Härdin [Thu, 3 Feb 2011 09:50:50 +0000 (10:50 +0100)]
Add ProRes FOURCCs to isom.c

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoAdd APIchanges entry for lavc 52.109.0
Tomas Härdin [Thu, 3 Feb 2011 11:00:02 +0000 (12:00 +0100)]
Add APIchanges entry for lavc 52.109.0

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoAdd CODEC_ID_PRORES and bump lavc minor version
Tomas Härdin [Thu, 3 Feb 2011 09:47:48 +0000 (10:47 +0100)]
Add CODEC_ID_PRORES and bump lavc minor version

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoAdd AVC-Intra identifiers used by Flip4Mac for mov files
Benjamin Larsson [Wed, 2 Feb 2011 13:03:46 +0000 (14:03 +0100)]
Add AVC-Intra identifiers used by Flip4Mac for mov files

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoRemove a few if (p) av_free(p) forms
Clément Bœsch [Thu, 3 Feb 2011 01:09:36 +0000 (02:09 +0100)]
Remove a few if (p) av_free(p) forms

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoAvoid pointless check before calling free
Clément Bœsch [Thu, 3 Feb 2011 00:40:35 +0000 (01:40 +0100)]
Avoid pointless check before calling free

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoSet pkt_pts in avcodec_default_reget_buffer()
Nicolas George [Wed, 2 Feb 2011 20:54:14 +0000 (21:54 +0100)]
Set pkt_pts in avcodec_default_reget_buffer()

This was missed when pkt_pts was first added.

Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoFree AVStream->info in chained muxers
Martin Storsjö [Wed, 2 Feb 2011 08:57:26 +0000 (10:57 +0200)]
Free AVStream->info in chained muxers

This fixes memory leaks in the RTSP muxer and RTP hinting in the
mov muxer present since SVN rev 25418.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
13 years agortsp: Don't store RTSPStream in AVStream->priv_data
Martin Storsjö [Wed, 2 Feb 2011 09:08:01 +0000 (11:08 +0200)]
rtsp: Don't store RTSPStream in AVStream->priv_data

For mpegts in RTP, there isn't a direct mapping between RTSPStreams
and AVStreams, and the RTSPStream isn't ever stored in
AVStream->priv_data, which was earlier leaked. The fix for this
leak, in ea7f080749d68a431226ce196014da38761a0d82, lead to
double frees for other, normal RTP streams.

This patch avoids storing RTSPStreams in AVStream->priv_data, thus
avoiding the double free. The RTSPStreams are always available via
RTSPState->rtsp_streams anyway.

Tested with MS-RTSP, RealRTSP, DSS and mpegts/RTP.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
13 years agoffmpeg.c: rename map_meta_data option to map_metadata
Anton Khirnov [Wed, 2 Feb 2011 20:45:16 +0000 (21:45 +0100)]
ffmpeg.c: rename map_meta_data option to map_metadata

It's consistent with the -metadata option and easier to write.

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
13 years agoAdd forgotten minor API bumps and APIChanges entries
Anton Khirnov [Wed, 2 Feb 2011 14:51:27 +0000 (15:51 +0100)]
Add forgotten minor API bumps and APIChanges entries

The bumps are for adding version.h and avio_{get/put}_str functions in
lavf and making av_dlog public in lavu.

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
13 years agoac3enc: Change EXP_DIFF_THRESHOLD to 500.
Justin Ruggles [Wed, 2 Feb 2011 18:23:59 +0000 (18:23 +0000)]
ac3enc: Change EXP_DIFF_THRESHOLD to 500.

This patch changes the exponent difference threshold in the exponent
strategy decision function of the AC-3 encoder.  I tested lowering in
increments of 100.  From 1000 down to 500 generally increased in quality
with each step, but 400 was generally much worse.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoLog debug information in filter_samples().
Stefano Sabatini [Tue, 1 Feb 2011 15:48:37 +0000 (15:48 +0000)]
Log debug information in filter_samples().

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoffplay: factorize code from video_thread() into configure_video_filters()
Stefano Sabatini [Tue, 1 Feb 2011 18:28:09 +0000 (18:28 +0000)]
ffplay: factorize code from video_thread() into configure_video_filters()

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoARM: add helper macro for declaring constant data
Mans Rullgard [Wed, 26 Jan 2011 22:26:51 +0000 (22:26 +0000)]
ARM: add helper macro for declaring constant data

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoSeparate format conversion DSP functions from DSPContext.
Justin Ruggles [Sun, 30 Jan 2011 15:06:46 +0000 (15:06 +0000)]
Separate format conversion DSP functions from DSPContext.

This will be beneficial for use with the audio conversion API without
requiring it to depend on all of dsputil.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoFix ff_imdct_calc_sse() on gcc-4.6
Alex Converse [Sun, 30 Jan 2011 09:04:41 +0000 (01:04 -0800)]
Fix ff_imdct_calc_sse() on gcc-4.6

Gcc 4.6 only preserves the first value when using an array with an "m"
constraint.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoFree the RTSPStreams in ff_rtsp_close_streams
Luca Barbato [Tue, 1 Feb 2011 19:09:24 +0000 (20:09 +0100)]
Free the RTSPStreams in ff_rtsp_close_streams

This plugs a small memory leak

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
13 years agoh264: add profile names for the existing defines
Anssi Hannula [Fri, 21 Jan 2011 22:58:52 +0000 (00:58 +0200)]
h264: add profile names for the existing defines

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
13 years agoh264: Add Intra and Constrained Baseline profiles to avctx.profile
Janne Grunau [Fri, 28 Jan 2011 21:15:47 +0000 (22:15 +0100)]
h264: Add Intra and Constrained Baseline profiles to avctx.profile

13 years agodca: avoid C99 declaration in for() expression
Gianluigi Tiesi [Tue, 1 Feb 2011 04:12:26 +0000 (04:12 +0000)]
dca: avoid C99 declaration in for() expression

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoMakefile: remove unused variable ALLHTMLPAGES
Mans Rullgard [Tue, 1 Feb 2011 02:24:20 +0000 (02:24 +0000)]
Makefile: remove unused variable ALLHTMLPAGES

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoMakefile: build docs only for enabled tools; fix docs dependencies
Mans Rullgard [Tue, 1 Feb 2011 02:23:30 +0000 (02:23 +0000)]
Makefile: build docs only for enabled tools; fix docs dependencies

This makes "make documentation" build the man/html pages only for
the tools enabled in the build.  It also fixes the dependency
tracking for the built man pages.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoVP8: merge chroma MC calls
Jason Garrett-Glaser [Tue, 1 Feb 2011 03:04:29 +0000 (19:04 -0800)]
VP8: merge chroma MC calls

Adds some duplicated code, but avoids duplicate edge checks and similar.
~0.5% faster overall on Parkjoy test sample.

13 years agoImplement a SIMD version of emulated_edge_mc() for x86.
Ronald S. Bultje [Tue, 1 Feb 2011 01:55:56 +0000 (20:55 -0500)]
Implement a SIMD version of emulated_edge_mc() for x86.

From ~550 cycles (C version) to 170 (SSE/x86-64), 206 (MMX/x86-32)
and 196 (SSE2/x86-32) cycles.

13 years agoAuto-generate dependencies for documentation
Mans Rullgard [Mon, 31 Jan 2011 22:51:23 +0000 (22:51 +0000)]
Auto-generate dependencies for documentation

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agocosmetics: indentation
Justin Ruggles [Mon, 31 Jan 2011 19:26:03 +0000 (19:26 +0000)]
cosmetics: indentation

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoRemove unneeded add bias from 3 functions.
Justin Ruggles [Mon, 31 Jan 2011 19:26:02 +0000 (19:26 +0000)]
Remove unneeded add bias from 3 functions.

DSPContext.vector_fmul_window()
DCADSPContext.lfe_fir()
SynthFilterContext.synth_filter_float()

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoOgg: discard non-essential metadata from Vorbis header when creating extradata
Reimar Döffinger [Mon, 31 Jan 2011 19:16:38 +0000 (19:16 +0000)]
Ogg: discard non-essential metadata from Vorbis header when creating extradata

The first part of the metadata, the "vendor" string, is required by
libvorbis, it will refuse to play when it is not available.
Also we do not currently parse that part into metadata so it would also
be lost if we removed it as well.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agompegtsenc: fix PMT PID calculation
Mans Rullgard [Mon, 31 Jan 2011 16:49:10 +0000 (16:49 +0000)]
mpegtsenc: fix PMT PID calculation

445996aa51f4f1d9a26456a8511988291a720ba0 caused the PMT PID to be
off by one.  This corrects it.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoRename attribute_used to av_used and move it to attributes.h
Mans Rullgard [Mon, 31 Jan 2011 02:19:30 +0000 (02:19 +0000)]
Rename attribute_used to av_used and move it to attributes.h

This is consistent with most of the other attribute macros.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoReplace defines in libavformat/mpegtsenc.c with AVOptions
Georgi Chorbadzhiyski [Mon, 31 Jan 2011 11:19:51 +0000 (13:19 +0200)]
Replace defines in libavformat/mpegtsenc.c with AVOptions

Around 01/28/11 18:56, Ronald S. Bultje scribbled:
> That patch is now merged, can you submit the update to muxers.texi?
> Then we'll apply the whole thing.

See attached. I hope the documentation is enough.

--
Georgi Chorbadzhiyski
http://georgi.unixsol.org/

From c236024b8254f5c2c45934c30fff390cb0e55a5e Mon Sep 17 00:00:00 2001
From: Georgi Chorbadzhiyski <gf@unixsol.org>
Date: Tue, 25 Jan 2011 13:09:17 +0200
Subject: [PATCH] mpegts: Replace defines in with AVOptions

This patch adds support for setting transport_stream_id,
original_network_id, service_id, pmt_start_pid and start_pid
in mpegts muxer.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoAdd documentation for the image2 muxer.
Stefano Sabatini [Wed, 26 Jan 2011 21:53:00 +0000 (22:53 +0100)]
Add documentation for the image2 muxer.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoVC1testenc: convert pts values to correct time-base.
Reimar Döffinger [Sat, 29 Jan 2011 12:44:34 +0000 (13:44 +0100)]
VC1testenc: convert pts values to correct time-base.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoasf/wtv: use service_provider and service_name metadata tags
Ronald S. Bultje [Mon, 31 Jan 2011 13:58:14 +0000 (08:58 -0500)]
asf/wtv: use service_provider and service_name metadata tags

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoMake ffmpeg warns the user when the selected sample format is ignored.
Stefano Sabatini [Fri, 14 Jan 2011 14:50:55 +0000 (15:50 +0100)]
Make ffmpeg warns the user when the selected sample format is ignored.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoSlightly simplify VP8 inter_predict
Jason Garrett-Glaser [Sun, 30 Jan 2011 05:09:33 +0000 (21:09 -0800)]
Slightly simplify VP8 inter_predict

Merge an if and a switch.

13 years agoIn ffplay:get_video_frame(), use frame->pkt_pts rather than reordered_opaque.
Stefano Sabatini [Sun, 16 Jan 2011 17:39:34 +0000 (18:39 +0100)]
In ffplay:get_video_frame(), use frame->pkt_pts rather than reordered_opaque.

AVCodecContext.reordered_opaque is deprecated for this specific use.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoffplay: in video_thread(), use av_dlog() for timestamp logging.
Stefano Sabatini [Sat, 22 Jan 2011 14:35:00 +0000 (15:35 +0100)]
ffplay: in video_thread(), use av_dlog() for timestamp logging.

Disable logging of rescaled timestamps if DEBUG is not enabled.
Avoid debug log spamming with -loglevel debug.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agompegts: remove get_pts duplicate of ff_parse_pes_pts.
Vasyl' Vavrychuk [Sun, 30 Jan 2011 15:24:00 +0000 (15:24 +0000)]
mpegts: remove get_pts duplicate of ff_parse_pes_pts.

Signed-off-by: Vasyl' Vavrychuk <vvavrychuk@gmail.com>
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoEnable native build on QNX/x86
Mans Rullgard [Sun, 30 Jan 2011 01:05:39 +0000 (01:05 +0000)]
Enable native build on QNX/x86

13 years agoReplace dprintf with av_dlog
Luca Barbato [Sat, 29 Jan 2011 16:46:18 +0000 (17:46 +0100)]
Replace dprintf with av_dlog

dprintf clashes with POSIX.1-2008

13 years agoFlush final frames in libfaac encoder.
Justin Ruggles [Sat, 29 Jan 2011 18:45:32 +0000 (18:45 +0000)]
Flush final frames in libfaac encoder.

Gives decoded output identical in length to faac commandline encoder.
Fixes Issue 670.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoFix memory leak in ALS decoder in big endian systems
Vitor Sessak [Sat, 29 Jan 2011 14:39:09 +0000 (15:39 +0100)]
Fix memory leak in ALS decoder in big endian systems

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoRearrange MpegEncContext to simplify access from asm
Mans Rullgard [Sat, 29 Jan 2011 17:14:29 +0000 (17:14 +0000)]
Rearrange MpegEncContext to simplify access from asm

This moves the fields needed by asm near the top, before any
structs or other members which complicate the offset calculation.
Modifying other structs will no longer require updating the offsets,
and the asm code is slightly simpler due to the smaller offsets.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agodoc: modify style for texi2html 1.78+
Janne Grunau [Sat, 29 Jan 2011 12:24:13 +0000 (13:24 +0100)]
doc: modify style for texi2html 1.78+

The generated HTML files are similar to the ones generated with
texi2html 1.56k used on the website.

Tested with texi2html 1.78 and 5.0. 1.78 is the minimal recommended
version.

The removed @sp from the titlepage section were ignored until
texi2html 5.0. If not removed the pages generated by 5.0 will have ugly
empty space around the title.

13 years agoFix overread in altivec DSP function sad16
Vitor Sessak [Sat, 29 Jan 2011 14:14:32 +0000 (14:14 +0000)]
Fix overread in altivec DSP function sad16

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoVorbis-in-Ogg: Do not set timebase to invalid values
Reimar Döffinger [Fri, 28 Jan 2011 23:52:50 +0000 (23:52 +0000)]
Vorbis-in-Ogg: Do not set timebase to invalid values

Avoids an assert when the sample rate is invalid and the timebase
is thus set to e.g. 1/0.
Sample file is http://samples.mplayerhq.hu/ogg/fuzzed-srate-crash.ogg

This is a quick fix for a crash, not a final solution.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoARM: update MpegEncContext offsets
Mans Rullgard [Sat, 29 Jan 2011 04:39:39 +0000 (04:39 +0000)]
ARM: update MpegEncContext offsets

13 years agoMove ff_emulated_edge_mc() into DSPContext.
Ronald S. Bultje [Thu, 27 Jan 2011 03:35:56 +0000 (22:35 -0500)]
Move ff_emulated_edge_mc() into DSPContext.

13 years agoOptimize C version of ff_emulated_edge_mc().
Ronald S. Bultje [Thu, 27 Jan 2011 03:37:50 +0000 (22:37 -0500)]
Optimize C version of ff_emulated_edge_mc().

From ~780 cycles to 551 cycles, mostly just by using libc memcpy()
instead of manually shuffling individual bytes around.

13 years agompegtsenc: support CODEC_ID_AAC_LATM
Peter Ross [Fri, 28 Jan 2011 22:28:03 +0000 (22:28 +0000)]
mpegtsenc: support CODEC_ID_AAC_LATM

$subject. Have used this for loopback testing with mpegts.c.

-- Peter
(A907 E02F A6E5 0CD2 34CD 20D2 6760 79C5 AC40 DD6B)
[2. text/x-diff; 0001-mpegtsenc-support-CODEC_ID_AAC_LATM.patch]

From 0f7f9db4b7da1793996af6dda84298507703759a Mon Sep 17 00:00:00 2001
From: Peter Ross <pross@xvid.org>
Date: Sun, 9 Jan 2011 09:45:50 +1100
Subject: [PATCH] mpegtsenc: support CODEC_ID_AAC_LATM

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agortspenc: include os_support.h for system without HAVE_POLL_H
Dave Yeo [Fri, 28 Jan 2011 20:01:52 +0000 (12:01 -0800)]
rtspenc: include os_support.h for system without HAVE_POLL_H

fix compile on OS/2

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
13 years agoasfdec: ensure that the whole tag is read.
Anton Khirnov [Thu, 27 Jan 2011 09:41:49 +0000 (10:41 +0100)]
asfdec: ensure that the whole tag is read.

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
13 years agoos_support: make poll() fallbacks conditional on CONFIG_NETWORK
Mans Rullgard [Fri, 28 Jan 2011 17:16:15 +0000 (17:16 +0000)]
os_support: make poll() fallbacks conditional on CONFIG_NETWORK

poll() is only used by networking code, so the fallback should
only be built if networking is enabled.  Also remove CONFIG_FFSERVER
condition from the declarations.

This should fix building on systems without poll(), broken
by a8475bbdb64e638bd8161df9647876fd23f8a29a.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoMake the image2 demuxer log more verbose
Stefano Sabatini [Wed, 26 Jan 2011 22:03:38 +0000 (23:03 +0100)]
Make the image2 demuxer log more verbose

Add an error message in case the user requests to write more than one file
and the path does not contain a "%d" or "%0Nd" pattern.

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
13 years agoUpdate mpegts test reference
Mans Rullgard [Fri, 28 Jan 2011 16:58:54 +0000 (16:58 +0000)]
Update mpegts test reference

The output was changed by a7827a17c6b3388322350456d445c94b3a82cd25.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoaacdec: Convert some loop copies into memcpy()s.
Alex Converse [Fri, 28 Jan 2011 06:13:50 +0000 (06:13 +0000)]
aacdec: Convert some loop copies into memcpy()s.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoAdd muxers.texi file.
Stefano Sabatini [Wed, 26 Jan 2011 22:55:53 +0000 (23:55 +0100)]
Add muxers.texi file.

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
13 years agoIn mpegts "reserved_future_use" field must be set to 1 in SDT table
Georgi Chorbadzhiyski [Fri, 28 Jan 2011 16:28:20 +0000 (18:28 +0200)]
In mpegts "reserved_future_use" field must be set to 1 in SDT table

According to EN 300 468 section 3.1 (Definitions):

   Unless otherwise specified within the present document all
   "reserved_future_use" bits is set to "1".

This was not the case for SDT generation so this patch fixes it.

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
13 years agoIn the rawvideo decoder, set pkt_pts in the output frame.
Stefano Sabatini [Thu, 27 Jan 2011 20:26:38 +0000 (21:26 +0100)]
In the rawvideo decoder, set pkt_pts in the output frame.

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
13 years agoIn the start_frame() debug log, print the reference pos value rather than the evaluat...
Stefano Sabatini [Thu, 27 Jan 2011 00:01:34 +0000 (01:01 +0100)]
In the start_frame() debug log, print the reference pos value rather than the evaluated value converted to int.

That's required because -1 is evaluated as NAN, which converted back
to int looks like a random number, this is especially annoying when
debugging sources with undefined pos (as the video4linux2 device).

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
13 years agoFix VP8 aliasing problems.
Ronald S. Bultje [Fri, 28 Jan 2011 14:51:34 +0000 (09:51 -0500)]
Fix VP8 aliasing problems.

Replace * (uint32_t *) buf accesses with AV_WN32A/AV_COPY32.

13 years agortsp: make ff_sdp_parse return value forwarded
Luca Barbato [Fri, 28 Jan 2011 02:12:22 +0000 (03:12 +0100)]
rtsp: make ff_sdp_parse return value forwarded

the sdp demuxer did not forward it at all while the rtsp demuxer assumed
a single kind of error

13 years agoos: replace select with poll
Luca Barbato [Fri, 28 Jan 2011 02:12:21 +0000 (03:12 +0100)]
os: replace select with poll

Select has limitations on the fd values it could accept and silently
breaks when it is reached.

13 years agoMake ff_float_to_int16*_c() static.
Alex Converse [Fri, 28 Jan 2011 06:13:49 +0000 (06:13 +0000)]
Make ff_float_to_int16*_c() static.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoHide demuxers', muxers' and protocols' objects via the ld version script.
Diego Elio Pettenò [Tue, 25 Jan 2011 22:03:29 +0000 (22:03 +0000)]
Hide demuxers', muxers' and protocols' objects via the ld version script.

This reduces the symbols exported by libavformat from 699 to 451.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoHide the now-prefixed decoders, encoders, parsers, bsf, hwaccel objects.
Diego Elio Pettenò [Tue, 25 Jan 2011 21:40:12 +0000 (21:40 +0000)]
Hide the now-prefixed decoders, encoders, parsers, bsf, hwaccel objects.

This significantly reduces the size of the symbol table in the generated ELF
shared object (as well as the other linked tables).

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agocosmetics: indentation and spacing
Justin Ruggles [Thu, 27 Jan 2011 14:21:26 +0000 (14:21 +0000)]
cosmetics: indentation and spacing

13 years agoRemove the add bias hack for the C version of DSPContext.float_to_int16_*().
Justin Ruggles [Thu, 27 Jan 2011 15:20:43 +0000 (15:20 +0000)]
Remove the add bias hack for the C version of DSPContext.float_to_int16_*().

13 years agomov: add support for little-endian utf16 chapter names
John Stebbins [Wed, 26 Jan 2011 05:15:49 +0000 (05:15 +0000)]
mov: add support for little-endian utf16 chapter names

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
13 years agomovenc: byteswap codec_tag in mov_write_ms_tag
Janne Grunau [Thu, 27 Jan 2011 16:26:20 +0000 (17:26 +0100)]
movenc: byteswap codec_tag in mov_write_ms_tag

based on Alex Converse's "Fix ADPCM MS in mov muxing" patch

13 years agoIn mov muxer, mux adpcm_ms and adpcm_ima_wav the way quicktime supports it
Baptiste Coudurier [Tue, 25 Jan 2011 15:08:20 +0000 (15:08 +0000)]
In mov muxer, mux adpcm_ms and adpcm_ima_wav the way quicktime supports it

In mov demuxer, set adpcm_ms and adpcm_ima_wav frame size to stsd samples per packet.

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
13 years agoAdd special case for 2nd-order IIR filter.
Justin Ruggles [Thu, 27 Jan 2011 23:58:27 +0000 (23:58 +0000)]
Add special case for 2nd-order IIR filter.

40% faster in ff_iir_filter_flt() when c->order == 2.

13 years agoAdd ff_ to AVHWAccel decoders
Luca Barbato [Thu, 27 Jan 2011 02:56:14 +0000 (03:56 +0100)]
Add ff_ to AVHWAccel decoders

That unbreaks compilation of vaapi and dxva2

Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
13 years agoPrefix all _demuxer, _muxer, _protocol from libavformat and libavdevice.
Diego Elio Pettenò [Tue, 25 Jan 2011 22:03:28 +0000 (22:03 +0000)]
Prefix all _demuxer, _muxer, _protocol from libavformat and libavdevice.

This also lists the objects from those two libraries as internal (by adding
the ff_ prefix) so that they can then be hidden via linker scripts.

13 years agomov: simplify mov_read_chapters() by using avio_get_str16be
Anton Khirnov [Sun, 23 Jan 2011 11:35:23 +0000 (12:35 +0100)]
mov: simplify mov_read_chapters() by using avio_get_str16be

It probably also fixes a memleak or two.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoRevert "mov: simplify mov_read_chapters() by using avio_get_str16be"
Mans Rullgard [Wed, 26 Jan 2011 21:54:42 +0000 (21:54 +0000)]
Revert "mov: simplify mov_read_chapters() by using avio_get_str16be"

This reverts commit c34461b35b68ff1f3d04540e0279383c51be8cee.
The wrong version of the patch was committed.

13 years agoVP8: don't overread edges on fourtap MC.
Ronald S. Bultje [Wed, 26 Jan 2011 20:34:36 +0000 (15:34 -0500)]
VP8: don't overread edges on fourtap MC.

Fix C VP8 H+V MC functions which do two-dimensional 4/6-tap filters to
not overread beyond their edges if the second filter is 4-tap, since
the outer pixels aren't there anymore since
44002d8323023c35f51d523a7d305e45103ba7a1.

13 years agoAdd ff_ prefix to data symbols of encoders, decoders, hwaccel, parsers, bsf.
Diego Elio Pettenò [Tue, 25 Jan 2011 21:40:11 +0000 (21:40 +0000)]
Add ff_ prefix to data symbols of encoders, decoders, hwaccel, parsers, bsf.

None of these symbols should be accessed directly, so declare them as
hidden.

Signed-off-by: Mans Rullgard <mans@mansr.com>