Changeset 266 for trunk


Ignore:
Timestamp:
01/22/11 17:18:37 (11 years ago)
Author:
sc
Message:

synapse/synapse-render_video.py:

  • compositeFrames added
  • convert_to_unix_filename added
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/synapse/synapse-render_video.py

    r265 r266  
    4242DEFAULT_HISTORY_IMAGE_FILE = 'history.png' 
    4343DEFAULT_CURRENT_VALUES_IMAGE_FILE = 'current.png' 
     44DEFAULT_BLANK_FRAME_IMAGE_FILE = 'blank-frame-720p.png' 
    4445 
    4546DEFAULT_OUTPUT_DIRECTORY = 'output' 
     
    5455DEFAULT_CURRENT_VALUES_WIDTH = 96 
    5556DEFAULT_CURRENT_VALUES_HEIGHT = 720 
     57 
     58PATH_TO_COMPOSITE = '/usr/bin/composite' 
    5659 
    5760##################################################################### 
     
    114117                format='png', \ 
    115118                pad_inches=0) 
     119         
     120         
     121        fig.clear() 
    116122 
    117123 
     
    195201                format='png', \ 
    196202                pad_inches=0) 
     203         
     204         
     205        fig.clear() 
    197206 
    198207 
     
    327336 
    328337##################################################################### 
     338 
     339def compositeFrames(data, \ 
     340                         output_directory=DEFAULT_OUTPUT_DIRECTORY, \ 
     341                         prefix=DEFAULT_OUTPUT_IMAGE_PREFIX, \ 
     342                         background=DEFAULT_BLANK_FRAME_IMAGE_FILE): 
     343 
     344        composite_path = PATH_TO_COMPOSITE 
     345        #background_path = os.path.join( os.getcwd(), \ 
     346                                            #output_directory, \ 
     347                                            #background ) 
     348        background_path = background 
     349 
     350        data_keys = data.keys() 
     351        data_keys.sort() 
     352 
     353        counter = 1 
     354 
     355        for each in data_keys: 
     356                 
     357                if DEBUG > 1: 
     358                        print each, 
     359                        print data[each] 
     360                 
     361                index = int(each) 
     362                 
     363                values_image = "%s-values-%i.png" % (prefix, index) 
     364                history_image = "%s-history-%i.png" % (prefix, index) 
     365                output_image = "%s-frame-%i.png" % (prefix, index) 
     366                 
     367                values_image = convert_to_unix_filename(values_image) 
     368                history_image= convert_to_unix_filename(history_image) 
     369                output_image = convert_to_unix_filename(output_image) 
     370                 
     371                values_path = os.path.join( os.getcwd(), \ 
     372                                            output_directory, \ 
     373                                            values_image ) 
     374                history_path = os.path.join( os.getcwd(), \ 
     375                                            output_directory, \ 
     376                                            history_image ) 
     377                output_path = os.path.join( os.getcwd(), \ 
     378                                            output_directory, \ 
     379                                            output_image ) 
     380                 
     381                if DEBUG: 
     382                        progress = int((float(counter) / len(data_keys)) * 100) 
     383                        print '%i%% [%i/%i] %s' % \ 
     384                           (progress, counter, len(data_keys), output_image) 
     385                 
     386                 
     387                command = '%s %s -geometry +1184+0 %s %s' % \ 
     388                              (composite_path, values_path, background_path, output_path) 
     389                os.system(command) 
     390                 
     391                command = '%s %s -geometry +1072-18 %s %s' % \ 
     392                              (composite_path, history_path, output_path, output_path) 
     393                os.system(command) 
     394                 
     395                 
     396                counter += 1 
     397 
     398 
     399##################################################################### 
     400 
     401def convert_to_unix_filename(input_filename): 
     402 
     403        # This function will take in a filename as a string 
     404        # and output a properly-escaped unix filename, for shell processing 
     405 
     406        import string 
     407 
     408        output = '' 
     409 
     410        if (string.find(input_filename, '\\') == -1): 
     411                output = input_filename.replace('\n', '') 
     412                output = output.replace('\\', '\\\\') 
     413                output = output.replace(' ', '\\ ') 
     414                output = output.replace('(', '\\(') 
     415                output = output.replace(')', '\\)') 
     416                output = output.replace("'", "\\'") 
     417                output = output.replace('"', '\\"') 
     418                #output = output.replace(',', '\\,') 
     419                output = output.replace('&', '\\&') 
     420                output = output.replace('?', '\\?') 
     421                output = output.replace('%', '\\%') 
     422                output = output.replace('!', '\\!') 
     423                output = output.replace('/', '\\/') 
     424                output = output.replace(':', '\:') 
     425                #output = output.replace('>>', '\\>\\>') 
     426                output = output.replace('<', '\\<') 
     427                output = output.replace('>', '\\>') 
     428 
     429        return(output) 
     430 
     431 
     432##################################################################### 
    329433# Main 
    330434##################################################################### 
     
    335439        output_directory = DEFAULT_OUTPUT_DIRECTORY 
    336440        prefix = DEFAULT_OUTPUT_IMAGE_PREFIX 
     441        background = DEFAULT_BLANK_FRAME_IMAGE_FILE 
    337442 
    338443        for each in sys.argv: 
     
    343448                if each.startswith("--prefix="): 
    344449                        prefix = each[ len("--prefix="): ] 
     450                if each.startswith("--background="): 
     451                        background = each[ len("--background="): ] 
    345452         
    346453        data = openData(input_file) 
     
    348455        data = mergeDataValues(data) 
    349456 
    350         renderValuesFrames(data, output_directory, prefix) 
    351         renderHistoryFrames(data, output_directory, prefix) 
    352  
     457        #renderValuesFrames(data, output_directory, prefix) 
     458        #renderHistoryFrames(data, output_directory, prefix) 
     459         
     460        compositeFrames(data, output_directory, prefix, background) 
     461 
Note: See TracChangeset for help on using the changeset viewer.