• gbazin's avatar
    · eb505a2f
    gbazin authored
    * ALL: changes to the playlist_Add() and VLC_AddTarget() proto to include a list of options associated with the input.
    * src/input/input.c: parses the input options list before spawning the input and create object variables for these options. Options are of the form "[no[-]]foo[=bar]" where foo is the option name and bar is its value.
    * src/input/input.c, src/input/input_dec.c: use the object var api to get the value of the "sout", "sout-video" and "sout-audio" options.
    * src/libvlc.c: extended the command line parser to parse input options. Input options must always follow the input they apply to and begin with a ':'.
    
    All these changes allow you to specify input specific options.
    eg: ./vlc --no-sout-audio yourvideo.mpeg :sout=udp/http::8080 :sout-audio yourvideo2.mpeg
    Here the ":sout" option will only apply to yourvideo.mpeg.
    "--no-sout-audio" will be a global option so will apply to yourvideo2.mpeg but the global behaviour is overriden by ":sout-audio" for yourvideo.mpeg.
    
    TODO: - the interfaces need to be modified to benefit from the new playlist_Add() api.
          - only "sout", "sout-video", "sout-audio" implemented for now. To make it work with other options, we need to get rid of all the config_GetFoo() and replace them with var_Create()/var_Change()/var_Get().
    eb505a2f
input.c 23.1 KB