<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>El descanso del Guerrero</title>
	<atom:link href="http://www.atlantiscode.com/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.atlantiscode.com/blog</link>
	<description>Donde reposan las almas cansadas</description>
	<lastBuildDate>Fri, 18 Dec 2009 21:21:48 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Video Streaming para Android usando VLC</title>
		<link>http://www.atlantiscode.com/blog/video-streaming-para-android-usando-vlc/</link>
		<comments>http://www.atlantiscode.com/blog/video-streaming-para-android-usando-vlc/#comments</comments>
		<pubDate>Fri, 18 Dec 2009 14:50:45 +0000</pubDate>
		<dc:creator>Sonycrow</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Streaming]]></category>
		<category><![CDATA[Video]]></category>
		<category><![CDATA[vlc]]></category>

		<guid isPermaLink="false">http://www.atlantiscode.com/blog/?p=140</guid>
		<description><![CDATA[Buenas,
En esta entrada voy a intentar resumir los pasos y el proceso para poder hacer streaming del PC a vuestro dispositivo Android utilizando el VLC de Videolan.

Lo que vamos a hacer, es &#8220;recodificar&#8221; al vuelo el video original a un formato que sea capaz de reproducir el dispositivo. Para este proceso, usamos el VLC.
Destacar, que [...]]]></description>
			<content:encoded><![CDATA[<p>Buenas,</p>
<p>En esta entrada voy a intentar resumir los pasos y el proceso para poder hacer streaming del PC a vuestro dispositivo Android utilizando el VLC de Videolan.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/phGhLMK0azo&amp;hl=es_ES&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/phGhLMK0azo&amp;hl=es_ES&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>Lo que vamos a hacer, es &#8220;recodificar&#8221; al vuelo el video original a un formato que sea capaz de reproducir el dispositivo. Para este proceso, usamos el VLC.</p>
<p>Destacar, que el manual está centrado en el streaming local, osea conexión WIFI. Si quereis hacerlo lejos de casa y utilizar 3G, necesitaremos una buena conexión a internet con &#8220;upload&#8221; (subida) suficiente para poder hacer esto último, y abrir los puertos en caso de tener router.</p>
<blockquote><p><strong>Upload necesario para la opción 3G:</strong><br />
Calidad muy buena (500 kbps) = 90kBytes/s<br />
Calidad buena (400 kbps) = 70kBytes/s<br />
Calidad normal (300 kbps) = 40kBytes/s<br />
Calidad baja (200 kbps) = 25 kBytes/s</p></blockquote>
<p>Para empezar, los parametros finales para que android reproduzca los videos tienen que ser:</p>
<blockquote><p><strong>Parámetros de codificación necesarios:</strong><br />
Contenedor: MP4<br />
Codec video: x264<br />
Codec audio: ACC<br />
Protocolo: RTSP</p></blockquote>
<p>Bien, casi todos los dispositivos android soportan video en streaming bajo el protocolo RTSP de forma nativa, el problema es que no existe resproductor actualmente. Así que, para solucionar esto simplemente hay que abrir la dirección desde el navegador. Esto podemos hacerlo fácilmente creando en algún sitio una página con un enlace, puede ser vuestro blog, en vuestro facebook, etc&#8230; Solamente necesitamos acceder a este enlace de forma externa:</p>
<blockquote><p>rtsp://vuestra_direccion_ip:1234/stream.sdp</p></blockquote>
<p>Donde dice &#8220;vuestra_direccion_ip&#8221;, obviamente pondremos la IP del ordenador que esta sirviendo los videos, osea donde está el VLC (en caso de red local (WIFI), la ip de la red local y en caso de 3G la ip externa de la conexión ADSL/Cable, Etc&#8230;).</p>
<blockquote><p><strong>Algunos ejemplos red local:</strong><br />
<a href="rtsp://192.168.0.10:1234/stream.sdp">rtsp://192.168.0.10:1234/stream.sdp</a><br />
<a href="rtsp://192.168.1.10:1234/stream.sdp">rtsp://192.168.1.10:1234/stream.sdp</a><br />
<a href="rtsp://192.168.10.10:1234/stream.sdp">rtsp://192.168.10.10:1234/stream.sdp</a></p>
<p><strong>Algunos ejemplos internet (para 3G):</strong><br />
<a href="rtsp://89.123.23.10:1234/stream.sdp">rtsp://89.123.23.10:1234/stream.sdp</a><br />
<a href="rtsp://midominio.com:1234/stream.sdp">rtsp://midominio.com:1234/stream.sdp</a></p></blockquote>
<p>Una vez tenemos ese enlace creado, ya podemos irnos al ordenador donde está el VLC y comenzar con los temas serios. Abrimos el VLC y seguimos estos pasos:</p>
<blockquote><p>- Medio -&gt; Emisión<br />
- En la pestaña &#8220;Archivo&#8221; pulsamos &#8220;Add&#8221;<br />
- Seleccionamos el video que queramos<br />
- Pulsamos botón &#8220;Emisión&#8221;<br />
- Nos vamos a &#8220;Options&#8221; (último paso, ignorando el resto)<br />
- En el cuadro de &#8220;Output string&#8221;, eliminamos lo que haya dentro y pegamos el siguiente código (todo seguido sin retornos de carro:</p>
<blockquote><p>:sout=#transcode{soverlay, ab=64, samplerate=44100,channels=2, acodec=mp4a, vcodec=h264, width=480,height=320,fps=25,vb=400,venc=x264{vbv-bufsize=10000, partitions=all,level=12,no-cabac, subme=7, threads=4, ref=2,mixed-refs=1,bframes=0,min-keyint=1,keyint=50,trellis=2, direct=auto, qcomp=0.0, qpmax=51}}:gather:rtp{mp4a-latm, sdp=rtsp://0.0.0.0:1234/stream.sdp}</p></blockquote>
<p>- Le damos al botón &#8220;Emisión&#8221; y ya estará listo.</p></blockquote>
<p>Ahora, nuestro VLC esta emitiendo el video que seleccionamos. Para verlo en el dispositivo, utilizando el navegador nos vamos a la página donde hemos creado el enlace RTSP y hacemos click. Pasados unos segundos, veremos como comienza a reproducirse el video.</p>
<p>Para configuración o terminales que no tengan una pantalla de 480&#215;320, podeis ir tocando los valores del código de arriba para un mejor ajuste:</p>
<blockquote><p><strong>Calidad del audio:</strong> ab=64<br />
<strong>Frecuencia de muestreo: </strong>samplerate=44100<br />
<strong>Canales:</strong> channels=2  (2 para estereo, 1 para mono)<br />
<strong>Anchura del video:</strong> width=480<br />
<strong>Altura del video:</strong> height=320<br />
<strong>Fotogramas por segundo:</strong> fps=25<br />
<strong>Calidad de video (en kbps):</strong> vb=400</p></blockquote>
<p>En la próxima entrega, como crear listas de reproducción en VLC, como controlarlo remotamente para pausar, pasar video, reiniciar, etc&#8230; etc&#8230; etc&#8230; :)</p>
<p>Ale, a disfrutarlo :)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.atlantiscode.com/blog/video-streaming-para-android-usando-vlc/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Contra más FPS tienes, mejor juegas</title>
		<link>http://www.atlantiscode.com/blog/contra-mas-fps-tienes-mejor-juegas/</link>
		<comments>http://www.atlantiscode.com/blog/contra-mas-fps-tienes-mejor-juegas/#comments</comments>
		<pubDate>Fri, 27 Mar 2009 22:38:13 +0000</pubDate>
		<dc:creator>Sonycrow</dc:creator>
				<category><![CDATA[Juegos]]></category>
		<category><![CDATA[CoD4]]></category>

		<guid isPermaLink="false">http://www.atlantiscode.com/blog/?p=112</guid>
		<description><![CDATA[Y estas capturas lo demuestran.

Tengo sobre unos 120 fps y la verdad es que se nota (y mucho) a la hora de jugar. Antes no veia desde donde me disparaban y ahora distingo enemigos, no se me para cada vez que cae un bombardero, etc&#8230;
Ahora solo me falta arreglar el tema del ping :)
]]></description>
			<content:encoded><![CDATA[<p>Y estas capturas lo demuestran.</p>
<blockquote>
<a href='http://www.atlantiscode.com/blog/contra-mas-fps-tienes-mejor-juegas/shot0002/' title='shot0002'><img width="150" height="150" src="http://www.atlantiscode.com/blog/wp-content/uploads/2009/03/shot0002-150x150.jpg" class="attachment-thumbnail" alt="" title="shot0002" /></a>
<a href='http://www.atlantiscode.com/blog/contra-mas-fps-tienes-mejor-juegas/shot0000/' title='shot0000'><img width="150" height="150" src="http://www.atlantiscode.com/blog/wp-content/uploads/2009/03/shot0000-150x150.jpg" class="attachment-thumbnail" alt="" title="shot0000" /></a>
</blockquote>
<p>Tengo sobre unos 120 fps y la verdad es que se nota (y mucho) a la hora de jugar. Antes no veia desde donde me disparaban y ahora distingo enemigos, no se me para cada vez que cae un bombardero, etc&#8230;</p>
<p>Ahora solo me falta arreglar el tema del ping :)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.atlantiscode.com/blog/contra-mas-fps-tienes-mejor-juegas/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>El nuevo ordenador que me he montado</title>
		<link>http://www.atlantiscode.com/blog/el-nuevo-ordenador-que-me-he-montado/</link>
		<comments>http://www.atlantiscode.com/blog/el-nuevo-ordenador-que-me-he-montado/#comments</comments>
		<pubDate>Fri, 27 Mar 2009 22:30:23 +0000</pubDate>
		<dc:creator>Sonycrow</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://www.atlantiscode.com/blog/?p=104</guid>
		<description><![CDATA[Muy buenas, os traigo mi último y nuevo montaje.
Se trata del ya conocido por todos HTPC, transformado en un &#8220;Gamer PC&#8221;. Como el HTPC no lo usaba para nada, he dedido aprovechar el hardware antes de que caduque para poder disfrutar de los juegazos que hay actualmente para la plataforma PC-CDROM.
DualCore Intel Core 2 Duo [...]]]></description>
			<content:encoded><![CDATA[<p>Muy buenas, os traigo mi último y nuevo montaje.<br />
Se trata del ya conocido por todos HTPC, transformado en un &#8220;Gamer PC&#8221;. Como el HTPC no lo usaba para nada, he dedido aprovechar el hardware antes de que caduque para poder disfrutar de los juegazos que hay actualmente para la plataforma PC-CDROM.</p>
<blockquote><p>DualCore Intel Core 2 Duo E6750 G0, 2666 MHz (8 x 333)<br />
Asus P5E-VM HDMI<br />
2048 MB (DDR2-800 DDR2 SDRAM)<br />
ASUS EN9800GTX+ Dark Night (512 MB)<br />
Realtek ALC883 @ Intel 82801IB ICH9 &#8211; High Definition Audio<br />
SEAGATE 500 GB, 7200 RPM, SATA-II<br />
Atheros L1 Gigabit Ethernet 10/100/1000Base-T<br />
EPSON Stylus DX4400 Series (Cartuchos recargables)</p></blockquote>
<p>Y aquí unas cuantas fotitos del montaje final.</p>
<blockquote>
<a href='http://www.atlantiscode.com/blog/el-nuevo-ordenador-que-me-he-montado/dscn0661/' title='dscn0661'><img width="150" height="150" src="http://www.atlantiscode.com/blog/wp-content/uploads/2009/03/dscn0661-150x150.jpg" class="attachment-thumbnail" alt="" title="dscn0661" /></a>
<a href='http://www.atlantiscode.com/blog/el-nuevo-ordenador-que-me-he-montado/dscn0659/' title='dscn0659'><img width="150" height="150" src="http://www.atlantiscode.com/blog/wp-content/uploads/2009/03/dscn0659-150x150.jpg" class="attachment-thumbnail" alt="" title="dscn0659" /></a>
<a href='http://www.atlantiscode.com/blog/el-nuevo-ordenador-que-me-he-montado/dscn0660/' title='dscn0660'><img width="150" height="150" src="http://www.atlantiscode.com/blog/wp-content/uploads/2009/03/dscn0660-150x150.jpg" class="attachment-thumbnail" alt="" title="dscn0660" /></a>
</blockquote>
<p>Me falta otro ventilador de 12cm en la parte trasera para crear una corriente aire dentro de la caja. Esta semana que viene lo pediré :)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.atlantiscode.com/blog/el-nuevo-ordenador-que-me-he-montado/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>El chorreo es del Liverpool</title>
		<link>http://www.atlantiscode.com/blog/el-chorreo-es-del-liverpool/</link>
		<comments>http://www.atlantiscode.com/blog/el-chorreo-es-del-liverpool/#comments</comments>
		<pubDate>Wed, 11 Mar 2009 14:06:50 +0000</pubDate>
		<dc:creator>Sonycrow</dc:creator>
				<category><![CDATA[Futbol]]></category>

		<guid isPermaLink="false">http://www.atlantiscode.com/blog/el-chorreo-es-del-liverpool/</guid>
		<description><![CDATA[Después de las declaraciones del presidente del Real Madrid Vicente Boluda balambambú
Aquí ganamos 3-0. Allí se van a abrir y les vamos a chorrear.
resultó ser al revés. En el total de la eliminatoria una manita a los blancos (5-0) y siguen sin pasar de octavos en la Champions. A, se me olvidaba, la esperada &#8220;décima&#8221; [...]]]></description>
			<content:encoded><![CDATA[<p>Después de las declaraciones del presidente del Real Madrid Vicente Boluda <strike>balambambú</strike></p>
<blockquote><p>Aquí ganamos 3-0. Allí se van a abrir y les vamos a chorrear.</p></blockquote>
<p>resultó ser al revés. En el total de la eliminatoria una manita a los blancos (5-0) y siguen sin pasar de octavos en la Champions. A, se me olvidaba, la esperada &#8220;décima&#8221; tendrá que seguir esperando&#8230;</p>
<p><img src="http://i43.tinypic.com/ofbpkg.gif" width="288" height="202" /></p>
<p><br style="clear: both;"></p>
]]></content:encoded>
			<wfw:commentRss>http://www.atlantiscode.com/blog/el-chorreo-es-del-liverpool/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Plantillas para crear carátulas de DVD</title>
		<link>http://www.atlantiscode.com/blog/plantillas-para-crear-caratulas-de-dvd/</link>
		<comments>http://www.atlantiscode.com/blog/plantillas-para-crear-caratulas-de-dvd/#comments</comments>
		<pubDate>Wed, 21 Jan 2009 11:26:55 +0000</pubDate>
		<dc:creator>Sonycrow</dc:creator>
				<category><![CDATA[Carátula]]></category>
		<category><![CDATA[Cover]]></category>
		<category><![CDATA[Diseño]]></category>
		<category><![CDATA[Galleta]]></category>

		<guid isPermaLink="false">http://www.atlantiscode.com/blog/plantillas-para-crear-caratulas-de-dvd/</guid>
		<description><![CDATA[Muy buenas.
Aquí os traigo una plantilla para que podáis crear las carátulas de vuestros DVD favoritos. Contiene todos los tamaños de cajas más comunes, como la normal, la slim, la galleta, etc..
Os las pongo en dos formatos: PDF y JPG para más comodidad.
 
Plantillas DVD en formato JPG
Plantillas DVD en formato PDF
Espero que os sirva, ale&#8230;
]]></description>
			<content:encoded><![CDATA[<p>Muy buenas.</p>
<p>Aquí os traigo una plantilla para que podáis crear las carátulas de vuestros DVD favoritos. Contiene todos los tamaños de cajas más comunes, como la normal, la slim, la galleta, etc..</p>
<p>Os las pongo en dos formatos: PDF y JPG para más comodidad.</p>
<blockquote><p> <a href="http://www.atlantiscode.com/blog/wp-content/uploads/2009/01/plantillas-dvd_thumb.jpg" title="plantillas-dvd_thumb.jpg"><img src="http://www.atlantiscode.com/blog/wp-content/uploads/2009/01/plantillas-dvd_thumb.jpg" alt="plantillas-dvd_thumb.jpg" /></a></p></blockquote>
<p><a href="http://www.atlantiscode.com/blog/wp-content/uploads/2009/01/plantillas-dvd.jpg" target="_blank">Plantillas DVD en formato JPG</a><br />
<a href="http://www.atlantiscode.com/blog/wp-content/uploads/2009/01/plantillas-dvd.pdf" target="_blank">Plantillas DVD en formato PDF</a></p>
<p>Espero que os sirva, ale&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.atlantiscode.com/blog/plantillas-para-crear-caratulas-de-dvd/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Script para renombrar ficheros (PHP)</title>
		<link>http://www.atlantiscode.com/blog/script-para-renombrar-ficheros-php/</link>
		<comments>http://www.atlantiscode.com/blog/script-para-renombrar-ficheros-php/#comments</comments>
		<pubDate>Tue, 11 Nov 2008 18:02:37 +0000</pubDate>
		<dc:creator>Sonycrow</dc:creator>
				<category><![CDATA[Código]]></category>
		<category><![CDATA[Ejemplo]]></category>
		<category><![CDATA[Php]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[Scripts]]></category>

		<guid isPermaLink="false">http://www.atlantiscode.com/blog/script-para-renombrar-ficheros-php/</guid>
		<description><![CDATA[Pues bueno, yo bajo bastante anime, series, etc&#8230; y no me gusta tener nombres asquerosos en los ficheros. Debido a esto he tenido que idear un scriptillo para renombrar ficheros en PHP.
Se basa en una expresión regular para encontrar el número del capítulo en cuestión, y a partir de ahí generar un nombre nuevo, limpio [...]]]></description>
			<content:encoded><![CDATA[<p>Pues bueno, yo bajo bastante anime, series, etc&#8230; y no me gusta tener nombres asquerosos en los ficheros. Debido a esto he tenido que idear un scriptillo para renombrar ficheros en PHP.</p>
<p>Se basa en una expresión regular para encontrar el número del capítulo en cuestión, y a partir de ahí generar un nombre nuevo, limpio y bonito :)</p>
<p>En este ejemplo, se han usado las dos temporadas de Code Geass, donde los ficheros se llamaban &#8220;Code_Geass_.1.by_anime_(x-264).mp4&#8243; (vamos, feo de narices) xD</p>
<p><span id="more-93"></span></p>
<blockquote><p>&lt;?php<br />
header(&#8220;Content-type: text/plain&#8221;);</p>
<p>/**<br />
* Parametros a definir:<br />
*<br />
* $dir       (Ruta de los ficheros)<br />
* $ereg      (Expresion regular para obtener el número del capítulo del nombre del archivo original)<br />
* $finalname (Nombre del archivo final, donde %EREG#X% es el resultado de la expresion regular)<br />
* $extension (Extension de los archivos a renombrar)<br />
* $numzeros  (Número de ceros a la izquierda para el número de capítulo (003 = 2))<br />
* $rename    (Si realmente queremos renombrarlos o solo hacer una simulacion)<br />
* $extra     (Array con por ejemplo los titulos de los capitulos para incluir con %EXTRA%)<br />
**/</p>
<p># Init<br />
$dir       = &#8220;/media/Almacen/Movies/Code Geass Lelouch of the Rebellion/&#8221;;<br />
$ereg      = &#8220;(R2)*\.([0-9]*)&#8221;; // (Ejemplo: nombre_del_capitulo_13.avi)<br />
$finalname = &#8220;Code Geass %EREG#1% %EREG#2% &#8211; %EXTRA%&#8221;;<br />
$extension = &#8220;mp4&#8243;;<br />
$numzeros  = 1;<br />
$rename    = false;<br />
$extra     =<br />
array(<br />
&#8220;El dia en que el diablo nacio&#8221;, &#8220;El despertar del caballero blanco&#8221;, &#8220;El falso compañero de clase&#8221;,<br />
&#8220;Mi nombre es Zero&#8221;, &#8220;La princesa y la bruja&#8221;, &#8220;La mascara robada&#8221;, &#8220;El ataque a cornelia&#8221;,<br />
&#8220;La orden de los caballeros negros&#8221;, &#8220;Refrain&#8221;, &#8220;La danza de Guren&#8221;, &#8220;La batalla de Narita&#8221;,<br />
&#8220;El mesaje de Kyoto&#8221;, &#8220;Shirley y el peligro inminente&#8221;, &#8220;Geass vs Geass&#8221;, &#8220;Los aplausos de Mao&#8221;,<br />
&#8220;Nanally capturada&#8221;, &#8220;Caballero&#8221;, &#8220;Una orden para Kururugi Suzaku&#8221;, &#8220;La isla de Dios&#8221;,<br />
&#8220;Guerra en Kyuushuu&#8221;, &#8220;El anuncio del festival escolar&#8221;, &#8220;Euphie manchada de sangre&#8221;,<br />
&#8220;Al menos con pena&#8221;, &#8220;La frase del colapso&#8221;, &#8220;Zero&#8221;,<br />
&#8220;El dia que el demonio desperto&#8221;, &#8220;El plan para liberar Japon&#8221;, &#8220;La prision en la academia&#8221;,<br />
&#8220;El contraataque del patibulo&#8221;, &#8220;Caballero de la Mesa Redonda&#8221;, &#8220;Ataque sorpresa en el Oceano Pacifico&#8221;,<br />
&#8220;La mascara abandonada&#8221;, &#8220;El milagro de millones&#8221;, &#8220;La novia del Zhu Jin Cheng&#8221;,<br />
&#8220;Cuando el Shen Hum resplandece&#8221;, &#8220;El poder de los sentimientos&#8221;, &#8220;Ataque de amor&#8221;,<br />
&#8220;Un asesino del pasado&#8221;, &#8220;La caceria de Geass&#8221;, &#8220;El mundo de C&#8221;,<br />
&#8220;La primera revolucion de la Unidad de Naciones&#8221;, &#8220;El sabor de la tierra&#8221;,<br />
&#8220;La segunda batalla decisiva de Tokio&#8221;, &#8220;Traicion&#8221;, &#8220;Inadecuado para ser emperador&#8221;,<br />
&#8220;La conexion Ragnarok&#8221;, &#8220;El emperador Lelouch&#8221;, &#8220;La mascara de Schneizel&#8221;,<br />
&#8220;Sky of Damocles&#8221;, &#8220;Re&#8221;<br />
);</p>
<p># Comienza el renombrado<br />
if ($gestor = opendir($dir))<br />
{<br />
# Obtenemos los ficheros y los metemos en un array<br />
while (false !== ($archivo = readdir($gestor)))<br />
{<br />
$allfiles[] = $archivo;<br />
}</p>
<p>closedir($gestor);<br />
}</p>
<p># Init de contador de ficheros<br />
$numFiles = 0;</p>
<p># Ordenamos el array de forma natural<br />
natsort($allfiles);</p>
<p># Recorremos los ficheros<br />
foreach ($allfiles as $archivo)<br />
{<br />
if ($archivo != &#8220;.&#8221; &amp;&amp; $archivo != &#8220;..&#8221; &amp;&amp; $archivo != &#8220;renamer.php&#8221;)<br />
{<br />
# Init<br />
$farchivo = null;</p>
<p># Obtenemos la extension<br />
$ext = strtolower(substr($archivo, strrpos($archivo, &#8220;.&#8221;)));</p>
<p>if ($extension &amp;&amp; substr($ext, 1) != $extension) continue;</p>
<p># Obtenemos la Expresion regular<br />
if (eregi($ereg, $archivo, $regs))<br />
{<br />
$farchivo = $finalname;</p>
<p># Obtenemos el nombre del fichero a cambiar<br />
for ($i = 1; $i &lt; count($regs); $i++)<br />
{<br />
if ($regs[$i])<br />
{<br />
if (is_numeric($regs[$i])) {<br />
$remplace = str_pad($regs[$i], $numzeros + 1, &#8220;0&#8243;, STR_PAD_LEFT);<br />
}<br />
else {<br />
$remplace = $regs[$i];<br />
}</p>
<p>$farchivo = str_replace(&#8220;%EREG#{$i}%&#8221;, $remplace, $farchivo);<br />
}<br />
}</p>
<p># Remplazamos el extra<br />
if (count($extra) &amp;&amp; $extra[$numFiles])<br />
{<br />
$farchivo = str_replace(&#8220;%EXTRA%&#8221;, $extra[$numFiles], $farchivo);<br />
}<br />
else<br />
{<br />
$farchivo = str_replace(&#8220;%EXTRA%&#8221;, &#8220;&#8221;, $farchivo);<br />
}</p>
<p># Eliminamos los %EREG#x% que quedan<br />
$farchivo = preg_replace(&#8220;/%EREG#[0-9]*%/i&#8221;, &#8220;&#8221;, $farchivo);</p>
<p># Eliminamos dobles espacios<br />
$farchivo = preg_replace(&#8220;/[ ]{2,99}/i&#8221;, &#8221; &#8220;, $farchivo);</p>
<p># Añadimos la extension<br />
$farchivo .= $ext;</p>
<p># Salida<br />
if ($farchivo)<br />
{<br />
echo &#8220;&gt;&gt; \&#8221;{$archivo}\&#8221; &lt;&lt;##&gt;&gt; \&#8221;{$farchivo}\&#8221;\n&#8221;;</p>
<p>if ($rename)<br />
{<br />
rename(&#8220;{$dir}{$archivo}&#8221;, &#8220;{$dir}{$farchivo}&#8221;);<br />
}<br />
}<br />
else<br />
{<br />
echo &#8220;** No se pudo cambiar el nombre de {$archivo}\n&#8221;;<br />
}</p>
<p>$numFiles++;<br />
}<br />
}<br />
}</p>
<p>?&gt;</p></blockquote>
<p>Espero que os sirva.</p>
<p>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.atlantiscode.com/blog/script-para-renombrar-ficheros-php/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Covers &#8211; Carátulas &#8211; Galletas para maletín / estuche</title>
		<link>http://www.atlantiscode.com/blog/cover-caratulas-galletas-para-maletin-estuche/</link>
		<comments>http://www.atlantiscode.com/blog/cover-caratulas-galletas-para-maletin-estuche/#comments</comments>
		<pubDate>Mon, 10 Nov 2008 15:11:21 +0000</pubDate>
		<dc:creator>Sonycrow</dc:creator>
				<category><![CDATA[Carátula]]></category>
		<category><![CDATA[Cover]]></category>
		<category><![CDATA[Galleta]]></category>
		<category><![CDATA[Wii]]></category>

		<guid isPermaLink="false">http://www.atlantiscode.com/blog/cover-galletas-para-maletin/</guid>
		<description><![CDATA[¿Quien no tiene maletines/estuches llenos de DVD&#8217;s para los juegos de nuestra consola o películas? Pues bien, aquí mi nueva idea para evitar abrir el nuestro (llenito llenito de DVD&#8217;s de distintas marcas) y simplemente aparece el título a rotulador (siempre de distintos colores).
Por el momento, tengo unas pocas de mis juegos de Wii. Quizá [...]]]></description>
			<content:encoded><![CDATA[<p>¿Quien no tiene maletines/estuches llenos de DVD&#8217;s para los juegos de nuestra consola o películas? Pues bien, aquí mi nueva idea para evitar abrir el nuestro (llenito llenito de DVD&#8217;s de distintas marcas) y simplemente aparece el título a rotulador (siempre de distintos colores).</p>
<p>Por el momento, tengo unas pocas de mis juegos de Wii. Quizá me ponga a hacerlo también para las películas, ya veremos :)</p>
<blockquote><p><strong>Super Smash Bros Brawl</strong><br />
<a href="http://www.atlantiscode.com/blog/wp-content/uploads/2008/11/super-smash-bros-brawl.jpg" title="Super Smash Bros Brawl"><img src="http://www.atlantiscode.com/blog/wp-content/uploads/2008/11/super-smash-bros-brawl.thumbnail.jpg" alt="Super Smash Bros Brawl" /></a></p></blockquote>
<blockquote><p><strong>The Legend of Zelda Twilight Princess</strong><br />
<a href="http://www.atlantiscode.com/blog/wp-content/uploads/2008/11/the-legend-of-zelda-twilight-princess.jpg" title="The Legend of Zelda Twilight Princess"><img src="http://www.atlantiscode.com/blog/wp-content/uploads/2008/11/the-legend-of-zelda-twilight-princess.thumbnail.jpg" alt="The Legend of Zelda Twilight Princess" /></a></p></blockquote>
<blockquote><p><strong>Mario Kart</strong><br />
<a href="http://www.atlantiscode.com/blog/wp-content/uploads/2008/11/mario-kart.jpg" title="Mario Kart"><img src="http://www.atlantiscode.com/blog/wp-content/uploads/2008/11/mario-kart.thumbnail.jpg" alt="Mario Kart" /></a></p></blockquote>
<blockquote><p><strong>Littlest Pet Shop</strong><br />
<a href="http://www.atlantiscode.com/blog/wp-content/uploads/2008/11/littlest-pet-shop.jpg" title="Littlest Pet Shop"><img src="http://www.atlantiscode.com/blog/wp-content/uploads/2008/11/littlest-pet-shop.thumbnail.jpg" alt="Littlest Pet Shop" /></a></p></blockquote>
<p>Espero que le gusten a alguien. A mi los maletines con todas las portadas de los juegos me quedan cojonudos :)</p>
<p>Ale!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.atlantiscode.com/blog/cover-caratulas-galletas-para-maletin-estuche/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Un día de lluvia, disfrutemoslo</title>
		<link>http://www.atlantiscode.com/blog/un-dia-de-lluvia-disfrutemoslo/</link>
		<comments>http://www.atlantiscode.com/blog/un-dia-de-lluvia-disfrutemoslo/#comments</comments>
		<pubDate>Tue, 28 Oct 2008 08:46:04 +0000</pubDate>
		<dc:creator>Sonycrow</dc:creator>
				<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://www.atlantiscode.com/blog/un-dia-de-lluvia-disfrutemoslo/</guid>
		<description><![CDATA[Si llueve a mares, en vez de ponernos a llorar por la crisis y el mal tiempo&#8230; ¿mejor disfrutemos no?


Chao!
]]></description>
			<content:encoded><![CDATA[<p>Si llueve a mares, en vez de ponernos a llorar por la crisis y el mal tiempo&#8230; ¿mejor disfrutemos no?</p>
<blockquote><p><a href="/blog/wp-content/uploads/dscn0483.jpg" title="dscn0483.jpg - 1.20 Mb"><img src="/blog/wp-content/uploads/.thumbs/.dscn0483.jpg" alt="dscn0483.jpg - 1.20 Mb" /></a></p>
<p><a href="/blog/wp-content/uploads/dscn0484.jpg" title="dscn0484.jpg - 1.21 Mb"><img src="/blog/wp-content/uploads/.thumbs/.dscn0484.jpg" alt="dscn0484.jpg - 1.21 Mb" /></a></p></blockquote>
<p>Chao!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.atlantiscode.com/blog/un-dia-de-lluvia-disfrutemoslo/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Mis primeras Killmarks del AirRivals</title>
		<link>http://www.atlantiscode.com/blog/mis-primeras-killmarks-del-airrivals/</link>
		<comments>http://www.atlantiscode.com/blog/mis-primeras-killmarks-del-airrivals/#comments</comments>
		<pubDate>Mon, 20 Oct 2008 00:01:28 +0000</pubDate>
		<dc:creator>Sonycrow</dc:creator>
				<category><![CDATA[AirRivals]]></category>
		<category><![CDATA[Juegos]]></category>
		<category><![CDATA[Mmorpg]]></category>

		<guid isPermaLink="false">http://www.atlantiscode.com/blog/mis-primeras-killmarks-del-airrivals/</guid>
		<description><![CDATA[Bueno, aquí estamos otra vez.
Os presento mis primeras Killmarks, un level 42-51 y un level 82-91 (esta última más bien es potra) pero ahí esta :)
  Para conseguir esta estuve un buen rato dandole caña hasta que al final hizo BoOOom!! Para la segunda, más bien fue potra de la buena (habian como 10 naves [...]]]></description>
			<content:encoded><![CDATA[<p>Bueno, aquí estamos otra vez.</p>
<p>Os presento mis primeras Killmarks, un level 42-51 y un level 82-91 (esta última más bien es potra) pero ahí esta :)</p>
<blockquote><p><a href="http://www.atlantiscode.com/blog/wp-content/uploads/2008/10/atm00001.JPG" title="atm00001.JPG"><img src="http://www.atlantiscode.com/blog/wp-content/uploads/2008/10/atm00001.thumbnail.JPG" alt="atm00001.JPG" /></a>  <a href="http://www.atlantiscode.com/blog/wp-content/uploads/2008/10/atm00003.JPG" title="atm00003.JPG"><img src="http://www.atlantiscode.com/blog/wp-content/uploads/2008/10/atm00003.thumbnail.JPG" alt="atm00003.JPG" /></a>Para conseguir esta estuve un buen rato dandole caña hasta que al final hizo BoOOom!! Para la segunda, más bien fue potra de la buena (habian como 10 naves más disparando), pero bueno al final me la lleve yo por darle digamos, el toque de gracia xD</p></blockquote>
<p>Para el que no lo sepa, una Killmark es cuando vas a las zonas neutrales o enemigas del universo AirRivals y te encuentras con tu facción enemiga. Por consiguiente, una lucha comienza y cuando matas a un rival obtienes una Killmark según su nivel. Algo así como una medalla y puedes guardarlas para el recuerdo o puedes usarlas para obtener experiencia.</p>
<p>Eso es todo por hoy, otro día más :)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.atlantiscode.com/blog/mis-primeras-killmarks-del-airrivals/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>AirRivals &#8211; Mi primera batalla entre naciones</title>
		<link>http://www.atlantiscode.com/blog/airrivals-mi-primera-batalla-entre-naciones/</link>
		<comments>http://www.atlantiscode.com/blog/airrivals-mi-primera-batalla-entre-naciones/#comments</comments>
		<pubDate>Wed, 15 Oct 2008 00:10:12 +0000</pubDate>
		<dc:creator>Sonycrow</dc:creator>
				<category><![CDATA[AirRivals]]></category>
		<category><![CDATA[Juegos]]></category>
		<category><![CDATA[Mmorpg]]></category>

		<guid isPermaLink="false">http://www.atlantiscode.com/blog/airrivals-mi-primera-batalla-entre-naciones/</guid>
		<description><![CDATA[Pues mi primera experiencia en la guerra de naciones del AirRivals no ha podido ir mejor. Con un total de 200 &#8220;war points&#8221; conseguidos me estreno en las Wars.



Al principio no tenia ni idea de que pasaba&#8230; solamente ha salido un mensaje en la pantalla que una nave nodriza de los &#8220;ANI&#8221; (Anti-nacionalistas) habia invadido [...]]]></description>
			<content:encoded><![CDATA[<p>Pues mi primera experiencia en la guerra de naciones del <a href="http://www.airrivals.net" target="_blank">AirRivals</a> no ha podido ir mejor. Con un total de 200 &#8220;war points&#8221; conseguidos me estreno en las Wars.</p>
<blockquote><p><a href="http://www.atlantiscode.com/blog/wp-content/uploads/2008/10/atm00002.JPG" title="atm00002.JPG"><img src="http://www.atlantiscode.com/blog/wp-content/uploads/2008/10/atm00002.thumbnail.JPG" alt="atm00002.JPG" /></a></p>
<p><a href="http://www.atlantiscode.com/blog/wp-content/uploads/2008/10/atm00003.JPG" title="atm00003.JPG"><img src="http://www.atlantiscode.com/blog/wp-content/uploads/2008/10/atm00003.thumbnail.JPG" alt="atm00003.JPG" /></a></p>
<p><a href="http://www.atlantiscode.com/blog/wp-content/uploads/2008/10/atm00005.JPG" title="atm00005.JPG"><img src="http://www.atlantiscode.com/blog/wp-content/uploads/2008/10/atm00005.thumbnail.JPG" alt="atm00005.JPG" /></a></p>
<p><a href="http://www.atlantiscode.com/blog/wp-content/uploads/2008/10/atm00009.JPG" title="atm00009.JPG"><img src="http://www.atlantiscode.com/blog/wp-content/uploads/2008/10/atm00009.thumbnail.JPG" alt="atm00009.JPG" /></a>Al principio no tenia ni idea de que pasaba&#8230; solamente ha salido un mensaje en la pantalla que una nave nodriza de los &#8220;ANI&#8221; (Anti-nacionalistas) habia invadido &#8220;Tylent Jungle&#8221;. Así que hemos ido hacia allá a ver que pasaba, y cual a sido mi sorpresa al encontrarme coneste pedazo porta-aviones.</p></blockquote>
<blockquote><p><a href="http://www.atlantiscode.com/blog/wp-content/uploads/2008/10/atm00011.JPG" title="atm00011.JPG"><img src="http://www.atlantiscode.com/blog/wp-content/uploads/2008/10/atm00011.thumbnail.JPG" alt="atm00011.JPG" /></a>Casi nada, pero algo falla&#8230; no hay enemigos y &#8220;Anubis&#8221; (nombre en clave de la nave nodriza) no recibe daño alguno. Así que decido ir al portal del mapa y leches, me encuentro a todos nuestros tanques  (jugadores) apostados en la entrada/salida cubriendo la invasión.</p></blockquote>
<blockquote><p><a href="http://www.atlantiscode.com/blog/wp-content/uploads/2008/10/atm00012.JPG" title="atm00012.JPG"><img src="http://www.atlantiscode.com/blog/wp-content/uploads/2008/10/atm00012.thumbnail.JPG" alt="atm00012.JPG" /></a>Pero no hemos podido pararla, Anubis se &#8220;activo o algo así&#8221; y comenzaron a salir los &#8220;ANI&#8221;s hasta que entre una nube de misiles y disparos conseguimos neutralizar el ataque.</p></blockquote>
<p>Una experiencia muy muy buena. En algunos momentos se paraba debido a la cantidad de naves, disparos, etc&#8230; que habia en pantalla pero han sido muy puntuales.</p>
<p>Resumiendo, me han derribado 1 vez y he estado repartido leña a troche y moche, con lo que en total he conseguido 200 &#8220;war points&#8221;.</p>
<p>¿Si pienso repetir? Desde luego, que no te quepa duda :)</p>
<p>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.atlantiscode.com/blog/airrivals-mi-primera-batalla-entre-naciones/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
