Es igual, pero diferente

En Dragonkicks, una tienda china de zapatillas, están vendiendo una copia (al 99% según ellos mismos) del iPhone llamada HiPhone. Batería intercambiable, doble SIM, tarjeta de expansión de memoria… y todo esto por $239.00

Más información en la web del C-002.

Aparte de que visualmente sea muy similar, el precio no es tan bajo como para comprarlo a ciegas. La calidad será seguramente bastante inferior, además de otros detalles como por ejemplo:

– En el video se ve reaccionar muy lento en varias ocasiones.
– Sospechosamente pone WAP en el icono del navegador, no puede ser como un Safari.
– No tiene memoria interna, solo la posibilidad de una tarjeta, opcionalmente de 2GB.
– En la descripción dice «touch pen needed»… lo mismo no funciona tan bien con los dedos.

Y todo esto lo digo solo con verlo por Internet, es interesante ver qué dice gente que lo ha comprado:

«Cheap and worst: A third of the price of an unlocked iPhone but less than a 10th of iPhone quality in every aspect – voice clarity, picture quality, MP3 sound, conf calling feature, speaker phone, limitation of memory card, poor quality usb adapter etc. The quality difference is too obvious. It has been a learning, I will never go for cheap substances here after.»

Lo que viene a confirmar mis comentarios, que una cosa es la apariencia externa de la caja y el envoltorio y otra muy distinta es la calidad real del producto. Mi veredicto es… ¡no te lo compres!

Sin categoría

Esperando mi iPhone

Tuve mis dudas sobre cuál comprarme, tuve uno de cartón, y ahora ya ha llegado el momento de la verdad.

Antes de 48 horas pasará alguna de estas dos cosas:

– Me lamentaré de haber sido estafado o…
– Estaré disfrutando de mi flamante iPhone

Sin categoría

Cine: Jumper

Nada más lejos de mi intención que competir con el magistral crítico de cine Ferguson, sin embargo viendo esta película, al oir la frase visualizé la siguiente escena (frase extraída literalmente de la película):

image

Aunque tampoco hacía falta aclararlo…

Sin categoría

Participa gratis en los sorteos de SOLRED

A veces cuando uno va a la gasolinera, con el ticket de haber pagado aparece un código y un sorteo. En el último que me dieron se puede leer:

CONSIGUE 2.000€ SOLO 1 SMS
Entra desde el móvil en download.movilisto.com/solred o envía SOLRED al 5155, seguido del Cod. Oper de este ticket. Ejemplo: SOLRED 006527
¡PARTICIPA YA EN EL SORTEO!
Coste sms 1,20€+IVA […]

Total, que por cincuenta duros (~1,50€) participas en el sorteo de los 2.000 euros. También está la primera opción, la de entrar en la web desde el móvil, pero dependiendo del tipo de contrato o prepago que tengas, te puede costar incluso más dinero.

Cómo participar gratis en el sorteo

image

Para participar gratis en el sorteo podemos entrar en la web usando Firefox. Lo primero que hay que hacer es instalar una extensión que sea capaz de interpretar las webs en WML preparadas para móviles, nos vale con wmlbrowser de mozdev.org. Una vez instalada tan solo hay que ir a la web del sorteo y seguir las instrucciones. Si se quiere ser un poco más disimulado, también se puede instalar previamente una extensión llamada «User Agent Switcher» que, configurada correctamente, dirá al servidor web que estamos accediendo desde el teléfono móvil de marca y modelo que hayamos especificado.

Sed buenos y compartid el premio si os toca ;P

Sin categoría

Procesado de video [II]

