Minor tweaks and improvements to various utilities

This commit is contained in:
Hector Martin 2011-10-07 21:29:14 +01:00
parent c9769db9a2
commit af3bd6cd14
3 changed files with 25 additions and 13 deletions

View file

@ -82,7 +82,7 @@ class LaserThread(threading.Thread):
#print "render"
ftime = ol.renderFrame(60)
#print "done"
xpos -= ftime
xpos -= 0.6*ftime
if xpos < (-w-1) and cur_tweets is not None:
xpos = startpos
idx += 1

View file

@ -34,7 +34,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
#define OL_FRAMES_BUF 3
#define OL_FRAMES_BUF 5
#define VIDEO_BUF 64
#define SAMPLE_RATE 48000
@ -750,7 +750,7 @@ void *display_thread(void *arg)
if (!ctx->cur_frame || ctx->cur_frame->seekid < 0) {
printf("Dummy frame\n");
float ftime = olRenderFrame(100);
float ftime = olRenderFrame(80);
pthread_mutex_lock(&ctx->display_mode_mutex);
display_mode = ctx->display_mode;
pthread_mutex_unlock(&ctx->display_mode_mutex);
@ -822,7 +822,7 @@ void *display_thread(void *arg)
olEnd();
}
float ftime = olRenderFrame(100);
float ftime = olRenderFrame(80);
OLFrameInfo info;
olGetFrameInfo(&info);
frames++;
@ -846,7 +846,7 @@ void *display_thread(void *arg)
olTraceDeinit(trace_ctx);
for(i = 0; i < OL_FRAMES_BUF; i++)
olRenderFrame(100);
olRenderFrame(80);
olShutdown();
return NULL;

View file

@ -27,8 +27,8 @@ class RenderParameters(object):
# bound for accurate bezier rendering (lower = better)
self.flatness = 0.000002
# output render size (max 32767)
self.width = 32000
self.height = 32000
self.width = 32767
self.height = 32767
# angle below which a node is considered smooth
self.curve_angle = 30.0
# dwell time at the start of a path (samples)
@ -828,7 +828,7 @@ def load_svg(path):
parser.parse(path)
return handler.frame
def write_ild(params, rframe, path):
def write_ild(params, rframe, path, center=True):
min_x = min_y = max_x = max_y = None
for i,sample in enumerate(rframe):
x,y = sample.coord
@ -850,10 +850,17 @@ def write_ild(params, rframe, path):
raise ValueError("No points rendered")
# center image
offx = -(min_x + max_x)/2
offy = -(min_y + max_y)/2
width = max_x - min_x
height = max_y - min_y
if center:
offx = -(min_x + max_x)/2
offy = -(min_y + max_y)/2
width = max_x - min_x
height = max_y - min_y
else:
offx = 0
offy = 0
width = 2*max(abs(min_x), abs(max_x))
height = 2*max(abs(min_y), abs(max_y))
scale = 1
if width > 65534 or height > 65534:
@ -902,6 +909,7 @@ def write_ild(params, rframe, path):
if __name__ == "__main__":
optimize = True
verbose = True
center = True
params = RenderParameters()
if sys.argv[1] == "-q":
@ -912,6 +920,10 @@ if __name__ == "__main__":
optimize = False
sys.argv = [sys.argv[0]] + sys.argv[2:]
if sys.argv[1] == "-noctr":
center = False
sys.argv = [sys.argv[0]] + sys.argv[2:]
if sys.argv[1] == "-cfg":
params.load(sys.argv[2])
sys.argv = [sys.argv[0]] + sys.argv[3:]
@ -931,7 +943,7 @@ if __name__ == "__main__":
if verbose:
print "Done"
write_ild(params, rframe, sys.argv[2])
write_ild(params, rframe, sys.argv[2], center)
if verbose:
print "Statistics:"