我正在使用FastImage和TagLib来操纵mp3文件,在这个例子中,是从标签中提取可能的图像。它就像一个魅力,但对于一个文件,它发生了一个我不知道如何处理的错误。
TagLib::MPEG::File.open(input_file_path) do |file|
tag = file.id3v2_tag
if tag
size = tag.frame_list.size
if size > 0
cover = tag.frame_list('APIC').first
if cover
File.open(original_image, 'w+') do |f|
f.write(cover.picture)
end
FastImage.resize(original_image, 250, 250, :outfile => resized_image)
end
end
end
end
在FastImage.resize
方法上发生了以下错误:
GD错误:gd-jpeg:JPEG库报告不可恢复的错误:JPEG文件结构无效:两个SOI标记/<用户路径> /。rvm / gems / ruby-2.3.1 / gems / fastimage_resize-2.0.3 / lib / fastimage_resize.rb:90: [BUG]分段错误在0x00000000000008 ruby 2.3.1p112(2016-04-26修订版54768)[x86_64-darwin14]
图像中出现错误没有问题,因为它是由用户上传的,但是我需要挽救此错误以提供适当的处理,而我找不到这样做的方法。我想知道是否有办法解决这个错误。