[vlc-devel] commit: sout: allow duplicate outputs to be merged ( Rafaël Carré )

git version control git at videolan.org
Sun Jan 17 07:44:39 CET 2010


vlc | branch: master | Rafaël Carré <rafael.carre at gmail.com> | Sun Jan 17 07:37:33 2010 +0100| [1743aae3ec2b5e8b02c3bad36dcd50914ac09d8a] | committer: Rafaël Carré 

sout: allow duplicate outputs to be merged

The stream_out_t chain creation is modified: all modules are created by
the core (or by stream_out_duplicate) instead of being created by the
previous module.

sout_StreamChain{New,Delete} replace sout_Stream{New,Delete} to handle
modules chains instead of individual modules

sout_Stream{New,Delete} are still used by those new functions but made
static inside stream_output.c

Remove now unneeded psz_chain from struct sout_instance_t
Replace pointer to chain of next module by pointer to next module in
struct sout_stream_t

Example use:

vlc --sout-all input.mp4 --sout
"#duplicate{dst=transcode{vcodec=mp2v},select=es=0,dst=transcode,select=es=1}:std{...}"

(dst=transcode without acodec/vcodec is a hack to pass the encoded stream to
stream_out_standard without transcoding)

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1743aae3ec2b5e8b02c3bad36dcd50914ac09d8a
---

 include/vlc_sout.h                       |    8 +-
 modules/stream_out/autodel.c             |   13 +-
 modules/stream_out/bridge.c              |   29 ++---
 modules/stream_out/duplicate.c           |   14 ++-
 modules/stream_out/gather.c              |   16 +--
 modules/stream_out/record.c              |    6 +-
 modules/stream_out/switcher.c            |   16 +--
 modules/stream_out/transcode/audio.c     |    2 +-
 modules/stream_out/transcode/osd.c       |    4 +-
 modules/stream_out/transcode/spu.c       |    2 +-
 modules/stream_out/transcode/transcode.c |   13 +-
 modules/stream_out/transcode/transcode.h |    1 -
 modules/stream_out/transcode/video.c     |    3 +-
 src/libvlccore.sym                       |    4 +-
 src/stream_output/stream_output.c        |  206 ++++++++++++++++++++++--------
 15 files changed, 210 insertions(+), 127 deletions(-)

Diff:   http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=1743aae3ec2b5e8b02c3bad36dcd50914ac09d8a



More information about the vlc-devel mailing list