{"id":651,"date":"2009-12-15T17:13:44","date_gmt":"2009-12-15T21:13:44","guid":{"rendered":"http:\/\/www.uvm.edu\/~waw\/blog\/?p=651"},"modified":"2009-12-15T17:13:44","modified_gmt":"2009-12-15T21:13:44","slug":"perl-script-to-post-process-files-created-by-red5","status":"publish","type":"post","link":"https:\/\/blog.uvm.edu\/waw\/2009\/12\/15\/perl-script-to-post-process-files-created-by-red5\/","title":{"rendered":"perl script to post-process files created by red5"},"content":{"rendered":"<p>Converts movie_name.flv to movie_name.mp4 with AAC audio, H.264 video. Extracts a thumbnail jpg, too<\/p>\n<p><code><br \/>\n#!\/usr\/bin\/perl<br \/>\n$ENV{LD_LIBRARY_PATH} ='\/usr\/local\/lib\/';<\/p>\n<p>$movie_name=shift @ARGV;<br \/>\n$old_movie_name = $movie_name.\".flv\";<br \/>\n$new_movie_name = $movie_name.\".mp4\";<br \/>\n$toe_name = $movie_name.\".jpg\";<\/p>\n<p>my $range = 100000;<br \/>\nmy $random_number = int(rand($range));<br \/>\n$temp_movie_name=\"\/tmp\/$random_number.mp4\";<br \/>\n$make_mpeg=`\/usr\/local\/bin\/ffmpeg -y -i $old_movie_name -acodec libfaac -ab 96k -ar 44100 -vcodec libx264 -vpre hq -crf 22 -flags2 -bpyramid $resize $temp_movie_name`;<br \/>\n$test=`\/usr\/local\/bin\/ffmpeg -y -i $temp_movie_name -f image2 -ss 15 -vframes 1 -s \"360x270\" $toe_name 2&gt;&amp;1`;<br \/>\n$last=`\/usr\/local\/bin\/qt-faststart $temp_movie_name $new_movie_name`;<br \/>\n<\/code><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Converts movie_name.flv to movie_name.mp4 with AAC audio, H.264 video. Extracts a thumbnail jpg, too #!\/usr\/bin\/perl $ENV{LD_LIBRARY_PATH} =&#8217;\/usr\/local\/lib\/&#8217;; $movie_name=shift @ARGV; $old_movie_name = $movie_name.&#8221;.flv&#8221;; $new_movie_name = $movie_name.&#8221;.mp4&#8243;; $toe_name = $movie_name.&#8221;.jpg&#8221;; my $range = 100000; my $random_number = int(rand($range)); $temp_movie_name=&#8221;\/tmp\/$random_number.mp4&#8243;; $make_mpeg=`\/usr\/local\/bin\/ffmpeg -y -i &hellip; <a href=\"https:\/\/blog.uvm.edu\/waw\/2009\/12\/15\/perl-script-to-post-process-files-created-by-red5\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":7,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6517,8025,8026,141],"tags":[],"class_list":["post-651","post","type-post","status-publish","format-standard","hentry","category-projects","category-scriptingprogramming","category-systems-and-servers","category-video"],"_links":{"self":[{"href":"https:\/\/blog.uvm.edu\/waw\/wp-json\/wp\/v2\/posts\/651","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.uvm.edu\/waw\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.uvm.edu\/waw\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.uvm.edu\/waw\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.uvm.edu\/waw\/wp-json\/wp\/v2\/comments?post=651"}],"version-history":[{"count":2,"href":"https:\/\/blog.uvm.edu\/waw\/wp-json\/wp\/v2\/posts\/651\/revisions"}],"predecessor-version":[{"id":653,"href":"https:\/\/blog.uvm.edu\/waw\/wp-json\/wp\/v2\/posts\/651\/revisions\/653"}],"wp:attachment":[{"href":"https:\/\/blog.uvm.edu\/waw\/wp-json\/wp\/v2\/media?parent=651"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.uvm.edu\/waw\/wp-json\/wp\/v2\/categories?post=651"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.uvm.edu\/waw\/wp-json\/wp\/v2\/tags?post=651"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}