-
Notifications
You must be signed in to change notification settings - Fork 0
/
TODO
241 lines (160 loc) · 8.16 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
= todo =
== maybe ==
crashes in virtualdub?
a stop button for recording
determine if getDIBIts gives you them in "bmp 0x003" format [to i420 method?]
check if i420 works on divisible by 2, but not 4. And doesn't cause a diagonal line :P
== all never ==
I may "need" to do some phreaky d3d screen capture to get it be fast enough with aero windows 8. Hope not though. (I hope it lets me capture more quickly...)
implement the virtualdub "oh it is so fast and nice opengl screen capture with resize on the GPU" LOL if it's even possible these days...
LODO can I somehow BitBlt into the graphics card to save speed somehow? Or negotiate it so that pData points straight into the gpu?
check if libswscale would be "faster" than using windows' own resizing methods. Yikes if it is LOL.
multi thread so that it can do BitBlt while "the other one" is doing memcpy etc. LOL
advertise mine on google results for "stream desktop to tv" LOL
an "easy screencast to your TV" button LOL
fix the tearing/shearing bug?
just log the emails I saw on it
that one "famous email" and then one other saw it...
better...reg names [explicit, with default]
TODO: beat 15 fps in windows 7/8/ask about it msdn etc. too
use dibsection+-memcpy? might need "funky" line stuff...hmm...does it though? what is going on there? (+ 31)/32 but I don't seem to experience failures with i420? or do I?
use drawdibdraw for speed?
skype hack so it will show in the preview LOL.
"follow mouse" option LOL
"yellow circle around mouse" option LOL
increase priority when capturing?
optionally?
try "setting time for one frame in the future"
seemed to fail
or figure out if I can even get better than 15 fps at all.
don't use getDIBits [raw memcpy?] if we already match the right stuff. Oh wait getDIBits is probably already optimized for this case so we might not gain
anything, plus, this is a teeny overhead, compared to aero at least.
ask what I should *really* do waiting-wise here...
install 64 bit-ter with 32 always...sure :P
scale with DirectX. Not. LOL.
catch hard crash when writing to the reg
some super dumb-easy way to record the screen.
"resize this window, and go!" with ability to stop--basically for recording films, etc.
16 bit javaw.exe doesn't seem "present" for 64 bit machines. what? nor java.exe?
can "smart poll" to know when it should switch to/grab the next frame [yeah right]
like sample subsections to look for change LOL
1/3rd the time, up front dedup [I guess this is the most efficient place to look for dupe's...]
except it doesn't cost much so why not...100 fps? or poll [prolly not]?
also why...does it seem to drag like that when upscaling? Is upconverting maxing out a core?
start green overlay flashing when ffmpeg actually starts LOL
plus "start pause" synchro LOL.
prompt for filename "after"
make audio "device only" ?
new icon "record audio only" ?
@ffmpeg can you capture realtime?
maybe pipe through avisynth and it can for now?
also for audio as a work around for now...hmm...
nextsprocket my citrix competitor LOL, no good.
though shared virtualbox boxes might work just as well...
on online.net
I don't know if I could ever compete. bad idea.
can ffmpeg be forced to "drop all them other frames, just chose the latest"? to keep up? does it keep up?
force them to have java installed first :P
delete storage file on uninstall
"issues"
qtrle ?
fix sound crackling <sniff>
easy streamer setter-upper with VLC [?] ffmpeg?
ask if you want to beep after it's done...
tell how to setup record what you hear, if initial fails (instructions)
rename record what you hear.
@VLC doesn't play itself
huh? figure out?
ping instructions
looks like VLC for now until ffmpeg has qtcapture et al...
hmm mac is somewhat of an enigma...
uPnP ?
never
find a good default encoding with high video fps or the like
qtrle
16 bit?
add encodings dropdown
options "encode with this, then really encode using that"
dropdowns for selecting an audio side by side the video
@audio "here's how to have both:" plus instructions from http://camstudio.org/forum/discussion/33/waveoutgetselectcontrol-failed/p2
can do "start", "stop" with audio + video
just audio
note it in the other project
can use hwnd dorectly.
double check stats when using versus not.
should work when dragged too...?
do we/should we re-encode after the capture?
what's the second best [available] for capture after huffyuv?
check mjpeg, mpeg4 video, others mentioned
maybe there are slightly lossy ones that work well?
x264 low compression or what not? high speed x264?
bounty ffserver windows [?]
a "test via snapshot" method
add a "start infinite mirror" helper app :P
it should default to 24 bit I guess, always
== maybe/never ==
@TODO: screen capture needs a real "window"
@TODO: screen capture: provide a demo VLC streaming example command line and/or saving it to disk
@TODO: when they hold down "x" it highlights the mouse
@TODO: it can follow the mouse, too
benchmark full screen speed, too.
use sox to combine audio [?]
http://superuser.com/questions/6801/what-is-the-best-software-for-desktop-recording
check for ideas
bounty audio mixer ffmpeg, offer to help :P
try out red5 :P
do I "need" a BI_BITFIELDS even? make it optional? 32-bit?
system tray "start" "stop"
prompt for filename after
"reset all" option
ask why ffmpeg -f dshow -i video=...:audio= stutters
fix it
bounty camstudio encoding codec ffmpeg
gzip
create the "amazing morpher/sweet broadcasting dshow input"
it can have checkmarks for "on/off" of one way, I guess.
AviSynth input, with ffmpeg input into that LOL.
https://github.com/Kovensky/mplayer-kovensky.git
Another way is to directly manipulate the desktop bitmap in the Video Memory if enough memory is available as provided by DirectDraw. http://www.codeproject.com/KB/cs/DesktopCaptureWithMouse.aspx hmm
[blacky check if memcpy would be useful...]
check on compression sizes
integrate with a mirror display driver, and somehow...have a codec that just describes diffs, I guess? That's the VNC codec in a pinch LOL.
a "wait until this bit is flipped to start" option :P
ps3ms integration [with XBMC to test it [?]]
tell them to use ffmpeg :P
tell them they can become a playon.tv competitor!
tell them to support wii browsing/playback :P
slider for audio/video quality
split pins up so that, in essence, the incoming guy can select his fps on the fly.
if this is the only way, if this is "how" ffmpeg and VLC would use it to choose the right pin.
I assume other properties are unsettable, basically, or something?
detect slow aero, tell them how to fix it :)
release "just the device" as an installable, or maybe just tell people they can use it/leverage it...
internally it can "stretch" or "downstretch" [except ffmpeg can just do that so...no big win there but hey :P]
could save a bit of cpu time if we could capture that way, or do it earlier rather than later.
just do naive sampling for now [?] maybe use some stretch function?
+- optimized stretching [my own naive local]
if they want non-naive then let them do that downstream
"high quality scaling"
a way to "ignore" duplicates...
doing this earlier could save some other [memcpy's] and processing time...
ideas from camstudio
http://www.youtube.com/watch?v=KDiGO0clUY4
etc. etc.
@ffmpeg: suggest tcmalloc (linux/windows?)
it can "draw" all over the main monitor on the fly optionally when recording.
it can pause to control start time more precisely...
or at least have some output so they can tell when it really begins
little green arrow/indicator for when ffmpeg actually has started for sure maybe?
it can have caption lists.
it can "post-re-encode" to something friendlier [x264?]
it can "remaster" videos by recording over them [?] to add captions et al?
or maybe at least um...some way to add captions post fact...hmmm...
it should display 30 pins, one for each fps :P
maybe some for 0.5 fps too?
convenient to save cpu in certain situations, slightly more cross program-zy ease
at least I think ffmpeg would use this, possibly vlc too?
make so it can stream, too :P
plus just audio streaming even...
bounty lagarith ffmpeg [?]
bounty