Проблемы с Rails 3 Webrick и загрузкой видео для iPhone/iPad ( mp4 m4v) видеофайлов

Я пытаюсь заставить Rails (3.0.0) обслуживать простой видеофайл m4v для iphone в видеоблоке html5. Ради здравого смысла я использую видео с большим кроликом с сайта http://camendesign.com/code/video_for_everybody которое, как я знаю, правильно закодировано для iphone и работает

Когда я запускаю это на сервере Apache, он работает отлично. Но в моей среде разработки rails он просто загружает черный ящик через косую черту. Мой инстинкт подсказывает мне, что это проблема с пантомимой.

Я попытался добавить эти строки в мой файл mime_types.rb:

Mime::Type.register "video/mp4", :mp4
Mime::Type.register "video/mp4", :m4v

Rack::Mime::MIME_TYPES.merge!({
  ".ogg"     => "application/ogg",
  ".ogx"     => "application/ogg",
  ".ogv"     => "video/ogg",
  ".oga"     => "audio/ogg",
  ".mp4"     => "video/mp4",
  ".m4v"     => "video/mp4",
  ".mp3"     => "audio/mpeg",
  ".m4a"     => "audio/mpeg"
})

Но не повезло. Некоторые предложили добавить эту строку и в файл mime_types.

MIME::Type.add(MIME::Type.from_array("video/mp4", %(m4v))

Но это приводит к этой ошибке:

NameError: uninitialized constant MIME
    from (irb):4
    from /Users/theshaolinmonk/.rvm/gems/ruby-1.9.2-p0@rails3/gems/railties-3.0.0/lib/rails/commands/console.rb:44:in `start'
    from /Users/theshaolinmonk/.rvm/gems/ruby-1.9.2-p0@rails3/gems/railties-3.0.0/lib/rails/commands/console.rb:8:in `start'
    from /Users/theshaolinmonk/.rvm/gems/ruby-1.9.2-p0@rails3/gems/railties-3.0.0/lib/rails/commands.rb:23:in `<top (required)>'
    from script/rails:6:in `require'
    from script/rails:6:in `<main>'

У кого-нибудь есть идеи?

1 ответ

Может быть, добавить следующую строку в ваш Gemfile?

gem 'mime-types', :require => 'mime/types'

Другие вопросы по тегам