source: smplayer/trunk/src/mplayerprocess.h@ 184

Last change on this file since 184 was 181, checked in by Silvan Scherrer, 9 years ago

smplayer: update trunk to version 16.8.0

  • Property svn:eol-style set to LF
File size: 4.4 KB
Line 
1/* smplayer, GUI front-end for mplayer.
2 Copyright (C) 2006-2016 Ricardo Villalba <rvm@users.sourceforge.net>
3
4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by
6 the Free Software Foundation; either version 2 of the License, or
7 (at your option) any later version.
8
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
13
14 You should have received a copy of the GNU General Public License
15 along with this program; if not, write to the Free Software
16 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17*/
18
19#ifndef MPLAYERPROCESS_H
20#define MPLAYERPROCESS_H
21
22#include <QString>
23#include "playerprocess.h"
24#include "mediadata.h"
25#include "config.h"
26
27class QStringList;
28
29class MplayerProcess : public PlayerProcess
30{
31 Q_OBJECT
32
33public:
34 MplayerProcess(QObject * parent = 0);
35 ~MplayerProcess();
36
37 bool start();
38
39 // Command line options
40 void setMedia(const QString & media, bool is_playlist = false);
41 void setFixedOptions();
42 void disableInput();
43 void setOption(const QString & option_name, const QVariant & value = QVariant());
44 void addUserOption(const QString & option);
45 void addVF(const QString & filter_name, const QVariant & value = QVariant());
46 void addAF(const QString & filter_name, const QVariant & value = QVariant());
47 void addStereo3DFilter(const QString & in, const QString & out);
48 void setSubStyles(const AssStyles & styles, const QString & assStylesFile = QString::null);
49
50 // Slave commands
51 void quit();
52 void setVolume(int v);
53 void setOSD(int o);
54 void setAudio(int ID);
55 void setVideo(int ID);
56 void setSubtitle(int type, int ID);
57 void disableSubtitles();
58 void setSecondarySubtitle(int /*ID*/) {};
59 void disableSecondarySubtitles() {};
60 void setSubtitlesVisibility(bool b);
61 void seek(double secs, int mode, bool precise);
62 void mute(bool b);
63 void setPause(bool b);
64 void frameStep();
65 void frameBackStep();
66 void showOSDText(const QString & text, int duration, int level);
67 void showFilenameOnOSD();
68 void showTimeOnOSD();
69 void setContrast(int value);
70 void setBrightness(int value);
71 void setHue(int value);
72 void setSaturation(int value);
73 void setGamma(int value);
74 void setChapter(int ID);
75 void nextChapter();
76 void previousChapter();
77 void setExternalSubtitleFile(const QString & filename);
78 void setSubPos(int pos);
79 void setSubScale(double value);
80 void setSubStep(int value);
81#ifdef MPV_SUPPORT
82 void seekSub(int value);
83#endif
84 void setSubForcedOnly(bool b);
85 void setSpeed(double value);
86 void enableKaraoke(bool b);
87 void enableExtrastereo(bool b);
88 void enableVolnorm(bool b, const QString & option);
89 void setAudioEqualizer(const QString & values);
90 void setAudioDelay(double delay);
91 void setSubDelay(double delay);
92 void setLoop(int v);
93 void setAMarker(int sec);
94 void setBMarker(int sec);
95 void clearABMarkers();
96 void takeScreenshot(ScreenshotType t, bool include_subtitles = false);
97#ifdef CAPTURE_STREAM
98 void switchCapturing();
99#endif
100 void setTitle(int ID);
101 void changeVF(const QString & filter, bool enable, const QVariant & option = QVariant());
102 void changeStereo3DFilter(bool enable, const QString & in, const QString & out);
103#if DVDNAV_SUPPORT
104 void discSetMousePos(int x, int y);
105 void discButtonPressed(const QString & button_name);
106#endif
107 void setAspect(double aspect);
108 void setFullscreen(bool b);
109#if PROGRAM_SWITCH
110 void setTSProgram(int ID);
111#endif
112 void toggleDeinterlace();
113 void askForLength();
114 void setOSDScale(double value);
115 void setChannelsFile(const QString &) {};
116
117 void enableScreenshots(const QString & dir, const QString & templ = QString::null, const QString & format = QString::null);
118
119#ifdef CAPTURE_STREAM
120 void setCaptureDirectory(const QString & dir);
121#endif
122
123protected slots:
124 void parseLine(QByteArray ba);
125 void processFinished(int exitCode, QProcess::ExitStatus exitStatus);
126 void gotError(QProcess::ProcessError);
127
128private:
129 bool notified_mplayer_is_running;
130 bool received_end_of_file;
131
132 int last_sub_id;
133
134 int mplayer_svn;
135
136#if NOTIFY_SUB_CHANGES
137 SubTracks subs;
138
139 bool subtitle_info_received;
140 bool subtitle_info_changed;
141#endif
142
143#if NOTIFY_AUDIO_CHANGES
144 Tracks audios;
145 bool audio_info_changed;
146#endif
147
148 int dvd_current_title;
149 int br_current_title;
150};
151
152#endif
Note: See TracBrowser for help on using the repository browser.