<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Carlos de Huerta</title>
    <description>The latest articles on DEV Community by Carlos de Huerta (@carloshm).</description>
    <link>https://dev.to/carloshm</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F383285%2F553b7228-a5bb-4681-b9dc-c677e519e859.jpg</url>
      <title>DEV Community: Carlos de Huerta</title>
      <link>https://dev.to/carloshm</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/carloshm"/>
    <language>en</language>
    <item>
      <title>PowerPoint, Teleprompter y Fluid Framework</title>
      <dc:creator>Carlos de Huerta</dc:creator>
      <pubDate>Sun, 24 May 2020 15:02:09 +0000</pubDate>
      <link>https://dev.to/carloshm/powerpoint-teleprompter-y-fluid-framework-j1a</link>
      <guid>https://dev.to/carloshm/powerpoint-teleprompter-y-fluid-framework-j1a</guid>
      <description>&lt;p&gt;Siguiendo con ideas entorno a presentaciones y videos, hoy me comentaban si sería posible tener un teleprompter mientras se graba la presentación desde PowerPoint.&lt;/p&gt;

&lt;p&gt;Este modo de grabación, almacena un vídeo en cada diapositiva. Yo normalmente hago la grabación con Teams, Stream y OBS; y revisando este modo de grabación puedes ver que destaca precisamente por no mostrar bien las notas. Tenéis &lt;a href="https://support.office.com/es-es/article/v%c3%addeo-grabar-presentaciones-2570dff5-f81c-40bc-b404-e04e95ffab33?ui=es-ES&amp;amp;rs=es-ES&amp;amp;ad=ES"&gt;un video&lt;/a&gt; de la funcionalidad.&lt;br&gt;
¿Qué necesitaríamos para ponerlo en marcha?&lt;/p&gt;
&lt;h2&gt;
  
  
  Notas guiadas
&lt;/h2&gt;

&lt;p&gt;Lo primero es poder tener un &lt;a href="https://en.wikipedia.org/wiki/Teleprompter"&gt;Teleprompter&lt;/a&gt;. Para ello recordé que tenía una pantalla táctil de 7 pulgadas (rota :( ). Para prototipar rápidamente la solución, preferí conectarla a Windows 10 (vs Raspberypi) con objetivo de tenerla de pantalla auxiliar...teniendo el primer problema: el táctil estaba constantemente activado. &lt;br&gt;
¿Qué hacer? &lt;a href="https://support.microsoft.com/en-us/help/4028019/windows-enable-and-disable-your-touchscreen-in-windows-10"&gt;desactivarlo&lt;/a&gt; :) &lt;br&gt;
El siguiente paso es que pueda.. ¡sostenerse!. La impresión 3d es un ejemplo fantástico para prototipar soluciones, pero personalmente antes de imprimir, prefiero jugar con cartón. Con él se pueden conseguir cosas realmente interesante como Google cardboard VR o :) &lt;/p&gt;
&lt;blockquote class="ltag__twitter-tweet"&gt;
      &lt;div class="ltag__twitter-tweet__media ltag__twitter-tweet__media__video-wrapper"&gt;
        &lt;div class="ltag__twitter-tweet__media--video-preview"&gt;
          &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--91Q8rlJG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://pbs.twimg.com/ext_tw_video_thumb/1138084559982157824/pu/img/xwhWCVSHE2BRCrvX.jpg" alt="unknown tweet media content"&gt;
          &lt;img src="/assets/play-butt.svg" class="ltag__twitter-tweet__play-butt" alt="Play butt"&gt;
        &lt;/div&gt;
        &lt;div class="ltag__twitter-tweet__video"&gt;
          
            
          
        &lt;/div&gt;
      &lt;/div&gt;

  &lt;div class="ltag__twitter-tweet__main"&gt;
    &lt;div class="ltag__twitter-tweet__header"&gt;
      &lt;img class="ltag__twitter-tweet__profile-image" src="https://res.cloudinary.com/practicaldev/image/fetch/s--5X6raMVP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://pbs.twimg.com/profile_images/674203008515891200/M2PQJsbi_normal.jpg" alt="Carlos de Huerta profile image"&gt;
      &lt;div class="ltag__twitter-tweet__full-name"&gt;
        Carlos de Huerta
      &lt;/div&gt;
      &lt;div class="ltag__twitter-tweet__username"&gt;
        @carl0shm
      &lt;/div&gt;
      &lt;div class="ltag__twitter-tweet__twitter-logo"&gt;
        &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--52oNvK_0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/twitter-ff4bdab814039c4cb172a35ea369e0ea9c6a4b59b631a293896ae195fa26a99d.svg" alt="twitter logo"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
    &lt;div class="ltag__twitter-tweet__body"&gt;
      I felt in love with &lt;a href="https://twitter.com/hashtag/pinball3000"&gt;#pinball3000&lt;/a&gt; from &lt;a href="https://twitter.com/cardboardteck"&gt;@cardboardteck&lt;/a&gt;, however I was not able to get it affordably (intl. shipping)... So built a clone and plan to integrate with &lt;a href="https://twitter.com/hashtag/microbit"&gt;#microbit&lt;/a&gt; releasing a &lt;a href="https://twitter.com/hashtag/OSH"&gt;#OSH&lt;/a&gt; &lt;a href="https://twitter.com/hashtag/MVP"&gt;#MVP&lt;/a&gt; what do you think? 
    &lt;/div&gt;
    &lt;div class="ltag__twitter-tweet__date"&gt;
      14:04 PM - 10 Jun 2019
    &lt;/div&gt;


    &lt;div class="ltag__twitter-tweet__actions"&gt;
      &lt;a href="https://twitter.com/intent/tweet?in_reply_to=1138084608174485504" class="ltag__twitter-tweet__actions__button"&gt;
        &lt;img src="/assets/twitter-reply-action.svg" alt="Twitter reply action"&gt;
      &lt;/a&gt;
      &lt;a href="https://twitter.com/intent/retweet?tweet_id=1138084608174485504" class="ltag__twitter-tweet__actions__button"&gt;
        &lt;img src="/assets/twitter-retweet-action.svg" alt="Twitter retweet action"&gt;
      &lt;/a&gt;
      2
      &lt;a href="https://twitter.com/intent/like?tweet_id=1138084608174485504" class="ltag__twitter-tweet__actions__button"&gt;
        &lt;img src="/assets/twitter-like-action.svg" alt="Twitter like action"&gt;
      &lt;/a&gt;
      4
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/blockquote&gt;


