{"id":4407,"date":"2010-03-19T08:00:45","date_gmt":"2010-03-19T14:00:45","guid":{"rendered":"http:\/\/quechilero.com\/blog\/?p=4407"},"modified":"2010-03-19T08:00:45","modified_gmt":"2010-03-19T14:00:45","slug":"time-lapse-en-linux","status":"publish","type":"post","link":"https:\/\/quechilero.com\/blog\/2010\/03\/19\/time-lapse-en-linux\/","title":{"rendered":"Time Lapse en Linux"},"content":{"rendered":"<p>El <em>time lapse<\/em>, es una t\u00e9cnica de <em>fotograf\u00eda<\/em> que consiste en mostrar una secuencia de im\u00e1genes, de tal forma, que pareciera que se est\u00e1 reproduciendo en <em>c\u00e1mara r\u00e1pida<\/em>. En la actualidad hay algunas c\u00e1maras de video que ya incorporan este efecto y algunas c\u00e1maras de fotos tambi\u00e9n tienen esta opci\u00f3n. Sin embargo se ven s\u00f3lo en equipos profesionales. Tambi\u00e9n existen algunos adaptadores que se incorporan en una c\u00e1mara fotogr\u00e1fica, que la programan para realizar esta funci\u00f3n, aunque tampoco se puede usar en todas las c\u00e1maras.<\/p>\n<p>Sin embargo, este mismo efecto se puede realizar con cualquier dispositivo que grabe video, desde un tel\u00e9fono celular, pasando por c\u00e1maras de fotos, hasta una c\u00e1mara de video promedio. Incluso se puede hacer con videos que ya se encuentren grabados, sin importar el tipo.<\/p>\n<p>Para poder realizar esto, <em>Linux<\/em>, nos ofrece una opci\u00f3n que en muy poco tiempo y con una sola l\u00ednea de comandos, lo podemos tener listo.<\/p>\n<p><strong>El Concepto<\/strong>.<\/p>\n<p>La vista humana, puede ver a raz\u00f3n de 30fps (cuadros por segundo), es decir, un movimiento lo vemos flu\u00eddo, si los cuadros que forman el movimiento se reproducen a raz\u00f3n de 30 en un segundo, podemos ver esta secuencia <em>sin cortes o saltos<\/em>. Con esto claro podemos determinar que si tenemos un video de un minuto de duraci\u00f3n, deber\u00e1 estar formado por un total de 1,800 cuadros, si es de cinco minutos, tendr\u00e1 9,000 cuadros o <em>im\u00e1genes est\u00e1ticas<\/em>.<\/p>\n<p>Para poder lograr el <em>efecto del time lapse<\/em>, debemos tener videos relativamente largos, aunque puede variar seg\u00fan la configuraci\u00f3n que apliquemos al final, podemos lograr un video de <em>time lapse<\/em> de dos minutos, de un video original de cuarenta minutos. Para apreciar mejor el efecto, la c\u00e1mara se apunta sin moverla durante este tiempo, cuarenta o mas minutos y se graba el video.<\/p>\n<p><strong>Procedimiento<\/strong>.<\/p>\n<p>Una vez que tengamos el video, grabado por nosotros o desde otra fuente, procedemos a procesarlo con una sola l\u00ednea de comandos, que es la que har\u00e1 el trabajo pesado de separar las im\u00e1genes, volverlas a unir y renderizar el nuevo video. El tiempo de este proceso depender\u00e1 de la capacidad del equipo y sobre todo de la longitud del video.<\/p>\n<p>Como ya indicamos, una imagen fluida se ve a raz\u00f3n de 30 cuadros por segundo, pero si de estos 30 cuadros, quitamos algunos y nos quedamos con unos pocos y los volvemos a unir, vamos a lograr el efecto <em>time lapse<\/em>, l\u00f3gicamente como estamos quitando cuadros, el video se ve reducido en tiempo, pero a la vez da la <em>sensaci\u00f3n<\/em> de que todo est\u00e1 ocurriendo en c\u00e1mara r\u00e1pida.<\/p>\n<p>Para lograr esto vamos a utilizar <em>ffmpeg<\/em>, que lo podemos instalar desde la consola con solo escribir:<\/p>\n<blockquote><p>sudo apt-get install ffmpeg<\/p><\/blockquote>\n<p>Ya que lo tenemos instalado procedemos a realizar la operaci\u00f3n.<\/p>\n<blockquote><p>ffmpeg -i video.avi -r 1 -ss 00:00:00 -t 00:40:00 imagen_%05d.png &amp;&amp; ffmpeg -f image2 -i imagen_%05d.png video.mpg<\/p><\/blockquote>\n<p><strong>Explicaci\u00f3n de la l\u00ednea de comandos<\/strong><\/p>\n<p><strong>-i video.avi<\/strong> es el video original que vamos a procesar y que se encuentra en tiempo real.<\/p>\n<p><strong>-r 1<\/strong> estamos indicando que el <em>rate<\/em> sea de 1 cuadro por segundo, es decir que de los 30 cuadros, vamos a tomar solo uno, para hacer un poco mas fino el video final en <em>time lapse<\/em>, se puede aumentar este n\u00famero hasta 5.<\/p>\n<p><strong>-ss 00:00:00<\/strong> indica a partir de que momento se va a procesar el video, en este caso es desde el inicio, si queremos empezar en el minuto diez con treinta y cinco segundos, entonces usamos -ss 00:10:35<\/p>\n<p><strong>-t 00:40:00<\/strong> indica cuanto tiempo vamos a procesar a partir del punto de inicio, en el ejemplo son cuarenta minutos, si el video inicia en el minuto diez, entonces despu\u00e9s de cuarenta minutos, terminar\u00e1 en el minuto cincuenta.<\/p>\n<p><strong>imagen_%05d.png<\/strong> es el formato final de las im\u00e1genes o cuadros que se generar\u00e1n, el <strong>%05d<\/strong> indica que se crear\u00e1 una secuencia de im\u00e1genes numerada del tipo imagen_00001.png, imagen_00002.png, imagen_00003.png etc.<\/p>\n<p><strong>&amp;&amp;<\/strong> unimos los dos comandos<\/p>\n<p><strong>-f image2<\/strong> indicamos que es una secuencia de im\u00e1genes que vamos a renderizar en un video<\/p>\n<p><strong>-i imagen_%05d.png<\/strong> el formato de imagenes que se van tomar par renderizar el video, debe ser igual al anterior.<\/p>\n<p><strong>video.mpg<\/strong> el nombre y el formato del video final.<\/p>\n<p><strong>Observaciones:<\/strong> se puede utilizar cualquier tipo de formato de imagen, jpg, gif, png, pero se recomienda png, el formato inicial y final del video puede ser cualquiera de los reconocidos por ffmpeg.<\/p>\n<p>Si deseamos, tambi\u00e9n podemos insertarle un audio al video con el siguiente comando, hay que tomar en cuenta que el audio debe ser de la misma longitud del video:<\/p>\n<blockquote><p>ffmpeg -i audio.mp3 -i video_entrada.mpg video_salida.mpg<\/p><\/blockquote>\n<p>Con esto ya tenemos nuestro video con el efecto de <em>time lapse<\/em> y audio\u00a0incluido. Algo interesante que se puede hacer, antes de renderizar el video, cuando tenemos nuestra secuencia de im\u00e1genes, podr\u00edamos editarlas manualmente con alg\u00fan <em>editor de im\u00e1genes<\/em>, Gimp por ejemplo y aplicarle efectos a estas im\u00e1genes, que al final ser\u00e1n quedar\u00e1n en el video final.<\/p>\n<p>A continuaci\u00f3n un par de videos con la t\u00e9cnica del\u00a0<em>Time lapse en linux con dos comandos de consola<\/em><\/p>\n<p><strong>Amanecer<\/strong><\/p>\n<p><object width=\"560\" height=\"344\" classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" 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\/p4g1pbARAZo&amp;hl=es_ES&amp;fs=1&amp;\" \/><param name=\"allowfullscreen\" value=\"true\" \/><\/object><\/p>\n<p><strong>Atardecer<\/strong><\/p>\n<p><object width=\"560\" height=\"344\" classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" 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\/6hNR1BSt5eI&amp;hl=es_ES&amp;fs=1&amp;\" \/><param name=\"allowfullscreen\" value=\"true\" \/><\/object><\/p>\n<p>Un poco mas de informaci\u00f3n sobre el uso de ffmpeg en <a title=\"Time Stamp en Linux\" href=\"http:\/\/mundogeek.net\/archivos\/2009\/02\/21\/capturar-fotogramas-de-un-video-desde-la-consola\/\" target=\"_blank\">captura de fotogramas<\/a> y <a title=\"Time Stamp en Linux\" href=\"http:\/\/mundogeek.net\/archivos\/2008\/10\/10\/19-cosas-utiles-que-puedes-hacer-con-ffmpeg\/\" target=\"_blank\">cosas \u00fatiles con ffmpeg<\/a> de <a title=\"MundoGeek\" href=\"http:\/\/mundogeek.net\/\" target=\"_blank\">MundoGeek<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>El time lapse, es una t\u00e9cnica de fotograf\u00eda que consiste en mostrar una secuencia de im\u00e1genes, de tal forma, que pareciera que se est\u00e1 reproduciendo en c\u00e1mara r\u00e1pida. En la actualidad hay algunas c\u00e1maras de video que ya incorporan este efecto y algunas c\u00e1maras de fotos tambi\u00e9n tienen esta opci\u00f3n. Sin embargo se ven s\u00f3lo &#8230; <a title=\"Time Lapse en Linux\" class=\"read-more\" href=\"https:\/\/quechilero.com\/blog\/2010\/03\/19\/time-lapse-en-linux\/\" aria-label=\"Leer m\u00e1s sobre Time Lapse en Linux\">Leer m\u00e1s<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"episode_type":"","audio_file":"","cover_image":"","cover_image_id":"","duration":"","filesize":"","date_recorded":"","explicit":"","block":"","filesize_raw":"","jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false},"version":2}},"categories":[2],"tags":[12,16,8,95,77,68,79,5,36,25,53],"series":[],"class_list":["post-4407","post","type-post","status-publish","format-standard","hentry","category-limones","tag-cosas","tag-equipo","tag-fotografia","tag-gimp","tag-linux","tag-mp3","tag-positivo","tag-tiempo","tag-trabajo","tag-video","tag-youtube"],"episode_featured_image":false,"episode_player_image":"https:\/\/i0.wp.com\/quechilero.com\/blog\/imagenes\/podcast.png?fit=1831%2C1831&ssl=1","download_link":"","player_link":"","audio_player":false,"episode_data":{"playerMode":"dark","subscribeUrls":{"amazon":{"key":"amazon","url":"","label":"Amazon","class":"amazon","icon":"amazon.png"},"apple_podcasts":{"key":"apple_podcasts","url":"","label":"Apple Podcasts","class":"apple_podcasts","icon":"apple-podcasts.png"},"castbox":{"key":"castbox","url":"","label":"CastBox","class":"castbox","icon":"castbox.png"},"deezer":{"key":"deezer","url":"","label":"Deezer","class":"deezer","icon":"deezer.png"},"google_podcasts":{"key":"google_podcasts","url":"","label":"Google Podcasts","class":"google_podcasts","icon":"google-podcasts.png"},"listen_notes":{"key":"listen_notes","url":"","label":"Listen Notes","class":"listen_notes","icon":"listen-notes.png"},"pandora":{"key":"pandora","url":"","label":"Pandora","class":"pandora","icon":"pandora.png"},"podbean":{"key":"podbean","url":"","label":"Podbean","class":"podbean","icon":"podbean.png"},"podcast_republic":{"key":"podcast_republic","url":"","label":"Podcast Republic","class":"podcast_republic","icon":"podcast-republic.png"},"rss":{"key":"rss","url":"","label":"RSS","class":"rss","icon":"rss.png"},"spotify":{"key":"spotify","url":"","label":"Spotify","class":"spotify","icon":"spotify.png"},"stitcher":{"key":"stitcher","url":"","label":"Stitcher","class":"stitcher","icon":"stitcher.png"},"tunein":{"key":"tunein","url":"","label":"TuneIn","class":"tunein","icon":"tunein.png"},"youtube":{"key":"youtube","url":"","label":"YouTube","class":"youtube","icon":"youtube.png"},"iheartradio":{"key":"iheartradio","url":"","label":"iHeartRadio","class":"iheartradio","icon":"iheartradio.png"},"ivoox":{"key":"ivoox","url":"","label":"iVoox","class":"ivoox","icon":"ivoox.png"}},"rssFeedUrl":"https:\/\/quechilero.com\/blog\/feed\/podcast\/si-la-vida-nos-da-limones","embedCode":"<blockquote class=\"wp-embedded-content\" data-secret=\"ue8f077BFM\"><a href=\"https:\/\/quechilero.com\/blog\/2010\/03\/19\/time-lapse-en-linux\/\">Time Lapse en Linux<\/a><\/blockquote><iframe sandbox=\"allow-scripts\" security=\"restricted\" src=\"https:\/\/quechilero.com\/blog\/2010\/03\/19\/time-lapse-en-linux\/embed\/#?secret=ue8f077BFM\" width=\"500\" height=\"350\" title=\"\u00abTime Lapse en Linux\u00bb \u2014 Si la Vida nos da Limones...\" data-secret=\"ue8f077BFM\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" class=\"wp-embedded-content\"><\/iframe><script>\n\/*! This file is auto-generated *\/\n!function(d,l){\"use strict\";l.querySelector&&d.addEventListener&&\"undefined\"!=typeof URL&&(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&&!\/[^a-zA-Z0-9]\/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret=\"'+t.secret+'\"]'),o=l.querySelectorAll('blockquote[data-secret=\"'+t.secret+'\"]'),c=new RegExp(\"^https?:$\",\"i\"),i=0;i<o.length;i++)o[i].style.display=\"none\";for(i=0;i<a.length;i++)s=a[i],e.source===s.contentWindow&&(s.removeAttribute(\"style\"),\"height\"===t.message?(1e3<(r=parseInt(t.value,10))?r=1e3:~~r<200&&(r=200),s.height=r):\"link\"===t.message&&(r=new URL(s.getAttribute(\"src\")),n=new URL(t.value),c.test(n.protocol))&&n.host===r.host&&l.activeElement===s&&(d.top.location.href=t.value))}},d.addEventListener(\"message\",d.wp.receiveEmbedMessage,!1),l.addEventListener(\"DOMContentLoaded\",function(){for(var e,t,s=l.querySelectorAll(\"iframe.wp-embedded-content\"),r=0;r<s.length;r++)(t=(e=s[r]).getAttribute(\"data-secret\"))||(t=Math.random().toString(36).substring(2,12),e.src+=\"#?secret=\"+t,e.setAttribute(\"data-secret\",t)),e.contentWindow.postMessage({message:\"ready\",secret:t},\"*\")},!1)))}(window,document);\n\/\/# sourceURL=https:\/\/quechilero.com\/blog\/wp-includes\/js\/wp-embed.min.js\n<\/script>\n"},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/pDKli-195","jetpack_sharing_enabled":true,"jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/quechilero.com\/blog\/wp-json\/wp\/v2\/posts\/4407","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/quechilero.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/quechilero.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/quechilero.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/quechilero.com\/blog\/wp-json\/wp\/v2\/comments?post=4407"}],"version-history":[{"count":0,"href":"https:\/\/quechilero.com\/blog\/wp-json\/wp\/v2\/posts\/4407\/revisions"}],"wp:attachment":[{"href":"https:\/\/quechilero.com\/blog\/wp-json\/wp\/v2\/media?parent=4407"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/quechilero.com\/blog\/wp-json\/wp\/v2\/categories?post=4407"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/quechilero.com\/blog\/wp-json\/wp\/v2\/tags?post=4407"},{"taxonomy":"series","embeddable":true,"href":"https:\/\/quechilero.com\/blog\/wp-json\/wp\/v2\/series?post=4407"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}