Commit Graph

631 Commits

Author SHA1 Message Date
Michael Niedermayer e760424ddd Merge remote-tracking branch 'qatar/master'
* qatar/master:
  nutdec: const correctness for get_v_trace/get_s_trace function arguments
  truemotion2: Request samples for old TM2 headers
  rtpdec: Remove a useless ff_ prefix from a static symbol
  rtpdec: Support depacketizing speex
  rtpenc: Add support for packetizing speex

Conflicts:
	libavformat/rtpdec.c
	libavformat/sdp.c
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-27 14:29:03 +02:00
Michael Niedermayer ff584803b7 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rtp: Packetization of JPEG (RFC 2435)
  smoothstreamingenc: Copy the SAR on the AVStreams as well

Conflicts:
	Changelog
	libavformat/rtpenc.c
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-24 13:54:24 +02:00
Samuel Pitoiset cee1950bbb rtp: Packetization of JPEG (RFC 2435) 2012-09-23 21:58:41 +03:00
Clément Bœsch 2599541b3d WebVTT demuxer and decoder. 2012-09-23 15:24:08 +02:00
Dmitry Samonenko 697ea4fccf Introducing speex RTP demuxing (RFC 5574)
RTPDynamicProtocolHandler for speex is added. Initial support for
speex depacketization from RTP stream comes with it.
Currently, only codec audio rate can be applied based on sdp:
* Narrowband    ( 8K)
* Wideband      (16K)
* Ultrawideband (32K)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-23 14:20:13 +02:00
Michael Niedermayer 67d501b4f1 Merge commit '1b3439b3055b083df51d7f7838ecc6b3f708b15c'
* commit '1b3439b3055b083df51d7f7838ecc6b3f708b15c':
  mpegvideo: move frame size dependent memory management to separate functions
  configure: add --toolchain option
  configure: Make the smoothstreaming muxer enable the ismv muxer
  smoothstreaming: Export the mp4 codec tags
  mov: check for EOF in long lasting loops
  avcodec: cleanup utils.c
  binkaudio: remove unneeded GET_BITS_SAFE macro
  binkaudio: use float sample format
  binkaudio: use a different value for the coefficient scale for the DCT codec

Conflicts:
	configure
	libavcodec/mpegvideo.c
	libavcodec/utils.c
	libavformat/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-19 15:13:53 +02:00
Martin Storsjö 84cc314e40 smoothstreaming: Export the mp4 codec tags
This fixes stream copy from a format that already has incompatible
codec tags set. The chained ismv muxer exports this same codec tag
list, so set it on this one as well, to allow the caller (and
lavf common code) to set them correctly.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-18 17:59:57 +03:00
Michael Niedermayer c942e8b1d7 Merge commit '07584eaf4a95db3f11d3bc411f9786932829e82b'
* commit '07584eaf4a95db3f11d3bc411f9786932829e82b':
  mpegts: check substreams before discarding
  Add a smooth streaming segmenter muxer
  file: Add an avoption for disabling truncating existing files on open
  img2dec: always close AVIOContexts
  rtpdec_jpeg: Error out on other unsupported type values as well
  rtpdec_jpeg: Disallow using the reserved q values
  rtpdec_jpeg: Fold the default qtables case into an existing if statement
  rtpdec_jpeg: Store and reuse old qtables for q values 128-254
  rtpdec_jpeg: Simplify the calculation of the number of qtables
  rtpdec_jpeg: Add more comments about the fields in the SOF0 section
  rtpdec_jpeg: Clarify where the subsampling magic numbers come from
  rtpdec_jpeg: Don't use a bitstream writer for the EOI marker
  rtpdec_jpeg: Don't needlessly use a bitstream writer for the header
  rtpdec_jpeg: Simplify writing of the jpeg header
  rtpdec_jpeg: Merge two if statements
  rtpdec_jpeg: Write the DHT section properly

Conflicts:
	libavformat/Makefile
	libavformat/allformats.c
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-13 15:22:16 +02:00
Martin Storsjö 62c9ae11a7 Add a smooth streaming segmenter muxer
This muxer splits the output from the ismv muxer into individual
files, in realtime.

