Mostrando entradas con la etiqueta Software. Mostrar todas las entradas
Mostrando entradas con la etiqueta Software. Mostrar todas las entradas

jueves, 17 de noviembre de 2022

el super comando: ffmpeg

 Hasta ahora me resistía a escribir sobre el software de código abierto (FOSS Free and Open Source Software)  ffmpeg , pero de todas maneras dejo un par de comandos que ocupo repetidamente:

Cortar un video desde -ss y durante -t 53 segundos:

ffmpeg -i input.mp4  -vcodec copy -acodec copy -ss 00:00:00 -t 52 output.mp4


Cambiar el audio de un video con un audio :

ffmpeg -i video.mp4 -i audio.mp3 -acodec copy -vcodec copy -map 0:v:0 -map 1:a:0 salida.mp4

Archivo mp3 desde video mp4:

ffmpeg -i input.mp4 -f mp3 -ab 192000 -vn output.mp3

 

para tenerlo a la mano.


lunes, 24 de octubre de 2022

Girar hojas de pdf

Una buena guía para cambiar la orientación de las páginas de un pdf con una herramienta gratuita PDFTK sin recurrir a empresas que cobran por todo está en el siguiente enlace.

https://people.uleth.ca/~daniel.odonnell/blog/rotating-one-or-more-pages-in-a-pdf-in-linux

Anteriormente ya les había contado de las bondades de pdftk en la entrada:

https://barrosjuan.blogspot.com/2017/07/pdftk-y-su-pandilla-pdftops-ps2pdf.html

Y la línea que me salvó hoy fue: 90 grados sentido horario de todo el doc

 

pdftk in.pdf cat 1-endeast output out.pdf

lunes, 18 de abril de 2022

MyVeloFit

En el contexto de la biomecánica no he escuchado de aplicaciones para llevar el laboratorio a casa. 

Sin embargo, hace poco me enteré de la App MyVeloFit, misma que tiene un costo alto (35 a 70 USD)

https://www.triathlete.com/gear/bike/my-velo-fit-review/

En todo caso les dejo la reseña y a probar esta app.


lunes, 11 de enero de 2021

pcap Packet Capture

Para tener una idea de los tipos de paquetes y los tipos de operaciones ver:

https://documentation.meraki.com/MR/WiFi_Basics_and_Best_Practices/802.11_Association_process_explained

Problemas con instalación de wireshark, tshark, wireshark-common. visitar:

https://blog.bravi.org/?p=912
http://wiki.pchero21.com/wiki/Wireshark


para generar archivos de 1 minuto circular y filtrar el tráfico es udp:

$ sudo dumpcap -b duration:60 -b files:5 -i eth2 -w /tmp/salida.pcap -f "udp port 37008"

192.168.88.1
Para leer el tráfico usar
- tcpdump
- tshark


filtrar tipos especificos 
- para una lista de los tipos y subtipos verificar:
https://sharkfest.wireshark.org/sharkfest.10/B-5_Parsons%20HANDS-ON%20LAB%20-%20WLAN%20Analysis%20with%20Wireshark%20&%20AirPcap%20Exercises.pdf

Tipo
wlan.fc.type==0   Management

Probe Request
wlan.fc.type_subtype==4
Probe Response
wlan.fc.type_subtype==5

Data Frames
wlan.fc.type==2
NULL Data
wlan.fc.type_subtype==36


por ejemplo :

tshark -r salida_00002_20171124155427.pcap -Y 'wlan.fc.type==0 && wlan.fc.type_subtype==4'

ver https://www.wireshark.org/docs/wsug_html/#AppToolsdumpcap


AC:3C:0B:EA:E4:CB
5C:A3:9D:18:E2:B9
5C:A3:9D:18:E2:B9
01:00:5E:7F:FF:FA
00:27:19:1D:C1:94

$ ./tshark -lr clean-test02.cap -o column.format:"rhs","%rhs","uhs","%uhs" | sort | uniq
Cisco_8f:2c:95 00:19:2f:8f:2c:95


Estos comandos permiten generar una herramienta de "espionaje" al guardar las direcciones MAC de dispositivos con su Wi-Fi encendido. 

La información espacio-temporal permitiría establecer perfiles al analizar varios puntos geográficos de detección de determinada dirección. 

Esta técnica se usa para generar perfiles de los usuarios para caracterizar el uso del transporte público.

Ver artículos doi: 10.1109/etcm.2018.8580283 y doi: 10.1109/ETCM48019.2019.9014911 para más información.










