Ir al contenido

Buscar en La Comunidad

Mostrando resultados por etiquetas 'tutorial'.

  • Buscar Por Etiquetas

    Añade etiquetas separadas por comas.
  • Buscar Por Autor

Tipo de Contenido


Foros

  • Contacto con el staff
    • Novedades / Anuncios del foro
    • Sugerencias
    • Problemas relacionados con el foro
  • Zona general de charla
    • Presentaciones
    • Charla
    • Zona de Humor, Curiosidades y Otros
    • Mascotas Vagos
    • Noticias del Mundo
    • Tecnología
    • Ayuda y consultas de carácter general
  • Zona GNU/Linux
    • Ayuda, consultas y soporte GNU/Linux
    • Distribuciones GNU/Linux
    • Repositorios. Software GNU/Linux
    • Personalización
    • Raspberry Pi
    • Arduino
    • Manuales / Tutoriales / Guías GNU/Linux
    • Programación
    • Noticias GNU/Linux
    • Hablando de GNU/Linux
  • Zona Gaming
    • Juegos GNU/Linux
    • Noticias Gamer
    • Charla Gamer
  • Zona Móvil
    • Ayuda y soporte para dispositivos móviles
    • Apps Móviles
    • Manuales / Tutoriales / Guías Móviles
    • Roms para dispositivos Móviles
    • Noticias sobre dispositivos Móviles
    • Hablando sobre dispositivos Móviles
  • Zona Mozilla
    • Ayuda, consultas y soporte Mozilla
    • Aplicaciones Mozilla
    • Roms Firefox OS
    • Manuales / Tutoriales / Guías Mozilla
    • Noticias Mozilla
    • Hablando de Mozilla
  • Microsoft
    • Papelera del Foro

Encontrar resultados en...

Encontrar resutados que...


Fecha de Creación

  • Start

    Fin


Última Actualización

  • Start

    Fin


Filtrar por numero de...

Joined

  • Start

    Fin


Grupo


Página Web


Diaspora


Pump


GNU Social


Google +


Twitter


Facebook


Xmpp


Skype


Steam


Desura


MediaGoblin


Youtube


Vimeo


Picasa


Flickr


Email


Lugar


Intereses