The same can also be done by the standalone tool ismindex, but this
muxer is needed for doing it in realtime (especially for live
streams that need extra handling for updating the lookahead fields
in the fragment headers).

Using this muxer, one can deliver live smooth streaming from a
normal static file web server. (Using ismindex, one can deliver
premade smooth streaming files from a static file web server,
or prepare files for serving with IIS.)

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-12 23:42:16 +03:00
Michael Niedermayer bff2afb3e9 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  x86: dsputil: Only compile motion_est code when encoders are enabled
  mem: fix typo in check for __ICC
  fate: mp3: drop redundant CMP setting
  rtp: Depacketization of JPEG (RFC 2435)
  Rename ff_put_string to avpriv_put_string
  mjpeg: Rename some symbols to avpriv_* instead of ff_*
  yadif: cosmetics

Conflicts:
	Changelog
	libavcodec/mjpegenc.c
	libavcodec/x86/Makefile
	libavfilter/vf_yadif.c
	libavformat/version.h
	libavutil/mem.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-10 14:06:20 +02:00
Samuel Pitoiset 3c19815416 rtp: Depacketization of JPEG (RFC 2435)
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-09 22:22:21 +03:00
Mans Rullgard 8db73c61a7 build: allow non-standard variations of linker -l/-L flags
This enables replacing the -l and -L flags used to specify the
just-built libraries when linking the tools and shared libs with
non-standard syntaxes.  System library flags are already handled
by the filtering mechanism in configure.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-29 14:16:54 +01:00
Michael Bradshaw a22c996a85 Add ICO muxer
Signed-off-by: Michael Bradshaw <mbradshaw@sorensonmedia.com>
Reviewed-by: Peter Ross <pross@xvid.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-14 16:54:25 +02:00
Michael Niedermayer 18b0c39f99 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  g723.1: fix addition overflow
  g723.1: simplify and fix multiplication overflow
  g723.1: deobfuscate an expression
  g723.1: remove unused #includes
  ARM: add missing "cc" clobber in av_clipl_int32_arm()
  rtmp: Factorize the code by adding handle_invoke_error
  rtmp: Factorize the code by adding handle_invoke_status
  rtmp: Factorize the code by adding handle_invoke_result
  libavutil: remove unused av_abort() macro
  ffmenc: replace if/abort with assert()
  libavutil: drop offsetof() fallback definition
  libavutil: drop fallback definitions of INTxx_MIN/MAX
  configure: Check for a sctp struct instead of just the header
  configure: suncc: Add -xc99 to dependency flags, required on Solaris
  doxygen: Fix function parameter names to match the code
  doc: Drop obsolete shared libs cflags hint to workaround Cygwin gcc bugs
  swf: Move shared table out of the header file
  swf: Move swf_audio_codec_tags table to the only place it is used
  fate: add G.723.1 decoder tests

Conflicts:
	configure
	doc/platform.texi
	libavformat/Makefile
	libavutil/arm/intmath.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 16:25:23 +02:00
Diego Biurrun 90f7e61769 swf: Move shared table out of the header file 2012-08-09 20:05:54 +02:00
Paul B Mahol bd93f96540 APE tag writer 2012-07-29 01:28:12 +00:00
Paul B Mahol a3a0774be8 WavPack muxer 2012-07-29 01:28:12 +00:00
Carl Eugen Hoyos 4f2549e3d0 Fix aiff demuxer dependencies. 2012-07-27 20:42:35 +02:00
Clément Bœsch 316f8db2c2 SubViewer demuxer and decoder. 2012-07-26 22:22:54 +02:00
Michael Niedermayer 7333798c85 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libopenjpeg: support YUV and deep RGB pixel formats
  Fix typo in v410 decoder.
  vf_yadif: unset cur_buf on the input link.
  vf_overlay: ensure the overlay frame does not get leaked.
  vf_overlay: prevent premature freeing of cur_buf
  Support urlencoded http authentication credentials
  rtmp: Return an error when the client bandwidth is incorrect
  rtmp: Return proper error code in handle_server_bw
  rtmp: Return proper error code in handle_client_bw
  rtmp: Return proper error codes in handle_chunk_size
  lavr: x86: add missing vzeroupper in ff_mix_1_to_2_fltp_flt()
  vp8: Replace x*155/100 by x*101581>>16.
  vp3: don't use calls to inline asm in yasm code.
  x86/dsputil: put inline asm under HAVE_INLINE_ASM.
  dsputil_mmx: fix incorrect assembly code
  rtmp: Factorize the code by adding handle_invoke
  rtmp: Factorize the code by adding handle_chunk_size
  rtmp: Factorize the code by adding handle_ping
  rtmp: Factorize the code by adding handle_client_bw
  rtmp: Factorize the code by adding handle_server_bw

