def updateShotIcon(self, trackItem): '''Create thumbnail from trackItem and upload to NIM''' nim_shotID = None nim_tagFound = False nim_tag = None nim_tag = self.getNimTag(trackItem) if nim_tag != False: nim_shotID = nim_tag.metadata().value("tag.shotID") else: print "NIM: ERROR - trackItem Missing NIM Tag" return False ''' # Get middle frame for thumbnail trackItem_sourceIn = trackItem.sourceIn() trackItem_sourceOut = trackItem.sourceOut() middleFrame = (trackItem_sourceOut - trackItem_sourceIn) // 2 trackItem_thumbnail = trackItem.thumbnail(middleFrame) ''' # Get first track frame for thumbnail trackItem_sourceIn = trackItem.sourceIn() trackItem_thumbnail = trackItem.thumbnail(trackItem_sourceIn) nim_hiero_home = os.path.normpath( os.path.join(nimPrefs.get_home(), 'apps', 'Hiero')) #img_name = trackItem.name()+".png" img_name = "shoticon.png" image_path = os.path.normpath(os.path.join(nim_hiero_home, img_name)) trackItem_thumbnail.save(image_path, "PNG", -1) apiInfo = nimAPI.upload_shotIcon(nim_shotID, image_path) #print apiInfo if apiInfo == True: status_msg = "NIM: Successfully uploaded icon for %s" % trackItem.name( ) print status_msg self.setStatusMessage(status_msg, 0, True) else: status_msg = "NIM: Failed to upload icon for %s" % trackItem.name() print status_msg self.setStatusMessage(status_msg, 0, True) ''' if apiInfo['file_success'] == 'true': if 'error' in apiInfo: print " WARNING: %s" % apiInfo['error'] else: if 'error' in apiInfo: print " ERROR: %s" % apiInfo['error'] ''' return True
def updateShotIcon(self, trackItem): '''Create thumbnail from trackItem and upload to NIM''' nim_shotID = None nim_tagFound = False nim_tag = None nim_tag = self.getNimTag(trackItem) if nim_tag != False: nim_shotID = nim_tag.metadata().value("tag.shotID") else: print "NIM: ERROR - trackItem Missing NIM Tag" return False # Get middle frame for thumbnail trackItem_sourceIn = trackItem.sourceIn() trackItem_sourceOut = trackItem.sourceOut() middleFrame = (trackItem_sourceOut - trackItem_sourceIn) // 2 trackItem_thumbnail = trackItem.thumbnail(middleFrame) ''' #encode for upload byteArray = QByteArray() buffer = QBuffer(byteArray) buffer.open(QIODevice.ReadWrite) img_size = QSize(320,180) trackItem_thumbnail = trackItem_thumbnail.scaled(img_size, Qt.KeepAspectRatio) trackItem_thumbnail.save(buffer, "PNG", 100) #writes image into byteArray in JPG format buffer.close() #encoded_image = base64.b64encode(byteArray.data()) ''' nim_hiero_home = os.path.normpath( os.path.join(nimPrefs.get_home(), 'apps', 'Hiero')) #img_name = trackItem.name()+".png" img_name = "shoticon.png" image_path = os.path.normpath(os.path.join(nim_hiero_home, img_name)) trackItem_thumbnail.save(image_path, "PNG", -1) apiInfo = nimAPI.upload_shotIcon(nim_shotID, image_path) #print apiInfo if apiInfo == True: status_msg = "NIM: Successfully uploaded icon for %s" % trackItem.name( ) print status_msg self.setStatusMessage(status_msg, 0, True) else: status_msg = "NIM: Failed to upload icon for %s" % trackItem.name() print status_msg self.setStatusMessage(status_msg, 0, True) ''' if apiInfo['file_success'] == 'true': if 'error' in apiInfo: print " WARNING: %s" % apiInfo['error'] else: if 'error' in apiInfo: print " ERROR: %s" % apiInfo['error'] ''' return True