OSDN Git Service
Martin Storsjö [Tue, 14 Feb 2012 10:04:50 +0000 (12:04 +0200)]
doc: Move the hls protocol section into the right place
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Tue, 14 Feb 2012 10:00:49 +0000 (12:00 +0200)]
libavformat: Rename the applehttp protocol to hls
Keep the old protocol name around for backwards compatibility
until the next bump.
Deprecate the method of implicitly assuming the nested protocol.
For applehttp://server/path, it might have felt logical, but
supporting hls://server/path isn't quite as intuitive. Therefore
only support hls+http://server/path from now on.
Using this protocol at all is discouraged, since the hls demuxer
is more complete and fits into the architecture better. There
have been cases where the protocol implementation worked better
than the demuxer, but this should no longer be the case.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Tue, 14 Feb 2012 09:50:51 +0000 (11:50 +0200)]
hls: Rename the functions and context
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Tue, 14 Feb 2012 09:47:31 +0000 (11:47 +0200)]
libavformat: Rename the applehttp demuxer to hls
When this demuxer was created, there didn't seem to be any
consensus of a common short name for this protocol. Now
the consensus seems to be to call it hls.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Tue, 7 Feb 2012 14:15:26 +0000 (16:15 +0200)]
rtpdec: Support H263 in RFC 2190 format
This is different from the "modern" RTP payload formats for H263
as defined by RFC 4629, 2429 and 3555. According to the newer RFCs,
this old one is to be considered deprecated and only be used for
interoperating with legacy systems.
Signed-off-by: Martin Storsjö <martin@martin.st>
Janne Grunau [Tue, 14 Feb 2012 14:02:30 +0000 (15:02 +0100)]
rv30: check block type validity
Prevents crashes with the fuzzed samples from bugs 88, 89 and 125 after
"golomb: avoid infinite loop on all-zero input".
Paul B Mahol [Sat, 11 Feb 2012 21:30:30 +0000 (21:30 +0000)]
ttadec: CRC checking
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Martin Storsjö [Sat, 21 Jan 2012 00:16:34 +0000 (02:16 +0200)]
movenc: Support muxing VC1
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Mon, 23 Jan 2012 11:06:07 +0000 (13:06 +0200)]
avconv: Don't split out inline sequence headers when stream copying VC1
This is required when stream copying VC1 in ismv - there's one
global header in the moov atom, but keyframes have a separate
sequence header prepended.
Signed-off-by: Martin Storsjö <martin@martin.st>
Janne Grunau [Mon, 13 Feb 2012 20:10:48 +0000 (21:10 +0100)]
rv34: handle size changes during frame multithreading
Factors all context dynamic memory handling to its own functions.
Fixes bug 220.
Janne Grunau [Mon, 13 Feb 2012 21:12:54 +0000 (22:12 +0100)]
rv40: prevent undefined signed overflow in rv40_loop_filter()
Janne Grunau [Mon, 13 Feb 2012 20:14:19 +0000 (21:14 +0100)]
rv34: use AVERROR return values in ff_rv34_decode_frame()
Also adds an error message.
Janne Grunau [Thu, 9 Feb 2012 20:19:16 +0000 (21:19 +0100)]
rv34: use uint16_t for RV34DecContext.deblock_coefs
It is used as bitfield with 16 entries.
Diego Biurrun [Mon, 13 Feb 2012 18:37:25 +0000 (19:37 +0100)]
librtmp: Add "lib" prefix to librtmp URLProtocol declarations.
This allows easily differentiating between both implementations within the build
system and combining the native implementation for plain RTMP with librtmp for
the RTMPE, RTMPS, RTMPT, RTMPTE protocol variants.
Martin Storsjö [Tue, 14 Feb 2012 09:10:52 +0000 (11:10 +0200)]
movenc: Use defines instead of hardcoded numbers for RTCP types
Signed-off-by: Martin Storsjö <martin@martin.st>
Paul B Mahol [Tue, 14 Feb 2012 03:48:42 +0000 (03:48 +0000)]
smjpegdec: implement seeking
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diego Biurrun [Mon, 13 Feb 2012 19:03:30 +0000 (20:03 +0100)]
swscale: Remove some write-only variables related to alpha handling.
Ronald S. Bultje [Mon, 13 Feb 2012 21:28:50 +0000 (13:28 -0800)]
swscale: fix crashes in yuv2yuvX on x86-32.
They were introduced in an earlier commit that introduced use of named
arguments. One cause was a typo, a second cause appears to be a bug in
x264asm that I work around by not using named arguments.
Aneesh Dogra [Sun, 12 Feb 2012 17:48:49 +0000 (17:48 +0000)]
sunrast: Add fate test for gray8.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Matthew Szatmary [Wed, 8 Feb 2012 13:00:40 +0000 (15:00 +0200)]
rtpdec: Use 4 byte startcodes for H.264
If muxing into mpegts, 4 byte startcodes for the first NAL
of an access unit is required. Thus it is simplest for the
RTP depacketizer to just use 4 byte startcodes everywhere.
Signed-off-by: Martin Storsjö <martin@martin.st>
Diego Biurrun [Sun, 12 Feb 2012 09:58:46 +0000 (10:58 +0100)]
matroskadec: Mark variable as av_unused.
This avoids unused variable warnings when zlib/bzlib are not available.
Diego Biurrun [Fri, 10 Feb 2012 14:10:42 +0000 (15:10 +0100)]
Move some conditionally used variables into the block where they are used.
This allows dropping the av_unused argument from them.
Diego Biurrun [Fri, 10 Feb 2012 14:13:32 +0000 (15:13 +0100)]
Drop some completely unnecessary av_unused attributes.
Diego Biurrun [Fri, 10 Feb 2012 14:04:37 +0000 (15:04 +0100)]
swscale: Remove unused variable alpMmxFilter.
Diego Biurrun [Mon, 13 Feb 2012 07:24:00 +0000 (08:24 +0100)]
Drop unnecessary av_uninit attributes from some variable declarations.
Recent versions of gcc (4.4+) no longer give false positive warnings.
Martin Storsjö [Mon, 23 Jan 2012 12:58:38 +0000 (14:58 +0200)]
movenc: Support muxing wmapro in ismv/isma
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Sun, 29 Jan 2012 00:12:06 +0000 (02:12 +0200)]
mpegtsenc: Add an AVOption for forcing a new PAT/PMT/SDT to be written
When segmenting the output from the mpegts muxer, one can
now set this option when cutting to a new segment, to make sure
the next segment starts with PAT/PMT/SDT.
Signed-off-by: Martin Storsjö <martin@martin.st>
Ronald S. Bultje [Mon, 13 Feb 2012 01:10:32 +0000 (17:10 -0800)]
swscale: move YUV2PACKED16WRAPPER() macro down to where it is used.
Ronald S. Bultje [Mon, 13 Feb 2012 01:07:09 +0000 (17:07 -0800)]
swscale: handle gray16 as a "planar" YUV format (Y-only, of course).
This allows removing any gray16-specific code, which is essentially
identical to the per-plane code in yuv2plane*().
Ronald S. Bultje [Sun, 12 Feb 2012 23:48:24 +0000 (15:48 -0800)]
swscale: use yuv2packed1() functions for unscaled chroma also.
Ronald S. Bultje [Sun, 12 Feb 2012 23:55:44 +0000 (15:55 -0800)]
swscale: fix incorrect chroma bias in yuv2rgb48_1_c().
Ronald S. Bultje [Sun, 12 Feb 2012 23:47:14 +0000 (15:47 -0800)]
swscale: fix invalid memory accesses in yuvpacked1() functions.
Diego Biurrun [Tue, 7 Feb 2012 14:06:09 +0000 (15:06 +0100)]
Move PS2 MMI code below the mips subdirectory, where it belongs.
Also give a more suitable name to the MMI-optimized IDCT;
it is not PS2-specific, as the name currently suggests.
Diego Biurrun [Sat, 11 Feb 2012 20:56:37 +0000 (21:56 +0100)]
mips: Move MMI function declarations to a header.
This fixes compilation with -Werror=missing-prototypes.
Diego Biurrun [Fri, 10 Feb 2012 19:29:29 +0000 (20:29 +0100)]
build: Set correct dependencies for rtmp* protocols implemented by librtmp.
Ronald S. Bultje [Sun, 12 Feb 2012 01:51:52 +0000 (17:51 -0800)]
swscale: convert yuv2yuvX() to using named arguments.
Ronald S. Bultje [Sun, 12 Feb 2012 02:46:12 +0000 (18:46 -0800)]
swscale: rename "dstw" to "w" to prevent name collisions.
"dstw" can collide with the word-version of the "dst" argument, causing
all kind of weird stuff down the pipe.
Ronald S. Bultje [Sun, 12 Feb 2012 01:02:29 +0000 (17:02 -0800)]
swscale: use named registers in yuv2yuv1_plane() place.
Most of the function had been converted before, but I forgot this
particular location.
Andrey Utkin [Sun, 12 Feb 2012 14:46:46 +0000 (16:46 +0200)]
lavf: fix aspect ratio mismatch message.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Andrey Utkin [Sun, 5 Feb 2012 14:49:14 +0000 (16:49 +0200)]
avconv: set AVFormatContext.duration from '-t'
Set output files duration to recording_time option, if given.
Rationale: to save duration into metadata for file that is written to
non-seekable output, for formats like FLV (with metadata at beginning).
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Anton Khirnov [Sat, 11 Feb 2012 19:39:12 +0000 (20:39 +0100)]
cljr: implement encode2.
Anton Khirnov [Sat, 11 Feb 2012 19:37:41 +0000 (20:37 +0100)]
cljr: set the properties of the coded_frame, not input frame.
Anton Khirnov [Sat, 11 Feb 2012 19:03:42 +0000 (20:03 +0100)]
dnxhdenc: switch to encode2.
Anton Khirnov [Sat, 11 Feb 2012 18:44:05 +0000 (19:44 +0100)]
bmpenc: switch to encode2().
Justin Ruggles [Sat, 11 Feb 2012 20:58:04 +0000 (15:58 -0500)]
FATE: update reference for seek-alac_mp4
This should have been updated in
b590f3a7bf9103ac7a7a61c48568676201d6824b.
Aneesh Dogra [Sat, 11 Feb 2012 20:29:56 +0000 (01:59 +0530)]
sunrast: Return AVERROR values instead of -1.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Aneesh Dogra [Sat, 11 Feb 2012 05:12:45 +0000 (10:42 +0530)]
sunrast: Add support for gray8 decoding.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Ronald S. Bultje [Sat, 11 Feb 2012 16:42:28 +0000 (08:42 -0800)]
swscale: enforce a minimum filtersize.
At very small dimensions, this calculation could lead to zero-sized
filters, which leads to uninitialized output, zero-sized allocations,
loop overflows in SIMD that uses do{..}while(i++<filtersize); instead
of for(i=0;i<filtersize;i++){..} and several other similar failures.
Therefore, require a minimum filtersize of 1.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Justin Ruggles [Fri, 3 Feb 2012 23:04:58 +0000 (18:04 -0500)]
alacenc: use AVCodec.encode2()
Justin Ruggles [Fri, 3 Feb 2012 22:56:49 +0000 (17:56 -0500)]
alacenc: cosmetics: indentation
Justin Ruggles [Fri, 3 Feb 2012 22:53:41 +0000 (17:53 -0500)]
alacenc: consolidate bitstream writing into a single function.
Simplifies use of verbatim mode.
Justin Ruggles [Fri, 3 Feb 2012 22:27:31 +0000 (17:27 -0500)]
alacenc: only encode frame size in header for a final smaller frame
Otherwise it is not needed because it matches the frame size as encoded in
the extradata.
Justin Ruggles [Thu, 2 Feb 2012 23:06:28 +0000 (18:06 -0500)]
alacenc: store current frame size in AlacEncodeContext.
This avoids an indirection and will simplify implementation of encode2()
Justin Ruggles [Thu, 2 Feb 2012 21:11:17 +0000 (16:11 -0500)]
alacenc: return AVERROR codes in alac_encode_frame()
Justin Ruggles [Thu, 2 Feb 2012 21:03:41 +0000 (16:03 -0500)]
alacenc: calculate a new max frame size for the final small frame
Gives a better estimate of buffer requirements and a better decision of
whether or not to use verbatim mode.
Justin Ruggles [Thu, 2 Feb 2012 02:21:24 +0000 (21:21 -0500)]
alacenc: pretty-printing and other cosmetics
Justin Ruggles [Thu, 2 Feb 2012 01:54:34 +0000 (20:54 -0500)]
alacenc: fix error handling and potential memleaks in alac_encode_init()
Justin Ruggles [Thu, 2 Feb 2012 01:43:43 +0000 (20:43 -0500)]
alacenc: do not set coded_frame->key_frame
It is already set in avcodec_alloc_frame()
Justin Ruggles [Thu, 2 Feb 2012 01:41:40 +0000 (20:41 -0500)]
alacenc: do not set bits_per_coded_sample
encoded ALAC does not have a fixed number of bits per sample
Justin Ruggles [Thu, 2 Feb 2012 01:38:06 +0000 (20:38 -0500)]
alacenc: remove unneeded frame_size check in alac_encode_frame()
Ronald S. Bultje [Fri, 10 Feb 2012 18:51:43 +0000 (10:51 -0800)]
tta: error out if samplerate is zero.
Prevents a division by zero later on.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Justin Ruggles [Thu, 9 Feb 2012 19:49:59 +0000 (14:49 -0500)]
ttadec: fix invalid free when an error occurs while decoding 24-bit tta
Justin Ruggles [Sat, 11 Feb 2012 01:18:10 +0000 (20:18 -0500)]
wavpack: add needed braces for 2 statements inside an if block
Paul B Mahol [Sun, 5 Feb 2012 21:14:33 +0000 (21:14 +0000)]
v210enc: remove redundant check for pix_fmt
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Paul B Mahol [Fri, 10 Feb 2012 18:51:57 +0000 (18:51 +0000)]
wavpack: allow user to disable CRC checking
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Aneesh Dogra [Wed, 8 Feb 2012 17:48:40 +0000 (23:18 +0530)]
v210enc: Use Bytestream2 functions
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Joakim Plate [Fri, 10 Feb 2012 18:47:53 +0000 (18:47 +0000)]
cafdec: Check return value of avio_seek and avoid modifying state if it fails
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Joakim Plate [Fri, 3 Feb 2012 19:13:45 +0000 (19:13 +0000)]
yop: Check return value of avio_seek and avoid modifying state if it fails
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Joakim Plate [Fri, 3 Feb 2012 19:13:44 +0000 (19:13 +0000)]
tta: Check return value of avio_seek and avoid modifying state if it fails
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Joakim Plate [Fri, 3 Feb 2012 19:13:43 +0000 (19:13 +0000)]
tmv: Check return value of avio_seek and avoid modifying state if it fails
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Joakim Plate [Fri, 3 Feb 2012 19:13:42 +0000 (19:13 +0000)]
r3d: Check return value of avio_seek and avoid modifying state if it fails
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Joakim Plate [Fri, 3 Feb 2012 19:13:41 +0000 (19:13 +0000)]
nsvdec: Check return value of avio_seek and avoid modifying state if it fails
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Joakim Plate [Fri, 3 Feb 2012 19:13:40 +0000 (19:13 +0000)]
mpc8: Check return value of avio_seek and avoid modifying state if it fails
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Joakim Plate [Fri, 3 Feb 2012 19:13:39 +0000 (19:13 +0000)]
jvdec: Check return value of avio_seek and avoid modifying state if it fails
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Joakim Plate [Fri, 3 Feb 2012 19:13:38 +0000 (19:13 +0000)]
filmstripdec: Check return value of avio_seek and avoid modifying state if it fails
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Joakim Plate [Fri, 3 Feb 2012 19:13:37 +0000 (19:13 +0000)]
ffmdec: Check return value of avio_seek and avoid modifying state if it fails
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Joakim Plate [Fri, 3 Feb 2012 19:13:36 +0000 (19:13 +0000)]
dv: Check return value of avio_seek and avoid modifying state if it fails
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Joakim Plate [Fri, 3 Feb 2012 19:13:34 +0000 (19:13 +0000)]
bink: Check return value of avio_seek and avoid modifying state if it fails
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Paul B Mahol [Fri, 10 Feb 2012 00:05:14 +0000 (00:05 +0000)]
Check AVCodec.pix_fmts in avcodec_open2()
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Alex Converse [Fri, 10 Feb 2012 04:21:47 +0000 (20:21 -0800)]
svq3: Prevent illegal reads while parsing extradata.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Rafaël Carré [Thu, 9 Feb 2012 00:34:37 +0000 (19:34 -0500)]
remove ParseContext1
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Rafaël Carré [Wed, 8 Feb 2012 22:46:51 +0000 (17:46 -0500)]
vc1: use ff_parse_close
It works as long as ParseContext is the first member of the private struct
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Rafaël Carré [Wed, 8 Feb 2012 22:46:50 +0000 (17:46 -0500)]
mpegvideo parser: move specific fields into private context
This obviates using ParseContext1, which is slated for removal.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Rafaël Carré [Fri, 10 Feb 2012 01:26:17 +0000 (20:26 -0500)]
mpeg4video parser: move specific fields into private context
This obviates using ParseContext1, which is slated for removal.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Rafaël Carré [Wed, 8 Feb 2012 22:46:48 +0000 (17:46 -0500)]
cavs parser: fix parser context type
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Yordan Makariev [Wed, 11 Jan 2012 19:27:20 +0000 (21:27 +0200)]
4xm, timefilter: K&R formatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Martin Storsjö [Thu, 9 Feb 2012 21:28:01 +0000 (23:28 +0200)]
rtpenc: Write a log message if the max packet size is too small
Signed-off-by: Martin Storsjö <martin@martin.st>
Ronald S. Bultje [Fri, 10 Feb 2012 06:57:01 +0000 (22:57 -0800)]
h264: disallow constrained intra prediction modes for luma.
Conversion of the luma intra prediction mode to one of the constrained
("alzheimer") ones can happen by crafting special bitstreams, causing
a crash because we'll call a NULL function pointer for 16x16 block intra
prediction, since constrained intra prediction functions are only
implemented for chroma (8x8 blocks).
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Alex Converse [Fri, 10 Feb 2012 01:56:29 +0000 (17:56 -0800)]
dv: Move tables from dvdata.h to dvdata.c
Alex Converse [Fri, 10 Feb 2012 01:53:05 +0000 (17:53 -0800)]
dv: Move a table used only by the demuxer out of a shared header.
Alex Converse [Fri, 10 Feb 2012 01:49:57 +0000 (17:49 -0800)]
dv: Move functions used only by the encoder out of a shared header.
Alex Converse [Fri, 10 Feb 2012 01:44:47 +0000 (17:44 -0800)]
dv: Split dvdata.h into dvdata.h and dvquant.h
Alex Converse [Fri, 10 Feb 2012 01:11:55 +0000 (17:11 -0800)]
dv: Fix small overread in audio frequency table.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Justin Ruggles [Tue, 7 Feb 2012 19:31:49 +0000 (14:31 -0500)]
avcodec: set avpkt->size to 0 if encode2() did not output a packet
Justin Ruggles [Tue, 7 Feb 2012 00:08:32 +0000 (19:08 -0500)]
avcodec: for audio encoding, set packet dts to packet pts.
There are no audio encoders which do frame reordering.
Justin Ruggles [Thu, 9 Feb 2012 18:00:30 +0000 (13:00 -0500)]
ac3dsp: do not use pshufb in ac3_extract_exponents_ssse3()
We need to do unsigned saturation in order to cover the corner case when the
absolute coefficient value is
16777215 (the maximum value).
Fixes Bug #216
Michael Niedermayer [Fri, 3 Feb 2012 03:27:27 +0000 (22:27 -0500)]
ac3dec: Move center and surround mix level tables to the parser.
That way all mix levels as exported by avpriv_ac3_parse_header()
will have the same meaning.
Previously the 3-bit center mix level for E-AC-3 was used to index in a
4-entry table, leading to out-of-array reads.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Signed-off-by: Alex Converse <alex.converse@gmail.com>
Alex Converse [Wed, 8 Feb 2012 18:10:34 +0000 (10:10 -0800)]
aacdec: Unify preconfigured layout and PCE layout.
Alex Converse [Fri, 3 Feb 2012 02:59:15 +0000 (18:59 -0800)]
aacdec: Support native channel layout when requested.
Alex Converse [Tue, 31 Jan 2012 23:54:21 +0000 (15:54 -0800)]
aacdec: Try to sniff a reasonable channel layout for PCE based configurations.
This changes the output order of multichannel PCE based streams.