<div dir="ltr"><div dir="ltr"><div class="gmail_default" style="font-size:small"><span class="gmail-im"> Andrea</span></div><div class="gmail_default" style="font-size:small"><span class="gmail-im">> Uhmm... Since high framerates can cause problems with the code<br>
> involving motion2point and interpolation, maybe we should do as<br>
> IgorBeg and Pierre suggested: add an asterisk to non-standard<br>
> resolutions and an explanation popup (or something similar). <br></span></div><div class="gmail_default" style="font-size:small"><span class="gmail-im">After reading Georgy's reply, probably the user's who use the high fps know more about it then we can put in the manual</span></div><div class="gmail_default" style="font-size:small"><span class="gmail-im">It also sounds like high fps is not really all that non-standard for gamers -- just ordinary people with reasonable monitors!<br></span></div></div><br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>there was chapter about plugins in </div><div><br></div><div><a href="http://heroinewarrior.com/cinelerra/cinelerra.html#PLUGIN-AUTHORING" target="_blank">http://heroinewarrior.com/cinelerra/cinelerra.html#PLUGIN-AUTHORING</a></div><div><br></div></blockquote><div style="font-size:small" class="gmail_default">This chapter was purposely left out of the GG manual because anyone who wants to write a plugin can look at the other</div><div style="font-size:small" class="gmail_default">ones and see how they work as they will have to understand it anyway. Plus we did not want to have to review that</div><div style="font-size:small" class="gmail_default">chapter to make sure it was all still correct.</div><div style="font-size:small" class="gmail_default"></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>I also found another framerate table, but it probably only affect ffmpeg plugins:</div><div><br></div><div>static AVRational best_frame_rate(double frame_rate) { static const int m1 = 1001*12, m2 = 1000*12; static const int freqs[] = { 40*m1, 48*m1, 50*m1, 60*m1, 80*m1,120*m1, 240*m1, 24*m2, 30*m2, 60*m2, 12*m2, 15*m2, 48*m2, 0, }; double max_err = 1.; int freq, best_freq = 0;</div><div> for( int i=0; (freq = i<30*12 ? (i+1)*1001 : freqs[i-30*12]); ++i ) { double framerate = (double)freq / m1; double err = fabs(frame_rate/framerate - 1.);</div><div> if( err >= max_err ) continue; max_err = err; best_freq = freq; } return max_err < 0.0001 ? (AVRational) { best_freq, m1 } : (AVRational) { 0, 0 }; }</div><div><br></div><div><br></div><div>in cinelerra/pluginfclient.C</div><div><br></div><div>guess we need to add 90*m2 there too? </div><div> <br></div></blockquote><div><span class="gmail_default" style="font-size:small">OK, I will make a note to make this table look the same BUT not until after Thursday.</span> </div></div></div>