miércoles, 20 de marzo de 2019

The Linux Foundation, show me the money

Hace poco estaba viendo un video de la Linux Foundation.



Me gusta el canal porque permiten ver el contenido de conferencias sobre el tema del código abierto, desde la comodidad de mi hogar, a una velocidad superior si lo deseo, con subtitulos y hasta traducidos en algunos casos.

Todavía no conozco una forma de buscar palabras clave dentro de un video.  Quizás, haciendo reconocimiento del habla y corriendo algún algoritmo de resumen automático.

Sin embargo, en este video se habla de algunos proyecto de código abierto que se deberían revisar:

yocto project: para satelites. 

Hyperledger: mineral tracking o seguimiento en la cadena de transporte y valor.

Let's encript: cifrado de conexiones https

Dronecode y Zephyr OS (Intel drones): sobre proyectos para drones.

Automotive Grade Linux: Vehículos con estándares de comunicación abiertos.

OpenVDB: para aplicaciones de física en cine.
openColorIO: para manejo de colores en películas. Revisar el enlace de la Academia de los Oscar pero para posibles trabajos de software libre  https://www.aswf.io/  (Academy SoftWare Foundation )

FirstNet: aplicaciones que ayudan a comunicar luego de desastres naturales.


jueves, 15 de febrero de 2018

Negocio abierto, problemas open source

Alguna vez escuché la frase "el software es el único producto que se vende por su precio completo, pese a estar lleno de defectos". Interesante idea, no puedo comprar una casa o coche incompleto al precio de un producto terminado. De la misma forma, no compraría un coche lleno de fallas y que por lo menos es funcional.
Sin embargo, el modelo de negocio impuesto por Microsoft en la década de los 90 acostumbró al mercado mundial. Un negocio redondo, si la gente compra un producto lleno de errores y vuelve a pagar por las mejoras facilita de gran manera generar el imperio que actualmente es.
Por otro lado, la idea de software libre de patentes es casi utópica, sería imposible cambiar la naturaleza humana (lo que sea que eso signifique) para llegar a algo para todos. Revisar Unix, Linux, etc.  Y aún así encontramos productos basados en software libre, ver por ejemplo el sistema operativo de las nuevas apple's mac, sobre el software libre se utilizan mecanismos para restringirlos pero no se refleja para nada en el nivel de ventas de esos aparatos.
En alguna ocasión como estudiantes nos hablaban de las bondades del open source, sin embargo el expositor desea posicionar la idea de negocio sobre código abierto, solo que para mala suerte de él, había un Cubano en la sala y mostró la hipocresía de su posición: utilizar lo que otros han contribuido gratuitamente para poder lucrar. La verdad es que la idea no es nada nueva y ya ha pasado.
Hoy recibí con gusto el evento https://www.datalat.org/opendataday
Lo  único raro fue la licencia PRO de infogram. pero volvemos al punto inicial. ¿cómo hacer dinero/negocio sobre lo abierto y open?
Interesante evento, no dejen de revisarlo.
   

domingo, 3 de diciembre de 2017

Constraint violation for package 'com.sun.xml.bind.api'

Hace algún tiempo realice unas pruebas sobre un servidor de aplicaciones glassfish y cometí algunos errores. Por ejemplo, instalé la versión 4 y cuando requería subir el archivo zip de aplicación (.war) me di cuenta que la versión necesaria era en realidad la número 3. Entonces desinstalar y probar con la versión 3.
De la misma forma alguna de las aplicaciones que estaba instalando venía con una versión diferente a la librería con la que viene glassfish. Entonces se guardaron ambas versiones de la librería. Ya saben las librerías permiten organizar y separar la funcionalidad en diferentes archivos. Se guardaron ambas versiones y al parecer el servidor soportaba las dos versiones al mismo tiempo. Los servidores pasan grandes periodos sin reiniciarse ni apagarse.
Hace poco, el servidor fue apagado y reiniciado, y desde entonces las aplicaciones del servidor de aplicaciones no han vuelto a funcionar.
Para poder entender qué es lo que pasa, es necesario revisar los archivos de bitácora, o comúnmente conocidos como logs .
He aquí el consejo, por no haber documentado que se realizó el cambio estuve varias horas buscando el problema. En realidad solo se requería utilizar el archivo que viene por defecto con el servidor de aplicaciones y reiniciar el servicio.
No olvidar documentar cualquier cambio que se realice.

miércoles, 29 de noviembre de 2017

