diff --git a/changelog.txt b/changelog.txt index f7d4b8c..8c64a7d 100644 --- a/changelog.txt +++ b/changelog.txt @@ -22,7 +22,16 @@ You should have received a copy of the GNU General Public License along with thi Lbre Media Server ChangeLog ******************************************************************************* -0.01 (8/1/2013) SVN Rev 1: +0.02 + ++ Open/Save configuration to file. ++ Moved the Change Media Path button to the File menu. ++ New Pure Data external fileselector. Changed the file selection logic from PD to C. ++ New CITP/MSEx menu. Init CITP/MSEx button moved here. ++ New Make Thumbs option in the CITP/MSEx menu. Executes the script to generate the thumbnails from media. ++ Now Pure Data binary in included. Version 0.44-2 + +0.01 (8/1/2013) Git Rev 1: + Audio en un proceso independiente. Reproducción de .oggs + Nuevos tipos de Alpha Blending. Nuevo canal DMX en la personalidad de video para el tipo de Alpha. diff --git a/credits.txt b/credits.txt index 69cea0d..96ea014 100644 --- a/credits.txt +++ b/credits.txt @@ -1,6 +1,6 @@ -LibreMediaServer uses free soft from: +LibreMediaServer uses or has modified free software from: -Open Lightin Arquitecture - Copyright © Simon Newton - LPGL License. +Open Lighting Arquitecture - Copyright © Simon Newton - LPGL License. - ola2pd is a modification of ola_dmxmonitor. GPL License. GEM - Graphics Environment for Multimedia. GPL License. @@ -10,6 +10,8 @@ GEM - Graphics Environment for Multimedia. GPL License. - Copyright © 2003-2007 James Tittle II, - Copyright © 2003-2008 Chris Clepper +pix2jpg is a modification of pix_write. GPL License. + Pure Data - Copyright © Miller Miller Puckette and others - BSD License. cyclone/coll.pd_linux - Copyright © Miller Miller Puckette and others - BSD License. cyclone/counter.pd_linux - Copyright © Miller Miller Puckette and others - BSD License. diff --git a/fileselector/fileselector.c b/fileselector/fileselector.c index fb0f683..d2df339 100644 --- a/fileselector/fileselector.c +++ b/fileselector/fileselector.c @@ -1,11 +1,11 @@ /* --------------------------------------------------------------------------*/ /* */ -/* object for getting files */ -/* */ -/* Based on folderlist by Hans-Christoph Steiner */ -/* */ -/* Copyright (c) 2013 Santi Noreña */ -/* */ +/* object for getting files from a source tree + + Copyright (c) 2013 Santi Noreña + + Based on folderlist by Hans-Christoph Steiner */ + /* This program is free software; you can redistribute it and/or */ /* modify it under the terms of the GNU General Public License */ /* as published by the Free Software Foundation; either version 3 */ @@ -30,11 +30,6 @@ #include #include -//static char *version = "$Revision: 0.01 $"; - -#define DEBUG(x) - - /*------------------------------------------------------------------------------ * CLASS DEF */ @@ -43,10 +38,10 @@ static t_class *fileselector_class; typedef struct _fileselector { t_object x_obj; t_symbol* x_pattern; - int x_folder; - int x_file; - int x_type; - t_outlet *x_out; + int x_folder; + int x_file; + int x_type; + t_outlet *x_out; } t_fileselector; /*------------------------------------------------------------------------------ @@ -57,105 +52,140 @@ static void fileselector_output(t_fileselector* x) { if (strlen(x->x_pattern->s_name) < 6) { - post("fileselector: Set path first"); - return; - } - char path[FILENAME_MAX] = ""; + post("fileselector: Set path first"); + return; + } + char path[FILENAME_MAX] = ""; glob_t glob_buffer; - unsigned int i; + unsigned int i; strncpy(path, x->x_pattern->s_name, FILENAME_MAX); if(sys_isabsolutepath(path)) { - if(x->x_type < 25) // Make the path video - { - return; - } - if((x->x_type > 24) && (x->x_type<50)) // Make the path video - { - strncat(path,"/video/*",8); - glob_t glob_video; - switch(glob(path, GLOB_TILDE, NULL, &glob_video)) - { - case GLOB_NOSPACE: - pd_error(x,"[fileselector] out of memory for \"%s\"",path); - break; - # ifdef GLOB_ABORTED - case GLOB_ABORTED: - pd_error(x,"[fileselector] aborted \"%s\"",path); - break; - # endif - # ifdef GLOB_NOMATCH - case GLOB_NOMATCH: - pd_error(x,"[fileselector] nothing found for %s ",path); - break; - # endif - } - i = x->x_folder; - if (i < glob_video.gl_pathc) - { - strncpy(path, glob_video.gl_pathv[i],strnlen(glob_video.gl_pathv[i],FILENAME_MAX)); - strncat(path, "/*", 2); - globfree(&glob_video); - } - else - { - post("fileselector: folder is greater than the number of folders"); - globfree(&glob_video); - return; - } - } - if((x->x_type > 49) && (x->x_type<75)) // Make the path image - { - strncat(path,"/image/*",8); - } - if((x->x_type > 74) && (x->x_type<100)) // Make the path image - { - strncat(path,"/fonts/*",8); - } - switch(glob(path, GLOB_TILDE, NULL,&glob_buffer)) - { - case GLOB_NOSPACE: - pd_error(x,"[fileselector] out of memory for \"%s\"",path); - break; - # ifdef GLOB_ABORTED - case GLOB_ABORTED: - pd_error(x,"[fileselector] aborted \"%s\"",path); - break; - # endif - # ifdef GLOB_NOMATCH - case GLOB_NOMATCH: - pd_error(x,"[fileselector] nothing found for \"%s\"",path); - break; - # endif - } - i = x->x_file; - if (i < glob_buffer.gl_pathc) - { - outlet_symbol(x->x_out, gensym(glob_buffer.gl_pathv[i])); - } + if(x->x_type < 25) // Make the path video + { + return; + } + if((x->x_type > 24) && (x->x_type<50)) // Make the path video + { + strncat(path,"/video/*",8); + glob_t glob_video; + switch(glob(path, GLOB_TILDE, NULL, &glob_video)) + { + case GLOB_NOSPACE: + pd_error(x,"[fileselector] out of memory for \"%s\"",path); + break; + # ifdef GLOB_ABORTED + case GLOB_ABORTED: + pd_error(x,"[fileselector] aborted \"%s\"",path); + break; + # endif + # ifdef GLOB_NOMATCH + case GLOB_NOMATCH: + pd_error(x,"[fileselector] nothing found for %s ",path); + break; + # endif + } + i = x->x_folder; + if (i < glob_video.gl_pathc) + { + strncpy(path, glob_video.gl_pathv[i],strnlen(glob_video.gl_pathv[i],FILENAME_MAX)); + strncat(path, "/*", 2); + globfree(&glob_video); + } + else + { + post("fileselector: folder is greater than the number of folders"); + globfree(&glob_video); + return; + } + } + if((x->x_type > 49) && (x->x_type<75)) // Make the path image + { + strncat(path,"/image/*",8); + } + if((x->x_type > 74) && (x->x_type<100)) // Make the path image + { + strncat(path,"/fonts/*",8); } - globfree( &(glob_buffer) ); + if(x->x_type > 255) // Make the path sound + { + strncat(path,"/sound/*",8); + glob_t glob_audio; + switch(glob(path, GLOB_TILDE, NULL, &glob_audio)) + { + case GLOB_NOSPACE: + pd_error(x,"[fileselector] out of memory for \"%s\"",path); + break; + # ifdef GLOB_ABORTED + case GLOB_ABORTED: + pd_error(x,"[fileselector] aborted \"%s\"",path); + break; + # endif + # ifdef GLOB_NOMATCH + case GLOB_NOMATCH: + pd_error(x,"[fileselector] nothing found for %s ",path); + break; + # endif + } + i = x->x_folder; + if (i < glob_audio.gl_pathc) + { + strncpy(path, glob_audio.gl_pathv[i],strnlen(glob_audio.gl_pathv[i],FILENAME_MAX)); + strncat(path, "/*", 2); + globfree(&glob_audio); + } + else + { + post("fileselector: folder is greater than the number of folders"); + globfree(&glob_audio); + return; + } + } + // Look for the file + switch(glob(path, GLOB_TILDE, NULL,&glob_buffer)) + { + case GLOB_NOSPACE: + pd_error(x,"[fileselector] out of memory for \"%s\"",path); + break; + # ifdef GLOB_ABORTED + case GLOB_ABORTED: + pd_error(x,"[fileselector] aborted \"%s\"",path); + break; + # endif + # ifdef GLOB_NOMATCH + case GLOB_NOMATCH: + pd_error(x,"[fileselector] nothing found for \"%s\"",path); + break; + # endif + } + i = x->x_file; + if (i < glob_buffer.gl_pathc) + { + outlet_symbol(x->x_out, gensym(glob_buffer.gl_pathv[i])); + } + } + globfree( &(glob_buffer) ); } static void fileselector_set(t_fileselector* x, t_symbol *s) { - x->x_pattern = s; + x->x_pattern = s; } static void fileselector_folder(t_fileselector* x, t_floatarg f) { - x->x_folder = f; - return; + x->x_folder = f; + return; } static void fileselector_file(t_fileselector* x, t_floatarg f) { - x->x_file = f; + x->x_file = f; return; } static void fileselector_type(t_fileselector* x, t_floatarg f) { - x->x_type = f; + x->x_type = f; return; } @@ -181,8 +211,8 @@ void fileselector_setup(void) // add inlet folder class_addmethod(fileselector_class,(t_method)fileselector_folder,gensym("folder"),A_FLOAT, 0); // add inlet file -class_addmethod(fileselector_class,(t_method)fileselector_file,gensym("file"),A_FLOAT, 0); + class_addmethod(fileselector_class,(t_method)fileselector_file,gensym("file"),A_FLOAT, 0); // add inlet type -class_addmethod(fileselector_class,(t_method)fileselector_type,gensym("type"),A_FLOAT, 0); + class_addmethod(fileselector_class,(t_method)fileselector_type,gensym("type"),A_FLOAT, 0); } diff --git a/pd/layer.pd b/pd/layer.pd index 9b8cdd1..40a852f 100644 --- a/pd/layer.pd +++ b/pd/layer.pd @@ -1,69 +1,69 @@ -#N canvas 1 85 1438 789 10; -#X obj 214 138 unpack f f f f f f f f f f f f f f f f f f f f f f f +#N canvas 1 90 1351 649 10; +#X obj 214 -2 unpack f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f; -#X obj 156 412 change; -#X obj 204 411 change; -#X obj 282 327 change; -#X obj 336 328 change; -#X obj 390 327 change; -#X obj 442 327 change; -#X obj 496 328 change; -#X obj 282 424 change; -#X obj 337 423 change; -#X obj 391 423 change; -#X obj 445 424 change; -#X obj 498 423 change; -#X obj 567 329 change; -#X obj 646 330 change; -#X obj 698 331 change; -#X obj 760 334 change; -#X obj 813 334 change; -#X obj 580 412 change; -#X obj 114 243 change; -#X obj 163 243 change; -#X obj 211 242 change; -#X obj 16 412 change; -#X obj 62 412 change; -#X obj 107 412 change; -#X obj 214 116 list split 32; -#X obj 391 468 << 8; -#X obj 391 510 +; -#X obj 445 468 << 8; -#X obj 445 510 +; -#X obj 214 93 inlet; -#X obj 16 264 s \$0-c1; -#X obj 71 266 s \$0-c2; -#X obj 116 266 s \$0-c3; -#X obj 165 266 s \$0-c4; -#X obj 213 265 s \$0-c5; -#X obj 16 435 s \$0-c6; -#X obj 62 434 s \$0-c7; -#X obj 107 435 s \$0-c8; -#X obj 156 434 s \$0-c9; -#X obj 204 435 s \$0-c10; -#X obj 282 348 s \$0-c11; -#X obj 336 349 s \$0-c12; -#X obj 390 348 s \$0-c13; -#X obj 442 348 s \$0-c14; -#X obj 496 349 s \$0-c15; -#X obj 282 445 s \$0-c16; -#X obj 337 444 s \$0-c17; -#X obj 391 552 s \$0-c18; -#X obj 445 552 s \$0-c19; -#X obj 580 435 s \$0-c26; -#X obj 637 434 s \$0-c27; -#X obj 689 434 s \$0-c28; -#X obj 744 435 s \$0-c29; -#X obj 801 436 s \$0-c30; -#X obj 798 286 s \$0-c31; -#X obj 856 287 s \$0-c32; -#X obj 921 288 s \$0-c33; -#X obj 976 288 s \$0-c34; -#X obj 1034 289 s \$0-c35; -#X obj 1090 290 s \$0-c36; -#X obj 1148 291 s \$0-c37; -#X obj 760 354 s \$0-c24; -#X obj 813 355 s \$0-c25; +#X obj 156 272 change; +#X obj 204 271 change; +#X obj 282 187 change; +#X obj 336 188 change; +#X obj 390 187 change; +#X obj 442 187 change; +#X obj 496 188 change; +#X obj 282 284 change; +#X obj 337 283 change; +#X obj 391 283 change; +#X obj 445 284 change; +#X obj 498 283 change; +#X obj 567 189 change; +#X obj 646 190 change; +#X obj 698 191 change; +#X obj 760 194 change; +#X obj 813 194 change; +#X obj 580 272 change; +#X obj 114 103 change; +#X obj 163 103 change; +#X obj 211 102 change; +#X obj 16 272 change; +#X obj 62 272 change; +#X obj 107 272 change; +#X obj 214 -24 list split 32; +#X obj 391 328 << 8; +#X obj 391 370 +; +#X obj 445 328 << 8; +#X obj 445 370 +; +#X obj 214 -47 inlet; +#X obj -12 124 s \$0-c1; +#X obj 51 126 s \$0-c2; +#X obj 116 126 s \$0-c3; +#X obj 165 126 s \$0-c4; +#X obj 213 125 s \$0-c5; +#X obj 16 295 s \$0-c6; +#X obj 62 294 s \$0-c7; +#X obj 107 295 s \$0-c8; +#X obj 156 294 s \$0-c9; +#X obj 204 295 s \$0-c10; +#X obj 282 208 s \$0-c11; +#X obj 336 209 s \$0-c12; +#X obj 390 208 s \$0-c13; +#X obj 442 208 s \$0-c14; +#X obj 496 209 s \$0-c15; +#X obj 282 305 s \$0-c16; +#X obj 337 304 s \$0-c17; +#X obj 391 412 s \$0-c18; +#X obj 445 412 s \$0-c19; +#X obj 580 295 s \$0-c26; +#X obj 637 294 s \$0-c27; +#X obj 689 294 s \$0-c28; +#X obj 744 295 s \$0-c29; +#X obj 801 296 s \$0-c30; +#X obj 798 146 s \$0-c31; +#X obj 856 147 s \$0-c32; +#X obj 921 148 s \$0-c33; +#X obj 976 148 s \$0-c34; +#X obj 1034 149 s \$0-c35; +#X obj 1090 150 s \$0-c36; +#X obj 1148 151 s \$0-c37; +#X obj 760 214 s \$0-c24; +#X obj 813 215 s \$0-c25; #N canvas 608 225 492 333 selector 0; #X obj 102 161 outlet; #X obj 335 157 outlet; @@ -112,7 +112,7 @@ f f f f f f f f f; #X connect 20 0 16 0; #X connect 20 0 21 0; #X connect 21 0 16 0; -#X restore 621 -87 pd selector; +#X restore 621 -227 pd selector; #N canvas 1 112 300 418 imagen 0; #X obj 100 321 pix_image; #X msg 4 240 open \$1; @@ -140,7 +140,7 @@ f f f f f f f f f; #X connect 9 0 0 0; #X connect 10 0 9 0; #X connect 11 0 0 0; -#X restore 514 41 pd imagen; +#X restore 514 -99 pd imagen; #N canvas 1 85 1438 789 video 0; #X msg -9 224 open \$1; #X obj 116 224 gemhead; @@ -480,7 +480,7 @@ f f f f f f f f f; #X connect 138 0 137 0; #X connect 141 0 8 0; #X connect 142 0 138 0; -#X restore 639 42 pd video; +#X restore 639 -98 pd video; #N canvas 620 161 653 615 video_render 0; #X obj 232 95 inlet; #X text 336 319 Green; @@ -948,7 +948,7 @@ f f f f f f f f f; #X floatatom 255 324 3 -1 2 0 - - -; #X floatatom 278 324 3 -1 2 0 - - -; #X floatatom 301 324 3 -1 2 0 - - -; -#N canvas 0 0 450 469 pack 0; +#N canvas 0 50 450 469 pack 0; #X obj 69 169 pack 0 0 0 0 0 0 0 0 0; #X obj 69 139 t b f; #X obj 106 139 t b f; @@ -1749,7 +1749,7 @@ f f f f f f f f f; #X connect 110 0 107 0; #X connect 111 0 108 0; #X connect 113 0 102 0; -#X restore 579 75 pd video_render; +#X restore 579 -65 pd video_render; #N canvas 361 96 951 665 texto 0; #X obj 421 -381 gemhead; #X msg 252 -31 font \$1; @@ -1866,42 +1866,42 @@ f f f f f f f f f; #X connect 58 0 52 0; #X connect 59 0 60 0; #X connect 60 0 3 0; -#X restore 742 43 pd texto; -#X obj 450 490 t b; -#X obj 397 489 t b; -#X obj 1135 189 list split 8; -#X obj 1135 213 s \$0-fx1; -#X obj 646 352 s \$0-c22; -#X obj 698 353 s \$0-c23; -#X obj 980 134 list split 5; -#X obj 980 186 unpack f f f f f; -#X obj 423 19 outlet; -#X obj 1234 250 unpack f f f f; -#X obj 1234 272 s \$0-c46; -#X obj 1234 228 list split 4; -#X obj 579 105 outlet; -#X obj 854 -94 inlet; -#X obj 565 4 spigot; -#X obj 684 0 spigot; -#X obj 788 2 spigot; -#X obj 854 -28 select 0; -#X msg 854 10 0; -#X obj 684 -54 float; -#X obj 899 -3 b; -#X obj 16 243 change 2; -#X obj 71 244 change 2; -#X obj 637 412 change 2; -#X obj 692 412 change 2; -#X obj 744 415 change 2; -#X obj 801 414 change 2; -#X obj 798 264 change 2; -#X obj 856 266 change 2; -#X obj 921 267 change 2; -#X obj 976 267 change 2; -#X obj 1034 266 change 2; -#X obj 1090 267 change 2; -#X obj 1148 268 change 2; -#X text 18 -92 (c) 2012 Santiago Noreña libremediaserver@gmail.com +#X restore 742 -97 pd texto; +#X obj 450 350 t b; +#X obj 397 349 t b; +#X obj 1135 49 list split 8; +#X obj 1135 73 s \$0-fx1; +#X obj 646 212 s \$0-c22; +#X obj 698 213 s \$0-c23; +#X obj 980 -6 list split 5; +#X obj 980 46 unpack f f f f f; +#X obj 423 -121 outlet; +#X obj 1234 110 unpack f f f f; +#X obj 1234 132 s \$0-c46; +#X obj 1234 88 list split 4; +#X obj 579 -35 outlet; +#X obj 854 -234 inlet; +#X obj 565 -136 spigot; +#X obj 684 -140 spigot; +#X obj 788 -138 spigot; +#X obj 854 -168 select 0; +#X msg 854 -130 0; +#X obj 684 -194 float; +#X obj 899 -143 b; +#X obj -12 103 change 2; +#X obj 51 104 change 2; +#X obj 637 272 change 2; +#X obj 692 272 change 2; +#X obj 744 275 change 2; +#X obj 801 274 change 2; +#X obj 798 124 change 2; +#X obj 856 126 change 2; +#X obj 921 127 change 2; +#X obj 976 127 change 2; +#X obj 1034 126 change 2; +#X obj 1090 127 change 2; +#X obj 1148 128 change 2; +#X text 18 -232 (c) 2012 Santiago Noreña libremediaserver@gmail.com GPL License; #X connect 0 0 90 0; #X connect 0 1 91 0; @@ -2018,4 +2018,4 @@ GPL License; #X connect 100 0 59 0; #X connect 101 0 60 0; #X connect 102 0 61 0; -#X coords 0 789 1 788 50 30 0; +#X coords 0 649 1 648 50 30 0; diff --git a/pd/layer_audio.pd b/pd/layer_audio.pd index a3d89f7..839741c 100644 --- a/pd/layer_audio.pd +++ b/pd/layer_audio.pd @@ -1,17 +1,12 @@ -#N canvas 335 134 904 417 10; -#N canvas 393 95 477 527 audio_player 0; +#N canvas 352 90 904 417 10; +#N canvas 391 105 477 527 audio_player 0; #X msg 22 107 open \$1; #X msg 203 167 start; #X msg 242 168 stop; #X obj 119 214 oggread~; #X msg 274 168 resume; #X obj 22 9 inlet; -#X obj 117 9 inlet; -#X obj 22 85 spigot; -#X msg 117 50 1; -#X msg 162 51 0; #X obj 219 105 / 25; -#X obj 219 85 spigot; #X obj 219 125 int; #X obj 219 10 r \$0-c5; #X obj 100 265 *~ 0; @@ -24,7 +19,6 @@ #X text 361 123 Volumen; #X text 224 284 Pan; #X obj 212 340 * 0.00392157; -#X obj 117 30 select 1; #X obj 219 145 select 0 1 2; #X msg 119 175 seek \$1; #X obj 119 110 r \$0-c8; @@ -41,47 +35,38 @@ #X connect 0 0 3 0; #X connect 1 0 3 0; #X connect 2 0 3 0; -#X connect 3 0 14 0; -#X connect 3 1 15 0; -#X connect 3 2 30 0; +#X connect 3 0 9 0; +#X connect 3 1 10 0; +#X connect 3 2 24 0; #X connect 4 0 3 0; -#X connect 5 0 7 0; -#X connect 6 0 24 0; -#X connect 7 0 0 0; -#X connect 8 0 7 1; -#X connect 8 0 11 1; -#X connect 9 0 7 1; -#X connect 9 0 11 1; -#X connect 10 0 12 0; -#X connect 11 0 10 0; -#X connect 12 0 25 0; -#X connect 13 0 11 0; -#X connect 14 0 37 0; -#X connect 15 0 36 0; -#X connect 16 0 15 1; -#X connect 17 0 14 1; -#X connect 19 0 28 0; -#X connect 20 0 23 0; -#X connect 23 0 31 0; -#X connect 23 0 33 0; -#X connect 24 0 8 0; -#X connect 24 1 9 0; -#X connect 25 0 1 0; -#X connect 25 1 2 0; -#X connect 25 2 4 0; -#X connect 26 0 3 0; -#X connect 27 0 29 0; -#X connect 28 0 17 0; -#X connect 28 0 16 0; -#X connect 29 0 26 0; -#X connect 29 0 30 0; -#X connect 31 0 35 0; -#X connect 32 0 36 1; -#X connect 33 0 32 0; -#X connect 34 0 37 1; -#X connect 35 0 34 0; -#X connect 36 0 18 1; -#X connect 37 0 18 0; +#X connect 5 0 0 0; +#X connect 6 0 7 0; +#X connect 7 0 19 0; +#X connect 8 0 6 0; +#X connect 9 0 31 0; +#X connect 10 0 30 0; +#X connect 11 0 10 1; +#X connect 12 0 9 1; +#X connect 14 0 22 0; +#X connect 15 0 18 0; +#X connect 18 0 25 0; +#X connect 18 0 27 0; +#X connect 19 0 1 0; +#X connect 19 1 2 0; +#X connect 19 2 4 0; +#X connect 20 0 3 0; +#X connect 21 0 23 0; +#X connect 22 0 12 0; +#X connect 22 0 11 0; +#X connect 23 0 20 0; +#X connect 23 0 24 0; +#X connect 25 0 29 0; +#X connect 26 0 30 1; +#X connect 27 0 26 0; +#X connect 28 0 31 1; +#X connect 29 0 28 0; +#X connect 30 0 13 1; +#X connect 31 0 13 0; #X restore 37 -282 pd audio_player; #X obj 437 -92 change; #X obj 490 -92 change; @@ -114,136 +99,32 @@ #X obj 708 -67 s \$0-c14; #X obj 763 -67 s \$0-c15; #X obj 825 -67 s \$0-c16; -#N canvas 1 104 1366 680 selector 0; -#X obj 669 -356 loadbang; -#X obj 221 455 outlet; -#X obj 591 -142 outlet; -#X obj 559 -423 / 25; -#X obj 280 -218 spigot; -#X msg 375 -295 1; -#X msg 413 -295 0; -#X msg 522 -268 1; -#X msg 562 -268 2; -#X msg 598 -268 3; -#X msg 632 -268 4; -#X obj 559 -353 select 1 2 3 4; -#X msg 666 -268 0; -#X msg 252 142 symbol \$1; -#X text 280 -296 folder; -#X obj 559 -383 int; -#X obj 332 -198 symbol; -#X obj 341 301 t l; -#X obj 253 413 list split 1; -#X obj 222 394 list split; -#X obj 252 166 t b a; -#X obj 330 217 symbol; -#X obj 216 195 t b b; -#X obj 252 222 t b b; -#X obj 222 354 list; -#X obj 252 302 list prepend; -#X obj 384 167 b; -#X msg 332 -130 symbol \$1; -#X obj 202 -124 b; -#X obj 361 -34 t l; -#X obj 224 -3 list; -#X obj 245 -37 list prepend; -#X obj 224 37 list split; -#X obj 252 62 list split 1; -#X obj 252 102 makefilename %s/*; -#X obj 81 307 int; -#X obj 118 302 + 1; -#X msg 20 267 0; -#X msg 115 224 0; -#X msg 149 224 1; -#X obj 81 267 metro 100; -#X obj 189 408 b; -#X obj 221 434 symbol; -#X obj 81 361 select 1; -#X obj 332 -158 makefilename %s/sound/*; -#X obj 280 -258 r \$0-c3; -#X obj 498 100 r \$0-c4; -#X text 531 -95 Tipo de media: 0 Off 1 Playback; -#X obj 559 -463 r \$0-c6; -#X obj 332 -238 r path; -#X obj 245 -77 folder_list; -#X obj 252 262 folder_list; -#X symbolatom 657 55 80 0 0 0 - - -; -#X symbolatom 676 308 80 0 0 0 - - -; -#X connect 0 0 12 0; -#X connect 3 0 15 0; -#X connect 4 0 32 1; -#X connect 4 0 28 0; -#X connect 5 0 4 1; -#X connect 6 0 4 1; -#X connect 7 0 2 0; -#X connect 8 0 2 0; -#X connect 9 0 2 0; -#X connect 10 0 2 0; -#X connect 11 0 7 0; -#X connect 11 0 5 0; -#X connect 11 0 16 0; -#X connect 11 1 8 0; -#X connect 11 1 6 0; -#X connect 11 2 9 0; -#X connect 11 2 6 0; -#X connect 11 3 6 0; -#X connect 11 3 10 0; -#X connect 11 4 6 0; -#X connect 11 4 12 0; -#X connect 12 0 2 0; -#X connect 13 0 20 0; -#X connect 15 0 11 0; -#X connect 16 0 44 0; -#X connect 17 0 25 1; -#X connect 18 0 42 1; -#X connect 19 1 18 0; -#X connect 20 0 22 0; -#X connect 20 0 39 0; -#X connect 20 1 21 0; -#X connect 21 0 51 1; -#X connect 22 0 24 0; -#X connect 22 1 23 0; -#X connect 23 0 51 0; -#X connect 23 1 25 1; -#X connect 24 0 19 0; -#X connect 25 0 17 0; -#X connect 25 0 24 1; -#X connect 26 0 24 0; -#X connect 26 0 39 0; -#X connect 27 0 28 0; -#X connect 27 0 50 1; -#X connect 28 0 31 1; -#X connect 28 0 30 0; -#X connect 28 0 50 0; -#X connect 29 0 31 1; -#X connect 30 0 32 0; -#X connect 31 0 29 0; -#X connect 31 0 30 1; -#X connect 32 1 33 0; -#X connect 33 0 34 0; -#X connect 33 0 52 0; -#X connect 34 0 13 0; -#X connect 35 0 36 0; -#X connect 35 0 43 0; -#X connect 36 0 35 1; -#X connect 37 0 35 1; -#X connect 38 0 40 0; -#X connect 39 0 40 0; -#X connect 40 0 35 0; -#X connect 41 0 42 0; -#X connect 42 0 1 0; -#X connect 42 0 53 0; -#X connect 43 0 38 0; -#X connect 43 0 37 0; -#X connect 43 0 41 0; -#X connect 44 0 27 0; -#X connect 45 0 4 0; -#X connect 46 0 19 1; -#X connect 46 0 26 0; -#X connect 48 0 3 0; -#X connect 49 0 16 0; -#X connect 50 0 31 0; -#X connect 51 0 25 0; +#N canvas 122 209 412 197 selector 0; +#X obj 193 -66 outlet; +#X text 99 -210 folder; +#X obj 95 -193 r \$0-c3; +#X obj 175 -193 r \$0-c4; +#X obj 340 -194 r path; +#X text 186 -209 File; +#X obj 193 -99 fileselector; +#X msg 95 -160 folder \$1; +#X msg 175 -159 file \$1; +#X msg 250 -160 type 256; +#X msg 340 -158 set \$1; +#X obj 250 -192 loadbang; +#X obj 95 -132 b; +#X connect 2 0 7 0; +#X connect 3 0 8 0; +#X connect 4 0 10 0; +#X connect 6 0 0 0; +#X connect 7 0 6 0; +#X connect 7 0 12 0; +#X connect 8 0 6 0; +#X connect 8 0 12 0; +#X connect 9 0 6 0; +#X connect 10 0 6 0; +#X connect 11 0 9 0; +#X connect 12 0 6 0; #X restore 37 -342 pd selector; #X obj 184 -277 list split 16; #X obj 184 -252 unpack f f f f f f f f f f f f f f f f; @@ -256,6 +137,8 @@ #X text 184 -336 c1 Vol c2 pan c3 folder c4 file c5 playback c6 Control c7 Volumen fino 8 Entry point Coarse 9 Entry point fine; #X obj 5 -199 outlet; +#X floatatom 66 -167 5 0 0 0 - - -; +#X symbolatom 189 -176 80 0 0 0 - - -; #X connect 1 0 40 0; #X connect 2 0 25 0; #X connect 3 0 26 0; @@ -275,9 +158,10 @@ c7 Volumen fino 8 Entry point Coarse 9 Entry point fine; #X connect 17 0 33 0; #X connect 32 0 0 0; #X connect 32 0 42 0; -#X connect 32 1 0 1; +#X connect 32 0 44 0; #X connect 33 0 34 0; #X connect 34 0 9 0; +#X connect 34 0 43 0; #X connect 34 1 10 0; #X connect 34 2 11 0; #X connect 34 3 12 0; diff --git a/pd/lms-video.pd b/pd/lms-video.pd index 2f53c32..f25dc0d 100644 --- a/pd/lms-video.pd +++ b/pd/lms-video.pd @@ -1,4 +1,4 @@ -#N canvas 543 390 611 318 10; +#N canvas 539 410 611 318 10; #N canvas 315 169 952 599 dmx 0; #X obj -7 437 list split; #X obj 99 444 list split; @@ -313,293 +313,319 @@ #X connect 40 0 35 0; #X connect 41 0 34 0; #X restore -175 -438 pd window; -#N canvas 621 159 450 300 layer_5 0; -#X msg -132 -32 1; -#X msg -177 -33 0; -#X obj -177 -55 select 0; -#X obj -177 -80 r layer5; -#X obj -253 -81 r dmx5; -#X msg -253 10 5 \$1; -#X obj -253 32 print togui; -#X obj -169 4 spigot; -#X obj -106 -124 r metro; -#X obj -169 34 spigot; -#X msg -111 34 0; -#X msg -107 3 1; -#X obj -169 56 t b; -#X msg -421 17 layerimage 15; -#X obj -50 -57 delay 400; -#X obj -43 122 s preview; -#X obj -253 -28 layer; -#X connect 0 0 7 1; -#X connect 1 0 7 1; -#X connect 2 0 1 0; -#X connect 2 1 0 0; +#N canvas 617 179 450 300 layer_5 0; +#X obj -338 -28 layer; +#X msg -209 -32 1; +#X msg -262 -33 0; +#X obj -262 -55 select 0; +#X obj -254 4 spigot; +#X obj -254 34 spigot; +#X msg -196 34 0; +#X msg -192 3 1; +#X obj -254 56 t b; +#X obj -338 32 s textgui; +#X obj -114 148 s preview; +#X obj -346 81 spigot; +#X obj -338 -81 r dmx5; +#X obj -262 -80 r layer5; +#X msg -338 10 5 \$1; +#X msg -346 103 layerimage 15; +#X obj -191 -107 delay 500; +#X obj -191 -128 r metro; +#X connect 0 0 14 0; +#X connect 0 1 4 0; +#X connect 1 0 4 1; +#X connect 1 0 11 1; +#X connect 2 0 4 1; +#X connect 2 0 11 1; #X connect 3 0 2 0; -#X connect 3 0 16 1; -#X connect 4 0 16 0; -#X connect 5 0 6 0; -#X connect 7 0 9 0; -#X connect 8 0 14 0; -#X connect 9 0 12 0; -#X connect 9 0 15 0; -#X connect 10 0 9 1; -#X connect 11 0 9 1; -#X connect 12 0 10 0; -#X connect 13 0 15 0; -#X connect 14 0 11 0; -#X connect 14 0 13 0; -#X connect 14 0 15 0; -#X connect 16 0 5 0; -#X connect 16 1 7 0; -#X restore -176 -379 pd layer_5; -#X obj -298 -336 loadbang; -#X obj -407 -259 print togui; -#N canvas 1 101 450 300 layer_6 0; -#X msg -132 -32 1; -#X msg -177 -33 0; -#X obj -177 -55 select 0; -#X obj -253 32 print togui; -#X obj -169 4 spigot; -#X obj -106 -124 r metro; -#X obj -169 34 spigot; -#X msg -111 34 0; -#X msg -107 3 1; -#X obj -169 56 t b; -#X msg -421 17 layerimage 16; -#X obj -253 -81 r dmx6; -#X obj -177 -80 r layer6; -#X msg -253 10 6 \$1; -#X obj -48 -38 delay 500; -#X obj -44 132 s preview; -#X obj -253 -28 layer; -#X connect 0 0 4 1; -#X connect 1 0 4 1; -#X connect 2 0 1 0; -#X connect 2 1 0 0; -#X connect 4 0 6 0; -#X connect 5 0 14 0; -#X connect 6 0 9 0; -#X connect 6 0 15 0; -#X connect 7 0 6 1; -#X connect 8 0 6 1; -#X connect 9 0 7 0; -#X connect 10 0 15 0; -#X connect 11 0 16 0; -#X connect 12 0 2 0; -#X connect 12 0 16 1; -#X connect 13 0 3 0; -#X connect 14 0 8 0; -#X connect 14 0 10 0; -#X connect 14 0 15 0; -#X connect 16 0 13 0; -#X connect 16 1 4 0; -#X restore -102 -379 pd layer_6; -#N canvas 1 101 450 300 layer_7 0; -#X msg -132 -32 1; -#X msg -177 -33 0; -#X obj -177 -55 select 0; -#X obj -253 32 print togui; -#X obj -169 4 spigot; -#X obj -106 -124 r metro; -#X obj -169 34 spigot; -#X msg -111 34 0; -#X msg -107 3 1; -#X obj -169 56 t b; -#X msg -421 17 layerimage 17; -#X msg -253 10 7 \$1; -#X obj -253 -81 r dmx7; -#X obj -177 -80 r layer7; -#X obj -54 -37 delay 600; -#X obj -46 119 s preview; -#X obj -253 -28 layer; -#X connect 0 0 4 1; -#X connect 1 0 4 1; -#X connect 2 0 1 0; -#X connect 2 1 0 0; -#X connect 4 0 6 0; -#X connect 5 0 14 0; -#X connect 6 0 9 0; -#X connect 6 0 15 0; -#X connect 7 0 6 1; -#X connect 8 0 6 1; -#X connect 9 0 7 0; -#X connect 10 0 15 0; -#X connect 11 0 3 0; -#X connect 12 0 16 0; -#X connect 13 0 2 0; -#X connect 13 0 16 1; -#X connect 14 0 8 0; -#X connect 14 0 10 0; -#X connect 14 0 15 0; -#X connect 16 0 11 0; -#X connect 16 1 4 0; -#X restore -28 -379 pd layer_7; -#N canvas 1 117 450 300 layer_8 0; -#X msg -132 -32 1; -#X msg -177 -33 0; -#X obj -177 -55 select 0; -#X obj -253 32 print togui; -#X obj -169 4 spigot; -#X obj -106 -124 r metro; -#X obj -169 34 spigot; -#X msg -111 34 0; -#X msg -107 3 1; -#X obj -169 56 t b; -#X obj -253 -81 r dmx8; -#X obj -177 -80 r layer8; -#X msg -253 10 8 \$1; -#X msg -421 17 layerimage 18; -#X obj -57 -58 delay 700; -#X obj -78 108 s preview; -#X obj -253 -28 layer; -#X connect 0 0 4 1; -#X connect 1 0 4 1; -#X connect 2 0 1 0; -#X connect 2 1 0 0; -#X connect 4 0 6 0; -#X connect 5 0 14 0; -#X connect 6 0 9 0; -#X connect 6 0 15 0; -#X connect 7 0 6 1; -#X connect 8 0 6 1; -#X connect 9 0 7 0; -#X connect 10 0 16 0; -#X connect 11 0 2 0; -#X connect 11 0 16 1; -#X connect 12 0 3 0; -#X connect 13 0 15 0; -#X connect 14 0 8 0; -#X connect 14 0 13 0; -#X connect 14 0 15 0; -#X connect 16 0 12 0; -#X connect 16 1 4 0; -#X restore 46 -379 pd layer_8; -#N canvas 1 133 450 300 layer_4 0; -#X msg -132 -32 1; -#X msg -177 -33 0; -#X obj -177 -55 select 0; -#X obj -169 4 spigot; -#X obj -106 -124 r metro; -#X obj -169 34 spigot; -#X msg -111 34 0; -#X msg -107 3 1; -#X obj -169 56 t b; -#X obj -253 -81 r dmx4; -#X obj -253 32 print togui; -#X msg -253 10 4 \$1; -#X msg -421 17 layerimage 14; -#X obj -53 -70 delay 300; -#X obj -177 -80 r layer4; -#X obj -39 147 s preview; -#X obj -253 -28 layer; -#X connect 0 0 3 1; -#X connect 1 0 3 1; -#X connect 2 0 1 0; -#X connect 2 1 0 0; -#X connect 3 0 5 0; -#X connect 4 0 13 0; +#X connect 3 1 1 0; +#X connect 4 0 5 0; #X connect 5 0 8 0; -#X connect 5 0 15 0; +#X connect 5 0 10 0; #X connect 6 0 5 1; #X connect 7 0 5 1; #X connect 8 0 6 0; -#X connect 9 0 16 0; -#X connect 11 0 10 0; -#X connect 12 0 15 0; -#X connect 13 0 7 0; -#X connect 13 0 12 0; -#X connect 13 0 15 0; -#X connect 14 0 2 0; -#X connect 14 0 16 1; -#X connect 16 0 11 0; -#X connect 16 1 3 0; -#X restore -250 -379 pd layer_4; -#N canvas 1 101 450 300 layer_3 0; -#X msg -132 -32 1; -#X msg -177 -33 0; -#X obj -177 -55 select 0; -#X obj -253 32 print togui; -#X obj -169 4 spigot; -#X obj -106 -124 r metro; -#X obj -169 34 spigot; -#X msg -111 34 0; -#X msg -107 3 1; -#X obj -169 56 t b; -#X msg -295 86 layerimage 13; -#X obj -253 -81 r dmx3; -#X obj -177 -80 r layer3; -#X msg -253 10 3 \$1; -#X obj -51 -30 delay 200; -#X obj -82 141 s preview; -#X obj -253 -28 layer; -#X connect 0 0 4 1; -#X connect 1 0 4 1; -#X connect 2 0 1 0; -#X connect 2 1 0 0; -#X connect 4 0 6 0; -#X connect 5 0 14 0; -#X connect 6 0 9 0; -#X connect 6 0 15 0; -#X connect 7 0 6 1; -#X connect 8 0 6 1; -#X connect 9 0 7 0; -#X connect 10 0 15 0; -#X connect 11 0 16 0; -#X connect 12 0 2 0; -#X connect 12 0 16 1; +#X connect 8 0 10 0; +#X connect 11 0 15 0; +#X connect 12 0 0 0; #X connect 13 0 3 0; -#X connect 14 0 8 0; -#X connect 14 0 10 0; -#X connect 14 0 15 0; -#X connect 16 0 13 0; -#X connect 16 1 4 0; -#X restore -323 -379 pd layer_3; -#N canvas 1 101 450 300 layer_2 0; -#X msg -132 -32 1; +#X connect 13 0 0 1; +#X connect 14 0 9 0; +#X connect 15 0 10 0; +#X connect 16 0 7 0; +#X connect 16 0 11 0; +#X connect 17 0 16 0; +#X restore -176 -379 pd layer_5; +#X obj -298 -336 loadbang; +#X obj -407 -259 print togui; +#N canvas 1 121 450 300 layer_6 0; +#X obj -253 -28 layer; +#X msg -124 -32 1; #X msg -177 -33 0; #X obj -177 -55 select 0; -#X obj -253 32 print togui; #X obj -169 4 spigot; -#X obj -106 -124 r metro; #X obj -169 34 spigot; #X msg -111 34 0; #X msg -107 3 1; #X obj -169 56 t b; -#X msg -421 17 layerimage 12; -#X msg -253 10 2 \$1; -#X obj -253 -81 r dmx2; -#X obj -177 -80 r layer2; -#X obj -106 -96 delay 100; -#X obj -211 67 t b; -#X obj -93 156 s preview; -#X obj -253 -28 layer; -#X connect 0 0 4 1; +#X obj -253 32 s textgui; +#X obj -29 148 s preview; +#X obj -261 81 spigot; +#X obj -253 -81 r dmx6; +#X obj -177 -80 r layer6; +#X msg -253 10 6 \$1; +#X msg -261 103 layerimage 16; +#X obj -106 -120 r metro; +#X obj -106 -97 delay 600; +#X connect 0 0 14 0; +#X connect 0 1 4 0; #X connect 1 0 4 1; -#X connect 2 0 1 0; -#X connect 2 1 0 0; -#X connect 4 0 6 0; -#X connect 5 0 14 0; -#X connect 6 0 9 0; -#X connect 6 0 16 0; -#X connect 7 0 6 1; -#X connect 8 0 6 1; -#X connect 9 0 7 0; -#X connect 10 0 15 0; -#X connect 10 0 16 0; -#X connect 11 0 3 0; -#X connect 12 0 17 0; -#X connect 13 0 2 0; -#X connect 13 0 17 1; -#X connect 14 0 8 0; -#X connect 14 0 10 0; -#X connect 15 0 16 0; +#X connect 1 0 11 1; +#X connect 2 0 4 1; +#X connect 2 0 11 1; +#X connect 3 0 2 0; +#X connect 3 1 1 0; +#X connect 4 0 5 0; +#X connect 5 0 8 0; +#X connect 5 0 10 0; +#X connect 6 0 5 1; +#X connect 7 0 5 1; +#X connect 8 0 6 0; +#X connect 8 0 10 0; +#X connect 11 0 15 0; +#X connect 12 0 0 0; +#X connect 13 0 3 0; +#X connect 13 0 0 1; +#X connect 14 0 9 0; +#X connect 15 0 10 0; +#X connect 16 0 17 0; #X connect 17 0 11 0; -#X connect 17 1 4 0; -#X restore -396 -379 pd layer_2; -#N canvas 1 181 450 300 layer_1 0; +#X connect 17 0 7 0; +#X restore -102 -379 pd layer_6; +#N canvas 436 262 450 300 layer_7 0; #X obj -253 -28 layer; -#X msg -132 -32 1; +#X msg -124 -32 1; +#X msg -177 -33 0; +#X obj -177 -55 select 0; +#X obj -169 4 spigot; +#X obj -169 34 spigot; +#X msg -111 34 0; +#X msg -107 3 1; +#X obj -169 56 t b; +#X obj -253 32 s textgui; +#X obj -29 148 s preview; +#X obj -261 81 spigot; +#X obj -253 -81 r dmx7; +#X obj -177 -80 r layer7; +#X msg -253 10 7 \$1; +#X msg -261 103 layerimage 17; +#X obj -106 -97 delay 700; +#X obj -106 -120 r metro; +#X connect 0 0 14 0; +#X connect 0 1 4 0; +#X connect 1 0 4 1; +#X connect 1 0 11 1; +#X connect 2 0 4 1; +#X connect 2 0 11 1; +#X connect 3 0 2 0; +#X connect 3 1 1 0; +#X connect 4 0 5 0; +#X connect 5 0 8 0; +#X connect 5 0 10 0; +#X connect 6 0 5 1; +#X connect 7 0 5 1; +#X connect 8 0 6 0; +#X connect 8 0 10 0; +#X connect 11 0 15 0; +#X connect 12 0 0 0; +#X connect 13 0 3 0; +#X connect 13 0 0 1; +#X connect 14 0 9 0; +#X connect 15 0 10 0; +#X connect 16 0 7 0; +#X connect 16 0 11 0; +#X connect 17 0 16 0; +#X restore -28 -379 pd layer_7; +#N canvas 901 259 450 300 layer_8 0; +#X obj -253 -37 layer; +#X msg -124 -41 1; +#X msg -177 -42 0; +#X obj -177 -64 select 0; +#X obj -169 -5 spigot; +#X obj -169 25 spigot; +#X msg -84 11 0; +#X msg -84 -12 1; +#X obj -169 47 t b; +#X obj -253 23 s textgui; +#X obj -29 148 s preview; +#X obj -261 81 spigot; +#X obj -253 -90 r dmx8; +#X msg -261 103 layerimage 18; +#X msg -253 1 8 \$1; +#X obj -84 -81 delay 800; +#X obj -84 -112 r metro; +#X obj -177 -89 r layer8; +#X connect 0 0 14 0; +#X connect 0 1 4 0; +#X connect 1 0 4 1; +#X connect 1 0 11 1; +#X connect 2 0 4 1; +#X connect 2 0 11 1; +#X connect 3 0 2 0; +#X connect 3 1 1 0; +#X connect 4 0 5 0; +#X connect 5 0 8 0; +#X connect 5 0 10 0; +#X connect 6 0 5 1; +#X connect 7 0 5 1; +#X connect 8 0 6 0; +#X connect 8 0 10 0; +#X connect 11 0 13 0; +#X connect 12 0 0 0; +#X connect 13 0 10 0; +#X connect 14 0 9 0; +#X connect 15 0 7 0; +#X connect 15 0 11 0; +#X connect 16 0 15 0; +#X connect 17 0 3 0; +#X connect 17 0 0 1; +#X restore 46 -379 pd layer_8; +#N canvas 1 153 450 300 layer_4 0; +#X obj -253 -28 layer; +#X msg -124 -32 1; +#X msg -177 -33 0; +#X obj -177 -55 select 0; +#X obj -169 4 spigot; +#X obj -169 34 spigot; +#X msg -111 34 0; +#X msg -107 3 1; +#X obj -169 56 t b; +#X obj -253 32 s textgui; +#X obj -29 148 s preview; +#X obj -261 81 spigot; +#X obj -253 -81 r dmx4; +#X obj -177 -80 r layer4; +#X msg -253 10 4 \$1; +#X msg -261 103 layerimage 14; +#X obj -106 -88 delay 400; +#X obj -106 -116 r metro; +#X connect 0 0 14 0; +#X connect 0 1 4 0; +#X connect 1 0 4 1; +#X connect 1 0 11 1; +#X connect 2 0 4 1; +#X connect 2 0 11 1; +#X connect 3 0 2 0; +#X connect 3 1 1 0; +#X connect 4 0 5 0; +#X connect 5 0 8 0; +#X connect 5 0 10 0; +#X connect 6 0 5 1; +#X connect 7 0 5 1; +#X connect 8 0 6 0; +#X connect 8 0 10 0; +#X connect 11 0 15 0; +#X connect 12 0 0 0; +#X connect 13 0 3 0; +#X connect 13 0 0 1; +#X connect 14 0 9 0; +#X connect 15 0 10 0; +#X connect 16 0 7 0; +#X connect 16 0 11 0; +#X connect 17 0 16 0; +#X restore -250 -379 pd layer_4; +#N canvas 661 163 450 300 layer_3 0; +#X obj -253 -28 layer; +#X msg -124 -32 1; +#X msg -177 -33 0; +#X obj -177 -55 select 0; +#X obj -169 4 spigot; +#X obj -169 34 spigot; +#X msg -111 34 0; +#X msg -107 3 1; +#X obj -169 56 t b; +#X obj -253 32 s textgui; +#X obj -29 148 s preview; +#X obj -261 81 spigot; +#X obj -177 -80 r layer3; +#X obj -253 -81 r dmx3; +#X msg -253 10 3 \$1; +#X msg -261 103 layerimage 13; +#X obj -106 -95 delay 300; +#X obj -107 -119 r metro; +#X connect 0 0 14 0; +#X connect 0 1 4 0; +#X connect 1 0 4 1; +#X connect 1 0 11 1; +#X connect 2 0 4 1; +#X connect 2 0 11 1; +#X connect 3 0 2 0; +#X connect 3 1 1 0; +#X connect 4 0 5 0; +#X connect 5 0 8 0; +#X connect 5 0 10 0; +#X connect 6 0 5 1; +#X connect 7 0 5 1; +#X connect 8 0 6 0; +#X connect 8 0 10 0; +#X connect 11 0 15 0; +#X connect 12 0 3 0; +#X connect 12 0 0 1; +#X connect 13 0 0 0; +#X connect 14 0 9 0; +#X connect 15 0 10 0; +#X connect 16 0 7 0; +#X connect 16 0 11 0; +#X connect 17 0 16 0; +#X restore -323 -379 pd layer_3; +#N canvas 620 141 450 300 layer_2 0; +#X obj -253 -28 layer; +#X msg -124 -32 1; +#X msg -177 -33 0; +#X obj -177 -55 select 0; +#X obj -169 4 spigot; +#X obj -169 34 spigot; +#X msg -111 34 0; +#X msg -107 3 1; +#X obj -169 56 t b; +#X obj -253 32 s textgui; +#X obj -29 148 s preview; +#X obj -261 81 spigot; +#X obj -177 -80 r layer2; +#X obj -253 -81 r dmx2; +#X msg -253 10 2 \$1; +#X msg -261 103 layerimage 12; +#X obj -106 -86 delay 200; +#X obj -108 -114 r metro; +#X connect 0 0 14 0; +#X connect 0 1 4 0; +#X connect 1 0 4 1; +#X connect 1 0 11 1; +#X connect 2 0 4 1; +#X connect 2 0 11 1; +#X connect 3 0 2 0; +#X connect 3 1 1 0; +#X connect 4 0 5 0; +#X connect 5 0 8 0; +#X connect 5 0 10 0; +#X connect 6 0 5 1; +#X connect 7 0 5 1; +#X connect 8 0 6 0; +#X connect 8 0 10 0; +#X connect 11 0 15 0; +#X connect 12 0 3 0; +#X connect 12 0 0 1; +#X connect 13 0 0 0; +#X connect 14 0 9 0; +#X connect 15 0 10 0; +#X connect 16 0 7 0; +#X connect 16 0 11 0; +#X connect 17 0 16 0; +#X restore -396 -379 pd layer_2; +#N canvas 1 211 450 300 layer_1 0; +#X obj -253 -28 layer; +#X msg -124 -32 1; #X msg -177 -33 0; #X obj -177 -55 select 0; #X obj -169 4 spigot; @@ -611,29 +637,33 @@ #X obj -253 -81 r dmx1; #X obj -177 -80 r layer1; #X msg -253 10 1 \$1; -#X msg -258 69 layerimage 11; +#X msg -261 103 layerimage 11; #X obj -253 32 s textgui; #X obj -29 148 s preview; +#X obj -261 81 spigot; #X connect 0 0 12 0; #X connect 0 1 4 0; #X connect 1 0 4 1; +#X connect 1 0 16 1; #X connect 2 0 4 1; +#X connect 2 0 16 1; #X connect 3 0 2 0; #X connect 3 1 1 0; #X connect 4 0 6 0; #X connect 5 0 8 0; -#X connect 5 0 13 0; -#X connect 5 0 15 0; +#X connect 5 0 16 0; #X connect 6 0 9 0; #X connect 6 0 15 0; #X connect 7 0 6 1; #X connect 8 0 6 1; #X connect 9 0 7 0; +#X connect 9 0 15 0; #X connect 10 0 0 0; #X connect 11 0 3 0; #X connect 11 0 0 1; #X connect 12 0 14 0; #X connect 13 0 15 0; +#X connect 16 0 13 0; #X restore -469 -379 pd layer_1; #X obj -298 -271 metro 1000; #X obj -298 -237 s metro; diff --git a/pd/lms.conf b/pd/lms.conf index 9996be1..f272023 100644 Binary files a/pd/lms.conf and b/pd/lms.conf differ diff --git a/scripts/make_thumbs.sh b/scripts/make_thumbs.sh index 12f5ace..72b8c25 100755 --- a/scripts/make_thumbs.sh +++ b/scripts/make_thumbs.sh @@ -3,10 +3,11 @@ # Script que genera thumbnails de todas las películas en el directorio Media # Copyright Santi Noreña 2012-2013 # GPL License -cd $0 ||{ - echo "Can not change to directory." $0 +cd $1 ||{ + echo "Can not change to directory." $1 exit $E_XCD; } +cd video for folder in $(find -maxdepth 1 -type d); do rm $folder/thumbs/* mkdir $folder/thumbs diff --git a/src/PeerInformationSocket.cpp b/src/PeerInformationSocket.cpp index a5f2543..1f1a982 100644 --- a/src/PeerInformationSocket.cpp +++ b/src/PeerInformationSocket.cpp @@ -29,20 +29,15 @@ THE SOFTWARE. #include "citp-lib.h" #include "CITPDefines.h" #include "PacketCreator.h" -//#include "MediaServer.h" + #include #include #include -#ifdef Q_OS_WIN - #include - #include -#else - #include - #include - #include - #include -#endif +#include +#include +#include +#include PeerInformationSocket::PeerInformationSocket(QObject *parent) : QUdpSocket(parent), @@ -105,8 +100,7 @@ bool PeerInformationSocket::init(const QString &name, const QString &state, quin // transmitPLoc(); // XXX - don't connect this more than once.. - connect(this, SIGNAL(readyRead()), - this, SLOT(handleReadReady())); +// connect(this, SIGNAL(readyRead()),this, SLOT(handleReadReady())); if (m_timer) { @@ -124,7 +118,7 @@ void PeerInformationSocket::transmitPLoc() writeDatagram((const char*)m_packetBuffer, m_packetBufferLen, addr, CITP_PINF_MULTICAST_PORT); } } - +/* void PeerInformationSocket::handleReadReady() { while (hasPendingDatagrams()) @@ -152,7 +146,7 @@ void PeerInformationSocket::processPacket(const QHostAddress &address, const QBy qDebug() << "No CITP"; return; } -/* + if (packet->CITPPINFHeader.CITPHeader.VersionMajor != 0x01) { qDebug() << "Invalid VersionMajor value:" << packet->CITPPINFHeader.CITPHeader.VersionMajor; @@ -164,7 +158,7 @@ void PeerInformationSocket::processPacket(const QHostAddress &address, const QBy qDebug() << "Invalid VersionMinor value:" << packet->CITPPINFHeader.CITPHeader.VersionMinor; return; } -*/ + if (packet->CITPPINFHeader.CITPHeader.ContentType != COOKIE_PINF) { qDebug() << "NO PINF"; @@ -180,3 +174,4 @@ void PeerInformationSocket::processPacket(const QHostAddress &address, const QBy // PLoc data // quint16 listeningPort = packet->ListeningTCPPort; } +*/ diff --git a/src/PeerInformationSocket.h b/src/PeerInformationSocket.h index 58b40f4..3e3c3cd 100644 --- a/src/PeerInformationSocket.h +++ b/src/PeerInformationSocket.h @@ -33,7 +33,6 @@ THE SOFTWARE. #include class QTimer; -//class MediaServer; struct PeerDescripton; @@ -49,7 +48,7 @@ public: private slots: void transmitPLoc(); - void handleReadReady(); +// void handleReadReady(); private: QString m_name; @@ -58,7 +57,7 @@ private: unsigned char *m_packetBuffer; int m_packetBufferLen; - void processPacket(const QHostAddress &sender, const QByteArray &packet); +// void processPacket(const QHostAddress &sender, const QByteArray &packet); signals: diff --git a/src/libremediaserver.cpp b/src/libremediaserver.cpp index 8cb3f7b..a4f3178 100644 --- a/src/libremediaserver.cpp +++ b/src/libremediaserver.cpp @@ -140,10 +140,11 @@ libreMediaServer::libreMediaServer(QWidget *parent) connect(ui.actionOpen_conf, SIGNAL(triggered()), this, SLOT(openFile())); connect(ui.actionSave_conf, SIGNAL(triggered()), this, SLOT(saveFile())); connect(ui.actionChange_Media_Path, SIGNAL(triggered()), this, SLOT(ChangeMediaPath())); - connect(ui.actionInitMSEX, SIGNAL(triggered()), this, SLOT(InitMSEX())); + connect(ui.actionInitMSEX, SIGNAL(triggered()), this, SLOT(initMSEX())); + connect(ui.actionMake_Thumbs, SIGNAL(triggered()), this, SLOT(makeThumbs())); // Load the configuration open_start(); - // Connect MSEx + // Connect MSEx Timer connect(m_msex,SIGNAL(frameRequest()), this, SLOT(sendFrame())); } @@ -346,7 +347,8 @@ void libreMediaServer::open(QFile *file) qDebug()<<(desc); file->close(); delete buffer; -// delete fileconf; // Comment due to Seg Fault +// delete file; + // delete fileconf; // Comment due to Seg Fault } void libreMediaServer::save(QFile *file) @@ -430,12 +432,6 @@ void libreMediaServer::olastart() // connect(ola, SIGNAL(finished(int)), this, SLOT(olastart())); } -/* - * User Interface Stuff - */ - - - /////////////////////////////////////////////////////////////////// // Menu CITP/MSEx /////////////////////////////////////////////////////////////////// @@ -471,14 +467,14 @@ void libreMediaServer::initMSEX() ipadd = ipadd + i; m_msex->startCitp(ipadd); } -//void setIPAdd(); + // Generates the thumbs to transmit by CITP/MSEx void libreMediaServer::makeThumbs() { QProcess *script = new QProcess (); QStringList arguments; arguments << m_pathmedia; - script->execute("./scripts/make_thumbs.sh", arguments); + script->execute("../scripts/make_thumbs.sh", arguments); } /////////////////////////////////////////////////////////////////// @@ -870,10 +866,10 @@ void libreMediaServer::stdout() { { ui.textEdit->appendPlainText("Can not read DMX data."); } - if (out.indexOf("watchdog",0) != -1) +/* if (out.indexOf("watchdog",0) != -1) { ui.textEdit->appendPlainText("PD video watchdog detected."); - } + }*/ int j = out.indexOf("togui: ",0); if ((j >= 0) && (out.size() > (j+7))) { @@ -931,7 +927,7 @@ void libreMediaServer::stdout() { } } } -// Restart the Pure Data process if crash. Connected wit signal finished of QProcess +// Restart the Pure Data process if crash. Connected with signal finished of QProcess void libreMediaServer::pdrestart() { @@ -941,7 +937,7 @@ void libreMediaServer::pdrestart() } save_finish(); qDebug()<<"Restarting PD"; - ui.textEdit->appendPlainText("PD Restarting..."); + ui.textEdit->appendPlainText("PD Video Restarting."); disconnect(m_pd_video, SIGNAL(finished(int)), this, SLOT(pdrestart())); pdstart(); } @@ -1048,7 +1044,7 @@ void libreMediaServer::newconexion() { // Iniciamos el socket m_pd_write_video->connectToHost(QHostAddress::LocalHost, PDPORTW); - m_pd_write_video->waitForConnected(300000); + m_pd_write_video->waitForConnected(3000); if (!(m_pd_write_video->isOpen())){ qErrnoWarning("newconexion:pd write socket not open!:"); return; diff --git a/src/libremediaserver.ui b/src/libremediaserver.ui index 1a84c1b..6da3c82 100644 --- a/src/libremediaserver.ui +++ b/src/libremediaserver.ui @@ -7,8 +7,8 @@ 0 0 - 773 - 626 + 745 + 636 @@ -76,7 +76,7 @@ 10 - 300 + 290 55 27 @@ -91,8 +91,8 @@ - 510 - 340 + 570 + 170 31 27 @@ -107,8 +107,8 @@ - 590 - 340 + 650 + 170 31 27 @@ -126,8 +126,8 @@ - 30 - 330 + 20 + 320 101 17 @@ -153,7 +153,7 @@ 20 - 270 + 260 87 23 @@ -230,8 +230,8 @@ - 20 - 380 + 10 + 370 121 20 @@ -244,7 +244,7 @@ 20 - 240 + 230 101 23 @@ -296,7 +296,7 @@ 70 - 350 + 340 55 27 @@ -322,7 +322,7 @@ 20 - 210 + 200 55 27 @@ -345,7 +345,7 @@ 70 - 300 + 290 55 27 @@ -358,7 +358,7 @@ 20 - 190 + 180 91 20 @@ -380,24 +380,24 @@ Layer 5 - + - 500 - 370 - 81 + 480 + 150 + 241 21 - IP Address + IP address interface for CITP/MSEx - 550 - 340 + 610 + 170 31 27 @@ -426,7 +426,7 @@ 10 - 350 + 340 55 27 @@ -438,8 +438,8 @@ - 470 - 340 + 530 + 170 31 27 @@ -678,7 +678,7 @@ video winsizey label - label_4 + CITPaddress_label ipAddress3 winpositionx ipAddress1 @@ -1093,13 +1093,14 @@ 0 0 - 751 + 721 121 - LibreMediaServer 0.01-2 + LibreMediaServer 0.02-1 (C) 2012-2013 Santiago Noreña libremediaserver@gmail.com +GPL 3 license. See LICENSE.txt and credits.txt for details This program comes with ABSOLUTELY NO WARRANTY @@ -1110,7 +1111,7 @@ This program comes with ABSOLUTELY NO WARRANTY 0 0 - 773 + 745 29 @@ -1155,7 +1156,7 @@ This program comes with ABSOLUTELY NO WARRANTY - true + false Init