All Posts

Reproducir videos con MPV, mediante Python.

La reproducción de videos es una de las formas favoritas de entretenimiento de la gran mayoría de los seres humanos. Ya sean películas, documentales, video clips, grabaciones privadas o cualquier otro formato existente.

Nos pasamos gran parte de nuestro tiempo libre, o incluso no tan libre, visualizando todo tipo de contenidos audio visuales, especialmente del inmenso océano de material videográfico que es YouTube.

MPV es un reproductor multimedia gratuito, de código abierto y multiplataforma.

En Mac se puede instalar facilmente utilizando brew, con la siguiente instrucción en la terminal.

brew install mpv

MPV es un reproductor que funciona a través de la consola. Si lo que quieres es una interfaz gráfica, puedes utilizar IINA. Esta aplicación utiliza MPV como reproductor, dotándolo de una interfaz gráfica más amigable.

Con Python podemos exprimir las grandes características que nos ofrece MPV, ejecutando scrips que reproduzcan listas de video, todos los videos de una o varias carpetas, reproducir trozos aleatorios de videos, con secuencias que comienzan y acaban de forma aleatoria.

Este es el código para reproducir un archivo de video:

from subprocess import call

def reproduce(archivo, comienzo, resolucion, final):
    try:
        call('mpv "' +  archivo + '" – start=' + comienzo + ' – geometry=' + resolucion + ' – length=' + final, shell = True)
    except:
        print("Error al Reproducir Momento")

archivo = "" # Ruta del archivo
comienzo = "00:00:00"
resolucion = "45%"
final = "2:00:00"

reproduce(archivo, comienzo, resolucion, final)

Los parámetros que necesitamos pasar a la función son:

  • Archivo. La ruta del archivo que vamos a reproducir.
  • Comienzo. Donde empieza a reproducirse el archivo. Si queremos que empiece en el minuto 5, le pasamos 00:05:00
  • Resolución. El tamaño que tendrá la ventana de reproducción.
  • Final. El punto en el que se detendrá la reproducción, contando desde el momento que comienza la reproducción. En otras palabras, si la reproducción comienza en el minuto 5 (00:05:00), y queremos reproducir 15 segundos (00:00:15), la reproducción se detendrá en el minuto 5:15

Para listar todos los subdirectorios de una carpeta, devuelve los archivos contenidos en todas las subcarpetas encontradas.

from os.path import isfile, isdir, join

def listdir_recurd(files_list, root, folder, checked_folders):

    if (folder != root):
        checked_folders.append(folder)
        
    for f in listdir(folder):
        d = join(folder, f)       

        if isdir(d) and d not in checked_folders:
            listdir_recurd(files_list, root, d, checked_folders)
        else:
            if isfile(d):  # si no hago esto, inserta en la lista el nombre de las carpetas ignoradas
                files_list.append(join(folder, f))

    return files_list

Para obtener un tiempo aleatorio.

import random

def tiempo_aleatorio(tMin, tSeg):
    minutos = random.randint(0, tMin)
    segundos = random.randint(0, tSeg)

    tiempo = "00:%s:%s" %(minutos, segundos)
    return tiempo

Obtener la duración de un video, para ello debemos tener instalada la aplicación exiftool. Sabiendo la duración del video, calculamos un punto de inicio y fin aleatorio, sin exceder la duración real del video.

import subprocess

def duracion_escena(escena):
    datos = subprocess.check_output(['exiftool', escena]).decode('utf-8')

    dic = {}
    for line in datos.splitlines():
        valores = line.split(" : ",1)
        dic[valores[0].strip()] = valores[1].strip()

    duracion = dic['Track Duration']

    dura = duracion.split(":")
    minutos = int(dura[0]) + int(dura[1])

    resultado = tiempo_aleatorio(minutos, 59)

    return resultado

Desordenar una lista obtenida con la función anterior listdir_recurd.

import random

def random_sin_repetir(lista):
    for _ in range(0,len(lista)):
        result = random.choice(lista)
        yield result
        lista.remove(result)

El reproductor MPV dispone de infinidad de parametros para controlar la reproducción de videos, puedes ver más información aqui.

Share

Conocer las tarifas de luz cada hora, script en python

Las tarifas de luz son cada día más caras, por lo que tenemos que mirar muy bien cuándo realizamos nuestros consumos. Es cierto que muchos electrodomésticos no se pueden desconectar, como es la nevera, pero por ejemplo la lavadora, secadora o secador de pelo, podemos y debemos utilizarlos entre los rangos de horas que la electricidad es más barata.

Para las tarifas (PVPC) Precios Voluntarios para el Pequeño Consumidor.

Según la tarifa de luz eléctrica que tengamos contratada, el precio de la luz en cada zona horario es diferente.

Con la tarifa 2.0.A, el precio de la luz por horas es bastante uniforme, variando entre la hora más barata a la más cara un 14%, el precio de la hora más barata se sitúa en torno a los 0,095 € y la más cara a 0,110 €.

