S3 からのファイルの読み取りに問題があります。ID3 タグをリモートでロードできるようにしたいのですが、open-URI を使用しても機能せず、次のエラーが表示されます。
ruby-1.8.7-p302 > c=TagLib2::File.new(open(URI.parse("http://recordtemple.com.s3.amazonaws.com/music/745/original/The%20Stranger.mp3?1292096514")))
TypeError: can't convert Tempfile into String
from (irb):8:in `initialize'
from (irb):8:in `new'
from (irb):8
ただし、同じファイルをダウンロードしてデスクトップに置くと (つまり、open-URI は必要ありません)、問題なく動作します。
c=TagLib2::File.new("/Users/momofwombie/Desktop/blah.mp3")
リモートファイルを読み取るために他にすべきことはありますか?
更新: このリンクを見つけたところ、少し説明がつくかもしれませんが、確かにこれを行う方法がいくつかあるはずです...