Encontramos 97 resultados

  1. FFmpeg es una colección de software libre que puede convertir (transcodificar) audio y vídeo. FFmpeg está desarrollado en GNU/Linux, pero puede ser compilado en la mayoría de los sistemas operativos, incluyendo Windows. Desde el abandono del proyecto MEncoder, FFmpeg se ha convertido en la mejor opción para codificación audio-vídeo en GNU/Linux, una auténtica navaja suiza de la codificación. FFmpeg es un programa bastante sencillo y muy fácil de usar, orientado tanto a personas con conocimientos avanzados como usuarios novatos. Es capaz de elegir el códec con sólo escribir la extensión. Por ejemplo, FFmpeg usará x264 si se elige .mp4, mpeg4 si se usa .avi, VP8 si se usa .webm, etc... # INSTALACIÓN EN DEBIAN, UBUNTU Y DERIVADOS: sudo apt-get install ffmpeg Sin embargo, en los repositorios no suele estar la última versión de FFmpeg con los últimos codificadores y decodificadores. Para poder usar la última versión es necesario utilizar FFmpeg binario [NOTA: con FFmpeg binario no es posible codificar en audio AAC+]. # DESCARGA E INSTALACIÓN DE FFmpeg BINARIO: && Descarga: http://johnvansickle.com/ffmpeg/ En la página anterior descargar "ffmpeg-release-32bit-static.tar.xz" (para sistemas de 32 bits) o "ffmpeg-release-64bit-static.tar.xz" (para sistemas de 64 bits). Una vez descargado el paquete "ffmpeg-release-*bit-static.tar.xz" solamente es necesario extraer el binario "ffmpeg": tar -Jxf ffmpeg-release-*bit-static.tar.xz --wildcards ffmpeg*bit-static/ffmpeg -O > ffmpeg && Instalación: Antes de instalar este FFmpeg binario, es necesario cambiar de nombre al FFmpeg instalado por repositorio o de origen (si lo está) para que no haya conflictos entre ellos. Primero es necesario localizar la ruta del FFmpeg antiguo: which ffmpeg Si el comando anterior, por ejemplo, arroja la ruta '/usr/bin/ffmpeg', para renombrarlo ejecutar: sudo mv /usr/bin/ffmpeg /usr/bin/ffmpeg_old Una vez renombrado el FFmpeg antiguo, se procede a instalar el FFmpeg binario: sudo install ffmpeg /usr/local/bin A partir de este momento, cada vez que se invoque el uso de FFmpeg el sistema usará la versión binaria en el directorio '/usr/local/bin' No obstante, se puede seguir usando el antiguo FFmpeg, sobre todo si se desea codificar audio en AAC+, invocándolo con su nuevo nombre: ffmpeg_old En el caso que se desee codificar H.264 con profundiad de color a 10 bits o VP9 con profundidad de color a 10 ó 12 bits, será necesario también extraer e instalar el binario "ffmpeg-10bit": tar -Jxf ffmpeg-release-*bit-static.tar.xz --wildcards ffmpeg*bit-static/ffmpeg-10bit -O > ffmpeg-10bit sudo install ffmpeg-10bit /usr/local/bin # CODIFICACIÓN VÍDEO: && Xvid: - convertir un archivo de vídeo en códec Xvid de bitrate variable y contenedor AVI con sonido MP3: ffmpeg -i "[nombre_archivo_entrada]" -f avi -c:v libxvid -vtag xvid -q:v 3 -c:a libmp3lame -b:a 320k -ar 48000 -ac 2 -sn "[nombre_archivo_salida].avi" * Donde: -f = formato del archivo de salida -c:v = tipo de códec de vídeo -vtag = etiqueta de vídeo (necesaria para algunos reproductores) -q:v = nivel de calidad del vídeo (a menor número, mayor calidad. Valores recomendados: 3 ó 2) -c:a = tipo de códec de audio -b:a = bitrate del audio -ar = tasa de frecuencia del audio -ac = número de canales del audio -sn = no incrustar subtítulos (en el caso de que el archivo de entrada los incorporara) - convertir un archivo de vídeo en códec Xvid de bitrate variable y contenedor AVI con sonido AC3(Dolby Digital Surround): ffmpeg -i "[nombre_archivo_entrada]" -f avi -c:v libxvid -vtag xvid -q:v 3 -c:a ac3 -b:a 384k -ar 48000 -ac 6 -sn "[nombre_archivo_salida].avi" - convertir un archivo de vídeo en códec Xvid de bitrate variable y contenedor AVI con sonido PCM(WAV): ffmpeg -i "[nombre_archivo_entrada]" -threads auto -f avi -c:v libxvid -vtag xvid -q:v 3 -c:a pcm_s16le -ar 48000 -ac 2 "[nombre_archivo_salida].avi" - convertir un archivo de vídeo en códec Xvid de bitrate variable y contenedor AVI copiando el audio original: ffmpeg -i "[nombre_archivo_entrada]" -f avi -c:v libxvid -vtag xvid -q:v 3 -c:a copy -sn "[nombre_archivo_salida].avi" La codificación con bitrate variable en Xvid es la más recomendada para obtener la mejor calidad de imagen. Si se desea conseguir un tamaño predeterminado del archivo codificado, es necesario usar la codificación a doble pasada con bitrate constante: - convertir un archivo de vídeo en códec Xvid de bitrate constante a dos pasadas y contenedor AVI con sonido MP3: * Primera pasada: ffmpeg -i "[nombre_archivo_entrada]" -f avi -c:v libxvid -vtag XVID -mbd rd -flags +mv4+aic -trellis 2 -cmp 2 -subcmp 2 -g 300 -bf 2 -b:v 1500k -an -pass 1 -y /dev/null * Segunda pasada: ffmpeg -i "[nombre_archivo_entrada]" -f avi -c:v libxvid -vtag XVID -mbd rd -flags +mv4+aic -trellis 2 -cmp 2 -subcmp 2 -g 300 -bf 2 -b:v 1500k \ -c:a libmp3lame -b:a 320k -ar 48000 -ac 2 -pass 2 "[nombre_archivo_salida].avi" * Donde: -f = formato del archivo de salida -c:v = tipo de códec de vídeo -vtag = etiqueta de vídeo (necesaria para algunos reproductores) -b:v = bitrate del vídeo -an = no codificar el audio -pass = número de pasada -y = sobreescribir archivo de salida sin pedir confirmación /dev/null = no codificar archivo -c:a = tipo de códec de audio -b:a = bitrate del audio -ar = tasa de frecuencia del audio -ac = número de canales del audio *NOTA: la primera pasada no codifica archivo alguno, sino que calcula los valores más óptimos para la verdadera codificación en la segunda pasada. Los valores más óptimos se guardarán en el archivo nuevo de texto que se creará con el nombre de "ffmpeg2pass-0.log". Por consiguiente, no borrar el anterior archivo si se desea que se utilice en la segunda pasada. *NOTA: para calcular cuál es el bitrate de vídeo necesario para conseguir un determinado tamaño del archivo codificado, usar la siguiente fórmula de cálculo: nº de MB deseados x 8388.608 / nº de segundos de duración - nº bitrate de audio - 10 MB deseados x 8388.608 BITRATE VÍDEO= -------------------------------- - BITRATE AUDIO - 10 SEG. duración *Ejemplo: calcular el bitrate de vídeo de una película de 90 min de duración (90min x 60s = 5400s) y con un bitrate de audio de 128kbps fijando su tamaño final de codificación aproximado en 700 MB 700 x 8388.608 -------------------------------- - 128 - 10 = 949kbps de bitrate de vídeo 5400 700 x 8388.608 / 5400 - 128 - 10 = 949kbps de bitrate de vídeo - convertir directamente desde un DVD en códec Xvid de bitrate variable y contenedor AVI copiando el audio original: * Primero localizar en el DVD o carpeta DVD los archivos VTS que corresponden a la película principal (VTS_01_1.VOB, VTS_01_2.VOB ...) * A continuación comprobar el índice de pistas de vídeo y audio incluidas en la película principal [NOTA: el DVD no debe tener protección anticopia]: ffmpeg -i /ruta/del/DVD/VIDEO_TS/VTS_01_1.VOB > Ejemplo: [...] Input #0, mpeg, from 'VTS_01_1.VOB': Duration: 00:28:40.62, start: 0.287267, bitrate: 4990 kb/s Stream #0:0[0x1bf]: Data: dvd_nav_packet Stream #0:1[0x1e0]: Video: mpeg2video (Main), yuv420p(tv), 720x576 [sAR 16:15 DAR 4:3], 25 fps, 25 tbr, 90k tbn, 50 tbc Stream #0:2[0x80]: Audio: ac3, 48000 Hz, 5.1(side), fltp, 384 kb/s Stream #0:3[0x81]: Audio: ac3, 48000 Hz, stereo, fltp, 256 kb/s At least one output file must be specified [...] * En el ejemplo anterior las pistas de audio disponibles son la 0:2 y la 0:3, y la pista de vídeo la 0:1 * Una vez localizados los archivos VTS de la película principal y sus pistas de audio, para codificar la pista de vídeo de, por ejemplo, seis archivos VTS y copiar la pista de audio 0:2: cat /ruta/del/DVD/VIDEO_TS/VTS_01_{1..6}.VOB | ffmpeg -i - -f avi -c:v libxvid -vtag xvid -map 0:1 -q:v 3 -map 0:2 -c:a copy -sn "[nombre_archivo_salida].avi" * Donde: -map = indica a FFmpeg la pista que debe codificar o copiar - convertir automáticamente los archivos de vídeo con extensión *.mkv de un directorio en códec Xvid de bitrate variable y contenedor AVI con sonido AC3: for FILE in *.mkv; do ffmpeg -i "${FILE}" -f avi -c:v libxvid -vtag XVID -q:v 3 -c:a ac3 -b:a 384k -ar 48000 -ac 2 -sn "${FILE/%mkv/avi}"; done && H.264: - convertir un archivo de vídeo en códec h264 de bitrate variable y contenedor MP4 con sonido AAC: * NOTA: se recomienda que el bitrate del sonido AAC sea superior a 32kbps. Para bitrates iguales o inferiores a 32kbps usar el codificador "libfdk_aac -profile:a aac_he_v2" ffmpeg -i "[nombre_archivo_entrada]" -c:v libx264 -crf 22 -preset medium -tune film -c:a aac -b:a 320k -ac 6 -sn "[nombre_archivo_salida].mp4" * Donde: -crf = nivel de calidad del vídeo (a menor número, mayor calidad. Valores recomendados: entre 22 y 18) -crf 18 = calidad de vídeo cercana al original -crf 23 = por defecto -crf 0 = mantener la misma calidad que el original -preset = velocidad de codificación (a menor velocidad, menor tamaño) -preset [de más rápido a más lento]: ultrafast | superfast | veryfast | faster | medium (por defecto) | slow | slower | veryslow -tune = optimizar codificación según tipo de imagen -tune film (imágenes reales) | animation (dibujos animados) | grain (mantener el grano de la imagen) | stillimage (imágenes fijas) - convertir un archivo de vídeo en códec h264 de bitrate variable y contenedor MKV con sonido AC3: ffmpeg -i "[nombre_archivo_entrada]" -c:v libx264 -crf 22 -preset medium -tune film -c:a ac3 -b:a 384k -ar 48000 -ac 6 -sn "[nombre_archivo_salida].mkv" - convertir un archivo de vídeo en códec h264 de bitrate variable con profundidad de color a 10 bits y contenedor MKV con sonido AC3: * IMPORTANTE: no todos los reproductores de sobremesa soportan la reproducción de un vídeo con profundidad de color a 10 bits * NOTA: se requiere usar el binario "ffmpeg-10bit" ffmpeg-10bit -i "[nombre_archivo_entrada]" -c:v libx264 -pix_fmt yuv420p10le -crf 22 -preset medium -tune film -c:a ac3 -b:a 384k -ar 48000 -ac 6 -sn "[nombre_archivo_salida].mkv" - convertir un archivo de vídeo en códec h264 de bitrate variable con profundidad de color a 10 bits con HDR10 y contenedor MKV con sonido AC3: * IMPORTANTE: el archivo de entrada debe poseer HDR ffmpeg-10bit -i "[nombre_archivo_entrada]" -c:v libx264 -pix_fmt yuv420p10le -x264-params "level=5.2:colorprim=bt2020:colormatrix=bt2020nc:transfer=smpte2084" -crf 22 -preset medium \ -tune film -c:a ac3 -b:a 384k -ar 48000 -ac 6 -sn "[nombre_archivo_salida].mkv" - convertir un archivo de vídeo en códec h264 de bitrate variable con profundidad de color a 8 bits y contenedor MKV con sonido AC3 cuando el archivo de entrada tiene 10 ó 12 bits sin HDR: ffmpeg -i "[nombre_archivo_entrada]" -c:v libx264 -pix_fmt yuv420p -crf 22 -preset medium -tune film -c:a ac3 -b:a 384k -ar 48000 -ac 6 -sn "[nombre_archivo_salida].mkv" - convertir un archivo de vídeo en códec h264 de bitrate variable con profundidad de color a 8 bits y contenedor MKV con sonido AC3 cuando el archivo de entrada tiene 10 ó 12 bits con HDR [NOTA: puede que no funcione en algunos FFmpeg de 64 bits]: ffmpeg -i "[nombre_archivo_entrada]" -vf zscale=t=linear:npl=100,format=gbrpf32le,zscale=p=bt709,tonemap=tonemap=hable:desat=0,zscale=t=bt709:m=bt709:r=tv,format=yuv420p \ -c:v libx264 -crf 22 -preset medium -tune film -c:a ac3 -b:a 384k -ar 48000 -ac 6 -sn "[nombre_archivo_salida].mkv" - convertir un archivo de vídeo en códec h264 de bitrate variable y contenedor MKV con sonido DTS [NOTA: no usar la opción "-ac"]: ffmpeg -i "[nombre_archivo_entrada]" -c:v libx264 -crf 22 -preset medium -tune film -c:a dca -b:a 1536k -ar 48000 -strict -2 -sn "[nombre_archivo_salida].mkv" - convertir un archivo de vídeo en códec h264 de bitrate variable y contenedor MP4 con sonido AAC+ [NOTA: el audio AAC+ no puede tener más de 265kbps]: ffmpeg -i "[nombre_archivo_entrada]" -c:v libx264 -crf 22 -preset medium -tune film -c:a libfdk_aac -profile:a aac_he -b:a 64k -ar 44100 -ac 2 -sn "[nombre_archivo_salida].mp4]" - convertir un archivo de vídeo en códec h264 de bitrate variable y contenedor MP4 con sonido AAC+ paramétrico (útil a no más de 48kbps) [NOTA: el audio AAC+ no puede tener más de 64kbps y los canales siempre a 2]: ffmpeg -i "[nombre_archivo_entrada]" -c:v libx264 -crf 22 -preset medium -tune film -c:a libfdk_aac -profile:a aac_he_v2 -b:a 64k -ar 44100 -ac 2 -sn "[nombre_archivo_salida].mp4" - convertir un archivo de vídeo en códec h264 de bitrate variable, contenedor MP4 con sonido AAC y fijando un bitrate máximo de vídeo: ffmpeg -i "[nombre_archivo_entrada]" -c:v libx264 -crf 22 -preset medium -tune film -maxrate 5000k -bufsize 1835k -c:a aac -b:a 320k -ac 6 -sn "[nombre_archivo_salida].mp4" * Donde: -maxrate = bitrate máximo de vídeo a codificar - convertir un archivo de vídeo en códec h264 de bitrate constante a dos pasadas y contenedor MP4 con sonido AAC: * Primera pasada: ffmpeg -i "[nombre_archivo_entrada]" -an -c:v libx264 -pass 1 -preset medium -b:v 4000k -minrate 4000k -maxrate 4000k -bufsize 1835k -x264opts frameref=15:fast_pskip=0 -f rawvideo -sn \ -y /dev/null * Segunda pasada: ffmpeg -i "[nombre_archivo_entrada]" -c:v libx264 -pass 2 -preset medium -b:v 4000k -minrate 4000k -maxrate 4000k -bufsize 1835k -x264opts frameref=15:fast_pskip=0 -c:a aac -b:a 320k \ -ac 6 -pass 2 -sn "[nombre_archivo_salida].mp4" * Donde: -maxrate = bitrate máximo de vídeo a codificar -minrate = bitrate mínimo de vídeo a codificar && VP9: - convertir un archivo de vídeo en códec a VP9 de bitrate variable, contenedor WebM y sonido Vorbis: ffmpeg -i "[nombre_archivo_entrada]" -c:v libvpx-vp9 -crf 27 -b:v 0 -tile-columns 6 -frame-parallel 1 -auto-alt-ref 1 -lag-in-frames 25 -speed 1 -c:a libvorbis -b:a 128k \ -ar 48000 -ac 2 "[nombre_archivo_salida].webm" * Donde: livpx-vp9 -lossless 1 -b:v 0 = manterner la misma calidad que el original - convertir un archivo de vídeo en códec a VP9 de bitrate variable con profundidad de color a 10 ó 12 bits, contenedor WebM y sonido Vorbis: * NOTA: se requiere usar el binario "ffmpeg-10bit" * con profundidad de color a 10 bits: ffmpeg-10bit -i "[nombre_archivo_entrada]" -c:v libvpx-vp9 -pix_fmt yuv420p10le -crf 27 -b:v 0 -tile-columns 6 -frame-parallel 1 -auto-alt-ref 1 -lag-in-frames 25 -speed 1 -c:a libvorbis -b:a 128k \ -ar 48000 -ac 2 "[nombre_archivo_salida].webm" * con profundidad de color a 12 bits: ffmpeg-10bit -i "[nombre_archivo_entrada]" -c:v libvpx-vp9 -pix_fmt yuv420p12le -crf 27 -b:v 0 -tile-columns 6 -frame-parallel 1 -auto-alt-ref 1 -lag-in-frames 25 -speed 1 -c:a libvorbis -b:a 128k \ -ar 48000 -ac 2 "[nombre_archivo_salida].webm" - convertir un archivo de vídeo en códec a VP9 de bitrate variable con profundidad de color a 10 bits con HDR10, contenedor WebM y sonido Vorbis: * IMPORTANTE: el archivo de entrada debe poseer HDR ffmpeg-10bit -i "[nombre_archivo_entrada]" -profile:v 2 -c:v libvpx-vp9 -pix_fmt yuv420p10le -crf 27 -color_primaries 9 -color_trc 16 -colorspace 9 -color_range 1 -b:v 0 -tile-columns 6 -frame-parallel 1 \ -auto-alt-ref 1 -lag-in-frames 25 -speed 1 -c:a libvorbis -b:a 128k -ar 48000 -ac 2 "[nombre_archivo_salida].webm" - convertir un archivo de vídeo en códec a VP9 de bitrate variable, contenedor WebM y sonido Opus: ffmpeg -i "[nombre_archivo_entrada]" -c:v libvpx-vp9 -crf 27 -b:v 0 -tile-columns 6 -frame-parallel 1 -auto-alt-ref 1 -lag-in-frames 25 -speed 1 -c:a libopus -b:a 128k \ -ar 48000 -ac 2 "[nombre_archivo_salida].webm" - convertir un archivo de vídeo en códec a VP9 de bitrate variable, contenedor WebM y sonido Vorbis indicando el bitrate máximo de vídeo: ffmpeg -i "[nombre_archivo_entrada]" -c:v libvpx-vp9 -crf 27 -b:v 5000k -tile-columns 6 -frame-parallel 1 -auto-alt-ref 1 -lag-in-frames 25 -speed 1 -c:a libvorbis -b:a 128k \ -ar 48000 -ac 2 "[nombre_archivo_salida].webm" - convertir un archivo de vídeo en códec a VP9 de bitrate fijo, contenedor WebM y sonido Vorbis: ffmpeg -i "[nombre_archivo_entrada]" -c:v libvpx-vp9 -minrate 1000k -maxrate 1000k -b:v 1000k -tile-columns 6 -frame-parallel 1 -auto-alt-ref 1 -lag-in-frames 25 -speed 1 \ -c:a libvorbis -b:a 128k -ar 48000 -ac 2 "[nombre_archivo_salida].webm" && H.265: - convertir un archivo de vídeo en códec a h265 de bitrate variable, contenedor MP4 y sonido AAC: ffmpeg -i "[nombre_archivo_entrada]" -c:v libx265 -x265-params crf=19 -preset slow -c:a aac -b:a 320k -ac 6 -sn "[nombre_archivo_salida].mp4" * Donde: crf=28 = por defecto -x265-params lossless=1 = mantener la misma calidad que el original - convertir un archivo de vídeo en códec a h265 de bitrate variable con profundidad de color a 10 ó 12 bits, contenedor MP4 y sonido AAC: * con profundidad de color a 10 bits: ffmpeg -i "[nombre_archivo_entrada]" -c:v libx265 -pix_fmt yuv420p10le -x265-params crf=19 -preset slow -c:a aac -b:a 320k -ac 6 -sn "[nombre_archivo_salida].mp4" * con profundidad de color a 12 bits: ffmpeg -i "[nombre_archivo_entrada]" -c:v libx265 -pix_fmt yuv420p12le -x265-params crf=19 -preset slow -c:a aac -b:a 320k -ac 6 -sn "[nombre_archivo_salida].mp4" - convertir un archivo de vídeo en códec a h265 de bitrate variable con profundidad de color a 10 bits con HDR10, contenedor MP4 y sonido AAC: * IMPORTANTE: el archivo de entrada debe poseer HDR ffmpeg -i "[nombre_archivo_entrada]" -c:v libx265 -pix_fmt yuv420p10le -x265-params "cfr=19:level=5.2:colorprim=bt2020:transfer=smpte2084:colormatrix=bt2020nc" -preset slow \ -c:a aac -b:a 320k -ac 6 -sn "[nombre_archivo_salida].mp4" - convertir un archivo de vídeo en códec a h265 de bitrate variable, contenedor MP4 y sonido AAC indicando el bitrate máximo de vídeo: ffmpeg -i "[nombre_archivo_entrada]" -c:v libx265 -x265-params crf=19 -maxrate 5000k -bufsize 1835k -preset slow -c:a aac -b:a 320k -ac 6 -sn "[nombre_archivo_salida].mp4" - convertir un archivo de vídeo en códec a h265 de bitrate fijo, contenedor MP4 y sonido AAC: ffmpeg -i "[nombre_archivo_entrada]" -c:v libx265 -x265-params frameref=15:fast_pskip=0 -minrate 1000k -maxrate 1000k -b:v 1000k -bufsize 1835k -c:a aac -b:a 320k \ -ac 6 -sn "[nombre_archivo_salida].mp4" && Windows Media Video: - convertir un archivo de vídeo en códec a Windows Media Video de bitrate fijo, contenedor WMV y sonido Windows Media Audio: ffmpeg -i "[nombre_archivo_entrada]" -b:v 1000k -c:v wmv2 -c:a wmav2 -ar 44100 -b:a 64k -ac 2 -sn "[nombre_archivo_salida].wmv" && MPEG-2 (SVCD): - convertir un archivo de vídeo en códec MPEG-2 (SVCD), contenedor MPG y sonido MP2: ffmpeg -i "[nombre_archivo_entrada]" -c:v mpeg2video -b:v 1152k -c:a mp2 -ac 2 -b:a 224k "[nombre_archivo_salida].mpg" && FLV: - convertir un archivo de vídeo en códec FLV, contenedor FLV y sonido MP3: ffmpeg -i "[nombre_archivo_entrada]" -f flv -b:v 700k -ar 44100 -b:a 128k "[nombre_archivo_salida].flv" && H.263 (teléfonos móviles antiguos): - convertir un archivo de vídeo en códec h263, contenedor .3gp y sonido ARM [NOTA: las dimensiones del vídeo no pueden ser superiores a 176x144 píxeles]: ffmpeg -i "[nombre_archivo_entrada]" -vf scale=176:144 -b:v 400k -c:a libopencore_amrnb -ar 8000 -ac 1 -b:a 12.2k "[nombre_archivo_salida].3gp" # CODIFICACIÓN AUDIO: - convertir un archivo de audio o vídeo a sonido WAV: ffmpeg -i "[nombre_archivo_entrada]" "[nombre_archivo_salida].wav" - convertir un archivo de audio o vídeo multicanal a sonido estéreo WAV: ffmpeg -i "[nombre_archivo_entrada]" -ac 2 "[nombre_archivo_salida].wav" - convertir un archivo de audio o vídeo a sonido Wave64: ffmpeg -i "[nombre_archivo_entrada]" "[nombre_archivo_salida].w64" - convertir un archivo de audio o vídeo a sonido WAV con perfil RF64: ffmpeg -i "[nombre_archivo_entrada]" -rf64 auto "[nombre_archivo_salida].wav" - convertir un archivo de audio o vídeo a sonido AMR-NB: ffmpeg -i "[nombre_archivo_entrada]" -c:a libopencore_amrnb -ar 8000 -ac 1 -b:a 12.2k "[nombre_archivo_salida].amr" - convertir un archivo de audio a sonido Ogg Vorbis con bitrate constante (bitrate mínimo por canal: 32k, bitrate máximo por canal: 240k): ffmpeg -i "[nombre_archivo_entrada]" -c:a libvorbis -b:a 45k -ar 44100 -ac 2 "[nombre_archivo_salida].ogg" - convertir un archivo de audio a sonido Ogg Vorbis con bitrate variable [niveles de calidad: de "-q:a 0" a "-q:a 10" (mayor número, mayor calidad)]: ffmpeg -i "[nombre_archivo_entrada]" -c:a libvorbis -q:a 3 -ar 44100 -ac 2 "[nombre_archivo_salida].ogg" - convertir un archivo de vídeo a sonido Ogg Vorbis con bitrate constante (bitrate mínimo por canal: 32k, bitrate máximo por canal: 240k): ffmpeg -i "[nombre_archivo_entrada]" -vn -c:a libvorbis -b:a 45k -ar 44100 -ac 2 "[nombre_archivo_salida].ogg" * Donde: -vn = no codificar la pista de vídeo - convertir un archivo de audio o vídeo a sonido FLAC: ffmpeg -i "[nombre_archivo_entrada]" -c:a flac -compression_level 12 "[nombre_archivo_salida].flac" - convertir un archivo de audio o vídeo a sonido MP3 con bitrate constante [bitrate: mín. 32k, máx. 320k]: ffmpeg -i "[nombre_archivo_entrada]" -c:a libmp3lame -b:a 128k -ar 44100 -ac 2 "[nombre_archivo_salida].mp3" - convertir un archivo de audio o vídeo a sonido MP3 con bitrate variable [niveles de calidad: de "-q:a 0" a "-q:a 9" (menor número, mayor calidad)]: ffmpeg -i "[nombre_archivo_entrada]" -c:a libmp3lame -q:a 0 -ar 44100 -ac 2 "[nombre_archivo_salida].mp3" * Donde: -q:a 0 = entre 220k-260k -q:a 1 = entre 190k-250k -q:a 2 = entre 170k-210k -q:a 3 = entre 150k-195k -q:a 4 = entre 140k-185k -q:a 5 = entre 120k-150k -q:a 6 = entre 100k-130k -q:a 7 = entre 80k-120k -q:a 8 = entre 70k-105k -q:a 9 = entre 45k-85k - convertir un archivo de audio o vídeo a sonido AAC (codificador "aac") [bitrate mínimo por canal: 14k, bitrate máximo por canal: 265k]: ffmpeg -i "[nombre_archivo_entrada]" -c:a aac -b:a 320k -ar 44100 -ac 6 "[nombre_archivo_salida].m4a" - convertir un archivo de audio o vídeo a sonido AAC (codificador "libfdk_aac") [bitrate mínimo por canal: 14k, bitrate máximo por canal: 265k]: ffmpeg -i "[nombre_archivo_entrada]" -c:a libfdk_aac -b:a 320k -ar 44100 -ac 6 "[nombre_archivo_salida].m4a" - convertir un archivo de audio o vídeo a sonido AAC+ [bitrate mínimo: 12k (1 canal), bitrate máximo: 353k (8 canales)]: ffmpeg -i "[nombre_archivo_entrada]" -c:a libfdk_aac -profile:a aac_he -b:a 256k -ar 44100 -ac 6 "[nombre_archivo_salida].m4a" - convertir un archivo de audio o vídeo a sonido AAC+ paramétrico (útil a no más de 48kbps) [NOTA: el rango de bitrate es de 12k a 64k y los canales de audio siempre a 2]: ffmpeg -i "[nombre_archivo_entrada]" -c:a libfdk_aac -profile:a aac_he_v2 -b:a 20k -ar 44100 -ac 2 "[nombre_archivo_salida].m4a" - convertir un archivo de audio o vídeo a sonido AC3 [bitrate: mín. 32k(1 canal), máx. 640k(6 canales)]: ffmpeg -i "[nombre_archivo_entrada]" -c:a ac3 -b:a 384k -ar 48000 -ac 6 "[nombre_archivo_salida].ac3" - convertir un archivo de audio o vídeo a sonido E-AC3 [bitrate: mín. 19k(1 canal), máx. 6144k(6 canales)]: ffmpeg -i "[nombre_archivo_entrada]" -c:a eac3 -b:a 384k -ar 48000 -ac 6 "[nombre_archivo_salida].eac3" - convertir un archivo de audio o vídeo a sonido TrueHD [limitado a 6 canales]: ffmpeg -i "[nombre_archivo_entrada]" -c:a truehd -strict -2 "[nombre_archivo_salida].thd" - convertir un archivo de audio o vídeo a sonido DTS [bitrate: mín. 130k(1 canal), máx. 3840k] [NOTA: no usar la opción "-ac"]: ffmpeg -i "[nombre_archivo_entrada]" -c:a dca -b:a 1536k -ar 48000 -strict -2 "[nombre_archivo_salida].dts" - convertir un archivo de audio a sonido ALAC: ffmpeg -i "[nombre_archivo_entrada]" -c:a alac "[nombre_archivo_salida].m4a" - convertir un archivo de vídeo a sonido ALAC: ffmpeg -i "[nombre_archivo_entrada]" -vn -c:a alac "[nombre_archivo_salida].m4a" - convertir un archivo de audio a sonido WMA V2 (bitrate mínimo: 29k, bitrate máximo: 6600k; no más de 2 canales): ffmpeg -i "[nombre_archivo_entrada]" -c:a wmav2 -b:a 45k -ar 44100 -ac 2 "[nombre_archivo_salida].wma" - convertir un archivo de vídeo a sonido WMA V2 (bitrate mínimo: 29k, bitrate máximo: 6600k; no más de 2 canales): ffmpeg -i "[nombre_archivo_entrada]" -vn -c:a wmav2 -b:a 45k -ar 44100 -ac 2 "[nombre_archivo_salida].wma" - convertir un archivo de audio o vídeo a sonido Opus con bitrate variable [bitrate mínimo por canal: 7k, bitrate máximo por canal: 256k]: ffmpeg -i "[nombre_archivo_entrada]" -c:a libopus -b:a 45k -ac 2 -vn "[nombre_archivo_salida].opus" - convertir un archivo de audio o vídeo a sonido Opus con bitrate constante [bitrate mínimo por canal: 7k, bitrate máximo por canal: 256k]: ffmpeg -i "[nombre_archivo_entrada]" -c:a libopus -b:a 45k -vbr off -ac 2 -vn "[nombre_archivo_salida].opus" - separar los canales de un audio 2.0 sin codificar: ffmpeg -i "[nombre_archivo_estéreo].ac3" -map_channel 0.0.0 -c copy "[nombre_archivo_salida_canal_izquierdo].ac3" -map_channel 0.0.1 -c copy "[nombre_archivo_salida_canal_derecho].ac3" - unir 2 audios mono en un audio 2.0 [NOTA: no funciona la opción "-c copy"]: ffmpeg -i "[nombre_canal_izquierdo].ac3" -i "[nombre_canal_derecho].ac3" -filter_complex "[0:a][1:a]amerge=inputs=2[aout]" -map "[aout]" -c:a ac3 -b:a 448k "[nombre_archivo_salida].ac3" - separar los canales de un audio 5.1: ffmpeg -i "[nombre_archivo_entrada]" -filter_complex "channelsplit=channel_layout=5.1[FL][FR][FC][LFE][bL][bR]" -map "[FL]" front_left.wav -map "[FR]" front_right.wav -map "[FC]" \ front_center.wav -map "[LFE]" lfe.wav -map "[bL]" back_left.wav -map "[bR]" back_right.wav * Donde: front_left.wav = canal frontal estéreo izquierdo front_right.wav = canal frontal estéreo derecho front_center.wav = canal frontal central (canal de diálogos) lfe.wav = canal de sonidos graves/bajos (subwoofer) back_left.wav = canal trasero envolvente izquierdo (surround) back_right.wav = canal trasero envolvente derecho (surround) - unir 6 audios mono en un audio 5.1 [NOTA: no funciona la opción "-c copy"]: ffmpeg -i front_left.wav -i front_right.wav -i front_center.wav -i lfe.wav -i back_left.wav -i back_right.wav -filter_complex "[0:a][1:a][2:a][3:a][4:a][5:a]amerge=inputs=6[aout]" \ -map "[aout]" -c:a ac3 -b:a 640k "[nombre_archivo_salida].ac3" - mezclar dos archivos de audio: ffmpeg -i "[nombre_archivo_audio01]" -i "[nombre_archivo_audio02]" -filter_complex amerge "[nombre_archivo_salida]" - realizar fundidos de audio: * Fundido de silencio de audio hasta recuperar volumen: ffmpeg -i "[nombre_archivo_entrada]" -af afade=t=in:st=(nºsegundos posición)=(nºsegundos duración) -c:a libmp3lame -b:a 320k "[nombre_archivo_salida]" > Ejemplo: fundido durante los 5 primeros segundos: ffmpeg -i "[nombre_archivo_entrada]" -af afade=t=in:st=0:d=5 -c:a libmp3lame -b:a 320k "[nombre_archivo_salida]" * Fundido de volumen de audio hasta silenciar volumen desde otra posición: ffmpeg -i "[nombre_archivo_entrada]" -af afade=t=out:st=(nºsegundos posición)=(nºsegundos duración) -c:a libmp3lame -b:a 320k "[nombre_archivo_salida]" > Ejemplo: fundido de los últimos 5 segundos de un audio de 33 segundos de duración. Posición donde empezar: 33-5=28 ffmpeg -i "[nombre_archivo_entrada]" -af afade=t=out:st=28:d=5 -c:a libmp3lame -b:a 320k "[nombre_archivo_salida]" * Fundido de silencio de audio hasta recuperar volumen y fundido de volumen de audio hasta silenciar volumen desde otra posición: ffmpeg -i "[nombre_archivo_entrada]" -af afade=t=in:st=(nºsegundos posición)=(nºsegundos duración),afade=t=out:st=(nºsegundos posición)=(nºsegundos duración) \ -c:a libmp3lame -b:a 320k "[nombre_archivo_salida]" - convertir un archivo de audio o vídeo a audio subiendo o bajando su volumen: ffmpeg -i "[nombre_archivo_entrada]" -vn -af volume=1.5 -c:a ac3 -b:a 448k "[nombre_archivo_salida].ac3" *EJEMPLOS: < -af volume=0.5 = -50% -af volume=1 = 100% (normal) -af volume=2 = 200% -af volume=2.5 = 250% -af volume=3 = 300% -af volume=4 = 400% -af volume=8 = 800% > - crear un archivo de silencio para un audio de 6 canales: ffmpeg -f lavfi -i aevalsrc=0:0:0:0:0:0:=(nºsegundos de silencio) -c:a ac3 -b:a 448k -ar 48000 "[nombre_archivo_salida].ac3" *EJEMPLO.- Crear un silencio de 1,25 segundos: ffmpeg -f lavfi -i aevalsrc=0:0:0:0:0:0:=1.25 -c:a ac3 -b:a 448k -ar 48000 "[nombre_archivo_salida].ac3" - crear un archivo de silencio para un audio de 2 canales: ffmpeg -f lavfi -i aevalsrc=0:0:=(nºsegundos de silencio) -c:a ac3 -b:a 448k -ar 48000 "[nombre_archivo_salida].ac3" - crear un archivo de silencio para un audio de 1 canal: ffmpeg -f lavfi -i aevalsrc=0:=(nºsegundos de silencio) -c:a ac3 -b:a 192k -ar 48000 "[nombre_archivo_salida].ac3" - disminuir la velocidad de reproducción de un audio procedente de un vídeo a 25,000fps(fotogramas por segundo) para sincronizarlo con un vídeo de 23,976fps (23,976/25,000=0,95904): ffmpeg -i "[nombre_archivo_entrada]" -filter:a "atempo=0.95904" -c:a ac3 -b:a 448k "[nombre_archivo_salida].ac3" - aumentar la velocidad de reproducción de un audio procedente de un vídeo a 23,976fps para sincronizarlo con un vídeo de 25,000fps (25,000/23,976=1,0427093760427094): ffmpeg -i "[nombre_archivo_entrada]" -filter:a "atempo=1.0427093760427094" "[nombre_archivo_salida].wav" - aumentar la velocidad de reproducción de un audio procedente de un vídeo a 23,976fps para sincronizarlo con un vídeo de 24,000fps (24,000/23,976=1,001001001001001): ffmpeg -i "[nombre_archivo_entrada]" -filter:a "atempo=1.001001001001001" -c:a ac3 -b:a 192k "[nombre_archivo_salida].ac3" - disminuir la velocidad de reproducción de un audio procedente de un vídeo a 25,000fps para sincronizarlo con un vídeo de 24,000fps (24,000/25,000=0,96): ffmpeg -i "[nombre_archivo_entrada]" -filter:a "atempo=0.96" "[nombre_archivo_salida].wav" - aumentar la velocidad de reproducción de un audio procedente de un vídeo a 24,000fps para sincronizarlo con un vídeo de 25,000fps (25,000/24,000=1,0416666666666667): ffmpeg -i "[nombre_archivo_entrada]" -filter:a "atempo=1.0416666666666667" -c:a ac3 -b:a 640k "[nombre_archivo_salida].ac3" - cambiar velocidad de reproducción de un audio para cambiar a una duración determinada (pasar la duración actual y la deseada del audio a segundos; dividir los segundos originales entre los segundos deseados): Ej.: aumentar duración de un audio de 5400s (90min) a 5700s (95min) --> 5400/5700=0,947368421 ffmpeg -i "[nombre_archivo_entrada]" -threads auto -filter:a "atempo=0.947368421" "[nombre_archivo_salida].wav" Ej.: disminuir duración de un audio de 5700s (95min) a 5400s (90min) --> 5700/5400=1,055555556 ffmpeg -i "[nombre_archivo_entrada]" -filter:a "atempo=1.055555556" -c:a ac3 -b:a 192k "[nombre_archivo_salida].ac3" # EDICIÓN Y MANIPULACIÓN: - incrustar subtítulos [NOTA: los subtítulos de texto deben estar en código de caracteres UTF-8]: * Con subtítulos SRT: ffmpeg -i "[nombre_archivo_entrada]" -f avi -c:v libxvid -vtag xvid -q:v 3 -c:a libmp3lame -b:a 320k -ar 48000 -ac 2 -vf subtitles="[nombre_archivo_subtítulo].srt" "[nombre_archivo_salida].avi" * Con subtítulos SRT imprimiéndoles formato: ffmpeg -i "[nombre_archivo_entrada]" -f avi -c:v libxvid -vtag xvid -q:v 3 -c:a libmp3lame -b:a 320k -ar 48000 -ac 2 \ -vf "subtitles=[nombre_archivo_subtítulo].srt:force_style='FontName=DejaVu Sans Bold,BorderStyle=3,Shadow=1,FontSize=36,PrimaryColour=&H0000FFFF'" "[nombre_archivo_salida].avi" * Donde: FontName = indica el estilo de letra BorderStyle = crea un fondo negro tras los subtítulos para mejor lectura Shadow = crea un efecto sombra tras las letras FontSize = indica el tamaño de las letras PrimaryColour = indica el color de las letras * Algunos colores disponibles: &H00000000 = Negro &H000000FF = Rojo &H0000FF00 = Amarillo claro &H00FF0000 = Azul oscuro &H00FFFF00 = Azul claro &H00FF00FF = Turquesa &H0000FFFF = Amarillo &H00FFFFFF = Blanco &H00808000 = Verde &H008080FF = Naranja &H00800080 = Rosa &H00008080 = Marrón claro &H00FF8080 = Lila &H00555555 = Gris oscuro &H00AAAAAA = Gris claro > NOTA: para obtener subtítulos con transparencia cambiar &H00 por &HAA * Con subtítulos ASS: ffmpeg -i "[nombre_archivo_entrada]" -f avi -c:v libxvid -vtag xvid -q:v 3 -c:a libmp3lame -b:a 320k -ar 48000 -ac 2 -vf "ass=[nombre_archivo_subtítulo].ass" "[nombre_archivo_salida].avi" * Con subtítulos en formato DVD o Bluray incluidos en el vídeo de entrada: ffmpeg -i "[nombre_archivo_entrada]" -filter_complex "[0:v][0:s]overlay[v]" -f avi -map "[v]" -c:v libxvid -vtag xvid -q:v 3 -an "[nombre_archivo_salida].avi" > NOTA: si el archivo de entrada incluye más de un subtítulo, cambiar [0:s] por [0:s:0] para el primer subtítulo, [0:s:1] para el segundo y así sucesivamente > NOTA: las dimensiones a codificar deber ser las mismas que tiene el archivo de entrada de los subtítulos * Con subtítulos en formato DVD separados del vídeo de entrada: ffmpeg -i "[nombre_archivo_entrada]" -i "[nombre_archivo_subtítulo].sub" -i "[nombre_archvio_subtítulo].idx" -filter_complex "[0:v][2]overlay[v]" -f avi -map "[v]" -c:v libxvid -vtag xvid -q:v 3 -an "[nombre_archivo_salida].avi" > NOTA: las dimensiones a codificar deber ser las mismas que tiene el archivo de entrada de los subtítulos - redimensionar la anchura del vídeo manteniendo la relación de aspecto en la altura con respecto al archivo de entrada: ffmpeg -i "[nombre_archivo_entrada]" -vf scale=720:-1 -f avi -c:v libxvid -vtag xvid -q:v 3 -c:a libmp3lame -b:a 320k -ar 48000 -ac 2 -sn "[nombre_archivo_salida].avi" * Donde: -vf scale=720:-1 = se redimensiona la anchura del vídeo a 720 píxeles - redimensionar la altura manteniendo la relación de aspecto en la anchura con respecto al archivo de entrada: ffmpeg -i "[nombre_archivo_entrada]" -vf scale=-1:480 -f avi -c:v libxvid -vtag xvid -q:v 3 -c:a libmp3lame -b:a 320k -ar 48000 -ac 2 -sn "[nombre_archivo_salida].avi" * Donde: -vf scale=-1:480 = se redimensiona la altura del vídeo a 480 píxeles - redimensionar la anchura y altura a unos valores predeterminados: ffmpeg -i "[nombre_archivo_entrada]" -vf scale=720:480 -f avi -c:v libxvid -vtag xvid -q:v 3 -c:a libmp3lame -b:a 320k -ar 48000 -ac 2 -sn "[nombre_archivo_salida].avi" * Donde: -vf scale=720:480 = se redimensiona la anchura del vídeo a 720 píxeles y su altura a 480 píxeles * NOTA: los reproductores antiguos DivX no pueden reproducir vídeos de dimensiones superiores a 720:576 - calcular automáticamente qué dimensiones hay que recortar para suprimir bandas negras de un vídeo antes de codificarlo: ffmpeg -i "[nombre_archivo_entrada]" -vf cropdetect=24:16:0 -an dummy.avi *NOTA: durante la creación del archivo 'dummy.avi' aparecerá en la línea de comandos las dimensiones recomendadas a recortar (NO es necesario esperar a que termine la codificación; puede interrumpirse pulsando CONTROL+C). Ej.: [...] crop=592:304:64:2 * Donde: crop=592:304:64:2 = se fija la anchura del vídeo a 592 píxeles, su altura se fija a 304 píxeles, la anchura se recorta a partir del píxel 64 y la altura se recorta a partir del píxel 2 Para recortar según los valores recomendados en el ejemplo: ffmpeg -i "[nombre_archivo_entrada]" -vf crop=592:304:64:2 -f avi -c:v libxvid -vtag xvid -q:v 3 -c:a libmp3lame -b:a 320k -ar 48000 -ac 2 -sn "[nombre_archivo_salida].avi" El recorte es compatible con el redimensionado simultáneo: ffmpeg -i "[nombre_archivo_entrada]" -vf crop=592:304:64:2 -vf scale=352:180 -f avi -c:v libxvid -vtag xvid -q:v 3 -c:a libmp3lame -b:a 320k -ar 48000 -ac 2 -sn \ "[nombre_archivo_salida].avi" - codificar un vídeo cambiando su número de fotogramas por segundo: ffmpeg -i "[nombre_archivo_entrada]" -vf fps=23.976 -f avi -c:v libxvid -vtag xvid -q:v 3 -c:a libmp3lame -b:a 320k -ar 48000 -ac 2 -sn "[nombre_archivo_salida].avi" - convertir un fragmento predeterminado de un vídeo: ffmpeg -ss 00:20:45.25 -t 120.5 -i "[nombre_archivo_entrada]" -f avi -c:v libxvid -vtag xvid -q:v 3 -c:a ac3 -b:a 384k -ar 48000 -ac 6 -sn "[nombre_archivo_salida].avi" * Donde: -ss = indica que la codificación comience a partir del minuto 20, 45 segundos y 25 centésimas -t = indica que la codificación dure 120 segundos y 5 décimas desde su comienzo indicado en -ss ffmpeg -ss 00:20:45.25 -to 00:22:00.5 -i "[nombre_archivo_entrada]" -f avi -c:v libxvid -vtag xvid -q:v 3 -c:a ac3 -b:a 384k -ar 48000 -ac 6 -sn "[nombre_archivo_salida].avi" * Donde: -ss = indica que la codificación comience a partir del minuto 20, 45 segundos y 25 centésimas -to = indica que la codificación termine en el minuto 22, 0 segundos y 5 décimas - importar un FLV con vídeo h264 a .mp4: ffmpeg -i "[nombre_archivo_entrada].flv" -c:v copy -c:a copy "[nombre_archivo_salida].mp4" - importar un .mov a .mp4: ffmpeg -i "[nombre_archivo_entrada].mov" -c:v copy -c:a copy "[nombre_archivo_salida].mp4" - convertir un subtítulo SRT a ASS y viceversa: ffmpeg -i "[nombre_archivo_entrada].srt" "[nombre_archivo_salida].ass" ffmpeg -i "[nombre_archivo_entrada].ass" "[nombre_archivo_salida].srt" - convertir un subtítulo VTT a SRT o ASS y viceversa: ffmpeg -i "[nombre_archivo_entrada].vtt" "[nombre_archivo_salida].srt" ffmpeg -i "[nombre_archivo_entrada].srt" "[nombre_archivo_salida].vtt" ffmpeg -i "[nombre_archivo_entrada].vtt" "[nombre_archivo_salida].ass" ffmpeg -i "[nombre_archivo_entrada].ass" "[nombre_archivo_salida].vtt" - añadir a un archivo MP4 sin codificar uno o varios subtítulos en formato SRT, ASS o VTT: ffmpeg -i "[nombre_MP4_entrada].mp4" -i "[nombre_archivo_subtítulo_entrada01]" -i "[nombre_archivo_subtítulo_entrada02]" -map 0:0 -c:v copy -map 0:1 -c:a copy -map 1:0 -c:s:0 mov_text -map 2:0 \ -c:s:1 mov_text -f mp4 "[nombre_archivo_salida].mp4" - añadir uno o más audios a un vídeo: * primero comprobar qué índice de pistas hay en el archivo: ffmpeg -i "[nombre_archivo_entrada]" * aparecerá algo parecido a esto: [...] Stream #0:0: Video: mpeg4 (Advanced Simple Profile) (XVID / 0x44495658), yuv420p, 720x404 [sAR 1:1 DAR 180:101], SAR 413696:413685 DAR 16384:9193, 25 tbr, 25 tbn, 25 tbc Stream #0:1: Audio: mp3 (U[0][0][0] / 0x0055), 48000 Hz, stereo, s16, 320 kb/s [...] * para añadir más audios: ffmpeg -i "[nombre_vídeo_entrada]" -i "[nombre_audio_entrada01]" -i "[nombre_audio_entrada02]" -map 0:0 -map 0:1 -map 1:0 -map 2:0 -c copy "[nombre_archivo_salida]" * Donde: -map 0:0 = pista de vídeo del archivo "[nombre_vídeo_entrada]" -map 0:1 = pista de audio del archivo "[nombre_vídeo_entrada]" -map 1:0 = pista de audio del archivo "[nombre_audio_entrada01]" -map 2:0 = pista de audio del archivo "[nombre_audio_entrada02]" -c copy = no codifica ninguno de los archivos de entrada - añadir metadatos a un archivo AVI: ffmpeg -i "[nombre_archivo_entrada].avi" -metadata title=[título] -metadata artist=[artista_o_autor] -metadata date=[fecha] -metadata genre=[género] -metadata language=[idioma] \ -metadata track=[nº pista] -metadata encoded_by=[codificado por] -metadata comment=[comentario] -metadata album=[fuente_original] -metadata copyright=[derechos_de_autor] \ -c:v copy -c:a copy "[nombre_archivo_salida].avi" - añadir metadatos a archivos MP4, M4V, M4A, AAC y MOV: ffmpeg -i "[nombre_archivo_entrada]" -metadata title=[título] -metadata author=[artista_o_autor] -metadata album=[álbum] -metadata grouping=[agrupamiento] -metadata composer=[compositor] \ -metadata year=[fecha] -metadata track=[nº pista] -metadata comment=[comentario] -metadata genre=[género] -metadata copyright=[derechos de autor] -metadata description=[descripción] \ -metadata synopsis=[sinopsis o argumento] -metadata show=[espectáculo o programa] -metadata episode_id=[episodio] -metadata network=[canal de emisión] -metadata lyrics=[lírica] \ -c:v copy -c:a copy "[nombre_archivo_salida]" - añadir metadatos a archivos MKV: ffmpeg -i "[nombre_archivo_entrada]" -metadata title=[título] -metadata description=[descripción] -metadata language=[idioma] -c:v copy -c:a copy "[nombre_archivo_salida]" * NOTA: Matroska acepta la asignación de cualquier tipo de metadato - añadir metadatos a archivos WMV, VMA y ASF: ffmpeg -i "[nombre_archivo_entrada]" -metadata title=[título] -metadata author=[autor] -metadata copyright=[derechos de autor] -metadata comment=[comentarios] -metadata rating=[clasificación] \ -c:v copy -c:a copy "[nombre_archivo_salida]" - añadir metadatos a archivos MP3: ffmpeg -i "[nombre_archivo_entrada]" -metadata title=[título] -metadata author=[autor] -metadata album=[álbum] -metadata year=[año] -metadata comment=[comentario] -metadata track=[nº pista] \ -metadata genre=[género] -c copy "[nombre_archivo_salida]" - añadir metadatos a cada una de las pistas de un archivo: ffmpeg -i "[nombre_archivo_entrada]" -map 0:0 -c:v copy -map 0:1 -c:a copy -map 0:2 -c:a copy -map 0:3 -c:s copy -metadata:s:v:0 title="[título de la pista de vídeo]" \ -metadata:s:a:0 title="[título de la primera pista de audio]" -metadata:s:a:0 language=[código de idioma de la primera pista de audio] -metadata:s:a:1 title="[título de la segunda pista de audio]" \ -metadata:s:a:1 language=[código de idioma de la segunda pista de audio] -metadata:s:s:0 title="[título de la primera pista de subtítulos]" -metadata:s:s:0 \ language=[código de idioma de la primera pista de subtítulos] "[nombre_archivo_salida]" * NOTA: en archivos AVI y MP4 no se acepta simultáneamente "title" y "language" y en algunos reproductores pueden mostrarse erróneamente los caracteres especiales (tildes, letra "ñ", diéresis, símbolos, etc.) * Algunos códigos de idioma: spa = español eng = inglés fre = francés ita = italiano ger = alemán arg = aragonés ast = asturiano baq = euskera cat = catalán chi = chino fin = finlandés glg = gallego gre = griego heb = hebreo hin = hindi ind = indonesio jpn = japonés lat = latín por = portugués rum = rumano rus = ruso swe = sueco tur = turco ukr = ucraniano - borrar todos los metadatos: ffmpeg -i "[nombre_archivo_entrada]" -map_metadata -1 -c:v copy -c:a copy "[nombre_archivo_salida]" - extraer pistas de vídeo, audio y subtítulos en formato texto: * primero comprobar qué índice de pistas hay en el archivo: ffmpeg -i "[nombre_archivo_entrada]" * aparecerá algo parecido a esto: [...] Stream #0:0: Video: h264 (High), yuv420p, 1920x800, SAR 1:1 DAR 12:5, 23.98 fps, 23.98 tbr, 1k tbn, 47.95 tbc (default) Metadata: title : Video @ 9727 Kbps Stream #0:1(spa): Audio: ac3, 48000 Hz, 5.1(side), s16, 384 kb/s (default) (forced) Metadata: title : Spanish (Spain) Stream #0:2(eng): Audio: dts (DTS), 48000 Hz, 5.1(side), s16, 1536 kb/s Metadata: title : English (USA) Stream #0:3(eng): Audio: vorbis, 48000 Hz, stereo, s16 Metadata: title : English commentaries (USA) Stream #0:4(spa): Subtitle: ass (default) (forced) Metadata: title : Spanish Forced Stream #0:5(spa): Subtitle: ass Metadata: title : Spanish Stream #0:6(eng): Subtitle: subrip Metadata: title : English Stream #0:7(spa): Subtitle: subrip Metadata: title : Spanish commentaries [...] * para extraer sin codificar en archivos independientes: ffmpeg -i "[nombre_archivo_entrada]" -map 0:0 -c:v copy "[nombre_archivo_salida].mp4" -map 0:1 -c:a:0 copy "[nombre_archivo_salida].ac3" -map 0:4 -c:s:0 copy "[nombre_archivo_salida].ass" NOTA: los subtítulos contenidos en un archivo MP4 no pueden extraerse directamente. Es necesario extraerlos codificándolos a formato SRT, ASS o VTT * para extraer codificando en archivos independientes: ffmpeg -i "[nombre_archivo_entrada]" -map 0:1 -c:a:0 libmp3lame -b:a 128k -ar 44100 "[nombre_archivo_salida].mp3" -map 0:4 -c:s:0 srt "[nombre_archivo_salida].srt" -map 0:5 \ -c:s:1 webvtt "[nombre_archivo_salida].vtt" -map 0:7 -c:s:3 ass "[nombre_archivo_salida].ass" * para extraer sin codificar y guardando en un contenedor MKV: ffmpeg -i "[nombre_archivo_entrada]" -map 0:0 -map 0:1 -map 0:7 -c copy "[nombre_archivo_salida].mkv" * para extraer de varias fuentes sin codificar y guardando en un contenedor MKV: ffmpeg -i "[nombre_archivo_entrada01].mp4" -i "[nombre_archivo_entrada02].ac3" -i "[nombre_archivo_entrada03].srt" -map 0:0 -map 1:0 -map 2:0 -c copy "[nombre_archivo_salida].mkv" * para extraer un pcm_bluray con sonido multicanal: > para 16bits: ffmpeg -i "[nombre_archivo_entrada].m2ts" -map 0:2 -c:a pcm_s16le "[nombre_archivo_salida].wav" > para 24bits: ffmpeg -i "[nombre_archivo_entrada].m2ts" -map 0:2 -c:a pcm_s24le "[nombre_archivo_salida].wav" > para 32bits: ffmpeg -i "[nombre_archivo_entrada].m2ts" -map 0:2 -c:a pcm_s32le "[nombre_archivo_salida].wav" * para extraer un DTS-HD Master Audio y/o DTS:X: ffmpeg -i "[nombre_archivo_entrada]" -map 0:2 -c copy "[nombre_archivo_salida].dts" * para extraer un TrueHD y/o TrueHD+Atmos: ffmpeg -i "[nombre_archivo_entrada]" -map 0:2 -c copy "[nombre_archivo_salida].thd" * para extraer un E-AC3 y/o E-AC3+Atmos: ffmpeg -i "[nombre_archivo_entrada]" -map 0:2 -c copy "[nombre_archivo_salida].eac3" * para extraer el núcleo (core) DTS de un DTS-HD Master Audio y/o DTS:X: ffmpeg -i "[nombre_archivo_entrada].dtshd" -bsf:a dca_core -c:a copy "[nombre_archivo_salida].dts" * para extraer el núcleo (core) AC3 de un E-AC3 y/o E-AC3+Atmos: ffmpeg -i "[nombre_archivo_entrada].eac3" -bsf:a eac3_core -c:a copy "[nombre_archivo_salida].ac3" - guardar sin codificar una emisión en streaming de formato M3U8: ffmpeg -i [url_de_emisión_streaming].m3u8 -c copy -f mpegts "[nombre_archivo_salida].mp4" - unir 2 o más archivos de mismas características sin codificar [NOTA: los archivos deben coincidir en códec de audio y vídeo, dimensiones de vídeo y canales de audio]: ffmpeg -i "concat:[nombre_archivo_entrada01]|[nombre_archivo_entrada02]" -c copy "[nombre_archivo_salida]" - unir 2 o más archivos de mismas características sin codificar [NOTA: los archivos deben coincidir en códec de audio y vídeo, dimensiones de vídeo y canales de audio]: * Primero crear una lista con los archivos a unir presentes en el directorio: for f in *.wav; do echo "file '$f'" >> mylist.txt; done * A continuación realizar la unión usando los datos de la lista: ffmpeg -f concat -i mylist.txt -c copy "[nombre_archivo_salida].wav" - crear un bucle repetitivo de un solo archivo sin codificar: * Primero crear una lista con las veces que se repetirá el archivo (10 veces en este ejemplo): for i in {1..10}; do printf "file '%s'\n" "[nombre_archivo_entrada]" >> mylist.txt; done * A continuación crear el bucle usando los datos de la lista: ffmpeg -f concat -i mylist.txt -c copy "[nombre_archivo_salida]" - eliminar entrelazado de imagen: ffmpeg -i "[nombre_archivo_entrada]" -c:v libx264 -crf 18 -preset veryslow -vf yadif -tune film -maxrate 5000k -bufsize 1835k -c:a aac -b:a 320k -ac 6 "[nombre_archivo_salida].mp4" - usar filtros de imagen: * valores iniciales (no realizan cambios): gamma: 1.0 contraste: 1.0 brillo: 0.0 saturación de colores: 1.0 color rojo: 1.0 color verde: 1.0 color azul: 1.0 ffmpeg -i "[nombre_archivo_entrada]" -c:v libx264 -crf 18 -preset veryslow -vf \ mp=eq2=(nºgamma):(nºcontraste):(nºbrillo):(nºsaturación colores):(nºcolor rojo):(nºcolor verde):(nºcolor azul) -tune film -maxrate 5000k \ -bufsize 1835k -c:a aac -b:a 320k -ac 6 "[nombre_archivo_salida].mp4" - cambiar solo saturación de colores: * Valor inicial (no realiza cambios): 1.0 ffmpeg -i "[nombre_archivo_entrada]" -c:v libx264 -crf 18 -preset veryslow -vf hue=s=(nºsaturación) -tune film -maxrate 5000k -bufsize 1835k -c:a aac \ -b:a 320k -ac 6 "[nombre_archivo_salida].mp4" - cambiar solo brillo: * valor inicial (no realiza cambios): 1.0 ffmpeg -i "[nombre_archivo_entrada]" -c:v libx264 -crf 18 -preset veryslow -vf lutyuv=y=val*(nºbrillo) -tune film -maxrate 5000k -bufsize 1835k -c:a aac \ -b:a 320k -ac 6 "[nombre_archivo_salida].mp4" - capturar pantalla completa del PC sin sonido: ***NOTA: si no se usan las mismas dimensiones en píxeles que tiene configurada la pantalla la grabación no mostrará toda la pantalla. No se puede grabar con más dimensiones de las que tiene configurada la pantalla * para una pantalla de 1920x1080 píxeles: ffmpeg -video_size 1920x1080 -framerate 25 -f x11grab -i :0.0 -c:v libx264 -crf 18 "[nombre_archivo_salida].mp4" * para una pantalla de 1280x720 píxeles: ffmpeg -video_size 1280x720 -framerate 25 -f x11grab -i :0.0 -c:v libx264 -crf 18 "[nombre_archivo_salida].mp4" - capturar una porción de la pantalla del PC sin sonido: * capturar una dimensión de 1024x768 píxeles a partir de la coordenada x=100,y=200 siendo la coordenada inicial x=0,y=0 la esquina superior izquierda de la pantalla: ffmpeg -video_size 1024x768 -framerate 25 -f x11grab -i :0.0+100,200 -c:v libx264 -crf 18 "[nombre_archivo_salida].mp4" - crear un GIF animado de calidad estándar a partir de una porción de un vídeo: ffmpeg -i "[nombre_archivo_entrada]" -vf scale=350:-1 -ss 00:15:05 -t 5 "[nombre_archivo_salida].gif" - crear un GIF animado de alta calidad a partir de una porción de un vídeo [NOTA: requiere la instalación previa de la aplicación "imagemagick"]: ffmpeg -i "[nombre_archivo_entrada]" -ss 00:15:05 -t 5 -vf scale=350:-1:flags=lanczos,fps=25 -f image2pipe -vcodec ppm - | convert -delay 5 -loop 0 - "[nombre_archivo_salida].gif" - convertir un GIF animado en vídeo: ffmpeg -i "[nombre_archivo_entrada].gif" -c:v libx264 -crf 18 "[nombre_archivo_salida].mp4" - crear un vídeo con una foto fija añadiendo audio: ffmpeg -loop 1 -i "[nombre_imagen_fija_entrada]" -i "[nombre_archivo_audio_entrada]" -t (nºsegundos duración del vídeo) -map 0:0 -c:v libx264 -vf fps=25 -crf 18 \ -tune stillimage -map 1:0 -c:a copy "[nombre_archivo_salida].mp4" - crear una presentación en vídeo con fotos fijas añadiendo audio [NOTA: las fotos deben tener el mismo tamaño y formato]: ffmpeg -framerate 1/5 -pattern_type glob -i '*.jpg' -i "[nombre_archivo_audio_entrada]" -map 0:0 -c:v libx264 -vf fps=25 -crf 18 -tune stillimage -map 1:0 -c:a copy "[nombre_archivo_salida].mp4" * Donde: -framerate 1/5 = tiempo de exposición para cada foto en el vídeo (5 segundos en este caso) -pattern_type glob -i '*.jpg' = extensión de las fotos que se usarán por orden alfanumérico para crear el vídeo (fotos JPEG en este caso) - capturar una imagen fija en una posición predeterminada de un vídeo: * Calidad media: ffmpeg -i "[nombre_archivo_entrada]" -ss 00:10:14.435 -vframes 1 -qscale 1 "[nombre_archivo_salida].jpg" * Alta calidad: ffmpeg -i "[nombre_archivo_entrada]" -ss 00:10:14.435 -vframes 1 "[nombre_archivo_salida].png" - capturar una imagen fija en una posición predeterminada de un vídeo con HDR [NOTA: puede que no funcione en algunos FFmpeg de 64 bits]: ffmpeg -i "[nombre_archivo_entrada]" -ss 00:10:14.435 -vframes 1 -vf zscale=transfer=linear,tonemap=tonemap=clip:param=1.0:desat=2:peak=0,zscale=transfer=bt709,format=yuv420p "[nombre_archivo_salida].png" - capturar varias imágenes fijas cada periodo de tiempo predeterminado de un vídeo: ffmpeg -i "[nombre_archivo_entrada]" -vf fps=1/600 img%04d.png * Donde: -vf fps=1/600 = se capturará una imagen cada 600 segundos (10 minutos) img%04d.png = las imágenes se guardarán con el siguiente patrón de nombre: "img0001.png", "img0002.png", "img0003.png", etc. - crear un mosaico de imágenes capturadas de un vídeo: ffmpeg -ss 00:05:00 -i "[nombre_archivo_entrada]" -frames 1 -vf "select=not(mod(n\,5000)),scale=350:-1,tile=2x3" "[nombre_archivo_salida].png" * Donde: -ss 00:05:00 = posición del vídeo en donde comenzará la captura (en el minuto 5 en este caso) (n\,5000) = intervalo de fotogramas en los que se capturarán las siguientes imágenes (cada 5000 fotogramas en este caso) scale=350:-1 = cada imagen capturada se redimensionará a 350 píxeles de anchura, manteniéndose la relación de altura de la original tile=2x3 = el mosaico se conformará con 2 columnas y 3 filas - crear un vídeo mosaico a partir de cuatro vídeos independientes: ffmpeg -i "[nombre_vídeo_entrada01]" -i "[nombre_vídeo_entrada02]" -i "[nombre_vídeo_entrada03]" -i "[nombre_vídeo_entrada04]" -filter_complex "nullsrc=size=640x480 [base]; \ [0:v] setpts=PTS-STARTPTS, scale=320x240 [upperleft]; [1:v] setpts=PTS-STARTPTS, scale=320x240 [upperright]; [2:v] setpts=PTS-STARTPTS, scale=320x240 [lowerleft]; [3:v] \ setpts=PTS-STARTPTS, scale=320x240 [lowerright]; [base][upperleft] overlay=shortest=1 [tmp1]; [tmp1][upperright] overlay=shortest=1:x=320 [tmp2]; [tmp2][lowerleft] \ overlay=shortest=1:y=240 [tmp3]; [tmp3][lowerright] overlay=shortest=1:x=320:y=240" -c:v libx264 -crf 18 -an "[nombre_archivo_salida].mp4" * Donde: nullsrc=size=640x480 [base] = dimensiones que tendrá el vídeo mosaico (640x480 píxeles en este caso) scale=320x240 = el tamaño que tendrá cada ventana del mosaico (320x240 píxeles en este caso) [0:v] ..... [upperleft] = el vídeo 01 se situará arriba a la izquierda [1:v] ..... [upperright] = el vídeo 02 se situará arriba a la derecha [2:v] ..... [lowerleft] = el vídeo 03 se situará abajo a la izquierda [3:v] ..... [lowerright] = el vídeo 04 se situará abajo a la derecha > EJEMPLO: - codificar aumentando o disminuyendo la velocidad de reproducción: * Aumentar la velocidad de reproducción al doble (x2): ffmpeg -i "[nombre_archivo_entrada]" -filter_complex "[0:v]setpts=0.5*PTS[v];[0:a]atempo=2.0[a]" -map "[v]" -map "[a]" -c:v libx264 -crf 18 -c:a ac3 -b:a 384k \ -ar 48000 -ac 6 "[nombre_archivo_salida].mkv" > Donde: setpts=0.5 = aumenta la velocidad de reproducción del vídeo al doble atempo=2.0 = aumenta la velocidad de reproducción del audio al doble * Aumentar la velocidad de reproducción al cuádruple (x4): ffmpeg -i "[nombre_archivo_entrada]" -filter_complex "[0:v]setpts=0.25*PTS[v];[0:a]atempo=2.0,atempo=2.0[a]" -map "[v]" -map "[a]" -c:v libx264 -crf 18 -c:a ac3 -b:a 384k \ -ar 48000 -ac 6 "[nombre_archivo_salida].mkv" > Donde: setpts=0.25 = aumenta la velocidad de reproducción del vídeo al cuádruple atempo=2.0,atempo=2.0 = aumenta la velocidad de reproducción del audio al cuádruple ("atempo" está limitado a un máximo de 2.0) * Disminuir la velocidad de reproducción a la mitad (x0.5): ffmpeg -i "[nombre_archivo_entrada]" -filter_complex "[0:v]setpts=2.0*PTS[v];[0:a]atempo=0.5[a]" -map "[v]" -map "[a]" -c:v libx264 -crf 18 -c:a ac3 -b:a 384k \ -ar 48000 -ac 6 "[nombre_archivo_salida].mkv" > Donde: setpts=2.0 = disminuye la velocidad de reproducción del vídeo a la mitad atempo=0.5 = disminuye la velocidad de reproducción del audio a la mitad * Disminuir la velocidad de reproducción a la cuarta parte (x0.25): ffmpeg -i "[nombre_archivo_entrada]" -filter_complex "[0:v]setpts=4.0*PTS[v];[0:a]atempo=0.25[a]" -map "[v]" -map "[a]" -c:v libx264 -crf 18 -c:a ac3 -b:a 384k \ -ar 48000 -ac 6 "[nombre_archivo_salida].mkv" > Donde: setpts=4.0 = disminuye la velocidad de reproducción del vídeo a la cuarta parte atempo=0.25 = disminuye la velocidad de reproducción del audio a la cuarta parte - codificar invirtiendo el sentido de reproducción: * Extraer todos los fotogramas de la fuente de vídeo en formato imagen fija: ffmpeg -i "[nombre_archivo_entrada]" -an -sn -qscale 1 reverse_%06d.jpg * Extraer el audio de archivo de vídeo invirtiendo su reproducción [NOTA: se requiere la instalación previa de "sox"]: ffmpeg -i "[nombre_archivo_entrada]" -f sox - | sox --multi-threaded -S -V -p -b 16 "[nombre_archivo_salida].wav" reverse * Comprobar cuáles son los fotogramas por segundo (fps) del vídeo original para indicarlo en el paso posterior: ffmpeg -i "[nombre_archivo_entrada]" Aparecerá algo parecido a esto (los fps aparecen en el renglón "Stream"): [...] Metadata: COMPATIBLE_BRANDS: iso6avc1mp41 MAJOR_BRAND : dash MINOR_VERSION : 0 ENCODER : Lavf57.57.100 Duration: 00:04:57.98, start: -0.007000, bitrate: 1300 kb/s Stream #0:0: Video: h264 (Main), yuv420p(progressive), 1280x720 [sAR 1:1 DAR 16:9], 25 fps, 25 tbr, 1k tbn, 50 tbc (default) Metadata: HANDLER_NAME : VideoHandler [...] * Codificar los fotogramas extraídos de forma revertida y el audio extraído: cat $(ls -r reverse_*.jpg) | ffmpeg -f image2pipe -vf fps=(nºfotogramas por segundo) -i - -i "[nombre_archivo_audio].wav" -c:v libx264 -preset slow -crf 18 -tune film -c:a libmp3lame -b:a 320k \ "[nombre_archivo_salida]" - codificar añadiendo márgenes difuminados: * Codificar ampliando a las dimensiones deseadas sin audio: > Ejemplo: un vídeo de 406x720 píxeles ampliarlo a 1280x720 píxeles: ffmpeg -i "[nombre_archivo_entrada]" -vf scale=1280:720,setdar=16:9 -c:v libx264 -preset slow -crf 18 -tune film -an -sn "[nombre_archivo_salida]" * Codificar el vídeo ampliado difuminándolo en su totalidad: ffmpeg -i "[nombre_archivo_entrada]" -filter_complex "[0:v]crop=1280:720:0:0,boxblur=20[fg];[0:v][fg]overlay=0:0[v]" -map "[v]" -c:v libx264 -preset slow -crf 18 -tune film "[nombre_archivo_salida]" > Donde: boxblur=20 = Asigna un difuminado de 20 * Combinar el vídeo original con el vídeo difuminado superponiendo el original al difuminado copiando el audio: ffmpeg -i "[nombre_vídeo_difuminado]" -i "[nombre_vídeo_original]" -filter_complex "overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2" -c:v libx264 -preset slow -crf 18 -tune film -c:a copy \ "[nombre_archivo_salida]" * Muy probablemente el archivo de salida anterior no pueda reproducirse, salvo con algunos reproductores. En ese caso habrá que realizar un re-encapsulamiento del mismo sin codificar: ffmpeg -i "[nombre_vídeo_combinado]" -c copy "[nombre_archivo_salida]" - codificar rotando la imagen: * Rotar 90 grados en el sentido de la agujas del reloj: ffmpeg -i "[nombre_archivo_entrada]" -vf transpose=clock -c:v libx264 -preset slow -crf 18 -tune film -c:a copy "[nombre_archivo_salida]" * Rotar 90 grados en el sentido contrario de la agujas del reloj: ffmpeg -i "[nombre_archivo_entrada]" -vf transpose=cclock -c:v libx264 -preset slow -crf 18 -tune film -c:a copy "[nombre_archivo_salida]" * Rotar 180 grados: ffmpeg -i "[nombre_archivo_entrada]" -vf transpose=clock,transpose=clock -c:v libx264 -preset slow -crf 18 -tune film -c:a copy "[nombre_archivo_salida]" * Modo espejo (invertir horizontalmente): ffmpeg -i "[nombre_archivo_entrada]" -vf hflip -c:v libx264 -preset slow -crf 18 -tune film -c:a copy "[nombre_archivo_salida]" * Rotar 180 e invertido (invertir verticalmente): ffmpeg -i "[nombre_archivo_entrada]" -vf vflip -c:v libx264 -preset slow -crf 18 -tune film -c:a copy "[nombre_archivo_salida]" - codificar realizando fundidos: * Fundido desde negro hasta despejar al inicio y fundido de silencio de audio hasta recuperar volumen al principio: ffmpeg -i "[nombre_archivo_entrada]" -vf fade=t=in:st=0:d=(nºsegundos duración) -af afade=t=in:st=0:d=(nºsegundos duración) -c:v libx264 -preset slow -crf 18 \ -tune film -c:a libmp3lame -b:a 320k "[nombre_archivo_salida]" > Ejemplo: realizar el fundido en los 5 primeros segundos del vídeo: ffmpeg -i "[nombre_archivo_entrada]" -vf fade=t=in:st=0:d=5 -af afade=t=in:st=0:d=5 -c:v libx264 -preset slow -crf 18 -tune film -c:a libmp3lame -b:a 320k \ "[nombre_archivo_salida]" * Fundido desde blanco hasta despejar al inicio y fundido de silencio de audio hasta recuperar volumen al principio: ffmpeg -i "[nombre_archivo_entrada]" -vf fade=t=in:st=0:d=(nºsegundos duración):c=white -af afade=t=in:st=0:d=(nºsegundos duración) -c:v libx264 -preset slow \ -crf 18 -tune film -c:a libmp3lame -b:a 320k "[nombre_archivo_salida]" * Fundido a negro desde otra posición y fundido de volumen de audio hasta silenciar volumen desde otra posición: ffmpeg -i "[nombre_archivo_entrada]" -vf fade=t=out:st=(nºsegundos posición)=(nºsegundos duración) -af afade=t=out:st=(nºsegundos posición)=(nºsegundos duración) \ -c:v libx264 -preset slow -crf 18 -tune film -c:a libmp3lame -b:a 320k "[nombre_archivo_salida]" > Ejemplo: realizar el fundido en los últimos 5 segundos de un video de 33 segundos de duración. Nº de segundos como posición: 33-5=28 ffmpeg -i "[nombre_archivo_entrada]" -vf fade=t=out:st=28:d=5 -af afade=t=out:st=28:d=5 -c:v libx264 -preset slow -crf 18 -tune film -c:a libmp3lame -b:a 320k \ "[nombre_archivo_salida]" * Fundido a blanco desde otra posición y fundido de volumen de audio hasta silenciar volumen desde otra posición: ffmpeg -i "[nombre_archivo_entrada]" -vf fade=t=out:st=(nºsegundos posición)=(nºsegundos duración):c=white -af \ afade=t=out:st=(nºsegundos posición)=(nºsegundos duración) -c:v libx264 -preset slow -crf 18 -tune film -c:a libmp3lame -b:a 320k "[nombre_archivo_salida]" * Fundido desde negro hasta despejar al inicio, fundido de silencio de audio hasta recuperar volumen al principio, fundido a negro desde otra posición y fundido de volumen de audio hasta silenciar volumen desde otra posición: ffmpeg -i "[nombre_archivo_entrada]" -vf fade=t=in:st=0:d=(nºsegundos duración),fade=t=out:st=(nºsegundos posición)=(nºsegundos duración) -af \ afade=t=in:st=0:d=(nºsegundos duración),afade=t=out:st=(nºsegundos posición)=(nºsegundos duración) -c:v libx264 -preset slow -crf 18 -tune \ film -c:a libmp3lame -b:a 320k "[nombre_archivo_salida]"
  2. Hoy me levanté y miren con lo que me encontré en mi RSS. Está perfecto para seguir la línea de publicaciones Whatsapperas que andan poniendo sobre Firefox OS Es un tutorial para añadir la posibilidad de conectarse a Whatsapp desde Linux a través de Pidgin Para no hacer una post con sólo un link también agrego lo que tuve que hacer para hacerlo andar en fedora. Para derivados de Debian o ArchLinux usar el tutorial original EDIT: recién me entero que Shiba87 me ganó y publicó esto antes Bueno, pero no puso nada sobre fedora así que lo dejo Precaución: Hice todo dando tumbos y probando, creo que sirve sólo para fedora y parecidos, además no sé si esto tendría que ir en tutoriales porque está bastante precario, a lo mejor a alguien que recien empieza en Linux como yo le puede servir. El problema es que el tutorial está hecho para Debian o ArchLinux, como yo tengo Fedora y no conozco mucho de esto tengo problemas para instalar todos los paquetes que pide al principio. Lo primero que hice es instalar git, para ir fijándome que me va pidiendo Cuando intento hacer "make" me dice que me falta el package "purple", que supongo que viene con "libpurple-dev" que está en el tutorial. Pero como yo uso Fedora "libpurple-dev" no está disponible. Entonces hice "yum search purple" y encontré a "libpurple-devel", lo instalé y funcionó De ahí no llegué muy lejos, ya que me pidió g++. Busqué en google y encontré que hay que instalar "gcc-c++" Después de -intentar- hacer "make" por tercera vez parece que todo va bien Bueno, el mensaje no me llegó, pero igual se supone que el programa anda bien, a otros les podría funcionar
  3. Introducción: Para comenzar, era, soy y seré un usuario de Arch, pero no quiere decir que sea un fanboy, los pocos que me conocerán, saben que no me "caso" con ninguna distribución de GNU/Linux, asi que pasaré a explicar que es, características de la distribución entre otras cosas. Del porqué me gusta y del porqué, tal vez, no te convenga utilizarla, todo dependerá de tus gustos y preferencias. Aclarando que no me desviaré por distribuciones derivadas de Archlinux sinó de Arch puro, sin nada, tal cuál como viene y como se presenta; asi que sin más que decir, comencemos! ¿Qué es Arch? Cómo siempre comienzo, básicamente o no tan así, Arch es una distro, distribución de GNU/Linux que se basa en el "modelo" de rolling-release, que significa simplemente de una "actualización constante". La instalación de ésta gran distribución nos deja con un sistema básico en una terminal que nosotros podremos configurar agregando lo que necesitemos a gusto. En el caso que necesiten la guía de instalación les dejo aquí una. Características de Arch Por el tiempo que usé Arch, considero que tiene tres principios básicos que jamás se deben olvidar, más allá que nadie lee ésas cosas, pero considero que son importantes saberlos y son éstos: * Lo versátil. * Ser rolling release. *La increíble documentación que tiene su wikipedia. * La simpleza que posee su gestor de paquetes "pacman". * La cantidad de paquetes disponibles en los repositorios oficiales y sumado con AUR es enorme. * Entre muchas otras más que podrán ir descubriendo a medida que la utilizan! ¿Por qué elegimos Arch? Éste tipo de distribución considerando las ventajas como las que voy a resumir a continuación, siempre basándome en mi humilde opinión: * La curva de aprendizaje que nos brinda es muy interesante, nos deja en un término medio/avanzado. * Si tenemos ganas de leer y aprender, lo instalaremos una sóla vez y durará indefinidamente en nuestros equipos sin perder rendimiento. * Por lo simple y eficiente que es al dejarnos un sistema con lo justo y necesario que vamos a utilizar y con lo que queremos. * Si tenemos el "problemilla" de versionitis aguda, nos viene de lujo. * Vamos a terminar usando un WM (i3, openbox. fluxbox, etc.), Arch te lleva a experimentar cosas que jamás se te hubieran ocurrido con otras distros. * Te inspira a probar cosas nuevas en otras distribuciones o a saber configurar otras distribuciones de manera más sencilla por los conocimientos que ganaste usando Arch. ¿Por qué no usaríamos Arch? Así como dejé explicado brevemente porque uso Arch, también vale mirarlo del otro lado, teniendo en cuenta que instalé distribuciones como Ubuntu, Debian, Linuxmint, Slackware, Void, etc. También como cualquier otro sistema tiene sus ventajas y también sus desventajas que son las que voy a detallar o por lo menos las que encontré en su momento. * Solución de Problemas, en ocaciones, aclaro no siempre, tenemos algún que otro problema con dependencias, actualización de algún paquete que nos genera algún conflicto (más allá que no se sobre escriben los archivos de configuración nuevos, porque se generan los archivos archivo.pacnew). Entonces ésta parte la debemos solucionar leyendo, configurando a mano con algún editor de texto (nano/vi por ejemplo) desde la tty, no tenemos una manera que sea de forma "gráfica" con simples clics. *Tiempo, si, dedicarle tiempo a la lectura, mirar videos (a veces desactualizados), googlear, buscar en foros, blogs, grupos de telegram, etc. Genera un gasto de tiempo más al ser una distribución Rolling Release en ocaciones podemos tener problemas y no tenemos ganas de estar arreglando sólo, encender nuestro equipo y que funcione todo y listo. * Saber Inglés, ésto lo dejo al final porque, sabemos que tenemos traductores para utilizar, más allá que generan un tiempo copiar, pegar, leer, etc. Y genera molesta o nos da pereza también. Si es necesario, en la wiki por ejemplo si nos guiamos de ahí, la mayoría del contenido (actualizado) se encuentra en inglés, más allá que soy uno de los que traduce wiki y de pacman a español y tratando que se mantenga actualizado. Por obvias razones no alcanza el tiempo para traducir todo, entonces si sería ideal que sepan un poquito de inglés; salvo que no tengan problemas en usar un traductor. * La comunidad, aunque no tuve problemas cuando llegué a consultar porque prácticamente todo ya está resuelto, en algunos casos foros, grupos de telegram (no es nuestro caso en ArchlinuxLatinoamerica damos soporte cuando podemos como podemos, pero lo damos!), blogs, etc. Te mandan derecho a google o a la wiki. Si sos de tener pereza para leer, estarás en un pequeño problema. Ahora me quería explayar sobre el porqué no usaría Archlinux, me pareció más importante para que se tome conciencia un poco de lo que sucede y que no se debe esperar. Arch no es una distribución de GNU/Linux ni fácil, pero tampoco compleja de instalar; claro no es como Ubuntu, pero una vez que superan el método de instalación y lo hacen por lo menos algunas veces en una máquina virtual se van a dar cuenta que se hace casi "mecánico" el orden de las cosas que tienen que hacer y éso va a repercutir en otras distribuciones también. ¿Por qué? Porque van a saber o mejor dicho comprender que es lo que está sucediendo realmente cuando con clics configuran y hasta se van a dar cuenta de lo que podría llegar a estar mal y/o prevenir problemas cuando finalice una instalación de X distribución. Alternativas, Derivadas y scripts de instalación Me meto en éste tema, más allá que para algunos no les guste, si, tenemos distribuciones derivadas en las que tenemos todo listo para encender, conectar algo y utilizar. A quién no le gusta éso!? Entonces voy a comenzar a comentar sobre las derivadas de Arch, por lo menos las que usé son bastantes interesantes las detallo ahora. * Antergos * ArchBox * ArchMerged * ArchLabs * BlackArch * Chakra * Hyperbola * KaOS * Manjaro * Netrunner De todas maneras el listado de las distribuciones activas, si mal no recuerdo, las pueden mirar aquí con sus respectivos sitios oficiales para sus descargas. Scripts de Instalación: Los scripts que generaron con los años y sobre todo en éstos últimos meses, la verdad que más allá que "rompen" las ideas de Arch, no vienen nada mál. Ahora en su tiempo tuvieron muchos problemas cuando instalaban con dichos scripts, en su tiempo por ejemplo, Arch Anywhere, ahora llamado Anarchy-Linux (por temas de licencias si mal no recuerdo cambiaron el nombre). Ahora la mayoría de los usuarios en vez de instalar con scripts prefieren la instalación básica para evitar "problemas", pero de acuerdo a nuestro usuario y amigo de @ArchlinuxLatinoamerica, Cloruro de Litio, hace varios meses que se encuentra usando Anarchy-Linux y no tuvo problemas a la hora de utilizar Arch sin mayores inconvenientes, teniendo en cuenta que la utiliza para un uso de usuario común, hogareño, etc. Lo que quiero resaltar de éste script es que nos brinda la facilidad de instalar todo desde una instalación estilo ncurses, seleccionando las opciones y entornos que necesitamos para iniciar correctamente nuestro Arch, si quieren ver el github de Anarchy-Linux. Éste está destinado a usuarios principiantes, tanto así como para avanzados, que no quieren perder tiempo. Tiene un Arch completo que nos permite realizar una instalación a medida con la posibilidad de elegir idioma, opciones de configuración variada, además obviamente como estamos acostumbrados a que sea gratis. Cuenta sobre todo con una versión semi-gráfica del instalador que se puede usar para una instalación rápida y simple. Usan el sistema base del repositorio oficial de Arch y con un repositorio adicional con paquetes personalizados. Lo deberían tener en cuenta, para los usuarios que quieren experimentar también y para los que no pueden perder tiempo en configurar todo a mano, más allá que yo particularmente instalo Arch (dependiendo la conexión a internet) en no más de 20 minutos como máximo dejando el sistema con un entorno gráfico y listo para cumplir con las funciones básicas de un usuario promedio. Para concluir entonces quiero cerrar con ésto, Archlinux es una gran distribución con una comunidad enorme, con información interesante para no quedarnos en el camino, pero con la idea de que deberemos leer teniendo en cuenta que con un hardware modesto ya está todo respondido en foros, blogs, grupos de telegram, etc. Cómo nos puede ir bién con la primer experiencia, como nos puede ir mal, pero la idea de GNU/Linux es que no debemos aflojar, sea la distribución que sea, porque tenemos que tener presente que la idea de ésto es que aprendamos algo nuevo. Espero que les haya servido y si pueden compartir el contenido mejor todavía así seguimos creciendo! Abrazo de gol!
  4. Buenas, hoy descubri una cosa muy util, que quiza algunos ya conocereis. para mi ha sido de tal utilidad, que entra en mi lista de tareas a realizar a la hora de poner al dia una distro recien instalada, y por eso lo dejo en el foro, para cuando me entra la fiebre distrohopera... La tarea que nos atañe es muy simple, resulta que hoy en el grupo de manjaro salto la duda, ya que un usuario reporto que su grafica nvidia estaba a 55º y el ventilador marcaba 0, fui a mirar mi grafica y casualmente, marcaba tambien cerca de 50º y RPM a 0. Bien, resulta que los driver de nvidia no hacen saltar los ventiladores hasta la temperatura no supera los 55º grados. Pero tenemos una funcion que podemos añadir al controlador de nvidia y configurar a nuestro antojo, para que los ventiladores funcionen de manera automatica dependiendo de la temperatura que tengamos en ese momento. es muy sencillo: 1- tenemos que añadir la linea "coolbits4", en nuestro fichero de configuracion del driver nvidia, en mi caso al estar en manjaro quedaria asi: # Add to /etc/X11/xorg.conf.d/95-mhwd.conf # Screen Tearing: https://wiki.manjaro.org/index.php?title=Simple_fix_for_screen_tearing_-_nVidia # Nvidia Coolbits: https://wiki.archlinux.org/index.php/NVIDIA/Tips_and_tricks#Enabling_overclocking Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" Option "NoLogo" "1" Option "metamodes" "nvidia-auto-select +0+0 { ForceFullCompositionPipeline = On }" Option "Coolbits" "4" EndSection siiiiiiiiiiiiii, debajo de la otra magica linea que me enseñasteis que cura mi pantalla del malvado tearing... con esta simple linea, ahora nos aparecera en nuestra pantalla de nvidia settings, una barrita donde podemos elegir la velocidad del ventilador, tal que asi: 2- GUAYYYYYYY!!!, pero os preguntareis, muy bien, ya puedo regular el ventilador a mi antojo, pero como hago que se regule el solito automaticamente??? pues muy simple, un compañero de manjaro se ha currado un pequeño script, que deberemos de ejecutar al inicio de nuestro sistema, yo lo añadi al arranque automatico de plasma5, y buala!. ahora se regula el solito. podeis descargar el script de aqui:https://github.com/Madh93/dotfiles/blob/master/stuff/nvidia/nvidia.conf o copiarlo y crear vosotros el vuestro modificando los valores por los que deseis, para mi esta bien asi. como podeis ver, he pasado de tener la grafica siempre entre 50/55º, ha tenerla en 35º con el ventilador a menos de 900rpm, que no hace nada de ruido, yo lo prefiero asi, la verdad, creo que el hardware/gpu sufrira menos y vivira mejor. teneis mas info aqui: https://wiki.archlinux.org/index.php/NVIDIA_(Espa%C3%B1ol)#Ajustar_la_velocidad_del_ventilador_en_la_sesi.C3.B3n
  5. Anteriormente dejé un mini how-to sobre como instalar zsh y oh my zsh en Archlinux (para los que quieran ver la instalación aquí les dejo el link), en éste caso lo que haré será mostrar la instalación de zsh junto a Oh My Zsh en diferentes distribuciones como ser: * Debian * Ubuntu * Slackware * Void Además dejaré los videos también en el caso que tengan dudas de cada instalación en cada distribución, para que vean como se hace y no tengan ganas de leer. Por las dudas en el caso que quieran ver también la web oficial, requisitos y más información pueden mirarla aquí. Debian y Ubuntu: # apt-get install zsh Slackware: # slackpkg install zsh Void: # xbps-install zsh Instalación de Oh My Zsh: 1 - Descargamos el instalador de oh my zsh de la web del creador $ wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh 2 - Le damos permisos de ejecución al instalador (install.sh) $ chmod a+x install.sh 3 - Lo ejecutamos, vamos al directorio dónde lo descargamos y escribimos lo siguiente: $ ./install.sh Comenzará el proceso de clonar del repositorio original, una vez terminado solicitará clave de usuario, terminado el proceso ya tendremos oh my zsh instalado. 4 - Para modificar los themes que tenemos, deberemos editar nuestro .zshrc y en la sección ZSH_THEME modificamos el que está (por defecto "robbyrussell") por el que deseamos, en mi caso elegí "agnoster", también si quieren pueden colocar "Random" para que cada vez que inicien sesión con su usuario tengan un theme diferente. $ nano .zshrc 5 - En el caso que tengan dudas con respecto a lo que realiza el script (install.sh) pueden verlo completo usando un editor de texto o en el mismo github del creador. Desintalación: Si llegamos a la conclusión que no queremos usar más éste script o queremos personalizar zsh de manera manual, podemos eliminarlo también descargando el script de desintalación: 1 - Descargamos el script unistall.sh $ wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/uninstall.sh 2 - Le damos permisos de ejecución: $ chmod a+x uninstall.sh 3 - Ahora lo ejecutamos, vamos al directorio dónde lo descargamos y escribimos: $ ./uninstall 4 - Listo! A continuación dejo el video de Instalación y Desintalación en Debian, Slackware y Void respectivamente: Bueno espero que les haya servido éste mini how to. Recuerden por favor compartir ésto para que sigamos creciendo! Abrazo de gol!
  6. Los que dispongáis de Movistar TV, podréis ver la televisión desde vuestro ordenador con VLC. Para hacerlo tan solo tendréis que copiar este código o las partes que tengáis contratadas y nombrar el archivo con extensión .m3u . Una vez creado solo tendréis que abrir el archivo con VLC y este os reproducirá la televisión. Para elegir los canales mediante crtl+l podréis ver la lista de canales y elegir o buscar cual queréis ver. Todas las pruebas realizadas mediante cable, la reproducción mediante wireless no funciona correctamente por lo menos con los routers por defecto de Movistar. PD: Los errores o no funcionamiento del mismo en principio se deberán a la configuración del firewall. PD2: Si copiais todo directamente os saldra un error que pertenece a las frases no comentadas con # del texto. #EXTINF:-1,[000] Movistar+ rtp://@239.0.0.77:8208 #EXTINF:-1,[001] La 1 rtp://@239.0.0.76:8208 #EXTINF:-1,[002] La 2 rtp://@239.0.0.2:8208 #EXTINF:-1,[003] Antena 3 rtp://@239.0.0.3:8208 #EXTINF:-1,[004] Cuatro rtp://@239.0.0.4:8208 #EXTINF:-1,[005] Tele 5 rtp://@239.0.0.5:8208 #EXTINF:-1,[006] LaSexta rtp://@239.0.0.58:8208 #EXTINF:-1,[007] Canal+ rtp://@239.0.0.108:8208 AUTONÓMICOS ( * solo en Comunidad de origen) Código: Seleccionar todo Comunidad de Madrid #EXTINF:-1,[008] Telemadrid * rtp://@239.0.0.25:8208 #EXTINF:-1,[009] La Otra * rtp://@239.0.0.26:8208 Cataluña #EXTINF:-1,[008] TV3 * rtp://@239.0.0.23:8208 #EXTINF:-1,[009] 8tv * rtp://@239.0.0.82:8208 #EXTINF:-1,[156] Super 3/33 * rtp://@239.0.0.24:8208 #EXTINF:-1,[157] Esport3 * rtp://@239.0.0.51:8208 #EXTINF:-1,[158] 3/24 * rtp://@239.0.0.61:8208 Euskadi #EXTINF:-1,[008] ETB 1 * rtp://@239.0.0.35:8208 #EXTINF:-1,[009] ETB 2 * rtp://@239.0.0.36:8208 Andalucía #EXTINF:-1,[008] Canal Sur * rtp://@239.0.0.49:8208 #EXTINF:-1,[009] Canal Sur 2 * rtp://@239.0.0.50:8208 Islas Canarias #EXTINF:-1,[008] TV Canaria * rtp://@239.0.0.54:8208 Castilla La Mancha #EXTINF:-1,[008] CMT * rtp://@239.0.0.55:8208 Galicia #EXTINF:-1,[008] TV Galicia * rtp://@239.0.0.53:8208 Islas Baleares #EXTINF:-1,[008] IB3 * rtp://@239.0.0.56:8208 Aragón #EXTINF:-1,[008] Aragón TV * rtp://@239.0.0.88:8208 Murcia #EXTINF:-1,[008] 7 Región de Murcia * rtp://@239.0.0.87:8208 Asturias #EXTINF:-1,[008] TV Principado de Asturias * rtp://@239.0.0.86:8208 Extremadura #EXTINF:-1,[008] Extremadura TV * rtp://@239.0.0.73:8208 Castilla y León #EXTINF:-1,[008] Castilla y León 7 * rtp://@239.0.0.109:8208 Comunidad Valenciana #EXTINF:-1, [008] TV Mediterráneo rtp://@239.0.3.34:8208 #EXTINF:-1,[010] SERIES** rtp://@239.0.3.32:8208 #EXTINF:-1,[013] FOX rtp://@239.0.0.74:8208 #EXTINF:-1,[014] AXN rtp://@239.0.0.14:8208 #EXTINF:-1,[015] TNT rtp://@239.0.0.44:8208 #EXTINF:-1,[016] Comedy Central rtp://@239.0.0.68:8208 #EXTINF:-1,[017] Calle 13 rtp://@239.0.0.13:8208 #EXTINF:-1,[018] COSMO rtp://@239.0.0.15:8208 #EXTINF:-1,[019] AMC rtp://@239.0.0.8:8208 #EXTINF:-1,[020] FOX life rtp://@239.0.0.112:8208 #EXTINF:-1,[021] AXN White rtp://@239.0.0.62:8208 #EXTINF:-1,[022] SyFy rtp://@239.0.0.111:8208 #EXTINF:-1,[023] Non Stop People rtp://@239.0.0.212:8208 #EXTINF:-1,[024] MTV España rtp://@239.0.0.211:8208 #EXTINF:-1,[025] FDF rtp://@239.0.0.84:8208 #EXTINF:-1,[026] Neox rtp://@239.0.0.107:8208 #EXTINF:-1,[029] CINE rtp://@239.0.3.30:8208 #EXTINF:-1,[037] TCM rtp://@239.0.6.5:8208 #EXTINF:-1,[038] Hollywood rtp://@239.0.0.16:8208 #EXTINF:-1,[039] Sundance Channel rtp://@239.0.0.102:8208 #EXTINF:-1,[040] Paramount Channel rtp://@239.0.0.90:8208 #EXTINF:-1,[045] DEPORTES rtp://@239.0.3.33:8208 #EXTINF:-1,[050] Futbol Replay rtp://@239.0.0.97:8208 #EXTINF:-1,[060] Eurosport rtp://@239.0.0.18:8208 #EXTINF:-1,[061] Eurosport 2 rtp://@239.0.0.37:8208 #EXTINF:-1,[063] Teledeporte rtp://@239.0.0.79:8208 #EXTINF:-1,[066] Iberalia rtp://@239.0.5.6:8208 #EXTINF:-1,[070] National Geographic rtp://@239.0.0.103:8208 #EXTINF:-1,[071] NAT GEO Wild rtp://@239.0.0.89:8208 #EXTINF:-1,[072] Historia rtp://@239.0.0.19:8208 #EXTINF:-1,[073] Discovery Channel rtp://@239.0.0.21:8208 #EXTINF:-1,[074] ODISEA rtp://@239.0.0.22:8208 #EXTINF:-1,[075] A&E rtp://@239.0.0.38:8208 #EXTINF:-1,[076] Viajar rtp://@239.0.0.20:8208 #EXTINF:-1,[077] Discovery MAX rtp://@239.0.0.32:8208 #EXTINF:-1,[079] CCTV-E rtp://@239.0.0.65:8208 #EXTINF:-1,[080] Cocina rtp://@239.0.0.27:8208 #EXTINF:-1,[081] Decasa rtp://@239.0.0.71:8208 #EXTINF:-1,[082] Crimen e Investigación rtp://@239.0.0.57:8208 #EXTINF:-1,[083] Divinity rtp://@239.0.0.48:8208 #EXTINF:-1,[084] Nova rtp://@239.0.0.106:8208 #EXTINF:-1,[085] MEGA rtp://@239.0.3.31:8208 #EXTINF:-1,[086] Energy rtp://@239.0.0.59:8208 #EXTINF:-1,[087] Garage TV rtp://@239.0.0.99:8208 #EXTINF:-1,[090] Baby TV rtp://@239.0.0.113:8208 #EXTINF:-1,[091] Disney Junior rtp://@239.0.0.10:8208 #EXTINF:-1,[092] Canal Panda rtp://@239.0.0.117:8208 #EXTINF:-1,[093] Nick Jr rtp://@239.0.0.115:8208 #EXTINF:-1,[094] Nickelodeon rtp://@239.0.0.69:8208 #EXTINF:-1,[095] Disney XD rtp://@239.0.0.11:8208 #EXTINF:-1,[096] Disney Channel rtp://@239.0.0.64:8208 #EXTINF:-1,[097] Boing rtp://@239.0.0.66:8208 #EXTINF:-1,[098] Clan TVE rtp://@239.0.0.80:8208 #EXTINF:-1,[103] 40 TV rtp://@239.0.0.12:8208 #EXTINF:-1,[104] Sol Musica rtp://@239.0.0.39:8208 #EXTINF:-1,[105] VH1 rtp://@239.0.0.75:8208 #EXTINF:-1,[112] Canal 24 Horas rtp://@239.0.0.78:8208 #EXTINF:-1,[113] BBC world rtp://@239.0.0.30:8208 #EXTINF:-1,[114] CNNi rtp://@239.0.0.40:8208 #EXTINF:-1,[115] Fox News rtp://@239.0.7.65:8208 #EXTINF:-1,[116] Euronews rtp://@239.0.0.28:8208 #EXTINF:-1,[117] Al Jazeera rtp://@239.0.7.66:8208 #EXTINF:-1,[118] France 24 rtp://@239.0.7.67:8208 #EXTINF:-1,[119] Russia Today rtp://@239.0.7.68:8208 #EXTINF:-1,[120] CNBC Europe rtp://@239.0.7.69:8208 #EXTINF:-1,[122] TV5 Monde Europe rtp://@239.0.0.31:8208 #EXTINF:-1,[123] Bloomberg rtp://@239.0.0.29:8208 #EXTINF:-1,[124] Intereconomía TV rtp://@239.0.0.63:8208 #EXTINF:-1,[125] 13 TV rtp://@239.0.0.91:8208 #EXTINF:-1,[128] I24 News rtp://@239.0.0.220:8208 #EXTINF:-1,[129] CNC World rtp://@239.0.0.221:8208 #EXTINF:-1,[133] Canal Orbe 21 rtp://@239.0.0.45:8208 #EXTINF:-1,[150] Andalucia TV rtp://@239.0.0.1:8208 #EXTINF:-1,[151] Galicia TV Europa rtp://@239.0.3.37:8208 #EXTINF:-1,[153] TV3CAT rtp://@239.0.3.36:8208 #EXTINF:-1,[154] ETB Sat rtp://@239.0.0.60:8208 #EXTINF:-1,[155] Aragón TV Int rtp://@239.0.0.81:8208 #EXTINF:-1,[200] La Tienda en Casa rtp://@239.0.0.98:8208 -PAQUETE SERIES- (incluye Movistar Series) #EXTINF:-1, [011] Canal+ Series rtp://@239.0.5.4:8208 #EXTINF:-1, [012] Canal+ Series Xtra rtp://@239.0.3.20:8208 -PAQUETE CINE- #EXTINF:-1, [031] Canal+ Estrenos rtp://@239.0.3.40:8208 #EXTINF:-1, [032] Canal+ Xtra rtp://@239.0.3.41:8208 #EXTINF:-1, [033] Canal+ Acción rtp://@239.0.3.42:8208 #EXTINF:-1, [034] Canal+ Comedia rtp://@239.0.3.43:8208 #EXTINF:-1, [035] Canal+ DCine rtp://@239.0.3.44:8208 #EXTINF:-1, [036] DCine Español rtp://@239.0.3.45:8208 -PAQUETE FÚTBOL- #EXTINF:-1, [046] Canal+ Liga rtp://@239.0.0.42:8208 #EXTINF:-1, [047] Canal+ Partidazo rtp://@239.0.4.129:8208 #EXTINF:-1, [048] Canal+ Liga 2 rtp://@239.0.6.7:8208 #EXTINF:-1, [049] Canal+ Fútbol rtp://@239.0.6.8:8208 #EXTINF:-1, [052] Canal+ Liga Multi rtp://@239.0.0.119:8208 #EXTINF:-1, [062] Multideporte 1 rtp://@239.0.1.145:8208 #EXTINF:-1, [178] Multifútbol 1/European Qualifiers rtp://@239.0.0.124:8208 #EXTINF:-1, [179] Multifútbol 2 rtp://@239.0.0.123:8208 #EXTINF:-1, [180] Multifútbol 3 rtp://@239.0.3.3:8208 #EXTINF:-1, [181] Multifútbol 4 rtp://@239.0.3.4:8208 #EXTINF:-1, [182] Multifútbol 5 rtp://@239.0.3.5:8208 #EXTINF:-1, [183] Multifútbol 6 rtp://@239.0.3.6:8208 #EXTINF:-1, [184] Multifútbol 7 rtp://@239.0.3.7:8208 #EXTINF:-1, [185] Multifútbol 8 rtp://@239.0.3.2:8208 #EXTINF:-1, [186] Multifútbol 9 rtp://@239.0.3.9:8208 #EXTINF:-1, [187] C+ Liga 2 A rtp://@239.0.3.9:8208 #EXTINF:-1, [188] C+ Liga 2 B rtp://@239.0.0.120:8208 #EXTINF:-1, [189] C+ Liga 2 C rtp://@239.0.0.121:8208 #EXTINF:-1, [190] C+ Liga 2 D rtp://@239.0.0.122:8208 #EXTINF:-1, [191] Multideporte 2 rtp://@239.0.1.144:8208 #EXTINF:-1, [192] Multideporte 3 rtp://@239.0.1.143:8208 #EXTINF:-1, [193] Multideporte 4 rtp://@239.0.1.142:8208 #EXTINF:-1, [194] Multideporte 5 rtp://@239.0.1.148:8208 #EXTINF:-1, [195] Multideporte 6 rtp://@239.0.1.245:8208 #EXTINF:-1, [196] Multideporte 7 rtp://@239.0.1.146:8208 #EXTINF:-1, [197] Multideporte 8 rtp://@239.0.1.147:8208 #EXTINF:-1, [198] Multideporte 9 rtp://@239.0.1.243:8208 -PAQUETE DEPORTES- (Antes Energía) #EXTINF:-1, [055] Canal+ Deportes rtp://@239.0.4.193:8208 #EXTINF:-1, [056] Canal+ Deportes 2 rtp://@239.0.5.5:8208 #EXTINF:-1, [057] Movistar F1 rtp://@239.0.0.210:8208 #EXTINF:-1, [058] Movistar MotoGP rtp://@239.0.3.38:8208 #EXTINF:-1, [059] Canal+ Golf rtp://@239.0.5.2:8208 Fibra (FTTH) - Canales HD -PAQUETE FAMILIAR HD (Antes Para Todos)- #EXTINF:-1,[001] La 1 HD rtp://@239.0.0.185:8208 #EXTINF:-1,[003] Antena 3 HD rtp://@239.0.0.186:8208 #EXTINF:-1,[004] Cuatro HD rtp://@239.0.0.177:8208 #EXTINF:-1,[005] Tele 5 HD rtp://@239.0.0.176:8208 #EXTINF:-1,[006] laSexta HD rtp://@239.0.0.187:8208 #EXTINF:-1,[007] Canal+ HD rtp://@239.0.5.187:8208 AUTONÓMICOS Cataluña #EXTINF:-1,[008] TV3 HD rtp://@239.0.5.186:8208 #EXTINF:-1,[010] SERIES HD** rtp://@239.0.0.184:8208 #EXTINF:-1,[013] FOX HD rtp://@239.0.9.134:8208 #EXTINF:-1,[014] AXN HD rtp://@239.0.9.131:8208 #EXTINF:-1,[015] TNT HD rtp://@239.0.5.87:8208 #EXTINF:-1,[016] Comedy Central HD rtp://@239.0.0.174:8208 #EXTINF:-1,[017] Calle 13 HD rtp://@239.0.5.74:8208 #EXTINF:-1,[018] COSMO HD rtp://@239.0.5.71:8208 #EXTINF:-1,[019] AMC HD rtp://@239.0.9.132:8208 #EXTINF:-1,[020] FOX life HD rtp://@239.0.5.86:8208 #EXTINF:-1,[021] AXN White HD rtp://@239.0.5.79:8208 #EXTINF:-1,[022] Sy-Fy HD rtp://@239.0.5.75:8208 #EXTINF:-1,[023] Non Stop People HD rtp://@239.0.5.170:8208 #EXTINF:-1,[029] CINE HD rtp://@239.0.0.178:8208 #EXTINF:-1,[037] TCM HD rtp://@239.0.5.89:8208 #EXTINF:-1,[038] Hollywood HD rtp://@239.0.5.76:8208 #EXTINF:-1,[039] Sundance Channel HD rtp://@239.0.5.72:8208 #EXTINF:-1,[045] DEPORTES HD rtp://@239.0.0.180:8208 #EXTINF:-1,[060] Eurosport HD rtp://@239.0.9.135:8208 #EXTINF:-1,[060] Eurosport HD Nuevos paquetes rtp://@239.0.9.144:8208 #EXTINF:-1,[061] Eurosport 2 HD rtp://@239.0.5.105:8208 #EXTINF:-1,[063] Teledeporte HD rtp://@239.0.0.188:8208 #EXTINF:-1,[070] National Geographic HD rtp://@239.0.5.78:8208 #EXTINF:-1,[071] Nat Geo Wild HD rtp://@239.0.9.136:8208 #EXTINF:-1,[073] Discovery Channel HD rtp://@239.0.5.77:8208 #EXTINF:-1,[074] Odisea HD rtp://@239.0.5.82:8208 #EXTINF:-1,[076] Viajar HD rtp://@239.0.5.73:8208 #EXTINF:-1,[096] Disney Channel HD rtp://@239.0.0.173:8208 -PAQUETE SERIES HD- (incluye Movistar Series) #EXTINF:-1, [011] Canal+ Series HD rtp://@239.0.5.250:8208 #EXTINF:-1, [012] Canal+ Series Xtra HD rtp://@239.0.5.83:8208 -PAQUETE CINE HD- #EXTINF:-1, [031] Canal+ Estrenos HD rtp://@239.0.5.111:8208 #EXTINF:-1, [032] Canal+ Xtra HD rtp://@239.0.5.112:8208 #EXTINF:-1, [033] Canal+ Acción HD rtp://@239.0.5.113:8208 #EXTINF:-1, [034] Canal+ Comedia HD rtp://@239.0.5.114:8208 #EXTINF:-1, [035] Canal+ DCine HD rtp://@239.0.5.115:8208 -PAQUETE FÚTBOL HD- #EXTINF:-1, [046] Canal+ Liga HD rtp://@239.0.9.129:8208 #EXTINF:-1, [047] Canal+ Partidazo HD rtp://@239.0.5.84:8208 #EXTINF:-1, [048] Canal+ Liga 2 HD rtp://@239.0.6.13:8208 #EXTINF:-1, [049] Canal+ Futbol HD rtp://@239.0.6.14:8208 -PAQUETE DEPORTES HD- (Antes Energía) #EXTINF:-1, [055] Canal+ Deportes HD rtp://@239.0.5.248:8208 #EXTINF:-1, [056] Canal+ Deportes 2 HD rtp://@239.0.5.245:8208 #EXTINF:-1, [057] Movistar F1 HD rtp://@239.0.5.90:8208 #EXTINF:-1, [058] Movistar MotoGP HD rtp://@239.0.5.107:8208 #EXTINF:-1, [059] Canal+ Golf HD rtp://@239.0.5.249:8208 CANALES A LA CARTA (Hay que contratarlos aparte) #EXTINF:-1, [041] Extreme rtp://@239.0.6.1:8208 #EXTINF:-1, [042] Somos rtp://@239.0.6.4:8208 #EXTINF:-1, [054] Barça TV rtp://@239.0.3.65:8208 #EXTINF:-1, [065] Caza y Pesca rtp://@239.0.3.1:8208 #EXTINF:-1, [067] Canal+ Toros rtp://@239.0.1.140:8208 #EXTINF:-1, [107] Mezzo rtp://@239.0.4.65:8208 #EXTINF:-1, [109] Classica rtp://@239.0.3.193:8208 #EXTINF:-1, [111] Playboy TV rtp://@239.0.5.3:8208 #EXTINF:-1, [134] Telefe Internacional rtp://@239.0.8.3:8208 #EXTINF:-1, [135] Canal Estrellas rtp://@239.0.8.193:8208 #EXTINF:-1, [136] Caracol TV Internacional rtp://@239.0.7.129:8208 #EXTINF:-1, [137] TV Record rtp://@239.0.8.2:8208 #EXTINF:-1, [138] TV Chile Internacional rtp://@239.0.8.1:8208 #EXTINF:-1, [139] TV Colombia rtp://@239.0.7.131:8208 #EXTINF:-1, [140] Azteca Mundo rtp://@239.0.8.68:8208 #EXTINF:-1, [141] Cubavision rtp://@239.0.8.67:8208 #EXTINF:-1, [142] TeleSUR rtp://@239.0.8.69:8208 #EXTINF:-1, [145] Phoenix CNE rtp://@239.0.7.193:8208 #EXTINF:-1, [146] InfoNews Channel rtp://@239.0.7.194:8208 HD #EXTINF:-1, [109] Classica HD rtp://@239.0.9.137:8208 #EXTINF:-1, [067] Canal+ Toros HD rtp://@239.0.0.191:8208 CANALES PARA LOCALES PUBLICOS (BAR) #EXTINF:-1, [030] Canal+1 Bar rtp://@239.0.3.12:8208 #EXTINF:-1, [030] Canal+1 Bar rtp://@239.0.0.146:8208 #EXTINF:-1, [046] Canal+ Liga Bar rtp://@239.0.3.8:8208 #EXTINF:-1, [047] Canal+ Partidazo Bar* rtp://@239.0.1.163:8208 HD #EXTINF:-1, [030] Canal+1 HD Locales Publicos rtp://@239.0.5.137:8208 #EXTINF:-1, [046] Canal+ Liga HD Locales Publicos rtp://@239.0.5.140:8208 #EXTINF:-1, [047] Canal+ Partidazo Bar HD* rtp://@239.0.5.163:8208 FORMULA 1 (DEPORTES -Antes Paquetes TV Energía , Total y Combina2) SD #EXTINF:-1, [057] Movistar F1 rtp://@239.0.0.210:8208 #EXTINF:-1, [215] Multicamara 6 rtp://@239.0.3.57:8208 #EXTINF:-1, [216] Multicamara 5 rtp://@239.0.3.56:8208 #EXTINF:-1, [217] Multicamara 4 rtp://@239.0.3.55:8208 #EXTINF:-1, [218] Multicamara 3 rtp://@239.0.3.54:8208 #EXTINF:-1, [219] Multicamara 2 rtp://@239.0.3.53:8208 #EXTINF:-1, [220] Multicamara 1 rtp://@239.0.3.50:8208 #EXTINF:-1, [221] Multi 1 F1 rtp://@239.0.3.29:8208 #EXTINF:-1, [222] Multi 2 rtp://@239.0.3.52:8208 #EXTINF:-1, [223] Multi 3 rtp://@239.0.3.46:8208 #EXTINF:-1, [224] Multi 4 rtp://@239.0.3.47:8208 #EXTINF:-1, [225] Multi 5 rtp://@239.0.3.48:8208 #EXTINF:-1, [226] Multi 6 rtp://@239.0.3.49:8208 HD #EXTINF:-1, [057] Movistar F1 HD rtp://@239.0.5.90:8208 #EXTINF:-1, [215] Multicamara 6 HD rtp://@239.0.5.127:8208 #EXTINF:-1, [216] Multicamara 5 HD rtp://@239.0.5.126:8208 #EXTINF:-1, [217] Multicamara 4 HD rtp://@239.0.5.125:8208 #EXTINF:-1, [218] Multicamara 3 HD rtp://@239.0.5.124:8208 #EXTINF:-1, [219] Multicamara 2 HD rtp://@239.0.5.123:8208 #EXTINF:-1, [220] Multicamara 1 HD rtp://@239.0.5.121:8208 #EXTINF:-1, [221] Multi 1 F1 HD rtp://@239.0.0.175:8208 #EXTINF:-1, [222] Multi 2 HD rtp://@239.0.5.122:8208 #EXTINF:-1, [223] Multi 3 HD rtp://@239.0.5.117:8208 #EXTINF:-1, [224] Multi 4 HD rtp://@239.0.5.118:8208 #EXTINF:-1, [225] Multi 5 HD rtp://@239.0.5.119:8208 #EXTINF:-1, [226] Multi 6 HD rtp://@239.0.5.120:8208 MOTO GP (DEPORTES - Antes Paquetes TV Energía , Total y Combina2) SD #EXTINF:-1, [058] Movistar MotoGP rtp://@239.0.3.38:8208 #EXTINF:-1, [255] Multicamara 6 Moto GP rtp://@239.0.1.149:8208 #EXTINF:-1, [256] Multicamara 5 rtp://@239.0.1.150:8208 #EXTINF:-1, [257] Multicamara 4 rtp://@239.0.1.151:8208 #EXTINF:-1, [258] Multicamara 3 rtp://@239.0.1.152:8208 #EXTINF:-1, [259] Multicamara 2 rtp://@239.0.1.153:8208 #EXTINF:-1, [260] Multicamara 1 rtp://@239.0.1.154:8208 #EXTINF:-1, [261] Multi 1 rtp://@239.0.1.155:8208 #EXTINF:-1, [262] Multi 2 rtp://@239.0.1.156:8208 #EXTINF:-1, [263] Multi 3 rtp://@239.0.1.157:8208 #EXTINF:-1, [264] Multi 4 rtp://@239.0.1.158:8208 #EXTINF:-1, [265] Multi 5 rtp://@239.0.1.159:8208 #EXTINF:-1, [266] Multi 6 rtp://@239.0.1.160:8208 HD #EXTINF:-1, [058] Movistar MotoGP HD rtp://@239.0.5.107:8208 #EXTINF:-1, [058] Movistar MotoGP HD rtp://@239.0.5.107:8208 #EXTINF:-1, [058] Movistar MotoGP HD Degustacion rtp://@239.0.0.167:8208 #EXTINF:-1, [255] Multicamara 6 HD Moto GP rtp://@239.0.5.149:8208 #EXTINF:-1, [256] Multicamara 5 HD rtp://@239.0.5.150:8208 #EXTINF:-1, [257] Multicamara 4 HD rtp://@239.0.5.151:8208 #EXTINF:-1, [258] Multicamara 3 HD rtp://@239.0.5.152:8208 #EXTINF:-1, [259] Multicamara 2 HD rtp://@239.0.5.153:8208 #EXTINF:-1, [260] Multicamara 1 HD rtp://@239.0.5.154:8208 #EXTINF:-1, [261] Multi 1 HD rtp://@239.0.5.155:8208 #EXTINF:-1, [262] Multi 2 HD rtp://@239.0.5.156:8208 #EXTINF:-1, [263] Multi 3 HD rtp://@239.0.5.157:8208 #EXTINF:-1, [264] Multi 4 HD rtp://@239.0.5.158:8208 #EXTINF:-1, [265] Multi 5 HD rtp://@239.0.5.159:8208 #EXTINF:-1, [266] Multi 6 HD rtp://@239.0.5.160:8208 Fuente: http://www.adslzone.net/postt350532.html
  7. Buenas noches a todos y todas, vamos a explicar que es Brackets, para que sirve y cómo instalarlo ¿Qué es Brackets y para qué sirve? Básicamente Brackets es un "editor de texto" que es Open Source desarrollado por Adobe y es orientado a la programación web, en el cuál podemos editar código HTML, CSS y Javascript entre varios otros similares. En éste proyecto tenemos muchas facilidades a la hora de manejar codigo web. Lamentablemente sólamente soporta Chrome y Chromium a la hora de poder visualizar en tiempo real nuestras modificaciones en nuestro código. No funciona con Firefox. PreInstalación: Quiero avisar que éste proyecto se encuentra en el repositorio AUR, asi que en el caso que no tengan instalado yaourt, pueden darse una vuelta por el how-to de como instalarlo aquí. Instalación: 1 - Abrimos nuestra terminal que usamos habitualmente (en mi caso Tilda) y escribimos lo siguiente: $ yaourt -S brackets-bin * Elegí ésta versión porque es la más actual y se encuentra en desarrollo constante y además es estable. * Comenzará el proceso al cuál ya sabemos como continuar en la instalación. 2 - Finalizada la instalación, ya queda disponible para utilizarlo, como verán en cinnamon ya queda listo. 3 - Una vez que lo ejecutemos nos dará una pantalla de Bienvenida con la cuál nos aparecerá el código fuente y pueden tocar en el "rayo" que está a la derecha para que ejecute chrome o chromium y verán la pantalla de Bienvenida también. * Como comenté anteriormente, no funciona la vista previa con Firefox, esperemos que para futuros updates habiliten ésa función para los que utilizamos otros navegadores. Ahora para los que quieran instalar en otras distribuciones como ser en mi caso en Debian SID deben hacer lo siguiente: 1 - Vamos a la TTY (uso la tty, porque en Debian no tengo Entorno Gráfico, pero para que vean que también pueden instalarlo desde su terminal favorita.) 2 - En el caso que no tengan instalado wget, lo van a instalar (como root o usando sudo): # apt-get install wget 3 - Luego ejecutamos (como usuario común) $ wget https://github.com/adobe/brackets/releases/download/release-1.7/Brackets.Release.1.7.64-bit.deb 4 - Ahora instalan el paquete así (no muestro screen porque estoy con debian 32-Bits): # dpkg -i Brackets.Release.1.7.64-bit.deb 5 - Listo! Ahora tienen Brackets instalado y listo para funcionar! NOTA: En la web oficial en Other Downloads, tienen el paquete para compilar si lo desean y obviamente el source también. A continuación dejo un video tutorial por las dudas: Espero que les haya servido! ¿Qué utilizamos? Programa: Brackets. Instalación: Desde AUR. Terminal: Tilda. Distribución: Archlinux - Debian SID.
  8. Tutorial Kali linux v2 encriptado y persistente en USB 1. Abrir Gparted, y formatear una memoria USB de al menos 8 ó más gb en formato limpio como primaria. 2. Ahora descargamos la ISO (yo he escogido 64bits pero el que necesite 32 que vaya a la web y busque el link para cada versión, y la montamos en el USB con el comando dd: Abrimos el terminal y escribimos: wget http://cdimage.kali.org/kali-2.0/kali-linux-2.0-amd64.iso Averiguamos donde esta el usb con fdisk -l (en mi caso es /dev/sdb) dd if=/home/usuario/Descargas/kali-linux-2.0-amd64.iso of=/dev/sdb bs=1Men rojo la ruta donde hayas descargado la iso y en azul la unidad de tu usb 3. Creamos particiones con parted. parted /dev/sdb responderá: GNU Parted 3.2 Usando /dev/sdb Bienvenido a GNU Parted! Escribe 'help' para ver la lista de comandos. (parted) ahora hacemos un print (parted) print Model: SanDisk SanDisk Ultra (scsi) Disk /dev/sdb: 31.6GB Sector size (logical/physical): 512B/512B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 1 32.8kB 795MB 795MB primary boot, hidden 2 795MB 872MB 76.7MB primary fat16 nos muestra el estado del usb con su partiion primaria de la iso y la del arranque. Creamos particion 3 continuando desde el siguiente mega en el que acabó 872 + 1 y hasta donde queremos que pare la particion, en este caso haremos un inicio 873 fin 4000. (parted) mkpart primary 873 4000 Y la 4ª particion que la haremos con inicio 4001 y final el 100% de la memoria. (parted) mkpart primary 4001 100% Salimos de parted. (parted) q Informacion: Necesitas actualizar /etc/fstab. (ni caso, yo no lo hice) 4. Comprobamos a ver como va… y hacemos la persistencia fdisk -l /dev/sdb tienen que salir las 4 particiones. Formateamos la 3 con Ext3, y le damos una etiqueta especifica. mkfs.ext3 /dev/sdb3 e2label /dev/sdb3 persistence Creamos una carpeta para montar el usb mkdir -p /mnt/usb Montamos la 3ª con mount /dev/sdb3 /mnt/usb La hacemos permanente (para que cualquier cambio se guarde) echo "/ union" > /mnt/usb/persistence.conf Y desmontamos la unidad. umount /mnt/usb 5. Encriptamos la 4ª particion para mantener datos seguros y también le damos persistencia. cryptsetup --verbose --verify-passphrase luksFormat /dev/sdb4 CONFIRMAMOS YES EN MAYUSCULAS. ..Con esto escribimos la contraseña de encriptado. cryptsetup luksOpen /dev/sdb4 my_usb con esto montamos la particion mkfs.ext3 /dev/mapper/my_usb con esto formateamos la partición yo aquí la hice con ext4.Cada cual que elija. e2label /dev/mapper/my_usb persistence y con esto le damos persistencia y etiqueta como en la partición 3 pero con la 4 y encriptada ls -l /dev/disk/by-label mkdir -p /mnt/my_usb mount /dev/mapper/my_usb /mnt/my_usb echo "/ union" > /mnt/my_usb/persistence.conf umount /dev/mapper/my_usb cryptsetup luksClose /dev/mapper/my_usb cryptsetup luksAddNuke /dev/sdb4 Y ya hemos acabado. Ya tenemos nuestra usb con Kali v2, entriptada y persistente. Disfrutarla y un saludo.
  9. Bueno, no hace falta decir que como todo entorno de GNU/Linux nos da la posibilidad de buscar archivos y carpetas en nuestro equipo. Claro está que tenemos ésta manera “gráfica” de poder realizar dicha tarea instalando alguna aplicación. PERO por ahí no tenemos ganas de instalar algo extra, sabiendo que desde la tty, nuestra terminal (tilda, gnome-terminal, xfce4-terminal, etc.) podemos hacer lo mismo y de manera “nativa” ya que nuestro GNU/Linux nos da éste privilegio. ¿Cómo hacemos ésto? Bueno tenemos la órden llamada “find” que nos da un sin fin de posibilidades para usar y buscar cualquier tipo de archivo o carpeta en nuestro sistema. Comencemos! ¿Cómo usar la órden find? Hace tiempo no entendía muy bién como funcionaba dicha orden o como era el “correcto” uso de la misma y obviamente no tenía idea que tan potente es. Lo que sabía básicamente era que escribiendo: Encontraba lo que buscaba de una manera muy básica entonces vamos a pasar a explicar algunas cosas que veo útiles o que a mi particularmente me sirvieron, luego ya queda para ustedes como lo quieran y puedan usar. Recordemos primero que nada tenemos el “man” de find para tener toda la información necesaria para su uso. Entonces entendemos que básicamente para usar find podría ser algo así por ejemplo: Buscando por nombre: Aclaremos, la estructura es bastante simple ya que seguido de dicha órden debemos incluir la ruta dónde buscará, una opción/parámetro y el nombre del archivo que buscamos. Claro que si sabemos la ruta del archivo, sabemos dónde está alojado, pero en el caso que realmente no sepamos dónde se encuentra un determinado archivo podemos usar directamente la raiz “/” para que busque en toda nuestra unidad. Volviendo al tema, entonces seguido de la ruta dónde vamos a buscar nuestro archivo, vamos a colocar una opción o parámetro que nos pueda facilitar un poco más las cosas, entonces podríamos usarlo así: Buscando por tipo: Que pasaría si no nos interesa tanto el nombre del arhcivo, sinó que deseamos ubicar todos los archivos de un determinado tipo? Bueno aquí dejo algunos de los más usados: Entonces suponemos que queremos ubicar todos los dispositivos de bloque (un archivo que hace referencia a un dispositivo) en nuestro sistema. Con la ayuda de la opción -type haremos lo siguiente: Claro está que la línea anterior nos dará una cantidad de salidas de permiso denegado, pero básicamente tendrán algo parecido a ésto: También podemos usar la misma opción para ayudarnos a buscar archivos de configuración. Por ejemplo que necesitamos ubicar todos los archivos regualres que terminan con .conf, entonces el comando sería: El comando anterior buscará en / todos los archivos regulares que terminen en .conf. Aclaro por las dudas que bueno como todos sabemos, o la mayoría por lo menos, que prácticamente todos los archivos de configuración se encuentran en /etc, entonces podemos especificar ésa ruta también quedando así: Redirigir los resultados en un archivo: Normalmente nos sucede que a la hora de buscar un archivo la salida es demasiado larga, entonces lo que podemos hacer es redireccionar ésa salida a un archivo que puede ser MUY útil en algún momento; entonces vamos a usar el ejemplo anterior y enviaremos la salida a un archivo llamado busqueda.out de ésta manera: Aquí se genera un archivo llamado busqueda.out que contiene todos los resultados de la órden find, que lo podremos visualizar de la manera que tengamos ganas por ejemplo: Buscando archivos por tamaño: En ocaciones llegamos a un momento en que el comando find nos resulta muy útil. Me sucedió de ver algunos servidores con unidades llenas. Entonces para hacer espacio o buscar archivos que no necesitemos podemos ubicar archivos cuyo determinado peso por ejemplo 100MB entonces podemos usar find así: Puede ser que aparezcan demasiados archivos con ésta salida. Entonces podmeos filtrar un poco más según la estructura de directorios y bueno liberar espacio o solucionar algún que otro problema relacionado. Asi que podemos buscar con las siguientes descripciones también: Bueno por ahora ésto sería todo. Recuerden que sólo vimos órdenes, opciones/parámetros básicos de éste comando, que la verdad nos resulta ser muy útil o por lo menos para mi lo fué como lo comenté al principio. Recuerden usar “man find” para adentrarse en realmente todas las opciones que nos brinda para hacer un completo uso de ésta gran herramienta. Video: Espero que les haya servido! Abrazo de gol!
  10. Bueno continuando con la configuración de nuestro servidor LAMP en Slackware 14.2, ahora vamos a pasar a explicar como configurar PHP con Apache para evitar conflictos y tener una correcta configuración. Aclaro nuevamente éstas configuraciones que se ven en el tutorial son seteos “básicos“, en el caso que necesiten algo más personalizado en la parte IV dejaré algunos tips sobré ésto. Comencemos la segunda parte! Instalación de PHP: # slackpkg install php Configuración de PHP: – Para lograr que Apache funcione correctamente junto a PHP debemos ingresar nuevamente a nuestro archivo /etc/httpd/httpd.conf y editar las siguientes líneas: <IfModule dir_module> DirectoryIndex index.html <:/IfModule> A ése módulo le agregamos index.php quedando así: <IfModule dir_module> DirectoryIndex index.php index.html <:/IfModule> – Luego agregamos en el apartado de AddType lo siguiente: AddType application/xhttp-php .php .php3 .php4 .php5 .phtml – Al final prácticamente eliminamos el “#” de la línea Include/etc/httpd/mod_php.conf quedando así: – Ahora guardamos y salimos. – Cómo no se generó el archivo mod_php.conf, entonces lo que haremos será crearlo y agregamos éstas líneas: # cat > mod_php.conf LoadModule php5_module lib/httpd/modules/libphp5.so <FilesMatch \.php$> SetHandler application/x-httpd-php </FilesMatch> Guardamos y salimos. – Para revisar que quede funcionando correctamente vamos a dirigirnos al directorio /var/www/htdocs y creamos un archivo con extención .php # nano index.php y agregamos éstas líneas: <?php phpinfo(); ?> Guardamos y salimos. – Y para finalizar vamos a reiniciar el servicio y chequeamos si carga la info de PHP con nuestro navegador. # apachectl -k restart # elinks http://localhost/index.php – Listo! Como siempre dejo el video tutorial también: ¿Qué usamos? Distribución: Slackware. Versión: 14.2. Entorno: Ninguno, sólo TTY. Editor: nano. Parte I: Apache. – Parte III: MySQL (MariaDB). Abrazo de gol!
  11. Bueno como sabrán anteriormente dejé un tutorial de como instalar sudo en Slackware 14.2 y habilitarlo para poder usarlo en ésta entrada, asi que ya sabrán de que se trata. Ahora dejaré un método alternativo, no sé si será el correcto realmente, pero es una alternativa en algunos casos o en que falle el anterior. Comencemos! 1 – Buscaremos el paquete en los repositorios de Slackware con la siguiente orden: # slackpkg search sudo 2 – Ahora lo que haremos será instalarlo así: # slackpkg install sudo 3 – Ahora lo configuramos para poder usarlo así: # nano /etc/sudoers Agregamos nuestro usuario debajo de root: ice ALL=(ALL) ALL Guardamos y Salimos. Video del Tutorial: 4 – Listo! ¿Qué usamos? Distribución: Slackware 14.2. Comandos: slackpkg, nano, sudo. Entorno: Ninguno, sólo TTY. Abrazo de gol!
  12. Esta guia, son los pasos que he seguido en un servidor dedicado de OVH, con el que he estado experimentando durante un mes, pero también he probado en mi propio PC con Debian 8.7, y son exactamente los mismos pasos a seguir. En el caso de un PC local, la única salvedad es que para que la web sea visible desde Tor hay que tener abiertos los puertos correspondientes en el reouter y las iptables, yo he probado tanto con el puerto 80 estandar como con otro puerto de los que tengo libres, es lo mismo. Lo primero son las dependencias, en modo root o anteponiendo sudo como todos sabemos. apt-get install screen build-essential libevent-dev openssl zlib1g-dev libssl-dev El servidor tor se puede iniciar como root, pero la documentación la web oficial recomienda que se cree un usuario para tor. Por ejemplo 'usertor'. Creamos el usuario con las opciones que gustemos, en mi caso probé a especificar el home en /var/www/tor, Pero no me pareció buena idea, porque el siguiente paso es crear una carpeta privada donde irán los datos del dominio, y por motivos de seguridad encuentro que es mejor que vaya en otro sitio diferente a la carpeta raiz de la pagina web. adduser usertor Mejor adduser sin parametros y dejar que le asigne el home por defecto. A contituacion crear una carpeta en el home del usuario, por ejemplo "/home/usertor/hidden_service", que es donde irán los archivos de configuración del dominio .onion mkdir -p /home/usertor/hidden_service Y ya toca instalar tor apt-get install tor En la ruta /etc/tor se habrá creado un archivo llamado 'torrc' que debemos editar (con vuestro editor preferido) para especificar la ruta que creamos antes y el puerto por donde saldrá la web de tor nano /etc/tor/torrc ponemos al final del archivo: HiddenServiceDir /home/usertor/hidden_service HiddenServicePort 80 127.0.0.1:80 Aquí estamos indicando que use el puerto predeterminado 80 para la web Reinciar servicios service apache2 restart service tor restart Entramos en la cuenta del usuario 'usertor', y arrancamos el servidor Tor con el siguiente comando: screen tor Creará un archivo en la carpeta especificada en el parametro 'HiddenServiceDir', con el nombre del dominio .onion creado, por ejemplo: El nombre de dominio que precede al .onion es un nombre aleatorio, y con esto ya ponemos entrar en el navegar de tor y escribir nuestra url 'http://gx7irmd5u7mm5i7k.onion', y veremos el contenido del documento index.html / index.php que tengamos en nuestra carpeta raiz de apache /var/www, o /var/www/html NOTA 1: Este método solo hace visible la ruta por defecto de apache, no conozco la forma de activar el dominio .onion para otro virtualhost. Tampoco lo he probado con nginx. NOTA 2: el comando "screen tor" no funcionará inciando la sesion del usuario desde consola root con 'su', hay que iniciar una sesion independiente del usuario usertor que hemos creado para el experimento. Otra pega es que el dominio creado ( gx7irmd5u7mm5i7k.onion ) se detendrá, dejará de estar activo, cuando apaguemos o reniciemos la maquina y no se volverá a iniciar a no ser que lo hagamos manualmente con 'screen tor'. No se de que manera se puede automatizar el comando 'screen tor' en el inicio. Encontrareis mas de una incorrección lingüística, quien sepa usar este lenguaje técnico con propiedad puede indicarmelo si quiere, y editare para corregirlo. Fuentes: https://www.torproject.org/docs/tor-hidden-service.html.en https://riseup.net/en/security/network-security/tor/onionservices-best-practices http://www.comoinstalarlinux.com/como-instalar-tu-propio-dominio-onion-y-tener-tu-sitio-web-en-tor/
  13. Buenas noches vengo de nuevo pero ahora con un tutorial de como instalar LAMP en nuestro Slackware 14.2. Explicaré el paso a paso de la instalación y configuración básica de LAMP en nuestra distribución. Tengamos en cuenta que el tutorial es un poco largo, porque se divide en varios procesos de instalación de diferentes herramientas, entonces lo haré en un total de 4 partes, las primeras tres mostrando la instalación y configuración de Apache, MariaDB, PHP y la última será sobre tips básicos sobre como mantener nuestro server Comencemos! ¿Qué es LAMP? LAMP es el acrónimo usado para describir un sistema de infraestructura de internet que usa las siguientes herramientas: Linux, el sistema operativo; En algunos casos también se refiere a LDAP. Apache, el servidor web; MySQL/MariaDB, el gestor de bases de datos; Perl, PHP, o Python, los lenguajes de programación. La combinación de estas tecnologías es usada principalmente para definir la infraestructura de un servidor web, utilizando un paradigma de programación para el desarrollo. Fragmento extraído de Wikipedia. ¿Qué necesitamos? Para comenzar vamos a tener que tener listos los paquetes para instalar .tgz que serían los siguientes: Apache MySQL (mariadb) PHP A éstos lo que haremos tan simple como usar la herramienta slackpkg de ésta manera: # slackpkg install httpd 1 – La ubicación del archivo de configuración del servidor Apache se encuentra en: /etc/httpd/. Con el nombre de httpd.conf. – Podemos utilizar el editor de texto favorito (en mi caso como siempre trabajo desde la tty, usaré nano). Recuerden que todo ésto lo haremos como root. # nano /etc/httpd/httpd.conf – Aquí nos encontraremos con toda la configuración principal de nuestro servidor Apache y veremos secciones como éstas: Options FollowSymLinks AllowOverride None Order deny,allow Deny from all y también <Directory “/srv/httpd/htdocs”> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all – Bueno en el caso que hayamos realizado algún cambio en ésta configuración (default) lo que ahremos será guardar los cambios y salir para ejecutar la siguiente orden: # apachectl -t Si todo salió bién tendremos un mensaje parecido a: Syntax OK. – Para iniciar nuestro server lo que ejecutaremos será lo siguiente: – Primero le damos los permisos: # chmod 0744 /etc/rc.d/rc.httpd – Luego será iniciar el server: # /etc/rc.d/rc.httpd start o # apachectl -k start – Si queremos también editamos el index.html, lo editamos con nano en la ruta: /srv/httpd/htdocs/ # nano /srv/httpd/htdocs/index.html Guardamos los cambios y salimos. – Listo, cruzamos los dedos para que no salga ningún mensaje de error y terminamos, tenemos nuestro servidor Apache iniciado y corriendo. Podemos comprobar que funciona correctamente ingresando a nuestro localhost o nuestra IP privada con un navegador # elinks http://localhost o # elinks http://127.0.0.1 – Para detener el servidor apache simplemente escribimos: # apachectl -k stop También dejo a continuación un video tutorial para que se saquen alguna que otra duda si les pareció confuso algo: ¿Qué usamos? Distribución: Slackware. Versión: 14.2. Entorno: Ninguno, sólo TTY. Editor: nano. Espero que les haya servido y continuaré pronto con las próximas tres partes. La parte II: Apache y PHP. Abrazo de gol!
  14. Hace tiempo que llevaba buscando alguna forma de utilizar NVENC (El códec de Nvidia que aprovecha la tarjeta gráfica para screencast). Por desgracia, la instalación en esta distribución (y por desgracia también en otras) es bastante costosa. (Hay que compilar FFMPEG para ello con unas opciones concretas.) por suerte, un par de desarrolladores han creado un par de scripts que permiten realizar este proceso con un par de comandos. Los scripts en cuestión son: #1 https://github.com/lutris/ffmpeg-nvenc/blob/master/build.sh #2 https://gist.github.com/jniltinho/9273dc133796062c13ca739d17862125 Si uno no funciona lo hará en otro. Hace poco que lo probé con 2 distros basadas en ubuntu. En el PC de un amigo y en mi PC de sobremesa antíguo (Elementary OS y Kubuntu). En una funcionó el primer script y en la otra el segundo. Realmente me simplificaron mucho las cosas, me habría costado bastante tiempo instalarlo y dejarlo "a punto" sin estos dos scripts. Cabe recordar que para instalar esto es necesario tener instalados los drivers privativos de Nvidia.
  15. Instalando el paquete que hay en los repositorios llamado steam-devices nos creará la regla udev adecuada para usar el Steam Controller y el dispositivo de realidad virtual HTC vive, de todas formas dejo como se hace por si alguien no tiene ese paquete en los repositorios.
  16. Estaba probando alternativas a NetworkManager, y cuando me di cuenta estaba sin internet y necesitaba unos paquetes Una forma es usar un disco de instalación actualizado, una vez que se tiene el USB grabado con la imagen hay que usar APT para instalar usando ese disco como repositorio de paquetes. Esto es algo que se debería usar solamente en casos de emergencia, porque los paquetes se van actualizando y el USB va quedando viejo. Primero hay que conectar el USB y desmontarlo si es que se monta automáticamente. Para ver el nombre del disco se puede usar lsblk sudo lsblk sudo umount /dev/sdXX Después se debe abrir apt-cdrom sudo apt-cdrom add Y mientras espera que uno inserte el disco, desde otra terminal hay que montar el USB en /media/cdrom sudo mount /dev/sdXX /media/cdrom Una vez que está montado se presiona Enter en la terminal que está ejecutando apt-cdrom. El programa muestra una salida de este estilo: Using CD-ROM mount point /media/cdrom/ Unmounting CD-ROM... Waiting for disc... Please insert a Disc in the drive and press [Enter] Mounting CD-ROM... Identifying... [82fbd75bcd562a79d4b6f175711c3e49-2] Scanning disc for index files... Found 2 package indexes, 0 source indexes, 2 translation indexes and 0 signatures This disc is called: 'Debian GNU/Linux testing _Stretch_ - Official Snapshot amd64 DVD Binary-1 20170123-05:22' Reading Package Indexes... Done Reading Translation Indexes... Done Writing new source list Source list entries for this disc are: deb cdrom:[Debian GNU/Linux testing _Stretch_ - Official Snapshot amd64 DVD Binary-1 20170123-05:22]/ stretch contrib main Unmounting CD-ROM... Repeat this process for the rest of the CDs in your set. Y listo, ya se puede usar apt install para instalar lo que haga falta Lo que apt-cdrom hace es agregar una entrada al archivo /etc/apt/sources.list de este estilo: deb cdrom:[Debian GNU/Linux testing _Stretch_ - Official Snapshot amd64 DVD Binary-1 20170123-05:22]/ stretch contrib main Supongo que se podría haber escrito manualmente pero no lo veo tan fácil pegarle con el nombre Una vez que se haya terminado se debería borrar la línea creada en el archivo /etc/apt/sources.list para dejar de usar al USB como repositorio
  17. ¿Qué es MOC? Bueno MOC (Music On Console) es un reproductor de música para nuestra consola o TTY. Cuando lo instalemos notaremos un parecido al explorador de archivos MC (Midnight Commander) en el caso que lo utilicen, claro. También para los curiosos les cuento que MOC soporta diferentes formatos de audio como ser MP3, OGG, Vorbis, FLAC y varios más; de todas formas a continuación dejo aquí el link de su web oficial para que miren todas sus características y versiones disponibles. Instalación de MOC en Archlinux y derviadas 1 – Abrimos nuestra terminal favorita (en mi caso con tilda) y escribimos lo siguiente: $ sudo pacman -S moc 2 – Una vez instalado simplemente debemos ejecutar ésto: $ mocp 3 – Para ver los atajos y saber como manejar el programa, si presionan la letra “h” podrán acceder a los atajos de teclado que obviamente deberán aprender para poder utilizarlo, son sencillos y fáciles de acordarse. 4 – A la hora de cerrar MOC, cuando detienen con “s” (stop) una canción y cierran con “q”; el cliente se cerrará, PERO el server queda abierto, entonces para terminar de cerrar la aplicación completamente deben ejecutar lo siguiente: $ mocp -x 5 – Listo! NOTA: En el caso que tengan un error como éste cuando cierren MOC: Can’t load plugin libwavpack_decoder: file not found Lo que deben hacer es descargar el codec correspondiente, que en éste caso sería “wavpack” y listo. $ sudo pacman -S wavpack NOTA 1: Recordemos por favor que ésto no quita que no funcionara el programa, en mi caso reproduće perfectamente los mp3 que tengo sin ésa librería. Video Tutorial de Instalación de MOC en Archlinux: Instalación de MOC en Debian y derivadas 1 – Abrimos nuestra terminal favorita (en mi caso usaré la tty) y escribimos lo siguiente: # apt-get install moc 2 – Una vez instalado simplemente debemos ejecutar ésto: $ mocp 3 – Para ver los atajos y saber como manejar el prgorama, si presionan la letra “h” podrán acceder a los atajos de teclado que obviamente deberán aprender para poder utilizarlo, son sencillos y fáciles de acordarse. 4 – A la hora de cerrar MOC, cuando detienen con “s” (stop) una canción y cierran con “q”; el cliente se cerrará, PERO el server queda abierto, entonces para terminar de cerrar la aplicación completamente deben ejecutar lo siguiente: $ mocp -x 5 – Listo! Video Tutorial de Instalación de MOC en Debian: Bueno tan SIMPLE como éso, es una buena alternativa para los que usan mucho la TTY o la terminal o quieran consumir pocos recursos del sistema, ésta es la mejor alternativa o por lo menos en cuanto a mi experiencia con reproductores. Actualmente estaba usando Audacious, que no está mal, cumple con lo que necesito, me gustó más usar la tty, asi que MOC me vino genial! ¿Qué usamos? Distribuciones: Archlinux – Debian (vbox). Gestores de paquetes: pacman – apt-get – slackpkg. Entorno: Openbox – tty (Debian). Abrazo de gol!
  18. Tan SIMPLE como ésto, mostrar un video tutorial, mostrar paso a paso una instalación full de Slackware para demostrar que cualquier persona puede instalar una distribución de GNU/Linux pero ésta no es igual a otras, ésta distribución es legendaria de años que mantiene hasta el día de la fecha su filosofía, su creador (thank you) y la idea de llevar adelante un proyecto que hasta por lo que vi (siempre hablando por los amigos de habla hispana, si es que están, háganse presente!) es muy chica, pero, PERO la actitud y conocimientos necesarios para asesorar, ayudar y dar un soporte excelente con la respuesta que uno necesita. Para todos ustedes les presento a Slackware Linux Project. ¿Qué es Slackware Linux Project? Slackware Linux es la distro (distribución del sistema operativo GNU/Linux) que sigue en actualización y desarrollo desde hace más tiempo. Su versión actual es la 14.2, publicada el primero de julio de 2016. Contiene un programa de instalación sencillo de utilizar, aunque está basado en texto, a diferencia de otros entornos de instalación basados en ambientes gráficos. También cuenta con extensa documentación en inglés y un sistema de gestión de paquetes basado en menús. Lo que diferencia a Slackware Linux de otras distribuciones Linux es que la misma se asemeja en alto grado a los sistemas operativos Unix. A tal efecto, incluye software que normalmente no se encuentra en otras distribuciones Linux, tal como la última versión del entorno de comandos Korn shell. Más información aquí. Trataré de colocar todos los screenshots posibles durante la instalación siempre además con un videotutorial para que puedan “apreciar” como es el proceso y selección de “éste” tipo de instalación. PreInstalación: – Para los que quieran crear un pendrive booteable, les dejo a continuación un how to de como crearlo aquí. Instalación: 1 – Elegimos el idioma del teclado: 2 – Pasamos a la distribución del mismo aquí: 3 – Terminado lo anterior y finalizadas las particiones que quedaron como queremos, pasamos a escribir dentro del shell el comando “setup” y comenzamos así seleccionando y activando la partición swap así: 4 – Seleccionamos la o las particiones para predefinir nuestro sistema ya sea con / y /home, etc. Teniendo en cuenta el formateo de las mismas: 4.a – Seleccionaremos el sistema de archivos en éste caso ext4. 5 – Ahora seleccionamos desde dónde instalaremos Slackware 14.2 6 – Ahora la parte MÁS o una de las más importantes es seleccionar lo que vamos a instalar en nuestro sistema, queda criterio y selección de ustedes, en éste caso elegimos “full”. 7 – Una vez comenzada la instalación de paquetes esperaremos y tendremos en cuenta el tiempo de acuerdo a lo que seleccionamos será lo que demora en instalar, asi que no nos desesperemos 8 – Terminado el proceso de desempaquetado e instalación nos dará para elegir el inicio en éste caso NO vamos a usar grub, sinó nuestro viejo y querido LiLo: 8.a – En el caso que necesitemos agregar algún tipo de línea en nuestro inicio tenemos ésa libertad de hacerlo (GNU/Linux) 9 – Elegiremos el tipo de fuente de nuestra consola 10 – Ahora dónde instalamos LiLo 11 – Configuramos nuestro puerto del mouse (ratón) para que funcione en consola, interesante no? 12 – Configuramos internet (creo, si no es así la parte más IMPORTANTE) 12.a – Configuramos el hostname 12.b – Dominio ahora 12.c – El protocolo de internet en éste caso elijo DHCP, ustedes deben elegir el que les funcione y el que necesiten realmente 12.d – Confirmo con “enter” porque dejo todo “default”. 13 – Confirmo los servicios que quiero que se inicien en Sysvinit (para algunos la salvación) 14 – Configuramos la fuente de la tty, en el caso que lo hagamos, pero no es obligación, sinó damos “Enter”. 15 – Seteamos nuestro horario 16 – Ahora “seteamos” la constraseña de root” 17 – Terminamos la instalación, ahora lo que hace falta es reiniciar nuestro nuevo sistema con las opciones que elegimos para comenzar a disfrutar y a configurar TODO lo que nos hace falta! Éso lo dejaré para otro how-to para saber que hacer luego de instalar Slackware 14.2. Para los que necesitan ver el proceso de instalación, es un toque largo el video pero pueden ver exactamente como es y salir de las dudas que tengan también. ¿Que usamos? Distribución: Archlinux. Mètodo de instalación: Virtualbox. Bueno espero que les haya servido, recuerden por favor compartir éstos tutoriales en sus redes sociales, si necesitan alguno en particular sobre ésta u otra distribución de GNU/Linux, no duden en pedirlo! Abrazo de gol.
  19. Una de las incógnitas que nos asalta a la hora de instalar Debian es qué repositorios elegir o, más concretamente que mirrors de los repositorios oficiales serán los más adecuados para nosotros. APT-SPY responde a esta pregunta probando uno a uno los distintos repositorios de Debian, evaluando el ancho de banda y la latencia, con la intención de determinar cuál de ellos es el más capaz a la hora de instalar paquetes y mantener nuestro sistema actualizado. Se trata de un paquete que se encuentra en los repositorios oficiales de la distribución universal, así que bastará con instalarlo desde allí. aptitude install apt-spy Lo siguiente que necesitaremos será conocer la lista de mirrors de los repositorios oficiales que existe, para luego poder ponerlos a prueba, lista que será descargada del servidor de EEUU (http://http.us.debian.org/debian/README.mirrors.txt) apt-spy update Antes de continuar y como precaución, no estaría de más que hiciéramos una copia de nuestro actual sources.list cp /etc/apt/sources.list /etc/apt/sources.list-backup Para hacer una prueba sencilla, básica, bastaría simplemente con ejecutar el comando apt-spy, seguido de la opción -d y la rama de Debian que nos interesa utilizar, stable, testing o unstable. apt-spy -d stable Recordemos que esto hará que los diferentes mirrors uno a uno, lo que le llevará a apt-spy un tiempo considerable, así que tendremos que ser pacientes para saber cuál de ellos es el ganador. Sin embargo, entre las opciones de apt-spy, podremos afinar las pruebas en función de la rama de la distribución, el área geográfica, el país, el número máximo de servidores a probar... Área geográfica (-a) Con la opción -a podremos limitar las pruebas a una región determinada: Africa, Asia, Europe, North-America, Oceania o South-America. apt-spy -d testing -a Europe País (-s) Al igual que en el caso anterior, las pruebas se limitarán a una zona concreta, pero en este caso limitando el área a un país concreto o, si los separamos mediante comas, a una lista de varios países, utilizando el código ISO-3166-1 que no es otra cosa que la abreviatura, mediante dos letras, del nombre del país en cuestión y la opción -s apt-spy -d testing -s FR,IT,KR Tiempo de prueba (-t) Por defecto, apt-spy probará cada mirror durante 15 segundos antes de pasar al siguiente, pero podemos aumentar o disminuir a voluntad este parámetro con la opción -t para que se demore más o menos con cada uno apt-spy -d testing -t 30 Número máximo de pruebas (-e) Como dije al principio, apt-spy probará todos servidores espejo existentes hasta dar con el más competente. Para limitar el número máximo de servidores a probar, utilizamos la opción -e apt-spy -d testing -e 45 Número de servidores en el ranking (-n) Al contrario que la anterir, la opción -n no limita el número de pruebas sino que generará un ranking con los "N" servidores espejo más rápidos. apt-spy -d testing -n 5 Escribir la lista de servidores más rápidos en un archivo (-w , -o) Por defecto y dado que es una operación que lleva mucho tiempo, apt-spy se encarga de modificar nuestro sources.list para añadir en él, el mirror más competente. Podemos indicarle que cree un archivo diferente con los resultados, utilizando la opción -o apt-spy -d testing -o ~/Mi-lista-de-servidores Otra posibilidad es utilizar la opción -w, que generará un archivo con la lista de servidores más rápidos, que podremos utilizar más tarde para nuevas pruebas con apt-spy. ésta opción tiene que ser utilizada en combinación con -n, para así poder indicarle cuántos servidores entrarán en la lista apt-spy -d testing -n 5 -w ~/Mi-lista-de-servidores.list Leer los servidores desde un archivo (-i) Tras haber realizado una prueba prueba y guardado los resultados con la opción -w, podremos recuperar la lista para centrar las pruebas a esos servidores en concreto con la opción -i. También podríamos utilizar archivos de nuestra propia cosecha, no sólo los generados por apt-spy, siempre que la sintaxis sea correcta para una lista de repositorios. apt-spy -i ~/Mi-lista-de-servidores.list Ejemplos Hacer una lista con los 5 repositorios más rápidos de la rama unstable, realizando un máximo de 200 pruebas, sólo entre los servidores europeos y guardar el resultado en ~/servidores-rapidos.txt apt-spy -d unstable -n 5 -e 200 -a europe -o ~/servidores-rapidos.txt Hacer una lista con los 10 servidores más rápidos de la rama testing, realizando pruebas de 25 segundos, sólo entre los servidores de Alemania, guardando el resultado en el archivo ~/servidores-rapidos.list, que utilizaré más tarde para nuevas pruebas. apt-spy -d unstable -t 25 -s DE -w ~/servidores-rapidos.list Podemos indagar más y conocer el resto de opciones consultando el manual de apt-spy man apt-spy
  20. Bueno gente vengo a dejar éste mini how to para los que recién se inician en él mundo de los amigos de The Slackware Linux Project para que sepan como instalar un paquete desde el código fuente, transformarlo en un .tgz y recién instalarlo correctamente como un paquete de “sistema”. Cómo haremos ésto? con pocos pasos desde nuestra terminal favorita. Teniendo en cuenta que hicieron una instalación full de Slackware (como la que dejo aquí por las dudas necesiten o quieran ver como es el proceso). Para los más experimentados si necesitaría si quieren que dejen sus comentarios con sus experiencias o métodos. Sin más que decir, vamos a ver como es el proceso que es cortito y bastante sencillo. Instalación: 1 – Vamos a descargar primero desde aquí lo necesario: 1.a – Una vez descargado el source (v3.6.5.tar.gz) y el paquete a compilar (screenfetch.tar.gz). Yo lo haré desde la TTY y usaremos wget para la descarga de la siguiente manera: 2 – Veremos que una vez descargados los archivos pasamos a descomprimir el archivo screenfetch.tar.gz con el comando (como root): # tar xvfz screenfetch.tar.gz 2.a – Ahora copiamos ambos archivos (v3.6.5.tar.gz y screenfetch.tar.gz) en el directorio que se creó cuando descomprimimos usando el comando “cp” así: # cp screenfetch.tar.gz v3.6.5.tar.gz screenfetch/ 2.b – Ahora ingresamos en el directorio con el comando: # cd screenfetch (damos enter) y vemos que están los siguientes archvos con el comando “ls”: # ls 3 – Ahora lo que haremos será comenzar a crear el paquete para que sea instalable con installpkg de la siguiente manera: # ./screenfetch.SlackBuild 4 – Una vez terminado el proceso se crea el paquete .tgz en la siguiente ruta: /tmp/screenfetch-3.6.5-noarch-2_SBo.tgz entonces lo que nos resta es instalarlo así: # installpkg /tmp/screenfetch-3.6.5-noarch-2_SBo.tgz 5 – Listo! Ahora revisamos que quede funcionado correctamente ejecutando screenfetch así: # screenfetch 6 – Espero que les haya servido, recuerden por favor compartir en sus redes sociales y darles like. También pueden solicitar how-to, tutoriales o guías sobre algo en especial sobre Slackware también. NOTA: Les dejo un video tutorial también por las dudas necesiten ver exactamente el proceso que es muy corto y sencillo. Ésto serviría en el caso que necesiten instalar aplicaciones que no tienen demasiadas dependencias. ¿Que usamos? Distribución: Slackware. Entorno: Ninguno, sólo TTY. Comandos: tar, cp, wget. Abrazo de gol!
  21. Buenas linuxer@s, este es un tutorial para aprender a instalar kali linux en una unidad usb con persistencia de datos (cifrados) ¿Qué es la persistencia de datos? En distribuciones live donde todos los datos se borran al apagar el pc (kali linux, tails etc...) existe una forma de tener una partición donde guardar esos datos (como si fuese un disco duro), en este tutorial además esos datos van a ir cifrados (aunque se puede hacer sin cifrar) ¿Para que necesito la persistencia de datos? Muy sencillo, tengo kali linux en una unidad usb de 64 gb, ¿menudo desperdicio de 64 gb para un simple live no? de esta forma puedo guardar todos los experimentos que haga en kali linux, y encima cifrarlos por si alguien en algún momento me roba el pendrive (ya que lo tengo de llavero) 1.- Quemando kali linux live Lo primero es quemar el live de kali linux en el usb como cualquier live, por ejemplo con el comando "dd" dd if="kali-linux-imagen.iso" of=/dev/sdX Modificando "kali-linux-imagen.iso" por la imagen de kali linux y "/dev/sdX" por el dispositivo a instalarlo. OJO: Esto borrará todos los datos de tu dispositivo USB 2.- Crear la partición Kali linux ocupa entre 2 y 3 gb, por lo que si nuestro USB es de un tamaño generoso, nos quedará mucho espacio libre, lo que debemos hacer es crear una partición con todo ese espacio libre sin darle formato, eso ya lo haremos después, recomiendo gparted para esta tarea: Buscamos el espacio libre en el dispositivo USB En sistemas de archivos seleccionamos "sin formatear" Aplicamos los cambios Confirmamos Con esto ya tenemos una particion lista para usar. 3.- Cifrar la partición con cryptsetup cryptsetup --verbose luksFormat /dev/sdX Siendo X la partición del disco duro a cifrar, en mi caso es "/dev/sdc3" Cryptsetup nos pedirá confirmación si queremos cifrar esa partición, debemos de escribir "YES" en mayúsculas, nos pedirá una contraseña dos veces, ésta será con la que cifraremos dicha partición, es importante no olvidarla por que en ese caso no podremos recuperar jamás la información allí almacenada. 4.- Preparar la partición ya cifrada Ahora vamos a darle formato a dicha partición y prepararla para usarla en kali linux Abrimos la partición que acabamos de cifrar (nos pedirá la contraseña que acabamos de establecer): cryptsetup open /dev/sdc3 miusb Formateamos la partición: mkfs.ext4 -L persistence /dev/mapper/miusb e2label /dev/mapper/miusb persistence Creamos el punto de montaje: mkdir -p /mnt/miusb mount /dev/mapper/miusb /mnt/miusb echo "/ union" > /mnt/miusb/persistence.conf umount /dev/mapper/miusb 5.- Arrancando kali linux con persistencia de datos Ahora ya estamos listos para arrancar nuestro kali linux con persistencia de datos, para ello simplemente, seleccionamos en la BIOS nuestro dispositivo USB, y en la pantalla de GRUB seleccionamos "Live USB Encrypted Persistence" En algún momento del arranque nos pedirá la contraseña que especificamos anteriormente y listo, todos nuestros datos generados en la sesión kali linux live, se mantendrán pero nadie podrá acceder a ellos aunque tenga físicamente el USB. NOTA: Esta guía esta basada en la guia oficial de kali linux (en inglés), la puedes encontrar aquí.
  22. Hola, que tal, el presente tutorial tiene el fin de mostrar que por fin NVIDIA OPTIMUS funciona utilizando el driver de Nvidia, anteriormente también se podía utilizar la configuración que a continuación voy a explicar, pero existía el problema del famoso tearing, que finalmente se ha solventado por parte de nvidia con el X.Org 1.19 (realmente esto es algo novedoso,algo histórico...). Un método alternativo es utilizar bumblebee pero este proyecto hace tres años que no se actualiza y el rendimiento que le puedes sacar varía mucho del hardware que tengas, otra opción es utilizar PRIME (no confundir con el paquete nvidia-prime de Ubuntu), este método utiliza el driver libre nouveau.., como he dicho al principio en este tutorial me voy a centrar en NVIDIA OPTIMUS utilizando el driver de Nvidia (en Debian Testing). Los requisitos son: ..todos ellos ya se encuentran por "default" en Debian testing.. Antes de realizar los pasos de configuración instalamos el driver nvidia: $ sudo apt install nvidia-driver nvidia-settings ..así instalaremos todos los paquetes de nvidia .. Paso 1: Configuración del Xorg. /etc/X11/xorg.conf Algunas versiones del controlador "modesetting" intentan cargar un submódulo llamado "glamour", que está en conflicto con la implementación de NVIDIA GLX. Asegúrate de que el módulo libglamoregl.so X no está instalado. Como mi paquete de servidor xorg incluye el controlador glamour, he añadido la opción "AccelMethod" "none" para el controlador Intel. $ apt-file search libglamoregl.so Aquí el extracto de la información: http://us.download.nvidia.com/XFree86/Linux-x86_64/375.26/README/randr14.html Link: http://us.download.nvidia.com/XFree86/Linux-x86_64/375.26/README/randr14.html Paso 2: Agrega las líneas xrandr a la configuración del login manager en mi caso SDDM /usr/share/sddm/scripts/Xsetup Link: https://wiki.archlinux.org/index.php/NVIDIA_Optimus#SDDM Paso 3:Añadir al grub la opción : nvidia-drm.modeset=1 /etc/default/grub ..después actualizamos el grub..y reiniciamos el equipo $ sudo update-grub2 Resultado: Ahora el servidor X se inicia correctamente y puedo ver dos proveedores xrandr: $ xrandr --listproviders Si se está utilizando la sincronización pero no se desea, se puede desactivar con: $ xrandr --output 'eDP-1-1' --set 'PRIME Synchronization' '0' Y volver a habilitar con: $ xrandr --output 'eDP-1-1' --set 'PRIME Synchronization' '1' Puedes comprobar si los gráficos NVIDIA se estan utilizando, instalando el paquete mesa-utils, y ejecutándose: $ glxinfo | Grep NVIDIA Nota : Ubuntu, Canonical proporciona un conjunto de scripts habilitados por el paquete 'nvidia-prime' que le permiten activar y desactivar fácilmente PRIME utilizando un menú agregado en 'nvidia-settings' (pudiendo utilizar la intel o la nvidia, aunque una vez elegida la opción se ha de salir de la sesión y volver a entrar para que los cambios surtan efecto), pero estos scripts no se proporcionan ni se admiten oficialmente en NVIDIA, a pesar de ello esto no soluciona el tearing puesto que actualmente Ubuntu en ninguna de sus versiones, ni incluso en la de desarrollo (Ubuntu 17.04), trae consigo X.Org 1.19..aunque parezca increíble Archlinux tampoco tiene aún el X. Org 1.19 ( esta en su rama Testing).Un 10 por Debian y su equipo de desarrolladores.. Links https://devtalk.nvidia.com/default/topic/957814/linux/prime-and-prime-synchro http://us.download.nvidia.com/XFree86/Linux-x86_64/375.26/README/randr14.html https://wiki.archlinux.org/index.php...A_Optimus#SDDM Saludos y Feliz Navidad !!!
  23. Como comenté en otro tema que abrí, es posible usar el mando de Steam sin tener que usar el cliente. Se hace a través del programa SC Controller, aquí está su github. Está basado en GTK3 y es bastante bueno la verdad, una vez iniciado se puede cerrar y el mando sigue funcionando, no como desde Steam que debes tenerlo siempre abierto, tiene bastantes opciones de configuración y se pueden importar perfiles de Steam. No quiero extenderme más así que paso a explicar su instalación. Hay varias formas de instalarlo, en el github las muestra todas, incluso a través de paquetes de instalación, yo voy a explicar cómo lo hice yo, a través de git: Antes de nada debemos tener instalado python2, libgtk-3 o superior, python-gobject, python-gi-cairo, gir1.2-rsvg-2.0, python-pylibacl, python-setuptools, git. Comenzamos descargando el programa desde git, abrimos la consola y ejecutamos: git clone https://github.com/kozec/sc-controller.git Creará un directorio llamado sc-controller, y nos movemos a él: cd ./sc-controller Una vez ahí ejecutamos: python2 setup.py build sudo python2 setup.py install Se creará en /usr/local/bin el archivo sc-controller que será el programa en sí, también creará el acceso directo en /usr/local/share/applications/sc-controller.desktop Es sencillo de usar y configurar, ya tiene predefinidas unas cuantas opciones que valen para casi todo.
  24. Hoy vamos a dejar en claro algunas dudas y a demostrar que se puede flashear TRANQUILAMENTE un firmware en menos de 10 minutos desde nuestra distribución favorita de GNU/Linux. En éste caso usaré Archlinux, la instalación es igual en sus derivadas, pero es válido el proceso en cualquier distribución, Debian (en cualquiera de sus ramas: Stable, Testing, SID y Experimental), Ubuntu, LinuxMint, OpenSUSE, etc. Si necesitan algún tutorial de como instalar fastboot en cada una de distribuciones nombradas anteriormente, directamente agregaré los videos tutoriales de mi canal de YouTube, así no se hace tan extenso. En el caso que luego de flashear éste un firmware quieran instalar un Custom Recovery les dejo aquí el tutorial con video incluído de como poder realizarlo en pocos segundos. IMPORTANTE: * Recuerden que debemos tener habilitada la opción: Desbloqueo de OEM y habilitar la Depuración de Android; en el caso que no sepan como, dejo aquí un tutorial con su video para que miren como hacerlo (Más allá que el tutorial tenga que ver con el rooteo en CyanogenMod, ahí tendrán una idea de como ingresar tambén). Insisto nuevamente es MUY importante que tengan Desbloqueo de OEM activada para evitar algún dolor de cabeza en el futuro. Comencemos! 0 – Antes que nada recuerden cargar la batería del teléfono hasta que diga 100%, nada de 90%, ni 80%, etc. Después van a tener problemas flasheando. 1 – Vamos y abrimos una terminal en el caso que se ve, usé gnome-terminal e instalamos el paquete android-tools, que es el que contiene el comando fastboot tambén adb, mkbootimg, etc. Lo instalamos y nos fijamos que funcione ejecutando el mismo comando fastboot. # sudo pacman -S android-tools 2 – Descargaremos desde aquí el firmware y la versión de Android que corresponde al modelo exacto de nuestro Moto G3. En MI caso será el XT1543 (Dual SIM). NOTA: Recuerden revisar que versión de android tienen instalada, antes de descargar un firmware, así descargan el que corresponde realmente. NOTA 1: Yo lo tenía actualizado vía OTA a MarshMallow 6.0.1 entonces DEBO descargar el siguiente firmware: Retail Latin America (1GB) – XT1543_OSPREY_RETLA_DS_6.0.1_MPI24.107-55-2_cid12_subsidy-DEFAULT_CFC.xml * Si tuviera una versión anterior osea 6.0 entonces debería descargar: Retail Latin America (1GB) – XT1543_OSPREY_RETLA_DS_6.0_MPI24.65-25.1_cid12_subsidy-DEFAULT_CFC.xml.zip * Y si tuviera una versión anterior por ejemplo Android 5.1.1 entonces debería descargar: Retail Brazil (1GB) – XT1543_OSPREY_RETBR_DS_5.1.1_LPI23.72-65_cid12_subsidy-DEFAULT_CFC.xml.zip 3 – Una vez descargado el firmware que corresponde a nuestro modelo lo descomprimimos en una carpeta quedando así: NOTA: recuerden antes de comenzar a escribir las líneas, hacer todo ésto como root (preferentemente usar la órden “su“). constatan que son root de ésta manera: 3.1 – Apagamos el teléfono, lo colocamos en modo fastboot y lo conectamos a la PC, revisamos que lo reconozca escribiendo: # fastboot devices * IMPORTANTE: Si nos fijamos en la línea fastboot flash system, vemos que son 7 archivos, contando desde el 0 (cero) hasta el 6. Entonces de acuerdo al firmware de la marca y el modelo ésa cantidad de archivos puede variar, tengan en cuenta éso porque debemos flashear todos en el orden que corresponde. 4 – Ahora desde la terminal nos dirigimos a la carpeta dónde descomprimimos el firmware y comenzamos a colocar las siguientes líneas, una a la vez, desde la primera hasta la última, siempre respetando el orden y sin omitir ninguna: fastboot oem fb_mode_set fastboot flash partition gpt.bin fastboot flash bootloader bootloader.img fastboot flash logo logo.bin fastboot flash boot boot.img fastboot flash recovery recovery.img fastboot flash system system.img_sparsechunk.0 fastboot flash system system.img_sparsechunk.1 fastboot flash system system.img_sparsechunk.2 fastboot flash system system.img_sparsechunk.3 fastboot flash system system.img_sparsechunk.4 fastboot flash system system.img_sparsechunk.5 fastboot flash system system.img_sparsechunk.6 fastboot flash modem NON-HLOS.bin fastboot erase modemst1 fastboot erase modemst2 fastboot flash fsg fsg.mbn fastboot erase cache fastboot erase userdata fastboot erase customize fastboot erase clogo fastboot oem fb_mode_clear fastboot reboot Dejo a continuación como es el proceso para que miren también como va y que respeto tal cual CADA una de las líneas: * Éste proceso de flasheo demora aproximadamente 5 minutos dependiendo que tan nerviosos estén xD * No se preocupen por el error que se ve (bootloader) has-slot:, flashea tranquilamente. 5 – Una vez finalizado ése proceso y colocado el último comando fastboot reboot, ya pueden desconectar el teléfono y se iniciará el sistema, no demora más de 5 minutos en iniciar, es rápido quédensé tranquilos. 6 – Finalizado éso, bueno simplemente a configurar nuestro equipo con el último firmware oficial y listo! Dejo a continuación un video tutorial también por si tienen dudas sobre el proceso: Espero que les haya servido, recuerden por favor compartir el tutorial en todas las redes sociales. ¿Que usamos? Distribución: Archlinux. Window Manager: Openbox. Terminal: gnome-terminal. Abrazo de gol!
  25. Bueno gente vengo a deja a continuación sobre como flashear o instalar un Custom Recovery, en éste caso será TWRP (Team Win Recovery Project) en nuestro Motorola Moto G 3era Generación y lo mejor es que será desde nuestra distribución favorita de GNU/Linux. Comencemos! Importante: Primero: Recordemos por las dudas de tener instalado fastboot en nuestra distribución. Segundo: A la hora de flashear un firmware o un TWRP, etc, siempre que usemos fastboot lo haremos como root. (en éste caso usé la órden “su“). 1 – Colocamos al teléfono en modo fastboot (previamente apagado) así: botón Power y Vol-. 2 – Conectamos el teléfono a nuestra PC y abrimos nuestra terminal favorita y tecleamos primero: # fastboot devices Y debería aparecer tal cual dejo en la pantalla: 3 – Ahora ingresamos en el directorio dónde tenemos nuestro Custom Recovery (TWRP) en mi caso quedaría así: 4 – Ahora procedemos a flashear el recovery de la siguiente manera: # fastboot flash recovery twrp-osprey-3.0.2-r5.img NOTA: No se preocupen por el error (bootloader) has-slot:recovery: not found (voy flaheando en MUCHAS ocaciones (recovery, firmwares, etc.) Y todavía no tuve inconvenientes. 5 – Y por último agarramos el teléfono y desde la misma pantalla de fastboot del teléfono buscamos la opción Recovery Mode e ingresamos presionando el botón Power. También si quieren pueden usar la orden reboot para reiniciar el teléfono y luego, apagan, inician modo fastboot y luego ingresan en el Custom Recovery (para qué? nosé, pero les aviso por si les sirve). # fastboot reboot 6 – Listo! Lo que si quiero añadir es que por ejemplo no pude flashear la última versión de TWRP osea la r5, sin antes tener una previa, por ejemplo en mi caso he flasheado anteriormente la r1 y luego recién la r5. Comenten si les sucedió lo mismo. Dejo a continuación un video tutorial para que miren tal cual como se usó: ¿Qué usamos? * Distribución: Archlinux. * Terminal: Tilda. * Window Manager: Openbox.
×