In switching from Perl's Audio::WMA to wmainfo-rb, I've found some WMA files that can be read with Audio::WMA but not
with wmainfo-rb. The problem is that the parse is barfing because iconv barfs on a field that probably uses the wrong
character set, and this takes down the whole parse.
The symptom for all is the same: when instantiating a WmaInfo, you get an IllegalSequence exception :
irb(main):004:0> WmaInfo.new "hold/Leave A Tender Moment Alone.wma"
Iconv::IllegalSequence: "\003\310 \000\000i\000m\000a\000g\000e\000/"...
from /usr/lib/ruby/gems/1.8/gems/wmainfo-rb-0.6/lib/wmainfo.rb:313:in `iconv'
from /usr/lib/ruby/gems/1.8/gems/wmainfo-rb-0.6/lib/wmainfo.rb:313:in `decode_binary_string'
from /usr/lib/ruby/gems/1.8/gems/wmainfo-rb-0.6/lib/wmainfo.rb:255:in
`parse_asf_extended_content_description_object'
from /usr/lib/ruby/gems/1.8/gems/wmainfo-rb-0.6/lib/wmainfo.rb:245:in `times'
from /usr/lib/ruby/gems/1.8/gems/wmainfo-rb-0.6/lib/wmainfo.rb:245:in
`parse_asf_extended_content_description_object'
from /usr/lib/ruby/gems/1.8/gems/wmainfo-rb-0.6/lib/wmainfo.rb:167:in `parse_wma_header'
from /usr/lib/ruby/gems/1.8/gems/wmainfo-rb-0.6/lib/wmainfo.rb:144:in `times'
from /usr/lib/ruby/gems/1.8/gems/wmainfo-rb-0.6/lib/wmainfo.rb:144:in `parse_wma_header'
from /usr/lib/ruby/gems/1.8/gems/wmainfo-rb-0.6/lib/wmainfo.rb:43:in `initialize'
from (irb):4:in `new'
from (irb):4
from /usr/local/lib/site_ruby/1.8/rubygems/exceptions.rb:59
Ruby 1.8.7 on Ubuntu 8.10. |