Conflicts:
	libavcodec/libopenjpegdec.c
	libavcodec/x86/dsputil_mmx.c
	libavfilter/vf_overlay.c
	libavformat/Makefile
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-26 21:37:15 +02:00
Antti Seppälä 5423e908c9 Support urlencoded http authentication credentials
It should be possible to specify usernames in http requests containing
urlencoded characters. This patch adds support for decoding the auth
strings.

Signed-off-by: Antti Seppälä <a.seppala@gmail.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-26 00:18:32 +03:00
Michael Niedermayer 93342de1d8 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rtmp: Add credit/copyright to librtmp authors for parts of the RTMPE code
  rtmp: Move the CONFIG_ condition into the if conditions
  aac: Mention abbreviation as well in long_name
  build: Skip compiling rtmpdh.h if ffrtmpcrypt protocol is not enabled
  doc: Add Git configuration section
  configure: Add a dependency on https for rtmpts
  rtp: Only choose static payload types if the sample rate and channels are right

Conflicts:
	doc/git-howto.texi
	libavformat/rtmpproto.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-24 21:15:57 +02:00
Diego Biurrun 6b80142144 build: Skip compiling rtmpdh.h if ffrtmpcrypt protocol is not enabled
The ffrtmpcrypt protocol depends on external libraries, which are
also required to compile the header file.
2012-07-24 00:21:39 +02:00
Michael Niedermayer 2cb4d51654 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  v410dec: Implement explode mode support
  zerocodec: fix direct rendering.
  wav: init st to NULL to avoid a false-positive warning.
  wavpack: set bits_per_raw_sample for S32 samples to properly identify 24-bit
  h264: refactor NAL decode loop
  RTMPTE protocol support
  RTMPE protocol support
  rtmp: Add ff_rtmp_calc_digest_pos()
  rtmp: Rename rtmp_calc_digest to ff_rtmp_calc_digest and make it global
  swscale: add missing HAVE_INLINE_ASM check.
  lavfi: place x86 inline assembly under HAVE_INLINE_ASM.
  vc1: Add a test for interlaced field pictures
  swscale: Mark all init functions as av_cold
  swscale: x86: Drop pointless _mmx suffix from filenames
  lavf: use conditional notation for default codec in muxer declarations.
  swscale: place inline assembly bilinear scaler under HAVE_INLINE_ASM.
  dsputil: ppc: cosmetics: pretty-print
  dsputil: x86: add SHUFFLE_MASK_W macro
  configure: respect CC_O setting in check_cc

Conflicts:
	Changelog
	configure
	libavcodec/v410dec.c
	libavcodec/zerocodec.c
	libavformat/asfenc.c
	libavformat/version.h
	libswscale/utils.c
	libswscale/x86/swscale.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-23 21:25:09 +02:00
Samuel Pitoiset 08cd95e8a3 RTMPTE protocol support
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-23 16:32:09 +03:00
Samuel Pitoiset acd554c103 RTMPE protocol support
This adds two protocols, but one of them is an internal implementation
detail just used as an abstraction layer/generalization in the code. The
RTMPE protocol implementation uses ffrtmpcrypt:// as an alternative to the
tcp:// protocol. This allows moving most of the lower level logic out
from the higher level generic rtmp code.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-23 16:32:07 +03:00
Mohamed Naufal Basheer 55c3a4f617 G.723.1 demuxer and decoder
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-07-22 07:58:54 +02:00
Nicolas George e62fd6619f oggdec: add support for Opus codec.
This patch also introduces CODEC_ID_OPUS.
2012-07-20 11:16:52 +02:00
Michael Niedermayer 56ae5926f7 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libopenjpeg: introduce encoding support
  libopenjpeg: rename decoder source file.
  RTMPTS protocol support
  RTMPS protocol support
  avconv: print an error message when demuxing fails.
  tscc2: DCT output should not be clipped
  rtmp: Rename rtmphttp to ffrtmphttp

