#pyup-transcoder
a Python-based software to transcode videos and upload files to a remote server or S3-bucket
##Usage ~$ python transcoder.py -h usage: transcoder.py [-h] -in INPUT [-out OUTPUT] [-r] [-t] [-up] [-via {ftp,s3}] [-ftphost HOST] [-ftpport PORT] [-ftpusername USERNAME] [-ftppassword PASSWORD] [-ftpbasedir BASEDIR] [-ftppath PATH] [-s3keyid S3KEYID] [-s3secretkey S3SECRETKEY] [-s3bucket BUCKET]
A simple transcoder and uploader software
optional arguments:
-h, --help show this help message and exit
-in INPUT, --input INPUT
input folder
-out OUTPUT, --output OUTPUT
optional output folder
-r, --removelocal remove created files after execution
-t, --transcode whether to transcode or not
-up, --upload whether to upload or not
-via {ftp,s3} upload with [ftp] or [s3]
-ftphost HOST FTP host
-ftpport PORT FTP port
-ftpusername USERNAME
FTP username
-ftppassword PASSWORD
FTP password
-ftpbasedir BASEDIR FTP base directory to connect to
-ftppath PATH FTP destination path to be created
-s3keyid S3KEYID Your AWS Access Key ID
-s3secretkey S3SECRETKEY
Your AWS Secret Access Key
-s3bucket BUCKET S3 bucket name
-f, --externalfile whether parameters should be taken from an external
file
-extpath EXTPATH, --externalfilepath EXTPATH
path of external file contining parameters
Note configuration parameters from command line take precedence over file ones.
Trascoding is performed using GStreamer framework. Videos are encoded using a pipeline with the following features:
- H.264/AVC as video codec
- AAC as audio codec
- MP4 as container
A custom GStreamer pipeline can be provided via file (A basic knowledge of GStreamer is required)
Upload is allowed via:
- FTP (authenticated/anonymous)
- Amazon Web Services S3 (exinsting/new Bucket)
Credentials and several options can be provided via file
- OO version
- GStreamer via gst-python lib
- GUI
- FTP TLS