La primera opción que pensé fue usar MEncoder, como cuenta Z. en su blog. Al abrir la página de manual de MPlayer en busca de las opciones a usar, encontré casi por casualidad la sección profiles. En lugar de usar un montón de parámetros para `mencoder’ se pueden crear perfiles en un archivo de configuración. En estos perfiles se especifican todas las opciones y así no hay que volver a acordarse ni preocuparse de cuáles son.

image

Para usar esta característica de mencoder creé el archivo ~/.mplayer/mencoder.conf con la siguiente configuración:

[w880]
profile-desc="MP4 encoding for SonyEricsson w880i"
# Encode with the given video codec and options
ovc=lavc=yes
lavcopts=vcodec=mpeg4:autoaspect=yes:vbitrate=256:acodec=libfaac:abitrate=96
vf=scale=320:240
o=output.mp4
aspect=4:3
sws=0

# Specify a frames per second value for the output file
ofps=15

# Output audio codec
oac=faac=yes
faacopts=br=96
af=volnorm=1

# Encode to the specified container format
of=lavf=yes
lavfopts=format=mp4:i_certify_that_my_video_stream_does_not_use_b_frames=yes

[w880-hq]
profile-desc="HQ MP4 encoding for SonyEricsson w880i"
profile=w880
lavcopts=mbd=2:trell=yes:v4mv=yes
sws=2

Si preguntamos a mencoder nos desvolverá una lista de los perfiles definidos:

nauj27@arriba:~$ mencoder -profile help
MEncoder 2:1.0~rc1-0ubuntu13.1 (C) 2000-2006 MPlayer Team
CPU: AMD Athlon(tm) XP 1600+ (Family: 6, Model: 6, Stepping: 2)
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 1 SSE2: 0
Compiled with runtime CPU detection.
Available profiles:
        w880-hq HQ MP4 encoding for SonyEricsson w880i
        w880    MP4 encoding for SonyEricsson w880i

Y si preguntamos acerca de un perfil nos dará una información más detallada:

nauj27@arriba:~$ mencoder -show-profile w880
MEncoder 2:1.0~rc1-0ubuntu13.1 (C) 2000-2006 MPlayer Team
CPU: AMD Athlon(tm) XP 1600+ (Family: 6, Model: 6, Stepping: 2)
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 1 SSE2: 0
Compiled with runtime CPU detection.
Profile w880: MP4 encoding for SonyEricsson w880i
 ovc=lavc=yes
 lavcopts=vcodec=mpeg4:autoaspect=yes:vbitrate=256:acodec=libfaac:abitrate=96
 vf=scale=320:240
 o=output.mp4
 aspect=4:3
 sws=0
 ofps=15
 oac=faac=yes
 faacopts=br=96
 af=volnorm=1
 of=lavf=yes
 lavfopts=format=mp4:i_certify_that_my_video_stream_does_not_use_b_frames=yes

Ahora veamos qué significa cada uno de los parámetros definidos. El primero indica el códec de video que vamos a emplear, lavc, y la línea siguiente indica las opciones que se emplearán en dicho códec. En éste caso he especificado video en mpeg4, razón de aspecto automática, 256kbps para el video y 96kbps para el audio codificado usando la librería libfaac que comprime en formato AAC.

Las siguientes tres líneas escalan el video a 320x240px que es la resolución de la pantalla del teléfono, indican la razón de aspecto que se incluirá dentro de la información del contenedor y se indica un fichero de salida por defecto por si no es especificado posteriormente, output.mp4.

sws=0 indica que durante el escalado de la imagen se use un filtro bilineal rápido para obtener una calidad aceptable pero rápida de calcular.

ofps=15 indica que queremos 15 imágenes por segundo. Hay a quien le pueden parecer insuficientes pero la mayoría de la gente no apreciaremos realmente la diferencia.

oac=faac=yes, faacopts=br=96 y af=volnorm=1 son todos referidos al audio. El primero indica el formato, el segundo la tasa de bits por segundo y el tercero hace un procesado del audio para normalizar el volumen. La normalización consigue la máxima amplificación sin distorsión.

Por último, of=lavf=yes y la línea de lavfopts indican que el audio y el video se quieren multiplexar en un contenedor MP4.

Hay una opción adicional que es la que fastidió que pudiese usar éste método para transformar las pelíclas, y es lo siguiente:

lavfopts=format=mp4:i_certify_that_my_video_stream_does_not_use_b_frames=yes

En realidad yo no puedo certificar que eso sea cierto. Ahora contaré por qué. En la compresión de video los tipos de imágenes que podemos encontrar son Intra coded frames, Predicted frames, y Bi-directional predictive pictures, también conocidos como I-Frames, P-Frames y B-Frames.

En los formatos definidos en el estandar MPEG, a menudo solo se almacenan diferencias entre imágenes en lugar de imágenes completas. Sin meterme en profundidad en el tema, diré grosso modo que:

– Los I-Frames son imágenes completas o imágenes clave (key frames) que son codificadas sin hacer referencia al resto de las imágenes del video.

– Los P-Frames requieren información de imágenes anteriores para ser decodificados, pueden contener información nueva así como vectores de desplazamiento de bloques de imágenes o combinaciones de ambos.

– Los B-Frames requieren la decodificación de imágenes anteriores para la representación completa de la imagen. Incluyen modos de predicción de regiones de movimiento, sacando un movimiento medio con predicciones basadas en el movimiento de objetos en imágenes del video anteriores.

Lo que se le está diciendo a mencoder con el parámetro mp4:i_certify_that_my_video_stream_does_not_use_b_frames=yes es que aseguro que mi video no contiene B-Frames, lo cual no es cierto en la gran mayoría de los casos. Resulta que mencoder usa algo llamado lavf para crear un contenedor de tipo MP4 y actualmente tiene un bug que hace que si el video contiene B-Frames el resultado sea un archivo corrupto que no sirve para mucho. Y efectivamente, el archivo resultante no lo reconoce ni Perry Mason.

Etiquetas: , , :: Archivado en Multimedia, Video

Procesado de video [I]

La otra noche pensé en procesar un video para poderlo ver en el teléfono móvil, de modo que lo primero que hice fue analizar el formato que es capaz de reproducir así como el contenedor y los codecs tanto de audio como de video. Después de muchas pruebas al final conseguí que se vea correctamente pero es un mundo tan grande el de los formatos de video que me da para varias entregas. Por ese motivo en esta primera parte hablaré sobre contenedores y codecs a modo de introducción. Está claro que esto puede ser un poco tostón si no te interesa, así que ahora estás a tiempo de cambiar de página o seguir leyendo :P

Cuando uno reproduce un video digital, lo normal es que el reproductor analize el contenedor, siendo el más extendido hoy en día el AVI (las siglas AVI significan Audio y Video intercalado o entrelazado). En este contenedor, entre otras cosas, se encuentra información referente al códec con el que ha sido codificado el audio y el video dentro del archivo. De este modo un archivo con una misma extensión (.avi) puede contener video de muy diversa naturaleza: DivX, XviD, MP4, WMV, ASF, etc.

El formato que reproduce mi móvil es un contenedor MP4 con video en MPEG-4 Parte 2 y audio en AAC. La pantalla es de 320×240 puntos y la cantidad de datos por imagen dependerá de los resultados que obtenga después de hacer unas cuantas pruebas. En principio 15 imágenes por segundo, 256kbps para el video y 96kbps para el audio deberían de ser suficientes para ver pequeños capítulos de series sin importarme demasiado la ligera pérdida de calidad que pueda tener.

Otra opción sería pasar el video a un contenedor 3GP con el video en MPEG-4 Parte 2 y el audio en AMR-NB, pero es que el AMR no me cae especialmente bien, además de que es un poco más coñazo de utilizar desde GNU/Linux (esto ya no es tan cierto desde que sacaron unas bibliotecas de uso de amr para Linux).

En cualquier caso la opción elegida es la primera de las dos. En las siguientes entregas veremos cómo convertir un video desde cualquier fuente, ya sea un divx, un DVD, o una grabación con una videocámara, al contenedor MP4 listo para ser reproducido en el móvil.

Como ejemplo, para dar una idea general del galimatías que puede llegar a ser el tema del procesado de video, éstos son unos cuantos formatos de contenedor y codecs tomados del proyecto FFMPEG:

File formats:
  E 3g2             3gp2 format
  E 3gp             3gp format
 D  4xm             4X Technologies format
 D  MTV             MTV format
 D  RoQ             Id RoQ format
 D  aac             ADTS AAC
 DE ac3             raw ac3
  E adts            ADTS AAC
 DE aiff            Audio IFF
 DE alaw            pcm A law format
 DE amr             3gpp amr file format
 DE asf             asf format
  E asf_stream      asf format
 DE au              SUN AU Format
 DE audio_device    audio grab and output
 DE avi             avi format
 D  avs             avs format
  E crc             crc testing format
 D  daud            D-Cinema audio format
 D  dc1394          dc1394 A/V grab
 D  dsicin          Delphine Software International CIN format
 D  dts             raw dts
 DE dv              DV video format
 D  dv1394          dv1394 A/V grab
  E dvd             MPEG2 PS format (DVD VOB)
 D  ea              Electronic Arts Multimedia Format
 DE ffm             ffm format
 D  film_cpk        Sega FILM/CPK format
 DE flac            raw flac
 D  flic            FLI/FLC/FLX animation format
 DE flv             flv format
  E framecrc        framecrc testing format
 DE gif             GIF Animation
 DE gxf             GXF format
 DE h261            raw h261
 DE h263            raw h263
 DE h264            raw H264 video format
 D  idcin           Id CIN format
 DE image2          image2 sequence
 DE image2pipe      piped image2 sequence
 D  ingenient       Ingenient MJPEG
 D  ipmovie         Interplay MVE format
 DE m4v             raw MPEG4 video format
 D  matroska        Matroska file format
 DE mjpeg           MJPEG video
 D  mm              American Laser Games MM format
 DE mmf             mmf format
  E mov             mov format
 D  mov,mp4,m4a,3gp,3g2,mj2 QuickTime/MPEG4/Motion JPEG 2000 format
  E mp2             MPEG audio layer 2
 DE mp3             MPEG audio layer 3
  E mp4             mp4 format
 D  mpc             musepack
 DE mpeg            MPEG1 System format
  E mpeg1video      MPEG video
  E mpeg2video      MPEG2 video
 DE mpegts          MPEG2 transport stream format
 D  mpegvideo       MPEG video
  E mpjpeg          Mime multipart JPEG format
 DE mulaw           pcm mu law format
 D  mxf             MXF format
 D  nsv             NullSoft Video format
  E null            null video format
 D  nut             nut format
 D  nuv             NuppelVideo format
 DE ogg             Ogg format
  E psp             psp mp4 format
 D  psxstr          Sony Playstation STR format
 DE rawvideo        raw video format
 D  redir           Redirector format
 DE rm              rm format
  E rtp             RTP output format
 D  rtsp            RTSP input format
 DE s16be           pcm signed 16 bit big endian format
 DE s16le           pcm signed 16 bit little endian format
 DE s8              pcm signed 8 bit format
 D  sdp             SDP
 D  shn             raw shorten
 D  smk             Smacker Video
 D  sol             Sierra SOL Format
  E svcd            MPEG2 PS format (VOB)
 DE swf             Flash format
 D  tiertexseq      Tiertex Limited SEQ format
 D  tta             true-audio
 DE u16be           pcm unsigned 16 bit big endian format
 DE u16le           pcm unsigned 16 bit little endian format
 DE u8              pcm unsigned 8 bit format
 D  vc1             raw vc1
  E vcd             MPEG1 System format (VCD)
 D  video4linux     video grab
 D  video4linux2    video grab
 D  vmd             Sierra VMD format
  E vob             MPEG2 PS format (VOB)
 DE voc             Creative Voice File format
 DE wav             wav format
 D  wc3movie        Wing Commander III movie format
 D  wsaud           Westwood Studios audio format
 D  wsvqa           Westwood Studios VQA format
 D  wv              WavPack
 DE yuv4mpegpipe    YUV4MPEG pipe format

Codecs:
 D V    4xm
 D V D  8bps
 D V    VMware video
 D V D  aasc
  EA    ac3
 DEA    adpcm_4xm
 DEA    adpcm_adx
 DEA    adpcm_ct
 DEA    adpcm_ea
 DEA    adpcm_ima_dk3
 DEA    adpcm_ima_dk4
 DEA    adpcm_ima_qt
 DEA    adpcm_ima_smjpeg
 DEA    adpcm_ima_wav
 DEA    adpcm_ima_ws
 DEA    adpcm_ms
 DEA    adpcm_sbpro_2
 DEA    adpcm_sbpro_3
 DEA    adpcm_sbpro_4
 DEA    adpcm_swf
 DEA    adpcm_xa
 DEA    adpcm_yamaha
 D A    alac
 DEV D  asv1
 DEV D  asv2
 D V D  avs
 DEV    bmp
 D V D  camstudio
 D V D  camtasia
 D V D  cavs
 D V D  cinepak
 D V D  cljr
 D A    cook
 D V D  cyuv
 D A    dca
 D A    dsicinaudio
 D V D  dsicinvideo
 DES    dvbsub
 DES    dvdsub
 DEV D  dvvideo
 DEV D  ffv1
 DEVSD  ffvhuff
 DEA    flac
 DEV D  flashsv
 D V D  flic
 DEVSD  flv
 D V D  fraps
 DEA    g726
 DEV    gif
 DEA    gsm
 D A    gsm_ms
 DEV D  h261
 DEVSDT h263
 D VSD  h263i
  EV    h263p
 D V DT h264
 DEVSD  huffyuv
 D V D  idcinvideo
 D A    imc
 D V D  indeo2
 D V    indeo3
 D A    interplay_dpcm
 D V D  interplayvideo
  EV    jpegls
 D V    kmvc
  EV    libtheora
  EV    ljpeg
 D V D  loco
 D A    mace3
 D A    mace6
 D V D  mdec
 DEV D  mjpeg
 D V D  mjpegb
 D V D  mmvideo
 DEA    mp2
 D A    mp3
 D A    mp3adu
 D A    mp3on4
 D A    mpc sv7
 DEVSDT mpeg1video
 DEVSDT mpeg2video
 DEVSDT mpeg4
 D VSDT mpegvideo
 DEVSD  msmpeg4
 DEVSD  msmpeg4v1
 DEVSD  msmpeg4v2
 D V D  msrle
 D V D  msvideo1
 D V D  mszh
 D V D  nuv
 DEV    pam
 DEV    pbm
 DEA    pcm_alaw
 DEA    pcm_mulaw
 DEA    pcm_s16be
 DEA    pcm_s16le
 DEA    pcm_s24be
 DEA    pcm_s24daud
 DEA    pcm_s24le
 DEA    pcm_s32be
 DEA    pcm_s32le
 DEA    pcm_s8
 DEA    pcm_u16be
 DEA    pcm_u16le
 DEA    pcm_u24be
 DEA    pcm_u24le
 DEA    pcm_u32be
 DEA    pcm_u32le
 DEA    pcm_u8
 DEV    pgm
 DEV    pgmyuv
 DEV    png
 DEV    ppm
 D A    qdm2
 D V D  qdraw
 D V D  qpeg
 D V D  qtrle
 DEV    rawvideo
 D A    real_144
 D A    real_288
 D A    roq_dpcm
 D V D  roqvideo
 D V D  rpza
 DEV D  rv10
 DEV D  rv20
 D A    shorten
 D A    smackaud
 D V    smackvid
 D V D  smc
 DEV    snow
 D A    sol_dpcm
 DEA    sonic
  EA    sonicls
 D V D  sp5x
 DEV D  svq1
 D VSD  svq3
 D V    targa
 D V    theora
 D V D  tiertexseqvideo
 D V    tiff
 D V D  truemotion1
 D V D  truemotion2
 D A    truespeech
 D A    tta
 D V D  ultimotion
 D V    vc1
 D V D  vcr1
 D A    vmdaudio
 D V D  vmdvideo
 DEA    vorbis
 D V    vp3
 D V    vp5
 D V    vp6
 D V    vp6f
 D V D  vqavideo
 D A    wavpack
 DEA    wmav1
 DEA    wmav2
 DEVSD  wmv1
 DEVSD  wmv2
 D V    wmv3
 D V D  wnv1
 D A    ws_snd1
 D A    xan_dpcm
 D V D  xan_wc3
 D V D  xl
 DEV D  zlib
 DEV    zmbv

Sin categoría

Relájate y disfruta

A veces al apuntarnos a algún sitio en Internet, se nos olvida marcar aquella casilla donde dice que no se permita dar nuestros datos a más empresas. Esto hace que de vez en cuando recibamos un tipo de correo basura que no es el habitual, que no es el que gmail va a filtrar cuando llegue a la bandeja de entrada.

Hoy me ha llegado con motivo de San Valentín un correo con ofertas de viajes que incluye la siguiente descripción en una de ellas:

– Alojamiento en Habitación Doble
– Desayuno Diario en la Habitación
– Kit de Juguetes Eróticos de «Toys & Love» preparado en la Habitación
– 1 Entrada Gratuita a nuestro «Aloe Spa»

Con razón en el asunto del mensaje aparecían las palabras relájate y disfruta. Lo que me preocupa realmente es si «preparado» significa que cuando llegas ya está allí el botones calentando motores.

Escuchando: Village People – Sex Over The Phone

Sin categoría

Schmap – Guía turística de Zaragoza

Me ha llegado hoy un mensaje a mi flickr pidiendo autorización para utilizar una de mis fotos de la Plaza del Pilar de Zaragoza en la nueva guía turística de Zaragoza de Schmap.

image

Es una tontería pero a uno le hace ilusión, oiga. Todavía no es seguro que la incluyan, ya que lo que he hecho es permitir que sea seleccionada para la fase final de selección.

Sin categoría