All pastes #909682 Raw Edit

extract_audio.rb

public ruby v1 · immutable
·published 2008-02-19 12:11 UTC
rendered paste body
#!/usr/bin/env ruby## Simple script to extract the audio part of a video# and encode it to mp3.# Depends on 'mplayer' and 'lame' STDOUT.sync = truename = ARGV[0]abort("usage: #{$0} filename") if name.nil?abort("a file name 'audiodump.wav' already exist") if File.exist? 'audiodump.wav'ext = File.extname namedir = File.dirname namenew_name = File.join dir, (File.basename(name,ext) + '.mp3')puts ':: Start encoding...'puts "   The new file will be:\n => #{new_name}"puts '   Please wait.'unless system("mplayer -vo null -ao pcm:fast '#{name}'")  abort("Encoding failed. Make sure you have mplayer installed")endunless system("lame -b 192 audiodump.wav '#{new_name}'")  abort("Encoding failed. Make sure you have lame installed")endputs ':: Removing audiodump.wav'`rm -f audiodump.wav`puts ':: End'