no way to compare when less than two revisions

Differences

This shows you the differences between two versions of the page.


mplayer_slave_protocol [2013/06/28 21:59] (current) – created beandog
Line 1: Line 1:
 +====== mplayer slave protocol ======
  
 +This is an old copy of the slave.txt file (I'm guessing).  I remember it was always hard to find, so here's my old copy of what it was:
 +
 +<code>
 +SLAVE MODE PROTOCOL
 +-------------------
 +
 +The -slave option switches on slave mode, in which MPlayer works as a backend
 +for other programs. Instead of intercepting keyboard events, MPlayer will read
 +commands separated by a newline (\n) from stdin.
 +
 +To try slave mode out by hand, run
 +
 +  mplayer -slave -quiet <movie>
 +
 +and type slave commands into the console window.
 +
 +You can also use a fifo file (named pipe):
 +
 +  mkfifo </tmp/fifofile>
 +  mplayer -slave -input file=</tmp/fifofile> <movie>
 +
 +Most slave mode commands are equivalent to command line options, though not
 +necessarily under the same name. Detailed descriptions can be found in the
 +man page.
 +
 +All commands can be prefixed with one of "pausing ", "pausing_keep ", or
 +"pausing_toggle ". "pausing " tells MPlayer to pause as soon as possible
 +after processing the command. "pausing_keep " tells MPlayer to do so only if
 +it was already in paused mode. "pausing_toggle " tells MPlayer to do so
 +only if it was not already in paused mode. Please note that "as soon as
 +possible" can be before the command is fully executed.
 +As a temporary hack, there is also the _experimental_ "pausing_keep_force "
 +prefix, with which MPlayer will not exit the pause loop at all.
 +Like this you can avoid the "frame stepping" effect of "pausing_keep "
 +but most commands will either not work at all or behave in unexpected ways.
 +For "set_mouse_pos" and "key_down_event", "pausing_keep_force" is the default
 +since other values do not make much sense for them.
 +
 +
 +Available commands ('mplayer -input cmdlist' will print a list):
 +
 +
 +alt_src_step <value> (ASX playlist only)
 +    When more than one source is available it selects the next/previous one.
 +
 +audio_delay <value> [abs]
 +    Set/adjust the audio delay.
 +    If [abs] is not given or is zero, adjust the delay by <value> seconds.
 +    If [abs] is nonzero, set the delay to <value> seconds.
 +
 +[brightness|contrast|gamma|hue|saturation] <value> [abs]
 +    Set/adjust video parameters.
 +    If [abs] is not given or is zero, modifies parameter by <value>.
 +    If [abs] is non-zero, parameter is set to <value>.
 +    <value> is in the range [-100, 100].
 +
 +change_rectangle <val1> <val2>
 +    Change the position of the rectangle filter rectangle.
 +        <val1>
 +            Must be one of the following:
 +                0 = width
 +                1 = height
 +                2 = x position
 +                3 = y position
 +        <val2>
 +            If <val1> is 0 or 1:
 +                Integer amount to add/subtract from the width/height.
 +                Positive values add to width/height and negative values
 +                subtract from it.
 +            If <val1> is 2 or 3:
 +                Relative integer amount by which to move the upper left
 +                rectangle corner. Positive values move the rectangle
 +                right/down and negative values move the rectangle left/up.
 +
 +dvb_set_channel <channel_number> <card_number>
 +    Set DVB channel.
 +
 +dvdnav <button_name>
 +    Press the given dvdnav button.
 +        up
 +        down
 +        left
 +        right
 +        menu
 +        select
 +        prev
 +        mouse
 +
 +edl_mark
 +    Write the current position into the EDL file.
 +
 +frame_drop [value]
 +    Toggle/set frame dropping mode.
 +
 +get_audio_bitrate
 +    Print out the audio bitrate of the current file.
 +
 +get_audio_codec
 +    Print out the audio codec name of the current file.
 +
 +get_audio_samples
 +    Print out the audio frequency and number of channels of the current file.
 +
 +get_file_name
 +    Print out the name of the current file.
 +
 +get_meta_album
 +    Print out the 'Album' metadata of the current file.
 +
 +get_meta_artist
 +    Print out the 'Artist' metadata of the current file.
 +
 +get_meta_comment
 +    Print out the 'Comment' metadata of the current file.
 +
 +get_meta_genre
 +    Print out the 'Genre' metadata of the current file.
 +
 +get_meta_title
 +    Print out the 'Title' metadata of the current file.
 +
 +get_meta_track
 +    Print out the 'Track Number' metadata of the current file.
 +
 +get_meta_year
 +    Print out the 'Year' metadata of the current file.
 +
 +get_percent_pos
 +    Print out the current position in the file, as integer percentage [0-100).
 +
 +get_property <property>
 +    Print out the current value of a property.
 +
 +get_sub_visibility
 +    Print out subtitle visibility (1 == on, 0 == off).
 +
 +get_time_length
 +    Print out the length of the current file in seconds.
 +
 +get_time_pos
 +    Print out the current position in the file in seconds, as float.
 +
 +get_vo_fullscreen
 +    Print out fullscreen status (1 == fullscreened, 0 == windowed).
 +
 +get_video_bitrate
 +    Print out the video bitrate of the current file.
 +
 +get_video_codec
 +    Print out the video codec name of the current file.
 +
 +get_video_resolution
 +    Print out the video resolution of the current file.
 +
 +screenshot <value>
 +    Take a screenshot. Requires the screenshot filter to be loaded.
 +        0 Take a single screenshot.
 +        1 Start/stop taking screenshot of each frame.
 +
 +gui_[about|loadfile|loadsubtitle|play|playlist|preferences|skinbrowser|stop]
 +    GUI actions
 +
 +key_down_event <value>
 +    Inject <value> key code event into MPlayer.
 +
 +loadfile <file|url> <append>
 +    Load the given file/URL, stopping playback of the current file/URL.
 +    If <append> is nonzero playback continues and the file/URL is
 +    appended to the current playlist instead.
 +
 +loadlist <file> <append>
 +    Load the given playlist file, stopping playback of the current file.
 +    If <append> is nonzero playback continues and the playlist file is
 +    appended to the current playlist instead.
 +
 +loop <value> [abs]
 +    Adjust/set how many times the movie should be looped. -1 means no loop,
 +    and 0 forever.
 +
 +menu <command>
 +    Execute an OSD menu command.
 +        up     Move cursor up.
 +        down   Move cursor down.
 +        ok     Accept selection.
 +        cancel Cancel selection.
 +        hide   Hide the OSD menu.
 +
 +set_menu <menu_name>
 +    Display the menu named <menu_name>.
 +
 +mute [value]
 +    Toggle sound output muting or set it to [value] when [value] >= 0
 +    (1 == on, 0 == off).
 +
 +osd [level]
 +    Toggle OSD mode or set it to [level] when [level] >= 0.
 +
 +osd_show_property_text <string> [duration] [level]
 +    Show an expanded property string on the OSD, see -playing-msg for a
 +    description of the available expansions. If [duration] is >= 0 the text
 +    is shown for [duration] ms. [level] sets the minimum OSD level needed
 +    for the message to be visible (default: 0 - always show).
 +
 +osd_show_text <string> [duration] [level]
 +    Show <string> on the OSD.
 +
 +panscan <-1.0 - 1.0> | <0.0 - 1.0> <abs>
 +    Increase or decrease the pan-and-scan range by <value>, 1.0 is the maximum.
 +    Negative values decrease the pan-and-scan range.
 +    If <abs> is != 0, then the pan-and scan range is interpreted as an
 +    absolute range.
 +
 +pause
 +    Pause/unpause the playback.
 +
 +frame_step
 +    Play one frame, then pause again.
 +
 +pt_step <value> [force]
 +    Go to the next/previous entry in the playtree. The sign of <value> tells
 +    the direction.  If no entry is available in the given direction it will do
 +    nothing unless [force] is non-zero.
 +
 +pt_up_step <value> [force]
 +    Similar to pt_step but jumps to the next/previous entry in the parent list.
 +    Useful to break out of the inner loop in the playtree.
 +
 +quit [value]
 +    Quit MPlayer. The optional integer [value] is used as the return code
 +    for the mplayer process (default: 0).
 +
 +radio_set_channel <channel>
 +    Switch to <channel>. The 'channels' radio parameter needs to be set.
 +
 +radio_set_freq <frequency in MHz>
 +    Set the radio tuner frequency.
 +
 +radio_step_channel <-1|1>
 +    Step forwards (1) or backwards (-1) in channel list. Works only when the
 +    'channels' radio parameter was set.
 +
 +radio_step_freq <value>
 +    Tune frequency by the <value> (positive - up, negative - down).
 +
 +seek <value> [type]
 +    Seek to some place in the movie.
 +        0 is a relative seek of +/- <value> seconds (default).
 +        1 is a seek to <value> % in the movie.
 +        2 is a seek to an absolute position of <value> seconds.
 +
 +seek_chapter <value> [type]
 +    Seek to the start of a chapter.
 +        0 is a relative seek of +/- <value> chapters (default).
 +        1 is a seek to chapter <value>.
 +
 +switch_angle <value>
 +    Switch to the angle with the ID [value]. Cycle through the
 +    available angles if [value] is omitted or negative.
 +
 +set_mouse_pos <x> <y>
 +    Tells MPlayer the coordinates of the mouse in the window.
 +    This command doesn't move the mouse!
 +
 +set_property <property> <value>
 +    Set a property.
 +
 +speed_incr <value>
 +    Add <value> to the current playback speed.
 +
 +speed_mult <value>
 +    Multiply the current speed by <value>.
 +
 +speed_set <value>
 +    Set the speed to <value>.
 +
 +step_property <property> [value] [direction]
 +    Change a property by value, or increase by a default if value is
 +    not given or zero. The direction is reversed if direction is less
 +    than zero.
 +
 +stop
 +    Stop playback.
 +
 +sub_alignment [value]
 +    Toggle/set subtitle alignment.
 +        0 top alignment
 +        1 center alignment
 +        2 bottom alignment
 +
 +sub_delay <value> [abs]
 +    Adjust the subtitle delay by +/- <value> seconds or set it to <value>
 +    seconds when [abs] is nonzero.
 +
 +sub_load <subtitle_file>
 +    Loads subtitles from <subtitle_file>.
 +
 +sub_log
 +    Logs the current or last displayed subtitle together with filename
 +    and time information to ~/.mplayer/subtitle_log. Intended purpose
 +    is to allow convenient marking of bogus subtitles which need to be
 +    fixed while watching the movie.
 +
 +sub_pos <value> [abs]
 +    Adjust/set subtitle position.
 +
 +sub_remove [value]
 +    If the [value] argument is present and non-negative, removes the subtitle
 +    file with index [value]. If the argument is omitted or negative, removes
 +    all subtitle files.
 +
 +sub_select [value]
 +    Display subtitle with index [value]. Turn subtitle display off if
 +    [value] is -1 or greater than the highest available subtitle index.
 +    Cycle through the available subtitles if [value] is omitted or less
 +    than -1. Supported subtitle sources are -sub options on the command
 +    line, VOBsubs, DVD subtitles, and Ogg and Matroska text streams.
 +    This command is mainly for cycling all subtitles, if you want to set
 +    a specific subtitle, use sub_file, sub_vob, or sub_demux.
 +
 +sub_source [source]
 +    Display first subtitle from [source]. Here [source] is an integer:
 +    SUB_SOURCE_SUBS   (0) for file subs
 +    SUB_SOURCE_VOBSUB (1) for VOBsub files
 +    SUB_SOURCE_DEMUX  (2) for subtitle embedded in the media file or DVD subs.
 +    If [source] is -1, will turn off subtitle display. If [source] less than -1,
 +    will cycle between the first subtitle of each currently available sources.
 +
 +sub_file [value]
 +    Display subtitle specifid by [value] for file subs. The [value] is
 +    corresponding to ID_FILE_SUB_ID values reported by '-identify'.
 +    If [value] is -1, will turn off subtitle display. If [value] less than -1,
 +    will cycle all file subs.
 +
 +sub_vob [value]
 +    Display subtitle specifid by [value] for vobsubs. The [value] is
 +    corresponding to ID_VOBSUB_ID values reported by '-identify'.
 +    If [value] is -1, will turn off subtitle display. If [value] less than -1,
 +    will cycle all vobsubs.
 +
 +sub_demux [value]
 +    Display subtitle specifid by [value] for subtitles from DVD or embedded
 +    in media file. The [value] is corresponding to ID_SUBTITLE_ID values
 +    reported by '-identify'. If [value] is -1, will turn off subtitle display.
 +    If [value] less than -1, will cycle all DVD subs or embedded subs.
 +
 +sub_scale <value> [abs]
 +    Adjust the subtitle size by +/- <value> or set it to <value> when [abs]
 +    is nonzero.
 +
 +vobsub_lang
 +    This is a stub linked to sub_select for backwards compatibility.
 +
 +sub_step <value>
 +    Step forward in the subtitle list by <value> steps or backwards if <value>
 +    is negative.
 +
 +sub_visibility [value]
 +    Toggle/set subtitle visibility.
 +
 +forced_subs_only [value]
 +    Toggle/set forced subtitles only.
 +
 +switch_audio [value] (currently MPEG*, AVI, Matroska and streams handled by libavformat)
 +    Switch to the audio track with the ID [value]. Cycle through the
 +    available tracks if [value] is omitted or negative.
 +
 +switch_angle [value] (DVDs only)
 +    Switch to the DVD angle with the ID [value]. Cycle through the
 +    available angles if [value] is omitted or negative.
 +
 +switch_ratio [value]
 +    Change aspect ratio at runtime. [value] is the new aspect ratio expressed
 +    as a float (e.g. 1.77778 for 16/9).
 +    There might be problems with some video filters.
 +
 +switch_title [value] (DVDNAV only)
 +    Switch to the DVD title with the ID [value]. Cycle through the
 +    available titles if [value] is omitted or negative.
 +
 +switch_vsync [value]
 +    Toggle vsync (1 == on, 0 == off). If [value] is not provided,
 +    vsync status is inverted.
 +
 +teletext_add_digit <value>
 +    Enter/leave teletext page number editing mode and append given digit to
 +    previously entered one.
 +    0..9 - Append apropriate digit. (Enables editing mode if called from normal
 +           mode, and switches to normal mode when third digit is entered.)
 +    -    - Delete last digit from page number. (Backspace emulation, works only
 +           in page number editing mode.)
 +
 +teletext_go_link <1-6>
 +    Follow given link on current teletext page.
 +
 +tv_start_scan
 +    Start automatic TV channel scanning.
 +
 +tv_step_channel <channel>
 +    Select next/previous TV channel.
 +
 +tv_step_norm
 +    Change TV norm.
 +
 +tv_step_chanlist
 +    Change channel list.
 +
 +tv_set_channel <channel>
 +    Set the current TV channel.
 +
 +tv_last_channel
 +    Set the current TV channel to the last one.
 +
 +tv_set_freq <frequency in MHz>
 +    Set the TV tuner frequency.
 +
 +tv_step_freq <frequency offset in MHz>
 +    Set the TV tuner frequency relative to current value.
 +
 +tv_set_norm <norm>
 +    Set the TV tuner norm (PAL, SECAM, NTSC, ...).
 +
 +tv_set_brightness <-100 - 100> [abs]
 +    Set TV tuner brightness or adjust it if [abs] is set to 0.
 +
 +tv_set_contrast <-100 -100> [abs]
 +    Set TV tuner contrast or adjust it if [abs] is set to 0.
 +
 +tv_set_hue <-100 - 100> [abs]
 +    Set TV tuner hue or adjust it if [abs] is set to 0.
 +
 +tv_set_saturation <-100 - 100> [abs]
 +    Set TV tuner saturation or adjust it if [abs] is set to 0.
 +
 +use_master
 +    Switch volume control between master and PCM.
 +
 +vo_border [value]
 +    Toggle/set borderless display.
 +
 +vo_fullscreen [value]
 +    Toggle/set fullscreen mode.
 +
 +vo_ontop [value]
 +    Toggle/set stay-on-top.
 +
 +vo_rootwin [value]
 +    Toggle/set playback on the root window.
 +
 +volume <value> [abs]
 +    Increase/decrease volume or set it to <value> if [abs] is nonzero.
 +
 +
 +The following commands are really only useful for OSD menu console mode:
 +
 +help
 +    Displays help text, currently empty.
 +
 +exit
 +    Exits from OSD menu console. Unlike 'quit', does not quit MPlayer.
 +
 +hide
 +    Hides the OSD menu console. Clicking a menu command unhides it. Other
 +    keybindings act as usual.
 +
 +run <value>
 +    Run <value> as shell command. In OSD menu console mode stdout and stdin
 +    are through the video output driver.
 +
 +
 +Available properties:
 +
 +name               type      min     max     get set step comment
 +=================================================================
 +
 +osdlevel           int                          as -osdlevel
 +speed              float     0.01    100            as -speed
 +loop               int       -1              X        as -loop
 +pause              flag      0                        1 if paused, use with pausing_keep_force
 +filename           string                    X            file playing wo path
 +path               string                    X            file playing
 +demuxer            string                    X            demuxer used
 +stream_pos         pos                              position in stream
 +stream_start       pos                                start pos in stream
 +stream_end         pos                                end pos in stream
 +stream_length      pos                                (end - start)
 +chapter            int                            select chapter
 +chapters           int                                  number of chapters
 +angle              int                            select angle
 +length             time                      X            length of file in seconds
 +percent_pos        int             100            position in percent
 +time_pos           time      0                      position in seconds
 +metadata           str list                  X            list of metadata key/value
 +metadata/        string                    X            metadata values
 +volume             float           100            change volume
 +balance            float     -1      1              change audio balance
 +mute               flag      0                 X
 +audio_delay        float     -100    100         X
 +audio_format       int                       X
 +audio_codec        string                    X
 +audio_bitrate      int                       X
 +samplerate         int                       X
 +channels           int                       X
 +switch_audio       int       -2      255            select audio stream
 +switch_angle       int       -2      255            select DVD angle
 +switch_title       int       -2      255            select DVD title
 +fullscreen         flag      0                 X
 +deinterlace        flag      0                 X
 +ontop              flag      0                 X
 +rootwin            flag      0                 X
 +border             flag      0                 X
 +framedropping      int                          1 = soft, 2 = hard
 +gamma              int       -100    100         X
 +brightness         int       -100    100         X
 +contrast           int       -100    100         X
 +saturation         int       -100    100         X
 +hue                int       -100    100         X
 +panscan            float                     X
 +vsync              flag      0                 X
 +video_format       int                       X
 +video_codec        string                    X
 +video_bitrate      int                       X
 +width              int                                  "display" width
 +height             int                                  "display" height
 +fps                float                     X
 +aspect             float                     X
 +switch_video       int       -2      255            select video stream
 +switch_program     int       -1      65535          (see TAB default keybind)
 +sub                int       -1              X        select subtitle stream
 +sub_source         int       -1      2              select subtitle source
 +sub_file           int       -1              X        select file subtitles
 +sub_vob            int       -1              X        select vobsubs
 +sub_demux          int       -1              X        select subs from demux
 +sub_delay          float                         X
 +sub_pos            int             100            subtitle position
 +sub_alignment      int                          subtitle alignment
 +sub_visibility     flag      0                    show/hide subtitles
 +sub_forced_only    flag      0                 X
 +sub_scale          float           100            subtitles font size
 +tv_brightness      int       -100    100         X
 +tv_contrast        int       -100    100         X
 +tv_saturation      int       -100    100         X
 +tv_hue             int       -100    100         X
 +teletext_page      int             799         X
 +teletext_subpage   int             64      X     X
 +teletext_mode      flag      0                    0 - off, 1 - on
 +teletext_format    int                          0 - opaque,
 +                                                          1 - transparent,
 +                                                          2 - opaque inverted,
 +                                                          3 - transp. inv.
 +teletext_half_page int                          0 - off, 1 - top half,
 +                                                          2- bottom half</code>