vozMeHoy estoy productivo, y aunque todo sea dicho, la funcion de hoy no es especialmente difí­cil debido a lo accesible de la web que brinda el servicio, creo que esta función es de las mas útiles desde el punto de vista de la accesibilidad web que he visto en mi vida. La función claramente esta orientada a invidentes, personas con problemas de visión o gente vaga, muy vaga, que no tiene ganas de leer anda. Se trata de una función a partir de la cual se genera un mp3 con el texto leí­do imitando el lenguaje natural. Se puede traducir el texto que queramos para descargar el archivo o reproducirlo en nuestra propia web, o incluso generar un podcast continuo de nuestros post de nuestro blog.

La función voz(), es muy fácil de utilizar. Solo tenemos que poner el texto que queramos y YA! genera un mp3 con el archivo de audio, sin mas! a demas tenemos la opción de cambiar el idioma de Español (es) a Ingles (en).

PHP:
  1. function voz($texto, $lang = "es"){
  2.     $url = "http://vozme.com/text2voice.php";
  3.     $md5 = md5($texto);
  4.     $ch = curl_init();
  5.     curl_setopt($ch, CURLOPT_URL, $url);
  6.     curl_setopt($ch, CURLOPT_VERBOSE, 1);
  7.     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  8.     curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
  9.     curl_setopt($ch, CURLOPT_POST, 1);
  10.     curl_setopt($ch, CURLOPT_POSTFIELDS, "text=".$texto."&lang=".$lang."&md5=".$md5);
  11.  
  12.     $s = curl_exec ($ch);//Ojo, hay un espacio en exec
  13.     curl_close($ch);
  14.  
  15.     $exp_info = '!http(.+)'.$md5.'(.+)mp3!U';
  16.     preg_match_all($exp_info, $s, $original);
  17.  
  18.     if(count($original)>0){
  19.         return $original[0][0];
  20.     } else {
  21.         return $s;
  22.     }
  23. }

Ejemplo de uso:

PHP:
  1. print_r(voz("Es intentando lo imposible, como se consigue lo posible. Henry Barbusse"));

Para los que prefieran utilizar los servicios directos de la web decir que también hay unas muy buenas funciones en javascript que os permitirán en cuestión de segundos poner voz a vuestras webs sin retocar una linea de código. Como por ejemplo el botón de selección y lectura o el de lectura a partir del ID del texto.

Actualización: Al parecer los chicos de vozMe cambiaron la url de destino de los mp3 haciendo imposible que funcione la funcion voz() asi que he corregido el error pasadon la funcion a la version 1.1. La correccion solo influye al metodo interno de tratar la informacion asiq ue no hay problema en seguirla usando como antes.
Ante cualquier error no dudeis en avisarme. Que la disfruteis.