[vlc-devel] Sout chain DSL

Julien 'Lta' BALLET elthariel at gmail.com
Tue Oct 15 15:22:51 CEST 2013


Hi,

I've recently been working on a small ruby DSL to make sout chain more
readable, more reusable and simpler to write (at least, that's the
goal). This project is called 'activevlc' and can be found on github
(https://github.com/elthariel/activevlc).

After writing your chain using activevlc's dsl, you can translate it
back to POSC (Plain Ol' Sout Chain), or directly run it.

I would _really enjoy_ any form of feedback from you guys, like
syntactic sugar ideas, new features, bug reports, etc. So ... let's
clone this and test it (now !)


Still here ..? Ok, you need to taste of it first, so here's a small
example copied from the project's README which will deinterlace, then
transcode to aac/h264, then display and save to an mp4 file :

# Note: This has a lot more swag with colors and shit, go to github :)
AtiveVlc::pipe do
  transcode do
    deinterlace
    audio :aac do
      bitrate 128 # 128 kpbs
      channels 2
    end
    video :h264 do
      encoder :x264 do
        bpyramid :strict
        bframes 4
        cabac false
      end
      bitrate 512 # 512 kbps
    end
  end
  duplicate do
    to :file do
      mux :mp4
      dst 'output.mp4'
    end
    to :display
  end
end

which will be translated to :

:sout="#transcode{deinterlace, acodec=aac, ab=128, channels=2,
vcodec=h264, venc=x264{bpyramid=strict, bframes=4, no-cabac},
vb=512}:duplicate{dst=standard{mux=mp4, dst='output.mp4'},
dst=display}"

Cheers,
Lta.



More information about the vlc-devel mailing list