Diseño de interiores

Hace algunos años había una posibilidad de realizar trabajos que involucraban a la parte de diseño con el diseño en tres dimensiones (3D). En aquellos tiempos era necesario disponer de software propietario y muy costoso para intentar pasar un plano en formato autoCAD  (dwg) a algún modelo 3D con 3dsmax. En realidad parecía una pesadilla por lo complicado del software y los grandes recursos que requería para funcionar con niveles aceptables en una computadora de la época.
En alguna ocasión estudié la posibilidad de transmisión progresiva y comprimida de geometrías 3d en la WEB. Y hasta existían algunos caso de uso para coches que permitían a sus posibles clientes el revisar la forma del coche desde la comodidad de su hogar con ayuda del Internet.
Luego apareció Google Sketch Up y otros softwares un poco más simplificados y restringidos a las tareas de prototipado rápido de interiores.
Sin embargo, el día de hoy, un conocido me mostró una herramienta en línea para poder realizar la tarea que hace años tomaba como 4 horas solo para configurar.
Y es así que terminamos con una página WEB que se encarga de realizar el trabajo de forma gratuita y sin tener que instalar nada. Revisen por favor:
https://www.homestyler.com/
Al ver lo que se podía realizar con ese sitio, inmediatamente me invadió la duda sobre la tecnología que están usando. Estarían a caso transmitiendo las geometrías desde el servidor? utilizaban herramientas como flashPlayer, java u otras?
Entonces me puse a revisar el tráfico proveniente del servidor. Y al parecer lo único que envía el servidor es un renderizado (una foto) mientras todo se está procesando en el servidor. Cual estilo de un juego de video en red. En este caso no es necesario trasmitir la geometría al cliente.
Obviamente el software propietario tiene muchas otras ventajas, pero para este simple ejemplo el sitio web permite visualizar el espacio rápidamente.

jueves, 6 de julio de 2017

pdftk y su pandilla pdftops ps2pdf pdfinfo pdfimages

Existe una discusión entre los ñoños sobre el presente y futuro de los datos. Cómo se debe estructurar desde el punto de vista informático un documento portable (PDF)? La tendencia es tratar de separar el contenido del documento de su presentación. Los datos y su presentación podría estar unidos mediante algún tipo de metadato o alguna técnica de hipertexto (alguien dijo XML?).

Lo importante es que al común de los mortales no le interesa perder su tiempo en una discusión tan vanal como esa y prefiere estar de fisgón sobre la vida de sus amigos, utilizando fb por ejemplo.

En algunas ocasiones el problema no es trivial.  Por ejemplo, hoy debía preparar un documento en formato PDF para poder ser enviado e imprimido en algún otro lugar distante. Y es que el código abierto brinda herramientas para por ejemplo:
- obtener las imágenes de un pdf: pdfimages
- obtener el tamaño en puntos de cada una de las páginas: pdfinfo
- realizar cortes o integraciones, separar solo algunas páginas, en general manipulación: pdftk.
- convertir archivos de imagen en otros de tipo pdf: convert

De hecho, pdftk significa ToolKit PDF. Un conjunto  de herramientas para manipular varios aspectos de un pdf.

El problema que se me presentó hoy fue que tenía imágenes escaneadas y las convertí a archivos pdf. Y mediente pdftk pretendía generar un archivo con todos los subdocumentos seleccionados. Pero luego de realizar la integración, al revisar el documento observé que el tamaño de algunas páginas era mayor con respecto  a otras páginas.  Recuerden, en teoría Internet es su amigo. y tras buscar un poco encontré algunas posibles soluciones, algunas no funcionaron.

La solución que funcionó hoy fue convertir el pdf al formato postScript o ps.

pdftops -paper A4 PagsGrandes.pdf nuevoArchivoA4.ps

y luego

ps2pdf nuevoArchivoA4.ps archivoRegulado.pdf

para comprobar el tamaño de las páginas utilizamos, el viejo conocido:

pdfinfo archivoRegulado.pdf

Ahora podemos unir sin ningún problema los archivos con pdftk.

Espero recordar esta nota la próxima vez que tenga este problema.



Un buen Sandwich