La tarifa 2.0.DHA, con dos discriminaciones horarias, divide el día en dos franjas, de 10 de la noche a las 12 del medio día del día siguiente, esta es la tarifa con las horas más baratas, en torno a los 0,05 €, recuerda que cada hora varia el precio. Y la franja de 12 del mediodía a 10 de la noche el precio por hora oscila entre los 0,12 €. La diferencia entre las horas baratas y las horas caras es de un 175%. Si tu consumo se realiza principalmente entre la franja con las horas más baratas, es muy recomendable utilizar esta tarifa.

La tarifa 2.0.DHS es muy similar a la tarifa 2.0.DHA, esta indicada para la carga de vehículos eléctricos. Las horas nocturnas son un poco más baratas que en la tarifa anterior.

Los valores indicados son los precios oficiales, y están referidos al Término de Facturación de Energía Activa del PVPC, de la Tarifa general (2.0.A), Tarifa discriminación horaria también llamada tarifa nocturna (2.0.DHA), y Vehículo eléctrico (2.0.DHS). 

Para obtener el precio real de la electricidad en cada franja horaria disponemos de la API de esios.

Los códigos de la api para cada una de las tarifas son:

  • 2.0.A – 10229
  • 2.0.DHA – 10230
  • 2.0.DHS – 10231

Para poder utilizar la API de esios, debemos utilizar un TOKEN. Este TOKEN debemos solicitarlo en la siguiente dirección de correo, consultasios@ree.es.

El código Python:

import requests
import json

TOKEN = "poner aqui el token"


url = 'https://api.esios.ree.es/indicators/10230'
headers = {'Accept':'application/json; application/vnd.esios-api-v2+json','Content-Type':'application/json','Host':'api.esios.ree.es','Authorization':'Token token=' + TOKEN}

response = requests.get(url, headers=headers)

if response.status_code == 200:
    json_data = json.loads(response.text)

    valores = json_data['indicator']['values']

    precios = [x['value'] for x in valores]
    
    hora = 0
    for precio in precios:
        print("%s horas - %s €" %(str(hora).zfill(2), str(round(precio/1000, 4))))
        hora += 1

    
    valor_min = min(precios)
    valor_max = max(precios)
    valor_med = round(statistics.mean(precios),2)
    
    print("Precio mínimo: %s" % str(valor_min/1000))
    print("Precio máximo: %s" % str(valor_max/1000))
    print("Precio medio: %s" % str(valor_med/1000))

El código anterior descarga la tarifa 2.0.DHA (10230). Cambiando el parametro de la url, despues de indicators, el código corresponde a la tarifa que queremos consultar.

Se obtiene el precio de cada fracción de hora, la hora y el precio mínimo, máximo, y el valor medio.

Resultado:

00 horas - 0.0547 €
01 horas - 0.0435 €
02 horas - 0.0471 €
03 horas - 0.0459 €
04 horas - 0.044 €
05 horas - 0.0434 €
06 horas - 0.0465 €
07 horas - 0.0615 €
08 horas - 0.0588 €
09 horas - 0.0545 €
10 horas - 0.0524 €
11 horas - 0.0571 €
12 horas - 0.0574 €
13 horas - 0.1209 €
14 horas - 0.1207 €
15 horas - 0.1213 €
16 horas - 0.1205 €
17 horas - 0.1227 €
18 horas - 0.1274 €
19 horas - 0.1253 €
20 horas - 0.1237 €
21 horas - 0.1238 €
22 horas - 0.1202 €
23 horas - 0.0519 €
Precio mínimo: 0.04344
Precio máximo: 0.12742
Precio medio: 0.08105

Share

Colorear imágenes con Inteligencia Artificial

Cada día se ve con más claridad que la Inteligencia Artificial acabara presente en todos los ámbitos de nuestra vida. Es la nueva era de la industrialización.

La Inteligencia Artificial ya esta a nuestro alrededor, aunque no nos demos cuenta. Móviles, ordenadores, televisores o vehículos ya la utilizan, y cada vez más dispositivos se sumaran a esta nueva realidad.

Hace unos días Adobe presento el nuevo Photoshop, el cual ya incorpora un buen número de herramientas que hacen uso de la Inteligencia Artificial para el diseño y modificación de fotografías.

Esta misma semana Tesla, el fabricante número uno en vehículos eléctricos, a empezado a distribuir una versión beta de su famoso Autopilot, de momento solo para unos pocos usuarios, que llevara a esta marca a ser la primera en la conducción autónoma.

Todos los procesos ya comienzan a girar en torno a la Inteligencia Artificial, y la fotografía y su manipulación no podían quedar al margen.

Aunque es cierto que ya prácticamente no se imprimen en papel las fotografías, aun contamos en nuestros hogares con muchas de ellas en este formato. Incluso, en muchos casos, ya han sido digitalizadas y se encuentran en formato digital.

Imagen original, en blanco y negro, de la entrada del blog.

Hasta ahora, colorear una fotografía, requeria de un complejo proceso, y sobre todo, conocer bien los colores y herramientas que aplicábamos en tales procesos. Con la Inteligencia Artificial, el proceso de colorear una imagen se realiza de forma automática y en solo unos segundos.

