bash
pip install django-elastic-transcoder
python
INSTALLED_APPS = (
...
'elastictranscoder',
...
)
python
ELASTIC_TRANSCODER_ACCESS_KEY = 'YOUR_ELASTIC_TRANSCODER_ACCESS_KEY'
ELASTIC_TRANSCODER_SECRET_ACCESS_KEY = 'YOUR_ELASTIC_TRANSCODER_SECRET_ACCESS_KEY'
ELASTIC_TRANSCODER_PIPELINE_ID = 'YOUR_ELASTIC_TRANSCODER_PIPELINE_ID'
ELASTIC_TRANSCODER_REGION = 'YOUR_ELASTIC_TRANSCODER_REGION'
python
from django.db import models
class TranscodedFile(models.Model):
file = models.FileField(upload_to='media/')
transcoded_file = models.FileField(blank=True, null=True, editable=False)
python
from django import forms
class TranscodedFileForm(forms.ModelForm):
class Meta:
model = TranscodedFile
fields = ('file',)
python
from django.shortcuts import render
from elastictranscoder.utils import transcode
def upload_file(request):
if request.method == 'POST':
form = TranscodedFileForm(request.POST, request.FILES)
if form.is_valid():
transcoded_file = form.save(commit=False)
transcoded_file.save()
else:
form = TranscodedFileForm()
return render(request, 'upload.html', {'form': form})
html
<form method="post" enctype="multipart/form-data">
{% csrf_token %}
{{ form.as_p }}
</form>