Conflicts:
	Changelog
	configure
	doc/general.texi
	libavcodec/libopenjpegenc.c
	libavcodec/version.h
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-18 01:27:19 +02:00
Samuel Pitoiset 86991ce2dd RTMPTS protocol support
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-17 14:02:55 +03:00
Samuel Pitoiset 6aedabc9b6 RTMPS protocol support
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-17 13:53:33 +03:00
Samuel Pitoiset 775c4d3625 rtmp: Rename rtmphttp to ffrtmphttp
The prefix makes it easier to distinguish the proper end-user
protocols from the internal ones.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-17 01:19:01 +03:00
Michael Niedermayer 674216991d Merge remote-tracking branch 'qatar/master'
* qatar/master:
  build: Fix APE tag dependencies
  MS Expression Encoder Screen decoder
  libfdk-aac: Allow setting the encoder bandwidth/cutoff frequency

Conflicts:
	Changelog
	libavcodec/avcodec.h
	libavcodec/version.h
	libavformat/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-13 22:22:24 +02:00
Diego Biurrun 47aed43990 build: Fix APE tag dependencies 2012-07-13 10:17:20 +02:00
Michael Niedermayer 620c6292b1 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  build: Fix Ogg demuxer dependencies
  build: Fix FLAC demuxer dependencies
  flac: Move flac functions shared between libraries to flac common code
  build: Fix CAF demuxer dependencies
  build: Fix MP2 muxer dependencies
  build: Add missing build rules for the ISMV muxer
  configure: Drop redundant mxf_d10 test dependency declaration
  Support AAC encoding via the external library fdk-aac
  libavcodec: Add more AAC profiles
  dct/fft-test: use a replacement getopt() if the system has none present.

Conflicts:
	Changelog
	libavcodec/Makefile
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-12 23:57:00 +02:00
Diego Biurrun b7884ff7af build: Fix MP2 muxer dependencies 2012-07-12 10:45:21 +02:00
Diego Biurrun d648de61e6 build: Add missing build rules for the ISMV muxer 2012-07-12 10:45:20 +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
Clément Bœsch 439e32f9b8 RealText demuxer and decoder. 2012-06-29 20:22:04 +02:00
Clément Bœsch 53640f42be SAMI demuxer and decoder. 2012-06-29 20:21:28 +02:00
Clément Bœsch 7c9f9685ae lavf: add internal demuxer helpers for subtitles. 2012-06-29 19:13:24 +02:00
Michael Niedermayer b536e2facf Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avconv: add an assert to silence an uninitialized variable warning.
  avconv: shut up an uninitialized variable warning.
  avfiltergraph: shut up uninitialized variable warning.
  af_join: initialize a variable to shut up gcc warning.
  amix: fix format specifier for AVFilterLink.sample_rate.
  lavfi: make filters less verbose.
  mpc8: read APE tags.
  lavr: x86: fix ff_conv_fltp_to_flt_6ch function prototypes
  libm: provide fallback definition for cbrtf() using powf()
  network: Don't redefine error codes if they already exist in errno.h
  configure: Check for sys/time.h
  network: Include unistd.h from network.h
  avconv: don't include vsrc_buffer.h, which doesn't exist anymore
  lavfi: reorder AVFilterLink fields.
  lavfi: reorder AVFilterContext fields.
  lavfi: reorder AVFilter fields.
  lavfi: reorder AVFilterBufferRef fields.
  lavfi: reorder AVFilterBuffer fields.