Si tu intención es colorear esas viejas fotografías puedes utilizar el sitio web deepai.org. Tan solo tienes que seleccionar la imagen a colorear, el proceso es totalmente automático y gratuito, en unos segundos tendrás tu imagen coloreada.

Imagen original en blanco y negro.

Resultado al ser coloreada por la Inteligencia Artificial.

Puede que aun el resultado no sea del todo perfecto, pero en muy poco tiempo estas técnicas serán perfeccionadas cada vez más, logrando resultados aun más espectaculares.

Share

Photopea el Photoshop gratuito basado en web

Puede, no lo se, que Photoshop no sea el mejor programa de edición y modificación de imágenes, pero sin ninguna duda es el más popular, conocido y utilizado en todo el mundo.

Photopea es una utilidad web muy similar a Photoshop. De hecho, utiliza las mismas teclas rápidas que podemos utilizar en Photoshop para realizar las diferentes tareas. Si ya has utilizado Photoshop con anterioridad, no te costará nada desenvolverte en Photopea.

Como hemos dicho, Photopea es una aplicación web, la puedes utilizar desde tu navegador favorito. Este es el enlace a Photopea.

Puede que Photopea no sea un Photoshop completo, pero para la mayoría de usuarios, las herramientas que nos aporta esta aplicación web son más que suficientes para realizar las tareas habituales.

Con Photopea podrás seguir cualquier curso de Photoshop, y realizar esos pequeños retoques en tus fotografías, realizar practicas, ejercicios o cualquier otra actividad que necesites.

Una herramienta versátil, que no requiere de instalación en nuestro ordenador, no ocupa espacio en tu disco duro, se puede utilizar en cualquier ordenador, cómodamente desde tu navegador web favorito, alli donde te encuentres, y sorprendentemente, de momento, es gratuita.

Por defecto, la interfaz de Photopea, viene en ingles, pero si para ti esto es un problema, puedes cambiar la configuración del idioma a más de 30 lenguas diferentes, incluyendo el castellano (español).

Al seleccionar un proyecto nuevo, tienes multiples plantillas ya rediseñadas para realizar tus tareas. De tantas plantillas que hay, existe un buscador para que te resulte más fácil encontrar una que se adapte a la tarea que necesitas realizar.

También te permite seleccionar una gran variedad de tamaños recopilados en varios grupos; social, impresión, foto, pantalla, móvil, anuncios o iconos. Todos ellos disponibles con un solo click de ratón.

Photoshop, sin ninguna duda es una gran aplicación para crear y retocar imágenes, pero Photopea no se queda atrás, parece verdaderamente un clon de Photoshop.

Share

Apple. Autenticación de doble factor

Hoy en día nuestros datos electrónicos son muy valiosos y los criminales informáticos quieren acceder a ellos de cualquier forma. Pueden ser fácilmente vendidos en el mercado negro, obteniendo rápidos beneficios.

La autenticación de doble factor nos puede ayudar enormemente a que nuestras cuentas y datos no sea hackeadas.

Apple dispone de un sitio web desde el que podemos administrar nuestra cuenta, puedes acceder a él pulsando aquí.

La autenticación de doble factor añade un nivel más de seguridad a tu cuenta. A demás del usuario y contraseña solicitados normalmente para el acceso, debemos introducir adicionalmente un código de seguridad que Apple envia a uno de nuestros dispositivos de confianza. Un dispositivo de confianza es nuestro propio iPhone, iPad o Mac.

Si aun no tienes activada la autenticación de doble factor, no esperes más, activala ya. Para ello entra en la dirección web que hemos comentado anteriormente. En el apartado “Seguridad / Autenticación de doble factor“, pulsa en activar y sigue los pasos.

Otro apartado interesante es “Apps Y Sitios Web Que Usan El Id De Apple“. Aquí podrás ver y gestionar las aplicaciones y sitios web en los cuales utilizas tu ID de Apple.

Hay aplicaciones, por ejemplo los gestores de correo, que para poder vincular tu cuenta de Apple, necesitas generar una Contraseña de Aplicación. Esta contraseña te permite gestionar tu correo desde otro cliente o aplicación. Para generar dicha contraseña lo puedes realizar desde “Seguridad / Contraseñas de Aplicación“. Solo debes introducir un nombre que identifique el servicio, y automáticamente se te proporcionara una clave, la cual debes introducir en dicha aplicación cuando te pide la contraseña.

La autenticación de doble factor, también te permite acceder a los servicios de Apple via web, con total seguridad desde dispositivos poco confiables, ordenadores que no sean tuyos, por ejemplo, ya que al solicitar la clave de doble factor, nadie posteriormente podrá acceder a dichos sitios.

En el apartado “Dispositivos“, puedes ver todos los dispositivos asociados a tu cuenta de Apple.

Todos tus datos personales también pueden ser gestionados desde este sitio web. Así como eliminar los dispositivos que ya no te interese que esten vinculados, o aquellos de los que ya no dispones y no desvinculaste en su día desde el propio dispositivo.

Share