pip install django-elastic-transcoder
python
AWS_ACCESS_KEY_ID = 'YOUR_AWS_ACCESS_KEY_ID'
AWS_SECRET_ACCESS_KEY = 'YOUR_AWS_SECRET_ACCESS_KEY'
ELASTIC_TRANSCODER_PIPELINE_ID = 'YOUR_ELASTIC_TRANSCODER_PIPELINE_ID'
python
from elastic_transcoder import ElasticTranscoder
def transcode_video(video_file):
transcoder = ElasticTranscoder()
input_key = 'input/videos/' + video_file.name
input_file = video_file.file
output_key = 'output/videos/' + video_file.name.split('.')[0] + '.mp4'
transcoder.create_job(input_key, input_file, output_key)
python
from django.shortcuts import render
from .forms import VideoUploadForm
def upload_video(request):
if request.method == 'POST':
form = VideoUploadForm(request.POST, request.FILES)
if form.is_valid():
video_file = form.cleaned_data['video_file']
transcode_video(video_file)
return render(request, 'success.html')
else:
form = VideoUploadForm()
return render(request, 'upload.html', {'form': form})