Commit Graph

1519 Commits

Author SHA1 Message Date
Michael Niedermayer 00c0465dbc Merge remote-tracking branch 'qatar/master'
* qatar/master:
  fate: split off DPCM codec FATE tests into their own file
  fate: split off PCM codec FATE tests into their own file
  libvorbis: K&R reformatting cosmetics
  libmp3lame: K&R formatting cosmetics
  fate: Add a video test for xxan decoder
  mpegvideo_enc: K&R cosmetics (line 1000-2000).
  avconv: K&R cosmetics
  qt-faststart: Fix up indentation
  indeo4: remove two unused variables
  doxygen: cleanup style to support older doxy
  fate: add more tests for VC-1 decoder
  applehttpproto: Apply the same reload interval changes as for the demuxer
  applehttp: Use half the target duration as interval if the playlist didn't update
  applehttp: Use the last segment duration as reload interval
  lagarith: add decode support for arith rgb24 mode

Conflicts:
	avconv.c
	libavcodec/libmp3lame.c
	libavcodec/mpegvideo_enc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-30 03:46:24 +01:00
Stefano Sabatini 93613338fe ff* tools: move descriptions from copyright header to @file doxy 2011-12-27 12:58:08 +01:00
Michael Niedermayer f2f8632aa5 ffmpeg: Check that frames are user type before treating them as such
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-27 05:34:50 +01:00
Michael Niedermayer 80d2dddad1 ffmpeg: disable dr1 in case of resolution changes, as this does not work currently.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-27 05:22:44 +01:00
Michael Niedermayer 9971af3aa8 ffmpeg: add remaining hunks to enable dr1 support
Author: Anton Khirnov
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-27 04:01:38 +01:00
Michael Niedermayer a45880dcdb ffmpeg: fix non ANSI C for(int
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-26 04:14:50 +01:00
Michael Niedermayer 484e59a0a0 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avs: call release_buffer() at the end.
  Add minor bumps and APIchanges entries for lavc/lavfi changes.
  mpegvideo.c: K&R formatting and cosmetics.
  avconv: avoid memcpy in vsrc_buffer when possible.
  avconv: implement get_buffer()/release_buffer().
  lavfi: add a new function av_buffersrc_buffer().
  lavfi: add avfilter_copy_frame_props()
  lavc: add format field to AVFrame
  lavc: add width and height fields to AVFrame
  lavc: add a sample_aspect_ratio field to AVFrame
  doxy: add website-alike style to the html output
  FAQ: add an entry for common error when using -profile

Conflicts:
	avconv.c
	cmdutils.c
	doc/APIchanges
	libavcodec/avcodec.h
	libavcodec/mpegvideo.c
	libavcodec/utils.c
	libavcodec/version.h
	libavfilter/Makefile
	libavfilter/avfilter.c
	libavfilter/avfilter.h
	libavfilter/src_movie.c
	libavfilter/vsrc_buffer.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-26 04:10:47 +01:00
Michael Niedermayer d1c28e3530 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  build: fix standalone compilation of OMA muxer
  build: fix standalone compilation of Microsoft XMV demuxer
  build: fix standalone compilation of Core Audio Format demuxer
  kvmc: fix invalid reads
  4xm: Add a check in decode_i_frame to prevent buffer overreads
  adpcm: fix IMA SMJPEG decoding
  options: set minimum for "threads" to zero
  bsd: use number of logical CPUs as automatic thread count
  windows: use number of CPUs as automatic thread count
  linux: use number of CPUs as automatic thread count
  pthreads: reset active_thread_type when slice thread_init returrns early
  v410dec: include correct headers
  Drop ALT_ prefix from BITSTREAM_READER_LE name.
  lavfi: always build vsrc_buffer.
  ra144enc: zero the reflection coeffs if the filter is unstable
  sws: readd PAL8 to isPacked()
  mov: Don't stick the QuickTime field ordering atom in extradata.
  truespeech: fix invalid reads in truespeech_apply_twopoint_filter()

Conflicts:
	configure
	libavcodec/4xm.c
	libavcodec/avcodec.h
	libavfilter/Makefile
	libavfilter/allfilters.c
	libavformat/Makefile
	libswscale/swscale_internal.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-23 03:25:51 +01:00
Michael Niedermayer 452406bd5b ff*: Fix duplicatedly printed version info with -version
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-20 22:23:12 +01:00
Michael Niedermayer 552ec4c9fd Merge remote-tracking branch 'qatar/master'
* qatar/master:
  get_bits: remove A32 variant
  avconv: support stream specifiers in -metadata and -map_metadata
  wavpack: Fix 32-bit clipping
  wavpack: Clip samples after shifting
  h264: don't drop B-frames after next keyframe on POC reset.
  get_bits: remove useless pointer casts
  configure: refactor lists of tests and components into variables
  rv40: NEON optimised weak loop filter
  mpegts: replace some magic numbers with the existing define
  swscale: add unscaled packed 16 bit per component endianess conversion

Conflicts:
	libavcodec/get_bits.h
	libavcodec/h264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-17 02:18:16 +01:00
Michael Niedermayer 7b92863f30 ffmpeg: Fix killing [Y/n] prompt with ctrl-c
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-16 19:43:54 +01:00
Michael Niedermayer cf7076ee96 ffmpeg: exit() on repeated ctrl-c
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-16 19:37:32 +01:00
Michael Niedermayer 1f273c2bf2 ffmpeg: check return code from av_vsrc_buffer_add_frame()
Fixed Ticket770
Bug found by: Diana Elena Muscalu

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-15 23:58:31 +01:00
Michael Niedermayer 6c39b3c278 ffmpeg: reset dts/pts after decoding the first subpacket
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-13 19:46:29 +01:00
Michael Niedermayer 8bc7fe4daf Merge remote-tracking branch 'qatar/master'
* qatar/master:
  doxygen: misc consistency, spelling and wording fixes
  vcr1: drop unnecessary emms_c() calls without MMX code
  Replace all uses of av_close_input_file() with avformat_close_input().
  lavf: add avformat_close_input().
  lavf: deprecate av_close_input_stream().
  lavf doxy: add some basic demuxing documentation.
  lavf doxy: add some general lavf information.
  lavf doxy: add misc utility functions to a group.
  lavf doxy: add av_guess_codec/format to the encoding group.
  lavf doxy: add core functions to a doxy group.
  Add basic libavdevice documentation.
  lavc: convert error_recognition to err_recognition.
  avconv: update -map option help text
  x86: Require 7 registers for the cabac asm
  x86: bswap: remove test for bswap instruction
  bswap: make generic implementation more compiler-friendly
  h264: remove useless cast
  proresdec: fix decode_slice() prototype

Conflicts:
	configure
	doc/APIchanges
	ffprobe.c
	libavcodec/avcodec.h
	libavcodec/celp_math.h
	libavcodec/h264.c
	libavfilter/src_movie.c
	libavformat/anm.c
	libavformat/avformat.h
	libavformat/version.h
	libavutil/avstring.h
	libavutil/bswap.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-13 00:39:48 +01:00
Michael Niedermayer ee731c1ab0 ffmpeg: fix codecids with ffserver + ffmpeg + ffm
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-12 17:30:55 +01:00
Michael Niedermayer 7fad19a63d Merge remote-tracking branch 'qatar/master'
* qatar/master:
  x86: cabac: replace explicit memory references with "m" operands
  avplay: don't request a stereo downmix
  wmapro: use av_float2int()
  lavc: avoid invalid memcpy() in avcodec_default_release_buffer()
  lavu: replace int/float punning functions
  lavfi: install libavfilter/vsrc_buffer.h
  Remove extraneous semicolons
  sdp: Restore the original mp4 format h264 extradata if converted
  rtpenc: Add support for mp4 format h264
  rtpenc: Simplify code by introducing a separate end pointer
  movenc: Use the actual converted sample for RTP hinting
  Fix a bunch of common typos.

Conflicts:
	doc/developer.texi
	doc/eval.texi
	doc/filters.texi
	doc/protocols.texi
	ffmpeg.c
	ffplay.c
	libavcodec/mpegvideo.h
	libavcodec/x86/cabac.h
	libavfilter/Makefile
	libavformat/avformat.h
	libavformat/cafdec.c
	libavformat/flvdec.c
	libavformat/flvenc.c
	libavformat/gxfenc.c
	libavformat/img2.c
	libavformat/movenc.c
	libavformat/mpegts.c
	libavformat/rtpenc_h264.c
	libavformat/utils.c
	libavformat/wtv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-12 01:25:37 +01:00
Diego Biurrun da9cea77e3 Fix a bunch of common typos. 2011-12-11 00:32:25 +01:00
Michael Niedermayer 934fe00680 ffmpeg: better warning about loop_input
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-10 21:03:47 +01:00
Michael Niedermayer ec9d92700e ffmpeg: Use the buffer sinks poll instead of its input.
This fixes the case that the buffer sinks fifo contains frames which
would not show up on the poll from its input

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-08 21:19:27 +01:00
Michael Niedermayer 7c41995e00 ffmpeg: more exact comment about libavformat.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-08 20:21:28 +01:00
Michael Niedermayer c89488588b ffmpeg: Warn if filters poll & request frame behave wrongly.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-06 16:08:29 +01:00
Michael Niedermayer b404ab9e74 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mov: Don't av_malloc(0).
  avconv: only allocate 1 AVFrame per input stream
  avconv: fix memleaks due to not freeing the AVFrame for audio
  h264-fate: remove -strict 1 except where necessary (mr4/5-tandberg).
  misc Doxygen markup improvements
  doxygen: eliminate Qt-style doxygen syntax
  g722: Add a regression test for muxing/demuxing in wav
  g722: Change bits per sample to 4
  g722dec: Signal skipping the lower bits via AVOptions instead of bits_per_coded_sample
  api-example: update to use avcodec_decode_audio4()
  avplay: use avcodec_decode_audio4()
  avplay: use a separate buffer for playing silence
  avformat: use avcodec_decode_audio4() in avformat_find_stream_info()
  avconv: use avcodec_decode_audio4() instead of avcodec_decode_audio3()
  mov: Allow empty stts atom.
  doc: document preferred Doxygen syntax and make patcheck detect it

Conflicts:
	avconv.c
	ffplay.c
	libavcodec/mlpdec.c
	libavcodec/version.h
	libavformat/mov.c
	tests/codec-regression.sh
	tests/fate/h264.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-06 01:37:27 +01:00
Michael Niedermayer 738c603a22 ffmpeg: Avoid directly accessing AVFrame fields that differ between forks.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-05 03:22:08 +01:00
Michael Niedermayer 618fb9cc06 ffmpeg: handle stream copy timebase selection for mp4 as if it had VFPS set.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-05 03:19:28 +01:00
Michael Niedermayer 594090c6c2 ffmpeg: select best pixel format for the encoder if no exact match.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-04 15:26:52 +01:00
Michael Niedermayer 730945d941 ffmpeg: use standard duration calculation code in the stream copy case.
Fixes a.mkv non monotonic timestamps

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-03 15:15:06 +01:00
Michael Niedermayer e4de71677f Merge remote-tracking branch 'qatar/master'
* qatar/master:
  aac_latm: reconfigure decoder on audio specific config changes
  latmdec: fix audio specific config parsing
  Add avcodec_decode_audio4().
  avcodec: change number of plane pointers from 4 to 8 at next major bump.
  Update developers documentation with coding conventions.
  svq1dec: avoid undefined get_bits(0) call
  ARM: h264dsp_neon cosmetics
  ARM: make some NEON macros reusable
  Do not memcpy raw video frames when using null muxer
  fate: update asf seektest
  vp8: flush buffers on size changes.
  doc: improve general documentation for MacOSX
  asf: use packet dts as approximation of pts
  asf: do not call av_read_frame
  rtsp: Initialize the media_type_mask in the rtp guessing demuxer
  Cleaned up alacenc.c

Conflicts:
	doc/APIchanges
	doc/developer.texi
	libavcodec/8svx.c
	libavcodec/aacdec.c
	libavcodec/ac3dec.c
	libavcodec/avcodec.h
	libavcodec/nellymoserdec.c
	libavcodec/tta.c
	libavcodec/utils.c
	libavcodec/version.h
	libavcodec/wmadec.c
	libavformat/asfdec.c
	tests/ref/seek/lavf_asf

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-03 03:00:30 +01:00
Carl Eugen Hoyos d9cc6bb432 Support ffmpeg -dn to disable copying data streams.
Fixes ticket #647.
2011-12-01 18:02:04 +01:00
Michael Niedermayer 67eb95ce15 ffmpeg: fix segfault with ffmpeg -h
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-01 04:32:27 +01:00
Michael Niedermayer 03b60509cb ffmpeg: fix changing sample rate handling
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-01 04:06:59 +01:00
Michael Niedermayer 54e40b9c14 ffmpeg: factorize duration calculation in transcode_video()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-01 03:49:38 +01:00
Michael Niedermayer 6e96ad8215 ffmpeg: make copy_tb tri state so the user can select either timebase or
leave it at auto

Inspired-by a change from Anton Khirnov
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-01 03:49:37 +01:00
Michael Niedermayer 9d76cf0b18 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rtpdec: Templatize the code for different g726 bitrate variants
  rv40: move loop filter to rv34dsp context
  lavf: make av_set_pts_info private.
  rtpdec: Add support for G726 audio
  rtpdec: Add an init function that can do custom codec context initialization
  avconv: make copy_tb on by default.
  matroskadec: don't set codec timebase.
  rmdec: don't set codec timebase.
  avconv: compute next_pts from input packet duration when possible.
  lavf: estimate frame duration from r_frame_rate.
  avconv: update InputStream.pts in the streamcopy case.

Conflicts:
	avconv.c
	libavdevice/alsa-audio-dec.c
	libavdevice/bktr.c
	libavdevice/fbdev.c
	libavdevice/libdc1394.c
	libavdevice/oss_audio.c
	libavdevice/v4l.c
	libavdevice/v4l2.c
	libavdevice/vfwcap.c
	libavdevice/x11grab.c
	libavformat/au.c
	libavformat/eacdata.c
	libavformat/flvdec.c
	libavformat/mpegts.c
	libavformat/mxfenc.c
	libavformat/rtpdec_g726.c
	libavformat/wtv.c
	libavformat/xmv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-01 02:54:24 +01:00
Michael Niedermayer c40a35f8a7 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  indeo3: check per-plane data buffer against input buffer bounds.
  avconv: Handle audio sync for non-S16 sample formats.
  pthread: don't increment index on zero-sized packets.

Conflicts:
	libavcodec/indeo3.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-30 02:34:35 +01:00
Jean First 23b4f355bb ffmpeg.c use b:v for video bitrates using a target
it's more consistent to use -b:v instead of just -b

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-30 00:22:31 +01:00
Clément Bœsch b6ffe441cd ffmpeg: do not use a negative total_size (AVERROR) in bitrate estimation. 2011-11-29 23:07:13 +01:00
Michael Niedermayer 6d13499be0 cmdutils: pass AVCodec to filter_codec_opts()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-27 21:17:56 +01:00
Michael Niedermayer e1d48786d5 ffmpeg: Warn if output file is empty
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-25 16:17:06 +01:00
Carl Eugen Hoyos 0a4f02117b Add option -n to exit if output file exists. 2011-11-24 21:42:42 +01:00
Michael Niedermayer 957867ab13 ffmpeg: rewrite vsync / notimestamps handling
The qatar implementation makes no sense.
a muxer without timestamps is constant fps thus needs vsync.
the crc/mp5 are special cases that have timestamps yet allow any
nonsensical timestamps.
raw (yuv/rgb) video is constant fps thus needs vsync too.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-24 04:57:38 +01:00
Michael Niedermayer 8e576d5830 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libavutil: add utility functions to simplify allocation of audio buffers.
  libavutil: add planar sample formats and av_sample_fmt_is_planar()
  avconv: fix segfault at EOF with delayed pictures
  pcmdec: remove unneeded resetting of samples pointer
  avconv: remove a now unused parameter from output_packet().
  avconv: formatting fixes in output_packet()
  avconv: declare some variables in blocks where they are used
  avconv: use the same behavior when decoding audio/video/subs
  bethsoftvideo: return proper consumed size for palette packets.
  cdg: skip packets that don't contain a cdg command.
  crcenc: add flags
  avconv: use vsync 0 for AVFMT_NOTIMESTAMPS formats.
  tiffenc: add a private option for selecting compression algorithm
  md5enc: add flags
  ARM: remove needless .text/.align directives

Conflicts:
	doc/APIchanges
	libavcodec/tiffenc.c
	libavutil/avutil.h
	libavutil/samplefmt.c
	libavutil/samplefmt.h
	tests/ref/fate/bethsoft-vid
	tests/ref/fate/cdgraphics
	tests/ref/fate/film-cvid-pcm-stereo-8bit
	tests/ref/fate/mpeg2-field-enc
	tests/ref/fate/nuv
	tests/ref/fate/tiertex-seq
	tests/ref/fate/tscc-32bit
	tests/ref/fate/vmnc-32bit

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-24 03:32:24 +01:00
Michael Niedermayer b329fc346e ffmpeg: fix indention
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-23 23:20:20 +01:00
Michael Niedermayer fec2025936 ffmpeg: Fix ffmpeg.c:1874:21: warning: unused variable ‘of’ [-Wunused-variable]
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-23 23:19:59 +01:00
Michael Niedermayer 0b9a69f244 Merge remote-tracking branch 'qatar/master'
* qatar/master: (22 commits)
  aacdec: Fix PS in ADTS.
  avconv: Consistently use PIX_FMT_NONE.
  dsputil: use cpuflags in x86 emu_edge_core
  dsputil: use movups instead of movdqu in ff_emu_edge_core_sse()
  wma: initialize prev_block_len_bits, next_block_len_bits, and block_len_bits.
  mov: Remove some redundant and obsolete comments.
  Add libavutil/mathematics.h #includes for INFINITY
  doxy: structure libavformat groups
  doxy: introduce an empty structure in libavcodec
  doxy: provide a start page and document libavutil
  doxy: cleanup pixfmt.h
  regtest: split video encode/decode tests into individual targets
  ARM: add explicit .arch and .fpu directives to asm.S
  pthread: do not touch has_b_frames
  avconv: cleanup the transcoding loop in output_packet().
  avconv: split subtitle transcoding out of output_packet().
  avconv: split video transcoding out of output_packet().
  avconv: split audio transcoding out of output_packet().
  avconv: reindent.
  avconv: move streamcopy-only code out of decoding loop.
  ...

Conflicts:
	avconv.c
	libavcodec/aaccoder.c
	libavcodec/pthread.c
	libavcodec/version.h
	libavutil/audioconvert.h
	libavutil/avutil.h
	libavutil/mem.h
	tests/ref/vsynth1/dv
	tests/ref/vsynth1/mpeg2thread
	tests/ref/vsynth2/dv
	tests/ref/vsynth2/mpeg2thread

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-23 04:02:17 +01:00
Michael Niedermayer 7876f14f8b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  pthread: add some malloc failure checks
  avconv: cosmetics, reformat transcode_init()
  avconv: rename 'os' variable to 'oc'
  doc/filters: fix some typos.
  configure: add libpulse to help output

Conflicts:
	avconv.c
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-22 02:54:50 +01:00
Michael Niedermayer 70974bdb27 ffmpeg: Fix segfault when using ffmpeg with ffserver where ffmpeg does not supply all requested streams.
Fixes Ticket675

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-21 23:32:39 +01:00
Michael Niedermayer 9b62241850 ffmpeg: 10l add back show_banner() that was lost in the last merge.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-21 00:06:23 +01:00
Michael Niedermayer e161b079de Merge remote-tracking branch 'qatar/master'
* qatar/master: (22 commits)
  configure: add check for w32threads to enable it automatically
  rtmp: do not hardcode invoke numbers
  cinepack: return non-generic errors
  fate-lavf-ts: use -mpegts_transport_stream_id option.
  Add an APIchanges entry and a minor bump for avio changes.
  avio: Mark the old interrupt callback mechanism as deprecated
  avplay: Set the new interrupt callback
  avconv: Set new interrupt callbacks for all AVFormatContexts, use avio_open2() everywhere
  cinepak: remove redundant coordinate checks
  cinepak: check strip_size
  cinepak, simplify, use AV_RB24()
  cinepak: simplify, use FFMIN()
  cinepak: Fix division by zero, ask for sample if encoded_buf_size is 0
  applehttp: Fix seeking in streams not starting at DTS=0
  http: Don't use the normal http proxy mechanism for https
  tls: Handle connection via a http proxy
  http: Reorder two code blocks
  http: Add a new protocol for opening connections via http proxies
  http: Split out the non-chunked buffer reading part from http_read
  segafilm: add support for raw videos
  ...

Conflicts:
	avconv.c
	configure
	doc/APIchanges
	libavcodec/cinepak.c
	libavformat/applehttp.c
	libavformat/version.h
	tests/lavf-regression.sh
	tests/ref/lavf/ts

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 02:00:06 +01:00
Clément Bœsch eafa2b6005 swr: introduce a public function to customize the channel mapping. 2011-11-17 18:30:03 +01:00