# Video transcoding daemon
This project implements a daemon that wraps ffmpeg for video transcoding and listens for jobs over http.
Intended to be used as backend for web applications that deal with video encoding in any way so they don't
have to mess with the long running background processes, queueing and ffmpeg command line parameters.
To use this you create a config file that defines which applications can use which directory for media and
the encoding profiles the applications can use.
An example configuration:
```conf
[general]
port=12380
listen=127.0.0.1
[user-mediacenter]
password=verysecret
paths=/mnt/storage/videos
callback=http://127.0.0.1/transcode-callback
[profile-h264]
container=mkv
vcodec=h264
vpolicy=always
acodec=aac
apolicy=always
vbitrate=2M
vbitratemax=3M
abitrate=192k
abitratemax=1M
```
This defines the user `mediacenter` with the password `verysecret` which can start transcoding jobs in any path starting
with `/mnt/storage/videos`. It also defines a callback url for reporting job progress to the requesting application.
It also defines the profile called `h264` which always encodes to h264+aac in a mkv container.
The default policy for transcoded is to transcode as little as possible unless explicitly configured to transcode anything.
The default config doesn't transcode the stream if the source codec matches the destination codec(s). It does always
recreate the container for the streams.
It is possible to define multiple output codecs seperated by a comma, in that case it won't transcode if the source codec
matches any of the listed codecs. If the source doesn't match any codec then it will transcode it to the first specified
codec.
This project implements a daemon that wraps ffmpeg for video transcoding and listens for jobs over http.
Intended to be used as backend for web applications that deal with video encoding in any way so they don't
have to mess with the long running background processes, queueing and ffmpeg command line parameters.
To use this you create a config file that defines which applications can use which directory for media and
the encoding profiles the applications can use.
An example configuration:
```conf
[general]
port=12380
listen=127.0.0.1
[user-mediacenter]
password=verysecret
paths=/mnt/storage/videos
callback=http://127.0.0.1/transcode-callback
[profile-h264]
container=mkv
vcodec=h264
vpolicy=always
acodec=aac
apolicy=always
vbitrate=2M
vbitratemax=3M
abitrate=192k
abitratemax=1M
```
This defines the user `mediacenter` with the password `verysecret` which can start transcoding jobs in any path starting
with `/mnt/storage/videos`. It also defines a callback url for reporting job progress to the requesting application.
It also defines the profile called `h264` which always encodes to h264+aac in a mkv container.
The default policy for transcoded is to transcode as little as possible unless explicitly configured to transcode anything.
The default config doesn't transcode the stream if the source codec matches the destination codec(s). It does always
recreate the container for the streams.
It is possible to define multiple output codecs seperated by a comma, in that case it won't transcode if the source codec
matches any of the listed codecs. If the source doesn't match any codec then it will transcode it to the first specified
codec.
Metadata
Release files for python-transcoded 0.4.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 | |
|---|---|---|---|
| python-transcoded-0.4.2.tar.gz | 8.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| python_transcoded-0.4.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 19.9 kB
Release files / python-transcoded-0.4.2.tar.gz
| Download URL | python-transcoded-0.4.2.tar.gz |
|---|---|
| Size | 8.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5e5848d7187ae9db6818e62d73291eaa61c4321f984eecfe2752ca4146632eed
|
|
BLAKE2b-256 checksum How to use checksums |
b7ddd928af8bf31fdfd2234a4113e3c6c8a2530ee587158467d2d0b234faec3b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / python_transcoded-0.4.2-py3-none-any.whl
| Download URL | python_transcoded-0.4.2-py3-none-any.whl |
|---|---|
| Size | 11.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
282308fa2f0ad4dd8589a1cf2b70b00a80abadca9eca31a57193e1acea5cfccd
|
|
BLAKE2b-256 checksum How to use checksums |
b6a6cfb396815c2d06facda043f1bf3139effa8af62a15bd2ff09a50515288a3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |