Я хочу настроить загрузку видео, чтобы пользователи могли просматривать и воспроизводить их. Я новичок в rails, догадываюсь, кто-нибудь знает, как это можно сделать?Воспроизведение видео с помощью paperclip rails
ответ
Вы посмотрите на Paperclip
В модели, которая будет содержать видео, которое потребуется правильный формат (ffmpeg
) и проверку на видео можно:
has_attached_file :attachment,
styles: lambda { |a| a.instance.is_image? ? {:small => "x200>", :medium => "x300>", :large => "x400>"} : {:thumb => { :geometry => "100x100#", :format => 'jpg', :time => 10}, :medium => { :geometry => "300x300#", :format => 'jpg', :time => 10}}},
:processors => lambda { |a| a.is_video? ? [ :ffmpeg ] : [ :thumbnail ] }
validates_attachment_content_type :video, content_type: /\Avideo\/.*\Z/
Обновление от комментариев:
has_attached_file :video, styles: {
:medium => {
:geometry => "640x480",
:format => 'mp4'
},
:thumb => { :geometry => "160x120", :format => 'jpeg', :time => 10}
}, :processors => [:transcoder]
Итак, создавая рельсы, создайте прикрепление к папке скрепки, затем добавив выше в файле model/post.rb /, затем добавив: вложение в post_params/then для представлений <% = video_tag post.attachment.url (: medium), controls: true , тип: «video/mp4», размер: «612x612»%> –
ffmpeg обесценился, поэтому я использую paperclip-av-transcoder –
проверить обновленный пост – Cyzanfar
Там некоторый живой код для достижения этой here:
#Gemfile
gem "paperclip-ffmpeg", "~> 1.2.0"
#app/models/attachment.rb
class Attachment < ActiveRecord::Base
has_attached_file :attachment,
styles: {:thumb => { geometry: "100x100#", format: 'jpg', time: 10}, medium: { gemometry: "300x300#", format: 'jpg', time: 10}},
processors: [ :ffmpeg ]
end
Основная проблема у вас с этим что-то вызов preprocessing.
Когда вы загружаете любое приложение с помощью Paperclip, оно должно обработать его перед его хранением. Обработка преобразуется в правильный формат и изменяет его размеры (вы также можете делать с ней другие интересные вещи).
Обработка видео немного отличается от обработки изображений, поскольку сначала вам нужно обработать видео, чтобы ваш сервер мог воспроизвести его, а затем вам также нужно снять с него несколько скриншотов.
Таким образом, вам нужен собственный процессор, который @Czanfar разместил в своем ответе либо будет выбор между ffmpeg
или transcoder
Я также написал ответ на это здесь: Rails video uploading
Кстати, вот когда я пошел к ребятам, которые сделали Скрепка:
приятный помощник! – Cyzanfar
Спасибо, бутон, это было в Стокгольме –
спасибо Cyzanfars ответ Я получил его работу!
Убедитесь, что вы установили FFmpeg
brew install ffmpeg --with-fdk-aac --with-ffplay --with-freetype --with-frei0r --with-libass --with-libvo-aacenc --with-libvorbis --with-libvpx --with-opencore-amr --with-openjpeg --with-opus --with-rtmpdump --with-schroedinger --with-speex --with-theora --with-tools
- 1. Загрузка видео с помощью Rails/Paperclip в Heroku/S3
- 2. Как загрузить и проверить видео с помощью paperclip-Rails
- 3. Воспроизведение видео с помощью UIWebView
- 4. Воспроизведение видео с помощью QtQuick
- 5. Воспроизведение видео с помощью jmf
- 6. Воспроизведение видео с session.outputURL с помощью MPMoviePlayerController
- 7. Воспроизведение видео на iPhone после преобразования видео с использованием ffmpeg
- 8. Воспроизведение видео с IsolatedStorage
- 9. Воспроизведение видео с QT
- 10. Ruby on Rails галерея с помощью paperclip
- 11. Rails + Paperclip RangeError
- 12. Изображение с Paperclip- Rails
- 13. Воспроизведение видео с SD-видео с помощью Jiecao Video Player?
- 14. Воспроизведение, редактирование, повторное воспроизведение видео в C# с помощью directshow
- 15. Воспроизведение видео паузы с помощью JQuery
- 16. Воспроизведение видео на YouTube с помощью AVFoundation
- 17. Воспроизведение видео с помощью jquery loops
- 18. Приостановить воспроизведение видео с помощью JQuery/JavaScript
- 19. Воспроизведение видео на YouTube с помощью намерения
- 20. Воспроизведение видео с помощью HTML5/JQuery
- 21. Разрешить воспроизведение видео с помощью слайдера
- 22. воспроизведение видео файлов с помощью питона OpenCV
- 23. Воспроизведение нескольких видео с помощью VideoView
- 24. Воспроизведение зашифрованного видео с помощью AVPlayer
- 25. Воспроизведение видео, записанного с помощью AVFoundation
- 26. Воспроизведение видео на YouTube с помощью ExoPlayer
- 27. Воспроизведение видео с адреса
- 28. Воспроизведение видео с NSDocumentDirectory
- 29. Воспроизведение видео с Android
- 30. Использование Paperclip с загрузкой видео: плакат
Настройка, как другие файлы (следовать Paperclip документации), а также использовать [video_tag] (http://api.rubyonrails.org/classes/ActionView/ хелперы/AssetTagHelper.html # метод-я-video_tag). –