Algunas instituciones de mi país tienen procedimientos muy rigurosos para publicar información. Es así que algunas veces la secretaria redacta un reglamento basándose en alguno anterior. Luego de trabajar durante algún tiempo corrigiendo el texto para capturar lo que el abogado secretario desea plasmar, se obtiene un archivo de texto con la versión final.
Cabe recordar que para poder realizar búsquedas desde una computadora, es este el formato necesario para colgar en un sitio WEB. Pero un reglamento sin firma de responsabilidad no es válido en realidad, bueno entonces se procede a imprimir el reglamento o documento legal, se le coloca la firma de responsabilidad por todos los implicados en este documentosidio y se procede a escanear el documento para esta vez si, poder colgarlo "como debe de ser".  El problema es que ahora en lugar de tener texto buscable con el poder la computación, se tiene una foto en la que no se pueden realizar busquedas sin realizar algún procesamiento previo, pero nadie quiere saltarse los pasos de ley, no es verdad??

Hoy por n-sima vez utilicé linux y programas con licencia GNU para poder pasar de fotos que provienen de un escaner a un texto buscable. Al tratarse del mundo Open-Source, el camino no es sencillo.  De cualquier manera, llevo utilizando para  esta tarea el script llamado pdfsandwich; mismo que solo ejecuta un script de enlace con varias herramientas que hacen la dificil tarea de reconocer el texto (tesseract), previo el uso de una conversión de color a escala de grises, a veces se corrige las inclinaciones del texto, y se coloca el texto por debajo de la imagen del texto (gs o ghostScript), para finalmente obtener una nueva versión del documento pero con texto buscable. Una opción "razonable" cuando nuestra conexión a internet de subida impide enviar los grandes archivos a un servicio en la nube, bueno, y por los problemas de seguridad ue ello implica.

El comando típico que utilizamos sería:

pdfsandwich -lang spa -layout single -o texto  -debug -verbose archivo.pdf

Lang es de language y spa es de spanish
layout es por si se trata de una columna o 2 columnas
-o es de output o salida, para indicar el nombre del archivo de salida
-debug para guardar todos los archivos intermedios por cada página.
-verbose para leer los mensajes y poder saber en qué página se encuentra.
y obvio, el archivo con las fotos a procesar.

La herramienta no es perfecta, pero es gratis y abierta. Entonces si deseas mejorarla solo cierra la boca y dedicate a programar :)


jueves, 15 de septiembre de 2016

Instrucciòn Ilegal con openCV y los ejemplos

He tenido algunos problemas con la ejecusión  de los ejemplos de OpenCV.
La aplicaciòn muere con un simple "Instrucciòn Ilegal" y muchas interrogantes.

Se podría tratar del comportamiento descrito en el siguiente enlace:

http://answers.opencv.org/question/18001/illegal-instruction-when-running-any-compiled-opencv-demo-binary-sse3-flag/

En el que se sugiere que el problema se origina por una bandera el momento de configurar con CMAKE 

En mi caso la sentencia para configuración sería:

cmake -DENABLE_SSE3=OFF  -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..

Donde estamos desactivando SSE3.  Luego de compilar el error desaparece en una Pentium 4.

viernes, 2 de septiembre de 2016

poppy el humanoide del INRIA

Revisando los archivos de un curso de impresión 3D encontré una referencia a un:
- Robot
- Humanoide
- Open Source
Tres características seguramente muy interesantes. Dejo como referencia un video sobre el tema.


En teoría Usted podría imprimir las partes y unirlas con los motores y sensores y construir su propio poppy. Y quién sabe con el tiempo de poppy pasaremos muy pronto a un Chappy.


viernes, 24 de junio de 2016

NBAndroid

No me gusta Eclipse, y no me gusta AppInventor. las malas mañas son las más difíciles de borrar.
Pasos para instalar el plugin NBAndroid en netbeans 8.0. (para hacer programas en netbeans para android)

Lanzar NB.
tools->plugins
Repositorios(settings)
http://nbandroid.org/release80/updates/updates.xml
Buscar NBANdroid
instalar reiniciar IDE

martes, 24 de mayo de 2016

Que aprenda la máquina, mi pueblo me necesita

