django-video-transcoding
Simple video transcoding application for Django Framework
Installation
System requirements
In case of latest Ubuntu LTS (18.04):
- ffmpeg-4.0
$> sudo add-apt-repository ppa:jonathonf/ffmpeg-4
$> sudo apt install ffmpeg
- mediainfo
$> sudo apt install mediainfo
- RabbitMQ
$> sudo apt install rabbitmq-server
django-video-transcoding
pip install django-video-transcoding
Configure Django
Edit your project settings.py
INSTALLED_APPS += ['video_transcoding']
Env
Common env variables used in django web server and celery
DJANGO_SETTINGS_MODULE=YOUR_PROJECT.settings
VIDEO_TRANSCODING_CELERY_BROKER_URL=amqp://guest:guest@rabbitmq:15672/
Celery-only env variables:
VIDEO_TEMP_DIR=/tmp
VIDEO_TRANSCODING_CELERY_CONCURRENCY=2
VIDEO_ORIGINS='http://origin-1.localhost/video,http://origin-2.localhost/video'
Start celery worker
$> celery worker -A video_transcoding.celery
Demo project
Run admin, storage and celery worker
docker-compose up
- http://localhost:8000/admin/ - Django admin
- http://storage.localhost:8000/videos/ - WebDAV for sources & results
- http://storage.localhost:8000/hls/ - HLS stream endpoint
Transcode something
curl -T cat.mp4 http://storage.localhost:8080/videos/sources/cat.mp4- Create new video with link above
- Wait till video will change status to DONE.
- On video change form admin page there is a sample video player.
TBD:
- travis-ci
- sphinx docs - autodoc + manual
- coverage
- typing
- badges
- video hosting demo project with docker-compose, nginx and player demo
Metadata
Release files for django-video-transcoding 0.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| django_video_transcoding-0.0.2.tar.gz | 11.4 kB | Details |
Release files / django_video_transcoding-0.0.2.tar.gz
| Download URL | django_video_transcoding-0.0.2.tar.gz |
|---|---|
| Size | 11.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
127c43a1f16eabe1ed8d70f3abf0ec6f3c0745ce14244abcbfa11d91b0559dba
|
|
BLAKE2b-256 checksum How to use checksums |
c2ab79939157e1fd908adf0887c1d0b0e6a42209d4b552d4f700e87e6fedcb9a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/2.7.17
|