&lt;p&gt;Una vez preparada la pantalla , buscando en Github, encontré esta joya &lt;/p&gt;
&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vWogaON8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/github-logo-28d89282e0daa1e2496205e2f218a44c755b0dd6536bbadf5ed5a44a7ca54716.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/manifestinteractive"&gt;
        manifestinteractive
      &lt;/a&gt; / &lt;a href="https://github.com/manifestinteractive/teleprompter"&gt;
        teleprompter
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Teleprompter
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;h2&gt;
Teleprompter&lt;/h2&gt;
&lt;p&gt;You can edit the text right on the page. It'll even save your changes for you if you happen to leave the page.&lt;/p&gt;
&lt;p&gt;If you're using an iPad, you can add a shortcut to your home screen for full screen awesomeness.&lt;/p&gt;
&lt;p&gt;You can also use some handy keyboard shortcuts. You can adjust the speed &amp;amp; font size at the top right as well. I'm also experimenting with ways to flip the text around for you fancy folks using mirrors.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.paypal.me/manifestinteractive" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/ef286d086bad7074475208dd763c9be192e451a6/68747470733a2f2f70657465727363686d616c66656c64742e636f6d2f6275792d6d652d636f666665652e706e67" alt="Buy Me Coffee"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
Now Available @ &lt;a href="https://promptr.tv" rel="nofollow"&gt;https://promptr.tv&lt;/a&gt;
&lt;/h2&gt;
&lt;h2&gt;
Keyboard Shortcuts&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Up&lt;/strong&gt;: Increases Font Size&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Down&lt;/strong&gt;: Decreases Font Size&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Left&lt;/strong&gt;: Slows Down Teleprompter&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Right&lt;/strong&gt;: Speeds Up Teleprompter&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Space&lt;/strong&gt;: Starts / Stops Teleprompter&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Escape&lt;/strong&gt;: Resets GUI&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Finally, we also made an effort to make sure your text will be easy to read.   So if you are pasting text from a word document, we'll do some cleaning up to make the…&lt;/p&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/manifestinteractive/teleprompter"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;Quedando con esta pinta (por cierto lo de la pantalla del Surface Book es el resumen de los consejos del &lt;a href="https://support.office.com/en-us/article/Rehearse-your-slide-show-with-Presenter-Coach-cd7fc941-5c3b-498c-a225-83ef3f64f07b"&gt;coach en PowerPoint&lt;/a&gt;):&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--wuG7eXsL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raw.githubusercontent.com/carloshm/devto-articles/master/images/teleprom.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--wuG7eXsL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raw.githubusercontent.com/carloshm/devto-articles/master/images/teleprom.jpg" alt="Teleprompter cartón"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Lluvia de ideas para servicio
&lt;/h2&gt;