El otro día encontré un supuesto argumento en contra de las instituciones de educación superiores.  Un supuesto rastro histórico en el que se pretende optimizar recursos. Tratando de pasar de una escala lineal a un polinómica.  En teoría, si quiero ser panadero, debo pedir a un maestro panadero (maitre pannisiere) que me reciba como su acólito.  Supongo que basado en el dicho popular "si quieres saber bailar, entonces baila", "si quieres poder nadar, entonces tienes que hecharte al agua y practicar".  El problema en realidad sería la escalabilidad.
Una solución era poner a un maestro y a 30,40, 60, etc., personas para ocupar mejor los recursos. Los posibles problemas son que al finalizar las formaciones muchas veces se tiene personas con buena memoria pero con muy poco de práctica.
El artículo explicaba el porqué del fracaso de los MOCs (masive open courses), o cursos abiertos masivos.
Bueno, resulta que al momento estoy enlistado en unos cuantos cursos en línea, con la historia de tener experiencia en al menos uno de estos MOCs.
En Edx estoy siguiendo 3 cursos, que no he tocado en varios meses.
ESRI me propuso otro pero nunca me contactaron (eso creo).
También existe Cursera y muchos otros sitios.
Por ejemplo, es posible acceder a los cursos del MIT mediante su plataforma OCW. Sin ninguna duda una interesante apuesta por la humanidad.
Es como si el conocimiento esta allí, pero tienes que ir por él.

En este momento me encuentro leyendo el material de uno de los cursos en aprendizaje de máquinas y la tarea es leer el artículo del Señor Pedro Domingos sobre "Algunas cosas que saber sobre el aprendizaje de máquinas" con DOI: doi:10.1145/ 2347736.2347755

Aprendizaje = representación + Evaluación + Optimización

Cada una de la fases tiene muchos métodos y en algunas ocasiones los unos dependen de los otros. Es decir un método de representación solo puede ser usado o hacer sentido con algunos de los métodos de evaluación.
- La generalización es lo que importa. Lograr  que nuestra configuración funcione bien con datos que no se utilizaron en el entrenamiento. Y que los resultados sean mejores que una elección al hazar.
- Los datos solos no bastan. Los aprendices son más como el cultivo. Se deja que la naturaleza haga el trabajo, los aprendices combinan conocimiento con datos para cultivar o hacer crecer programas.
- Sobreencajar tiene muchas caras. La computadora puede ver muchas relaciones que no son existentes basandose en los datos, el resultado es alucinaciones. Se puede expresar en forma de "prejuicio y varianza". Prejuicio(Bias) es aprender sistemáticamente la misma cosa incorrecta. y Varianza es aprender cosas al hazar sin respetar la señal de base.
- No intuición en multidimencional.

jueves, 28 de abril de 2016

La ficción novelera.

El otro día por sobrecargar mi tendedero de ropa y por efecto de la cristalización del plástico una de sus partes se rompieron.
Y una vez más llegaron a mi los pensamientos ecológicos. ¿Qué debo hacer? Botar el producto usado y contentarme de comprar uno nuevo gracias a que la coyuntura me permite traer un producto desde el otro lado del mundo por una fracción del costo de producción local.

Medidas
Siento que todavía tengo alma y que por mi acción algún cachalote no perecerá con residuos plásticos en su estomago,  que puedo ingeniármelas para mantener el tendedero funcional mediante el uso de un par de cuerdas cabuyas, o quién sabe, como buen ecuatoriano, con alguna otra solución.

piezas nueva, funcional y rota

La presión con los compañeros de piso aumenta, me culpan de romper el instrumento y que debo sentirme en la obligación de restablecer con una pieza a la altura de las circunstancias, es decir nueva.  Me duele más que el cachalote que no veo, me duele el bolsillo (como buen cuencano).
prótesis integrada con otras partes

Entonces se presenta otro rasgo característico de esta mi tierra linda, la novelería. Es decir seguir ciegamente la nueva onda y tratar de ser popular mientras dure. Parte importante de nuestra cultura que creo que se llama "barroca"; es decir tratar de integrar todo lo extranjero en des-merito de lo autóctono, porque todo lo de aquí es muy malo y lo de otros lugares es muy bueno.


Robot de utilería- impresora 3D
La novelería me ha llevado a explorar las bondades de la impresión 3D. Bueno, la verdad es que cuesta como 3000 dólares, un poco caro para presumir y ser popular. Pero lo bueno es que existen otras personas con presupuestos más permisivos y puedo contratar sus servicios.



tendedero con funcionalidad restablecida.
Bueno para resumir la historia. Modelé las piezas rotas con la ayuda del software rhinoceros 3d. Luego se mandó a imprimir las piezas; 3 horas para una y 3.5 horas para la otra y un valor de 10 USD en total (sin contar las dolorosas horas hombre hasta aprender a utilizar el programa).

El costo de las partes de reposición va del 5% al 15%  del precio total del tendedero.




martes, 3 de marzo de 2015

Requisitos de Software

Cuando se trate de programar un nuevo proyecto de software piense en utilizar el documento de requisitos IEEE 830.