Einstellen des Inhaltstyps für mp4-Dateien auf s3

Ich füge von Nutzern hochgeladene Videos mithilfe des Büroklammer-Edelsteins und des S3-Speichers zu meiner RoRs-Site hinzu. Aus irgendeinem Grund kann ich nicht herausfinden, dass s3 den Inhaltstyp für diese Datei festlegt, wenn ein Benutzer eine MP3-Datei hochlädtapplication/mp4 anstattvideo/mp4.

Beachten Sie, dass ich mp4 mime type in einer Initialisierungsdatei registriert habe:

Mime::Type.lookup_by_extension('mp4').to_s => "video/mp4"

Hier ist der relevante Teil meines Post-Modells:

  has_attached_file :video, 
                :storage => :s3,
                :s3_credentials => "#{Rails.root.to_s}/config/s3.yml",
                :path => "/video/:id/:filename"

  validates_attachment_content_type :video,
     :content_type => ['video/mp4'],
     :message => "Sorry, this site currently only supports MP4 video"

Was fehlt mir in meiner Büroklammer und / oder S3-Setup.

####Aktualisieren#####

Aus irgendeinem Grund, den ich nicht kenne, lauten meine Standard-Mime-Typen für mp4-Dateien wie folgt:

    MIME::Types.type_for("my_video.mp4").to_s
 => "[application/mp4, audio/mp4, video/mp4, video/vnd.objectvideo]" 

Wenn also eine Büroklammer eine mp4-Datei an s3 sendet, scheint sie den MIME-Typ der Datei als ersten Standard zu identifizieren: "application / mp4". Deshalb identifiziert s3 die Datei als Inhaltstyp "application / mp4". Da ich das Streaming dieser mp4-Dateien aktivieren möchte, benötige ich eine Büroklammer, um die Datei als MIME-Datei mit der Bezeichnung "video / mp4" zu kennzeichnen.

Gibt es eine Möglichkeit, die Büroklammer zu ändern (möglicherweise in einem before_post_process-Filter), um dies zu ermöglichen, oder gibt es eine Möglichkeit, Schienen durch eine Init-Datei zu ändern, um MP4-Dateien als "Video / MP4" zu identifizieren. Wenn ich das auch tun könnte, welcher Weg ist der beste.

Danke für Ihre Hilfe

Antworten auf die Frage(2)

Ihre Antwort auf die Frage