&lt;p&gt;Una forma sencilla, es directamente copiar todas las notas y la solución te permite ajustar la velocidad, tamaño, etc. Pero ¿podríamos tener mejor integración?. La solución inicial aparecía como una experiencia lo más sencilla posible: Abrir PowerPoint, activar la aplicación de telepromter y empezar. Para eso varios pasos:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Disponer de una App que me permita interactuar con PowerPoint y obtener las notas. Esto es posible con el &lt;a href="https://docs.microsoft.com/en-us/office/vba/api/powerpoint.slide.notespage"&gt;API tradicional&lt;/a&gt;, pero mi idea es poderlo hacer multiplataforma (Escritorio, Web, MacOS, Android). Para ello, de momento, cree una &lt;a href="https://powerpoint.uservoice.com/forums/270149-powerpoint-for-the-web/suggestions/40500664-add-capabilites-in-powerpoint-javascript-api-for-a"&gt;petición en UserVoice&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Instalar &lt;a href="https://www.microsoft.com/en-us/garage/profiles/script-lab/"&gt;ScriptLab&lt;/a&gt; para poder jugar desde PowerPoint con la idea.&lt;/li&gt;
&lt;li&gt;Empezar a estudiar &lt;a href="https://support.microsoft.com/en-us/office/get-started-with-fluid-framework-preview-d05278db-b82b-4d1f-8523-cf0c9c2fb2df"&gt;Fluid Framework&lt;/a&gt; para cuando se libere la preview Open Source poder añadirla en el teleprompter&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Con esto tendríamos una actualización en todos los clientes en tiempo real sobre el avance de la presentación y sus notas, con un mínimo desarrollo.&lt;/p&gt;

&lt;p&gt;Hasta luego!&lt;/p&gt;

</description>
      <category>powerpoint</category>
      <category>fluidframework</category>
      <category>teleprompter</category>
      <category>scriptlab</category>
    </item>
    <item>
      <title>Democratizar el lenguaje de signos</title>
      <dc:creator>Carlos de Huerta</dc:creator>
      <pubDate>Tue, 19 May 2020 17:03:50 +0000</pubDate>
      <link>https://dev.to/carloshm/democratizar-el-lenguaje-de-signos-1lk8</link>
      <guid>https://dev.to/carloshm/democratizar-el-lenguaje-de-signos-1lk8</guid>
      <description>&lt;h2&gt;
  
  
  Primera clase en todos los videos
&lt;/h2&gt;

&lt;p&gt;Mientras pensaba en mi &lt;a href="https://dev.to/carloshm/como-publicar-traducciones-de-microsoft-translate-en-microsoft-stream-4naf"&gt;post previo&lt;/a&gt; sobre capacidades de traducción en videos, mientras veía la sesión de &lt;a href="https://build.microsoft.com"&gt;Microsoft Build&lt;/a&gt;, me he dado cuenta de un nuevo icono en el streaming de las sesiones, para ver la traducción en lenguaje de signos americano (ASL) de la sesión. Increíble trabajo el de #MSBuild&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--9eVKlo_v--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raw.githubusercontent.com/carloshm/devto-articles/master/images/ASL%2520in%2520video.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--9eVKlo_v--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raw.githubusercontent.com/carloshm/devto-articles/master/images/ASL%2520in%2520video.png" alt="ASL Lenguaje de signos en videos"&gt;&lt;/a&gt;&lt;br&gt;
Puedes ver una corte de la traducción de la presentación de Imagine Cup&lt;/p&gt;


  
  Your browser does not support the video tag.

&lt;h2&gt;
  
  
  Lenguaje de signos para todos
&lt;/h2&gt;

