def __play_stack_tareas(self, player=False): if PR: print "WidgetConvert", "__play_stack_tareas" if self.player: self.player.disconnect_by_func(self.__play_stack_tareas) self.player.disconnect_by_func(self.__process_tarea) self.player.disconnect_by_func(self.__info_tarea) self.player.stop() del (self.player) self.player = False if not self.temp_tareas: self.emit("accion-tarea", "end") self.__in_run(False) self.buttonsbox.set_info(" Tareas Procesadas ") self.buttonsbox.progress.set_progress(100.0) return False codec = self.temp_tareas[0] self.temp_tareas.remove(codec) dirpath_destino = "" if codec in ["jpg", "png"]: dirpath_destino = get_imagenes_directory() elif codec in ["ogg", "mp3", "wav"]: dirpath_destino = get_audio_directory() elif codec in ["ogv", "mpeg", "avi"]: dirpath_destino = get_video_directory() self.__in_run(True) gobject.idle_add(self.__new_jamedia_converter, codec, dirpath_destino) return False
def __play_stack_tareas(self, player=False): if PR: print "WidgetConvert", "__play_stack_tareas" if self.player: self.player.disconnect_by_func(self.__play_stack_tareas) self.player.disconnect_by_func(self.__process_tarea) self.player.disconnect_by_func(self.__info_tarea) self.player.stop() del(self.player) self.player = False if not self.temp_tareas: self.emit("accion-tarea", "end") self.__in_run(False) self.buttonsbox.set_info(" Tareas Procesadas ") self.buttonsbox.progress.set_progress(100.0) return False codec = self.temp_tareas[0] self.temp_tareas.remove(codec) dirpath_destino = "" if codec in ["jpg", "png"]: dirpath_destino = get_imagenes_directory() elif codec in ["ogg", "mp3", "wav"]: dirpath_destino = get_audio_directory() elif codec in ["ogv", "mpeg", "avi"]: dirpath_destino = get_video_directory() self.__in_run(True) gobject.idle_add(self.__new_jamedia_converter, codec, dirpath_destino) return False
def cargar_lista(self, widget, indice): _dict = { 0: os.path.join(get_data_directory(), 'JAMediaRadio.JAMedia'), 1: os.path.join(get_data_directory(), 'JAMediaTV.JAMedia'), 2: os.path.join(get_data_directory(), 'MisRadios.JAMedia'), 3: os.path.join(get_data_directory(), 'MisTvs.JAMedia'), 4: os.path.join(get_data_directory(), 'JAMediaWebCams.JAMedia'), 5: get_my_files_directory(), 6: get_tube_directory(), 7: get_audio_directory(), 8: get_video_directory(), } ocultar(self.toolbar.boton_agregar) if indice == 0: self.__seleccionar_lista_de_stream(_dict[0], "JAM-Radio") elif indice == 1: self.__seleccionar_lista_de_stream(_dict[1], "JAM-TV") elif indice == 2: self.__seleccionar_lista_de_stream(_dict[2], "Radios") mostrar(self.toolbar.boton_agregar) elif indice == 3: self.__seleccionar_lista_de_stream(_dict[3], "TVs") mostrar(self.toolbar.boton_agregar) elif indice == 4: self.__seleccionar_lista_de_stream(_dict[4], "WebCams") elif indice == 5: self.__seleccionar_lista_de_archivos(_dict[indice], "Archivos") elif indice == 6: self.__seleccionar_lista_de_archivos(_dict[indice], "JAM-Tube") elif indice == 7: self.__seleccionar_lista_de_archivos(_dict[indice], "JAM-Audio") elif indice == 8: self.__seleccionar_lista_de_archivos(_dict[indice], "JAM-Video") elif indice == 9: selector = My_FileChooser(parent=self.get_toplevel(), filter_type=[], action=gtk.FILE_CHOOSER_ACTION_OPEN, mime=self.mime, title="Abrir Archivos", path=self.directorio) selector.connect('load-files', self.__load_files, "Archivos") selector.run() if selector: selector.destroy()
def cargar_lista(self, widget, indice): data = get_data_directory() _dict = { 0: os.path.join(data, 'JAMediaRadio.JAMedia'), 1: os.path.join(data, 'JAMediaTV.JAMedia'), 2: os.path.join(data, 'MisRadios.JAMedia'), 3: os.path.join(data, 'MisTvs.JAMedia'), 4: os.path.join(data, 'JAMediaWebCams.JAMedia'), 5: get_my_files_directory(), 6: get_tube_directory(), 7: get_audio_directory(), 8: get_video_directory(), } ocultar(self.toolbar.boton_agregar) if indice == 0: self.__seleccionar_lista_de_stream(_dict[0], "JAM-Radio") elif indice == 1: self.__seleccionar_lista_de_stream(_dict[1], "JAM-TV") elif indice == 2: self.__seleccionar_lista_de_stream(_dict[2], "Radios") mostrar(self.toolbar.boton_agregar) elif indice == 3: self.__seleccionar_lista_de_stream(_dict[3], "TVs") mostrar(self.toolbar.boton_agregar) elif indice == 4: self.__seleccionar_lista_de_stream(_dict[4], "WebCams") elif indice == 5: self.__seleccionar_lista_de_archivos(_dict[indice], "Archivos") elif indice == 6: self.__seleccionar_lista_de_archivos(_dict[indice], "JAM-Tube") elif indice == 7: self.__seleccionar_lista_de_archivos(_dict[indice], "JAM-Audio") elif indice == 8: self.__seleccionar_lista_de_archivos(_dict[indice], "JAM-Video") elif indice == 9: selector = My_FileChooser(parent=self.get_toplevel(), filter_type=[], action=gtk.FILE_CHOOSER_ACTION_OPEN, mime=self.mime, title="Abrir Archivos", path=self.directorio) selector.connect('load-files', self.__load_files, "Archivos") selector.run() if selector: selector.destroy()
def grabar(self, widget=False, event=False): """ Graba Audio y Video desde la webcam. """ import time import datetime self.stop() multi_out_tee = self.pipeline.get_by_name('multi_out_tee') # FIXME: Verificar que ya no estén estos elementos en el pipe video_bin = Theoraenc_bin() audio_bin = Vorbisenc_bin() oggmux = Gst.ElementFactory.make('oggmux', "oggmux") filesink = Gst.ElementFactory.make('filesink', "filesink") fecha = datetime.date.today() hora = time.strftime("%H-%M-%S") archivo = os.path.join(get_video_directory(), "%s-%s.ogg" % (fecha, hora)) self.patharchivo = archivo filesink.set_property("location", archivo) self.pipeline.add(video_bin) self.pipeline.add(audio_bin) self.pipeline.add(oggmux) self.pipeline.add(filesink) multi_out_tee.link(video_bin) video_bin.link(oggmux) audio_bin.link(oggmux) oggmux.link(filesink) self.play()
def grabar(self, widget=False, event=False): """ Graba Audio y Video desde la webcam. """ import time import datetime self.stop() multi_out_tee = self.pipeline.get_by_name("multi_out_tee") # FIXME: Verificar que ya no estén estos elementos en el pipe video_bin = Theoraenc_bin() audio_bin = Vorbisenc_bin() oggmux = Gst.ElementFactory.make("oggmux", "oggmux") filesink = Gst.ElementFactory.make("filesink", "filesink") fecha = datetime.date.today() hora = time.strftime("%H-%M-%S") archivo = os.path.join(get_video_directory(), "%s-%s.ogg" % (fecha, hora)) self.patharchivo = archivo filesink.set_property("location", archivo) self.pipeline.add(video_bin) self.pipeline.add(audio_bin) self.pipeline.add(oggmux) self.pipeline.add(filesink) multi_out_tee.link(video_bin) video_bin.link(oggmux) audio_bin.link(oggmux) oggmux.link(filesink) self.play()
def set_accion(self, modo, accion): """ Le pasa a la camara las ordenes seleccionadas por el usuario en la toolbar correspondiente de la aplicacion. """ self.emit("cancel-toolbars") if accion == "Izquierda" or accion == "Derecha": if self.jamediawebcam: self.jamediawebcam.rotar(accion) elif self.player: self.player.rotar(accion) elif self.imageplayer: self.imageplayer.rotar(accion) else: print "Accion sin definir:", self.set_accion, modo, accion elif accion == "Stop": if modo == "video": self.get_toplevel().toolbar.set_sensitive(False) self.__re_init_video_web_cam() self.info_label.set_text("") self.info_label.hide() gobject.timeout_add(1000, self.__re_sensitive) elif modo == "foto": self.get_toplevel().toolbar.set_sensitive(False) self.__re_init_video_web_cam() self.info_label.set_text("") self.info_label.hide() gobject.timeout_add(300, self.__re_sensitive) elif modo == "jamediaconverter": self.jamediaconvert.tareas_pendientes = [] # FIXME: Considerar detener la conversíon en progreso else: print "Accion sin definir:", self.set_accion, modo, accion elif accion == "Filmar": # and modo == "video": self.get_toplevel().toolbar.set_sensitive(False) hora = time.strftime("%H-%M-%S") fecha = str(datetime.date.today()) archivo = "JV_%s_%s" % (fecha, hora) archivo = os.path.join(get_video_directory(), archivo) self.jamediawebcam.filmar(archivo) gobject.timeout_add(1000, self.__re_sensitive) elif accion == "Fotografiar": self.get_toplevel().toolbar.set_sensitive(False) rafaga = self.rafagas_setting.get_rafaga() self.jamediawebcam.fotografiar(get_imagenes_directory(), rafaga) gobject.timeout_add(300, self.__re_sensitive) # FIXME: Desactivadas por ahora #elif accion == "Centrar" or accion == "Acercar" or accion == "Alejar": # self.imageplayer.set_zoom(accion) else: print "Accion sin definir:", self.set_accion, modo, accion
def __cargar_lista(self, widget, indice): """ Recibe el indice seleccionado en el menu de toolbarlist y carga la lista correspondiente. Esto es solo para JAMedia no embebido ya que cuando JAMedia esta embebida, no posee la toolbarlist. """ model, iter = self.lista_de_reproduccion.get_selection().get_selected() ultimopath = False if model and iter: valor = model.get_value(iter, 2) if valor: from Globales import describe_uri descripcion = describe_uri(valor) if descripcion: if descripcion[2]: ultimopath = valor map(self.__ocultar, [ self.toolbar_accion, self.toolbaraddstream]) self.toolbar_list.boton_agregar.hide() from Globales import get_data_directory from Globales import get_my_files_directory from Globales import get_tube_directory from Globales import get_audio_directory from Globales import get_video_directory if indice == 0: archivo = os.path.join( get_data_directory(), 'JAMediaRadio.JAMedia') self.__seleccionar_lista_de_stream(archivo, "JAM-Radio") elif indice == 1: # HACK: Tv no funciona con JAMediaReproductor. #if self.player == self.jamediareproductor: # self.switch_reproductor(None, "MplayerReproductor") archivo = os.path.join( get_data_directory(), 'JAMediaTV.JAMedia') self.__seleccionar_lista_de_stream(archivo, "JAM-TV") elif indice == 2: archivo = os.path.join( get_data_directory(), 'MisRadios.JAMedia') self.__seleccionar_lista_de_stream(archivo, "Radios") self.toolbar_list.boton_agregar.show() elif indice == 3: # HACK: Tv no funciona con JAMediaReproductor. #if self.player == self.jamediareproductor: # self.switch_reproductor(None, "MplayerReproductor") archivo = os.path.join( get_data_directory(), 'MisTvs.JAMedia') self.__seleccionar_lista_de_stream(archivo, "TVs") self.toolbar_list.boton_agregar.show() elif indice == 4: # HACK: Tv no funciona con JAMediaReproductor. #if self.player == self.jamediareproductor: # self.switch_reproductor(None, "MplayerReproductor") archivo = os.path.join( get_data_directory(), 'JAMediaWebCams.JAMedia') self.__seleccionar_lista_de_stream(archivo, "WebCams") #self.toolbar_list.boton_agregar.show() elif indice == 5: self.__seleccionar_lista_de_archivos( get_my_files_directory(), "Archivos") elif indice == 6: self.__seleccionar_lista_de_archivos( get_tube_directory(), "JAM-Tube") elif indice == 7: self.__seleccionar_lista_de_archivos( get_audio_directory(), "JAM-Audio") elif indice == 8: self.__seleccionar_lista_de_archivos( get_video_directory(), "JAM-Video") elif indice == 9: from Widgets import My_FileChooser directorio = None if ultimopath: directorio = "file://%s" % os.path.dirname(ultimopath) selector = My_FileChooser( parent=self.get_toplevel(), action=Gtk.FileChooserAction.OPEN, mime=["audio/*", "video/*"], title="Abrir Archivos.", path=directorio, filter=[]) selector.connect( 'archivos-seleccionados', self.__cargar_directorio) selector.run() if selector: selector.destroy()
def __cargar_lista(self, widget, indice): """ Recibe el indice seleccionado en el menu de toolbarlist y carga la lista correspondiente. Esto es solo para JAMedia no embebido ya que cuando JAMedia esta embebida, no posee la toolbarlist. """ model, iter = self.lista_de_reproduccion.get_selection().get_selected() ultimopath = False if model and iter: valor = model.get_value(iter, 2) if valor: from Globales import describe_uri descripcion = describe_uri(valor) if descripcion: if descripcion[2]: ultimopath = valor map(self.__ocultar, [self.toolbar_accion, self.toolbaraddstream]) self.toolbar_list.boton_agregar.hide() from Globales import get_data_directory from Globales import get_my_files_directory from Globales import get_tube_directory from Globales import get_audio_directory from Globales import get_video_directory if indice == 0: archivo = os.path.join(get_data_directory(), 'JAMediaRadio.JAMedia') self.__seleccionar_lista_de_stream(archivo, "JAM-Radio") elif indice == 1: # HACK: Tv no funciona con JAMediaReproductor. #if self.player == self.jamediareproductor: # self.switch_reproductor(None, "MplayerReproductor") archivo = os.path.join(get_data_directory(), 'JAMediaTV.JAMedia') self.__seleccionar_lista_de_stream(archivo, "JAM-TV") elif indice == 2: archivo = os.path.join(get_data_directory(), 'MisRadios.JAMedia') self.__seleccionar_lista_de_stream(archivo, "Radios") self.toolbar_list.boton_agregar.show() elif indice == 3: # HACK: Tv no funciona con JAMediaReproductor. #if self.player == self.jamediareproductor: # self.switch_reproductor(None, "MplayerReproductor") archivo = os.path.join(get_data_directory(), 'MisTvs.JAMedia') self.__seleccionar_lista_de_stream(archivo, "TVs") self.toolbar_list.boton_agregar.show() elif indice == 4: # HACK: Tv no funciona con JAMediaReproductor. #if self.player == self.jamediareproductor: # self.switch_reproductor(None, "MplayerReproductor") archivo = os.path.join(get_data_directory(), 'JAMediaWebCams.JAMedia') self.__seleccionar_lista_de_stream(archivo, "WebCams") #self.toolbar_list.boton_agregar.show() elif indice == 5: self.__seleccionar_lista_de_archivos(get_my_files_directory(), "Archivos") elif indice == 6: self.__seleccionar_lista_de_archivos(get_tube_directory(), "JAM-Tube") elif indice == 7: self.__seleccionar_lista_de_archivos(get_audio_directory(), "JAM-Audio") elif indice == 8: self.__seleccionar_lista_de_archivos(get_video_directory(), "JAM-Video") elif indice == 9: from Widgets import My_FileChooser directorio = None if ultimopath: directorio = "file://%s" % os.path.dirname(ultimopath) selector = My_FileChooser(parent=self.get_toplevel(), action=Gtk.FileChooserAction.OPEN, mime=["audio/*", "video/*"], title="Abrir Archivos.", path=directorio, filter=[]) selector.connect('archivos-seleccionados', self.__cargar_directorio) selector.run() if selector: selector.destroy()