Conflicts:
	configure
	libavcodec/v210dec.h
	libavfilter/asrc_anullsrc.c
	libavfilter/avfilter.h
	libavfilter/buffersrc.c
	libavfilter/src_movie.c
	libavfilter/vf_aspect.c
	libavfilter/vf_crop.c
	libavfilter/vf_drawbox.c
	libavfilter/vf_fade.c
	libavfilter/vf_overlay.c
	libavfilter/vf_pad.c
	libavfilter/vf_scale.c
	libavfilter/vsrc_color.c
	libavformat/network.h
	libavutil/libm.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-27 01:58:09 +02:00
Anton Khirnov ce0a975689 mpc8: read APE tags. 2012-06-26 19:05:24 +02:00
Nicolas George 9e63c30daa lavf: add a real SRT muxer.
This muxer supports CODEC_ID_SRT with the timestamps in the packet data
and CODEC_ID_TEXT with the timestamps in the packet fields.

Makes -scodec copy work from Matroska.
2012-06-21 20:52:56 +02:00
Paul B Mahol bef8fd7099 LucasArts SMUSH demuxer
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-06-21 02:27:53 +00:00
Michael Niedermayer cabbd271a5 Merge remote-tracking branch 'qatar/master'
* qatar/master: (24 commits)
  flvdec: remove incomplete, disabled seeking code
  mem: add support for _aligned_malloc() as found on Windows
  lavc: Extend the documentation for avcodec_init_packet
  flvdec: remove incomplete, disabled seeking code
  http: replace atoll() with strtoll()
  mpegts: remove unused/incomplete/broken seeking code
  af_amix: allow float planar sample format as input
  af_amix: use AVFloatDSPContext.vector_fmac_scalar()
  float_dsp: add x86-optimized functions for vector_fmac_scalar()
  float_dsp: Move vector_fmac_scalar() from libavcodec to libavutil
  lavr: Add x86-optimized function for flt to s32 conversion
  lavr: Add x86-optimized function for flt to s16 conversion
  lavr: Add x86-optimized functions for s32 to flt conversion
  lavr: Add x86-optimized functions for s32 to s16 conversion
  lavr: Add x86-optimized functions for s16 to flt conversion
  lavr: Add x86-optimized function for s16 to s32 conversion
  rtpenc: Support packetizing iLBC
  rtpdec: Add a depacketizer for iLBC
  Implement the iLBC storage file format
  mov: Support muxing/demuxing iLBC
  ...

Conflicts:
	Changelog
	configure
	libavcodec/avcodec.h
	libavcodec/dsputil.c
	libavcodec/version.h
	libavformat/movenc.c
	libavformat/mpegts.c
	libavformat/version.h
	libavutil/mem.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-19 20:53:27 +02:00
Martin Storsjö 89c3960544 rtpdec: Add a depacketizer for iLBC
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-18 22:01:04 +03:00
Martin Storsjö a2b251a05e Implement the iLBC storage file format
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-18 22:01:02 +03:00
Michael Niedermayer 82edf6727f Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavr: add x86-optimized functions for mixing 1-to-2 s16p with flt coeffs
  lavr: add x86-optimized functions for mixing 1-to-2 fltp with flt coeffs
  Add Dolby/DPLII downmix support to libavresample
  vorbisdec: replace div/mod in loop with a counter
  fate: vorbis: add 5.1 surround test
  rtpenc: Allow requesting H264 RTP packetization mode 0
  configure: Sort the library listings in the help text alphabetically
  dwt: remove variable-length arrays
  RTMPT protocol support
  http: Properly handle chunked transfer-encoding for replies to post data
  http: Fail reading if the connection has gone away
  amr: Mark an array const
  amr: More space cleanup
  rtpenc: Fix memory leaks in the muxer open function

Conflicts:
	Changelog
	configure
	doc/APIchanges
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-18 20:07:00 +02:00
Samuel Pitoiset 8e50c57dcb RTMPT protocol support
This adds two protocols, but one of them is an internal implementation
detail just used as an abstraction layer/generalization in the code. The
RTMPT protocol implementation uses rtmphttp:// as an alternative to the
tcp:// protocol. This allows moving most of the lower level logic out
from the higher level generic rtmp code.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-17 22:56:56 +03:00