&lt;p&gt;¿No sería fantástico poder incluir esta funcionalidad siempre en todos tus videos?&lt;br&gt;
Hay un proyecto en Github que emplea el servicio &lt;a href="https://www.signingsavvy.com/search/hello"&gt;https://www.signingsavvy.com/search/hello&lt;/a&gt; &lt;/p&gt;
&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vWogaON8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/github-logo-28d89282e0daa1e2496205e2f218a44c755b0dd6536bbadf5ed5a44a7ca54716.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/Waasi"&gt;
        Waasi
      &lt;/a&gt; / &lt;a href="https://github.com/Waasi/text_2_sign"&gt;
        text_2_sign
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Text2Sign is a library to fetch the equivalent video for words in sign language.
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;h1&gt;
Text2Sign&lt;/h1&gt;
&lt;p&gt;&lt;a href="https://travis-ci.org/Waasi/text_2_sign" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/2c824176f4c724ef429011405eac90128e8f06b6/68747470733a2f2f7472617669732d63692e6f72672f57616173692f746578745f325f7369676e2e7376673f6272616e63683d6d6173746572" alt="Build Status"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Text to Sign Language Translator Elixir Library. It uses the resources in
&lt;a href="https://www.signingsavvy.com/" rel="nofollow"&gt;https://www.signingsavvy.com/&lt;/a&gt; to translate a list of words to sign language.&lt;/p&gt;
&lt;h3&gt;
Installation&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;Add &lt;code&gt;text_2_sign&lt;/code&gt; to your list of dependencies in &lt;code&gt;mix.exs&lt;/code&gt;:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight highlight-source-elixir"&gt;&lt;pre&gt;&lt;span class="pl-k"&gt;def&lt;/span&gt; &lt;span class="pl-en"&gt;deps&lt;/span&gt; &lt;span class="pl-k"&gt;do&lt;/span&gt;
  [{&lt;span class="pl-c1"&gt;:text_2_sign&lt;/span&gt;, &lt;span class="pl-c1"&gt;git:&lt;/span&gt; &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;https://github.com/Waasi/text_2_sign&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;}]
&lt;span class="pl-k"&gt;end&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h3&gt;
Usage&lt;/h3&gt;
&lt;h5&gt;
Text2Sign.Translator Module translate/1&lt;/h5&gt;
&lt;div class="highlight highlight-source-elixir"&gt;&lt;pre&gt;&lt;span class="pl-en"&gt;Text2Sign&lt;/span&gt;.&lt;span class="pl-en"&gt;Translator&lt;/span&gt;.&lt;span class="pl-en"&gt;translate&lt;/span&gt; [&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;Hello&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;, &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;World&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;] &lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; =&amp;gt; [hello_sign_video_url, world_sign_video_url]&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h2&gt;
Contributing&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Fork it ( &lt;a href="https://github.com/%5Bmy-github-username%5D/text_2_sign/fork"&gt;https://github.com/[my-github-username]/text_2_sign/fork&lt;/a&gt; )&lt;/li&gt;
&lt;li&gt;Create your feature branch (&lt;code&gt;git checkout -b feature/my_new_feature&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Commit your changes (&lt;code&gt;git commit -am 'Add some feature'&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Push to the branch (&lt;code&gt;git push origin my-new-feature&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Create a new Pull Request&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;
Special Thanks To:&lt;/h2&gt;
&lt;p&gt;The people @ &lt;a href="https://www.signingsavvy.com/" rel="nofollow"&gt;Signing Savvy&lt;/a&gt; for all
the resources that made this library possible.&lt;/p&gt;
&lt;/div&gt;



&lt;/div&gt;
&lt;br&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/Waasi/text_2_sign"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;br&gt;


&lt;p&gt;que podríamos usar para incluir el resultado en los video de Stream.&lt;/p&gt;

&lt;h2&gt;
  
  
  Material de aprendizaje
&lt;/h2&gt;

&lt;p&gt;Empezaré por leer un poco de &lt;a href="https://es.wikipedia.org/wiki/Lengua_de_se%C3%B1as"&gt;Wikipedia&lt;/a&gt; para aprender sobre su diversidad con el objetivo de centrarme en Speech2Text2Sign. Existen proyectos interesante para hacer traducción en tiempo real, empleando modelos entrenados mediante DNN, pero veo más factible su inclusión partiendo de texto.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Nota&lt;/strong&gt; Proyecto añadido a mi listado: Prototipo para incluir lenguaje de signos y mezclarlo &lt;/p&gt;

</description>
      <category>text2sign</category>
      <category>asl</category>
      <category>lse</category>
      <category>video</category>
    </item>
    <item>
      <title>Cómo publicar traducciones de Microsoft Translate en Microsoft Stream</title>
      <dc:creator>Carlos de Huerta</dc:creator>
      <pubDate>Tue, 12 May 2020 18:59:10 +0000</pubDate>
      <link>https://dev.to/carloshm/como-publicar-traducciones-de-microsoft-translate-en-microsoft-stream-4naf</link>
      <guid>https://dev.to/carloshm/como-publicar-traducciones-de-microsoft-translate-en-microsoft-stream-4naf</guid>
      <description>&lt;h2&gt;
  
  
  IA en nuestra caja de herramientas
&lt;/h2&gt;

&lt;p&gt;Las aplicaciones que usamos en nuestro día a día, van enriqueciéndose con capacidades de Inteligencia Artificial (IA), es algo que esperamos y que tenemos que incorporar como una herramienta en nuestra estrategia al desarrollar aplicaciones. Muchas veces esa caja de herramientas no nos permite conectarlas e intercambiar resultados como nos gustaría, por lo que necesitaremos incluir el pegamento especial para disponer de la mejor solución. &lt;br&gt;
Os invito a echar un vistazo a los &lt;a href="https://azure.microsoft.com/es-es/services/cognitive-services"&gt;servicios cognitivos de Azure&lt;/a&gt;, con servicios entorno a la voz, análisis de texto, traducción, etc. Uno de mis favoritos es el de &lt;a href="https://azure.microsoft.com/es-es/services/cognitive-services/immersive-reader/"&gt;lector inmersivo&lt;/a&gt; que nos permite mejorar la comprensión y progreso en la lectura. &lt;/p&gt;
&lt;h2&gt;
  
  
  ¿Quién no espera traducción automática de una presentación?
&lt;/h2&gt;

&lt;p&gt;Quería compartir un ejemplo concreto de las necesidades de integración con un caso práctico. En este caso me consultaron la posibilidad de traducir una presentación a 12 idiomas, dado que el equipo se encuentra distribuido geográficamente y requerían del material localizado para cada equipo.&lt;/p&gt;
&lt;h3&gt;
  
  
  ¿Cómo aprovechar las capacidades de la IA?
&lt;/h3&gt;

&lt;p&gt;Una forma natural de hacer una presentación es emplear PowerPoint, permitiendo la traducción simultánea en varios idiomas. Esto es algo que está &lt;a href="https://support.office.com/en-us/article/live-presentations-039aa2cc-67fa-4fb5-9677-46ed8a060c8c"&gt;disponible de forma temprana&lt;/a&gt; en Microsoft 365 y que podrán usar todos los usuarios al hacer sus presentaciones. Basta enlazar con el QR y verás la traducción durante la sesión.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--_XZk-bcj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raw.githubusercontent.com/carloshm/devto-articles/master/images/live-powerpoint.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--_XZk-bcj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raw.githubusercontent.com/carloshm/devto-articles/master/images/live-powerpoint.png" alt="Live PowerPoint"&gt;&lt;/a&gt;&lt;br&gt;
Otra opción es hacer uso de Microsoft Translator (que usa los mismos servicios de Azure), y que dispone de una &lt;a href="https://www.microsoft.com/en-us/translator/apps/presentation-translator/"&gt;Add-in para PowerPoint&lt;/a&gt;, creado a partir de un proyecto del &lt;a href="https://www.microsoft.com/en-us/garage/wall-of-fame/presentation-translator/"&gt;Garaje&lt;/a&gt; que deberías conocer sino es el caso, así como explorar el resto de proyectos ;). La experiencia es similar a la de Live PowerPoint (de hecho este último está basado en el proyecto de Garaje), permitiendo la descarga de los subtítulos.&lt;br&gt;
El inconveniente es que no es un formato que podamos importar, aunque sí dispone del texto traducido, original y el momento en el que se generó.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;==================================
Transcript WXEIJ
Correlation ID = 1d78d135-e3ea-2101-6f2f-78fdb756c783
Date
Tue May 12 2020 10:27:27 GMT+0200 (Central European Summer Time)
==================================

Conversation WXEIJ

Presenter @ 10:27:31
Translation (English): 
Recognition (Spanish): (undefined)

Presenter @ 10:28:04
Translation (English): It's in English, too.
Recognition (Spanish): (Está en inglés, también.)

Presenter @ 10:28:07
Translation (English): Ok.
Recognition (Spanish): (Vale.)
....
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Hasta aquí tenemos casi todos los ingredientes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Generación de subtítulos mediante Microsoft Translator (y servicios de Azure) con formato personalizado&lt;/li&gt;
&lt;li&gt;Grabación de la presentación mediante &lt;a href="https://support.office.com/es-es/article/v%c3%addeo-grabar-presentaciones-2570dff5-f81c-40bc-b404-e04e95ffab33?ui=es-ES&amp;amp;rs=es-ES&amp;amp;ad=ES"&gt;PowerPoint&lt;/a&gt; o compartiendo en una sesión de &lt;a href="https://support.office.com/es-es/article/grabar-una-reuni%c3%b3n-en-teams-34dfbe7f-b07d-4a27-b4c6-de62f1348c24?ui=es-ES&amp;amp;rs=es-ES&amp;amp;ad=ES"&gt;Teams&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;El beneficio de usar Microsoft Teams para la grabación, es que dicha grabación se publica en Microsoft Stream en el primer caso, deberemos grabar y publicarlo manualmente), donde podremos editar y añadir subtítulos. Si no conocéis Stream, os dejo un video introductorio.&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/RaFwmFAJUwY"&gt;
&lt;/iframe&gt;
&lt;/p&gt;
&lt;h3&gt;
  
  
  Formatos de transcripción y portabilidad
&lt;/h3&gt;

&lt;p&gt;Como comentaba desde Microsoft Stream, podemos &lt;a href="https://docs.microsoft.com/es-es/stream/portal-add-subtitles-captions"&gt;importar subtítulos&lt;/a&gt; en formato WebVTT para todos los idiomas que queríamos. Esto permite que los usuarios naveguen hasta el vídeo de la presentación y puedan seleccionar su idioma preferido.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--fjC9dLlX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raw.githubusercontent.com/carloshm/devto-articles/master/images/subtitles_stream.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--fjC9dLlX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raw.githubusercontent.com/carloshm/devto-articles/master/images/subtitles_stream.jpg" alt="Subtítulos en Stream"&gt;&lt;/a&gt;&lt;br&gt;
Y aquí es donde el pegamento que comentaba es necesario. Tenemos los subtítulos de las traducciones en un formato personalizado, y por otro lado Microsoft Stream nos solicita el formato estándar WebVTT. &lt;br&gt;
Lo primero es intentar no tener que reescribir una librería para generar ficheros WebVTT. Una búsqueda rápida me permitió localizar esta library en dotnet (para aplicaciones de consola multiplataforma rápida, mi preferencia). &lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vJ70wriM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/github-logo-ba8488d21cd8ee1fee097b8410db9deaa41d0ca30b004c0c63de0a479114156f.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/svm-git"&gt;
        svm-git
      &lt;/a&gt; / &lt;a href="https://github.com/svm-git/WebVTT"&gt;
        WebVTT
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      .Net library to parse and serilize media captions in WebVTT format.
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;h1&gt;
WebVTT&lt;/h1&gt;
&lt;p&gt;.Net library to parse and serilize media captions in WebVTT format.&lt;/p&gt;
&lt;/div&gt;

  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/svm-git/WebVTT"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;



&lt;p&gt;El inconveniente principal es que hace uso de .NET Framework 4.5, que no nos permite ejecutar sobre Linux o MacOS. Para ello haremos uso del &lt;a href="https://docs.microsoft.com/en-us/dotnet/core/porting/"&gt;analizador de portabilidad&lt;/a&gt; y prácticamente sin cambios, confirmando que las &lt;a href="https://dotnet.microsoft.com/download/dotnet-core/"&gt;versiones de dotnet&lt;/a&gt; (SDK + runtime) están instaladas.&lt;/p&gt;

&lt;h3&gt;
  
  
  Solución
&lt;/h3&gt;

&lt;p&gt;A partir de la misma, con los cambios necesarios para multiplataforma, generé una consola simple que acepta un fichero de entrada con el formato de PowerPoint Translator, y generando como salida un fichero en WebVTT. Tenéis el código en este &lt;a href="https://github.com/carloshm/devto-articles/tree/master/Translator2Stream"&gt;repo&lt;/a&gt;, y un pequeño vídeo de su funcionamiento, y el resultado del ejemplo anterior.&lt;/p&gt;


&lt;div class="ltag_asciinema"&gt;
  
&lt;/div&gt;
&lt;br&gt;


&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;WEBVTT

00:00:00.000 --&amp;gt; 00:00:15.000

00:00:33.000 --&amp;gt; 00:00:36.000
It's in English, too.

00:00:36.000 --&amp;gt; 00:00:51.000
Ok.
....
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;Hasta pronto!&lt;/p&gt;

</description>
      <category>stream</category>
      <category>webvtt</category>
      <category>translator</category>
      <category>ia</category>
    </item>
  </channel>
</rss>
