1 #ifndef PLAYBACKPREFS_H
2 #define PLAYBACKPREFS_H
6 class PlaybackBufferSize
;
7 class PlaybackBufferBytes
;
8 class PlaybackOutChannels
;
9 class PlaybackViewFollows
;
10 class PlaybackRealTime
;
11 class PlaybackSoftwareTimer
;
12 class PlaybackModuleFragment
;
13 class PlaybackReadLength
;
14 class PlaybackDisableNoEdits
;
15 class PlaybackPreload
;
16 class PlaybackNearest
;
17 class PlaybackBicubicBicubic
;
18 class PlaybackBicubicBilinear
;
19 class PlaybackBilinearBilinear
;
20 class PlaybackDeblock
;
22 class PlaybackHeadCount
;
25 #include "adeviceprefs.h"
27 #include "mwindow.inc"
28 #include "preferencesthread.h"
29 #include "vdeviceprefs.h"
31 class PlaybackPrefs
: public PreferencesDialog
34 PlaybackPrefs(MWindow
*mwindow
, PreferencesWindow
*pwindow
);
38 int set_strategy(int strategy
);
39 int get_buffer_bytes();
41 static char* strategy_to_string(int strategy
);
42 void delete_strategy();
45 ArrayList
<PlaybackConfig
*>* current_config_list();
46 PlaybackConfig
* current_config();
47 void update(int interpolation
);
50 ADevicePrefs
*audio_device
;
51 VDevicePrefs
*video_device
;
52 ArrayList
<BC_ListBoxItem
*> strategies
;
54 BC_Title
*framerate_title
;
55 PlaybackNearest
*nearest_neighbor
;
56 PlaybackBicubicBicubic
*cubic_cubic
;
57 PlaybackBicubicBilinear
*cubic_linear
;
58 PlaybackBilinearBilinear
*linear_linear
;
59 PlaybackDeblock
*mpeg4_deblock
;
64 BC_Title
*head_count_title
;
65 BC_Title
*vdevice_title
;
66 PlaybackHead
*head_text
;
67 PlaybackHeadCount
*head_count_text
;
68 PlaybackHost
*host_text
;
72 class PlaybackStrategy
: public BC_PopupTextBox
75 PlaybackStrategy(PlaybackPrefs
*prefs
, int x
, int y
);
81 class PlaybackHead
: public BC_TumbleTextBox
84 PlaybackHead(PlaybackPrefs
*prefs
, int x
, int y
);
89 class PlaybackHeadCount
: public BC_TumbleTextBox
92 PlaybackHeadCount(PlaybackPrefs
*prefs
, int x
, int y
);
97 class PlaybackHost
: public BC_TextBox
100 PlaybackHost(PlaybackPrefs
*prefs
, int x
, int y
);
102 PlaybackPrefs
*prefs
;
105 class PlaybackBufferSize
: public BC_TextBox
108 PlaybackBufferSize(int x
, int y
, PreferencesWindow
*pwindow
, PlaybackPrefs
*playback
, char *text
);
110 PreferencesWindow
*pwindow
;
111 PlaybackPrefs
*playback
;
114 class PlaybackReadLength
: public BC_TextBox
117 PlaybackReadLength(int x
, int y
, PreferencesWindow
*pwindow
, PlaybackPrefs
*playback
, char *text
);
119 PreferencesWindow
*pwindow
;
120 PlaybackPrefs
*playback
;
123 class PlaybackModuleFragment
: public BC_TextBox
126 PlaybackModuleFragment(int x
, int y
, PreferencesWindow
*pwindow
, PlaybackPrefs
*playback
, char *text
);
128 PreferencesWindow
*pwindow
;
129 PlaybackPrefs
*playback
;
132 class PlaybackBufferBytes
: public BC_Title
135 PlaybackBufferBytes(int x
, int y
, PreferencesWindow
*pwindow
, PlaybackPrefs
*playback
, char *text
);
139 PreferencesWindow
*pwindow
;
140 PlaybackPrefs
*playback
;
145 class PlaybackDisableNoEdits
: public BC_CheckBox
148 PlaybackDisableNoEdits(PreferencesWindow
*pwindow
, int value
, int y
);
150 PreferencesWindow
*pwindow
;
153 class PlaybackViewFollows
: public BC_CheckBox
156 PlaybackViewFollows(PreferencesWindow
*pwindow
, int value
, int y
);
158 PreferencesWindow
*pwindow
;
161 class PlaybackSoftwareTimer
: public BC_CheckBox
164 PlaybackSoftwareTimer(PreferencesWindow
*pwindow
, int value
, int y
);
166 PreferencesWindow
*pwindow
;
169 class PlaybackRealTime
: public BC_CheckBox
172 PlaybackRealTime(PreferencesWindow
*pwindow
, int value
, int y
);
174 PreferencesWindow
*pwindow
;
177 class VideoEveryFrame
: public BC_CheckBox
180 VideoEveryFrame(PreferencesWindow
*pwindow
, int x
, int y
);
182 PreferencesWindow
*pwindow
;
185 class PlaybackDeblock
: public BC_CheckBox
188 PlaybackDeblock(PreferencesWindow
*pwindow
, int x
, int y
);
190 PreferencesWindow
*pwindow
;
193 class PlaybackNearest
: public BC_Radial
196 PlaybackNearest(PreferencesWindow
*pwindow
, PlaybackPrefs
*prefs
, int value
, int x
, int y
);
200 PreferencesWindow
*pwindow
;
201 PlaybackPrefs
*prefs
;
204 class PlaybackBicubicBicubic
: public BC_Radial
207 PlaybackBicubicBicubic(PreferencesWindow
*pwindow
, PlaybackPrefs
*prefs
, int value
, int x
, int y
);
211 PreferencesWindow
*pwindow
;
212 PlaybackPrefs
*prefs
;
215 class PlaybackBicubicBilinear
: public BC_Radial
218 PlaybackBicubicBilinear(PreferencesWindow
*pwindow
,
219 PlaybackPrefs
*prefs
,
226 PreferencesWindow
*pwindow
;
227 PlaybackPrefs
*prefs
;
230 class PlaybackBilinearBilinear
: public BC_Radial
233 PlaybackBilinearBilinear(PreferencesWindow
*pwindow
,
234 PlaybackPrefs
*prefs
,
241 PreferencesWindow
*pwindow
;
242 PlaybackPrefs
*prefs
;
245 class PlaybackPreload
: public BC_TextBox
248 PlaybackPreload(int x
,
250 PreferencesWindow
*pwindow
,
251 PlaybackPrefs
*playback
,
254 PreferencesWindow
*pwindow
;
255 PlaybackPrefs
*playback
;