def write_files (self): # TODO: we should add a confirmation dialog r = RecordingMedia (self.music_list, self.preferences, self.__window) # Add this operation to the recording self.operations.append (r) r.listeners.append (self) r.start()
def burn (self, *args): if not self.preferences.temporary_dir_is_ok(): gtk_util.dialog_warn ("Temporary directory location unavailable", "Please check if the temporary exists and has writable permissions.") self.__on_preferences () return if gtk_util.dialog_ok_cancel ("Do you want to continue?", "You are about to record a media disk. Canceling a writing operation will make your disk unusable.", self) != gtk.RESPONSE_OK: return r = RecordingMedia (self.masterer.source, self.preferences, self) r.start()
def burn (self, *args): # Check if we have space available in our cache dir secs = 0 for music in self.masterer.source: if not self.preferences.pool.is_available (music['uri']): secs += music['duration'] # 44100hz * 16bit * 2channels / 8bits = 176400 bytes per sec size_needed = secs * 176400L s = os.statvfs (self.preferences.temporary_dir) size_avail = s[statvfs.F_BAVAIL] * long(s[statvfs.F_BSIZE]) if (size_avail - size_needed) < 0: gtk_util.dialog_error ("Not enough space on cache directory", "Remove some music tracks or make sure your cache location location has enough free space (about %s)." % (self.__hig_bytes(size_needed - size_avail)), self) return if not self.preferences.temporary_dir_is_ok(): gtk_util.dialog_warn ("Cache directory location unavailable", "Please check if the cache location exists and has writable permissions.", self) self.__on_preferences () return if gtk_util.dialog_ok_cancel ("Do you want to continue?", "You are about to record a media disk. Canceling a writing operation will make your disk unusable.", self) != gtk.RESPONSE_OK: return r = RecordingMedia (self.masterer.source, self.preferences, self) r.start()