Django embed m4v from static locally

242 Views Asked by At

How would you embed a static file with .m4v extension , M4V is a file format,

<object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B"     
 codebase="http://www.apple.com/qtactivex/qtplugin.cab" width="320" height="256" >
<param name="src" value="/static/example.m4v">

<param name="autoplay" value="false">

<param name="controller" value="true">

 <embed src="/static/example.m4v" type="video/mp4" width="320" height="256" controller="true"    controls="true" autostart="false"/>

  </object>

The above example forces it to download.

http://django-embed-video.readthedocs.org/en/v0.11/index.html only works with online sites like youtube, few others.

1

There are 1 best solutions below

1
On

I was struggling with this same issue. I pretty much copied the code from http://camendesign.com/code/video_for_everybody.

<!-- first try HTML5 playback: if serving as XML, expand `controls` to `controls="controls"` and autoplay likewise -->
<!-- warning: playback does not work on iOS3 if you include the poster attribute! fixed in iOS4.0 -->
<video width="640" height="360" controls>
    <!-- MP4 must be first for iPad! -->
    <source src="__VIDEO__.MP4" type="video/mp4" /><!-- Safari / iOS video    -->
    <source src="__VIDEO__.OGV" type="video/ogg" /><!-- Firefox / Opera / Chrome10 -->
    <!-- fallback to Flash: -->
    <object width="640" height="360" type="application/x-shockwave-flash" data="__FLASH__.SWF">
        <!-- Firefox uses the `data` attribute above, IE/Safari uses the param below -->
        <param name="movie" value="__FLASH__.SWF" />
        <param name="flashvars" value="controlbar=over&amp;image=__POSTER__.JPG&amp;file=__VIDEO__.MP4" />
        <!-- fallback image. note the title field below, put the title of the video there -->
        <img src="__VIDEO__.JPG" width="640" height="360" alt="__TITLE__"
             title="No video playback capabilities, please download the video below" />
    </object>
</video>
<!-- you *must* offer a download link as they may be able to play the file locally. customise this bit all you want -->
<p> <strong>Download Video:</strong>
    Closed Format:  <a href="__VIDEO__.MP4">"MP4"</a>
    Open Format:    <a href="__VIDEO__.OGV">"Ogg"</a>
</p>

Then made sure to create .htaccess file with the following:

AddType video/ogg  .ogv
AddType video/mp4  .mp4
AddType video/webm .webm

Also, I'm using an older version of django (1.6.5) for my project and I have my videos stored at my MEDIA_ROOT and have the MEDIA_URL also set in the settings.py so that the source of video looks like:

{{ MEDIA_URL }}/media/videos/video.m4v