2012-02-08 12 views
0

私は、ファイルがRVideoライブラリを使用して、有効なビデオストリームを持っているかどうかを確認しようとしています:RVideoを使用してファイルが有効なビデオストリームであるかどうかを確認するにはどうすればよいですか?

read_file.rb:

require 'rubygems' 
require 'rvideo' 

file_path="/mnt/glusterfs/video/2012/02/04/2012-02-04 1000 CSPAN United Nations Security Council Meeting (337711).mp4" 
puts file_path 
file = RVideo::Inspector.new(:file => file_path) 

を、私はこのエラーを取得する:

[email protected]:~$ ruby read_file.rb 
/mnt/glusterfs/video/2012/02/04/2012-02-04 1000 CSPAN United Nations Security Council Meeting (337711).mp4 
sh: Syntax error: "(" unexpected 

は、場合でも、I各空白文字とかっこ文字の前にバックスラッシュを入れて、私はそのエラーを取得しています。

答えて

1

エラーはシェルから発生しています。 Rvideoはそのファイルパスをffmpeg -iにシェルします。あなたのパスは適切にエスケープされていません。

require 'shellwords' 
"/mnt/glusterfs/video/2012/02/04/2012-02-04 1000 CSPAN United Nations Security Council Meeting (337711).mp4".shellescape 
=> "/mnt/glusterfs/video/2012/02/04/2012-02-04\\ 1000\\ CSPAN\\ United\\ Nations\\ Security\\ Council\\ Meeting\\ \\(337711\\).mp4" 
関連する問題