pip install django-elastic-transcoder
python
INSTALLED_APPS = [
...
'elastic_transcoder',
...
]
ELASTIC_TRANSCODER_PIPELINE_ID = 'your-pipeline-id'
ELASTIC_TRANSCODER_REGION = 'your-aws-region'
ELASTIC_TRANSCODER_ACCESS_KEY_ID = 'your-access-key-id'
ELASTIC_TRANSCODER_SECRET_ACCESS_KEY = 'your-secret-access-key'
ELASTIC_TRANSCODER_BUCKET = 'your-s3-bucket'
python
from elastic_transcoder.models import TranscoderJob
from django.http import JsonResponse
def transcode_video(request):
input_key = 'path/to/input/video'
output_key = 'path/to/output/video'
job = TranscoderJob(input_key=input_key, output_key=output_key)
job.create()
return JsonResponse({'message': 'Transcoding job created.'})
python
from elastic_transcoder.signals import transcoder_job_status_changed
def handle_transcoder_job_status_changed(sender, job, **kwargs):
if job.status == 'COMPLETED':
elif job.status == 'ERROR':
transcoder_job_status_changed.connect(handle_transcoder_job_status_changed)