-
Notifications
You must be signed in to change notification settings - Fork 4
/
README.txt
93 lines (64 loc) · 3.61 KB
/
README.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
PyTranscode Readme
==================
Copyright (C) 2009 Martin P. Buhr (http://lonelycode.com / twitter: @lonelycode)
PyTranscode is a set of scripts to make handling ffmpeg easier in python,
it enables video information extraction, transcoding, presets, splash image
extraction (multiple) and state reporting (percentage complete)
Contents:
=========
1. What is this?
2. Hopeful Roadmap
3. How to use the scripts
4. License
1. What is this?
================
A while back I wrote a proof-of-concept webapp that basically replicated what
Brightcove and other online video management tools did, and at its heart was a
tool to control FFMPEG - one of the best command-line transcoders out there.
Now the webapp never took off (it was never launched, pending a rewrite), but
I had started on rewriting the engine that would control the transcoder software.
I've since moved my limited attention span to other, shineir things, but thought
I would release this piece of rather nifty and handy code to the public to help
others who want to do something with video and don;t want to fork out a fortune.
2. Hopeful Roadmap
==================
PyTranscode is hopefully going to be part of something bigger - the vision is to
produce a set of django applications which can do the following:
- A storage engine for local or cloud-based storage
- A queue manager for scaling, this again would have vairous back-ends for local
queue management or something like Amazon Queue Service
- A transcode server that can be run on multpile machines and be managed via an
API OR be run in a mode to interact with the queue service
- An API wrapper to control the transcode-server for common tasks
3. How to use the scripts
=========================
There are five files with PyTranscode, these have the following basic functionsality:
- ffmpeg.py: Can be used to build a command line to run ffmpeg for various
settings with input/output
- presets.py: Some presets to use with ffmpeg if you can;t be bothered to
write out the long dictionaries some transcodes require
- runner.py: Runner basically allows you to run ffmpeg in a managed way and
trap the output as well as the percentage complete
- splash.py: This will let you pull thumbnails at equal intervals from the
inpout file and return the filenames
- video_info: Need to know everything about a video file? This basically parses
the -i output from ffmpeg to get all the details and present
them as a class
Depending on what you need, the documentation on how to use each one is in the
header of the file.
If you want to see a test run, there's the file test.py which should show an easy
way to get started with these classes.
4. License
==========
Copyright (C) 2009 Martin P. Buhr (http://lonelycode.com / twitter: @lonelycode)
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
IF YOU USE THIS SOFTWARE DO US A FAVOR AND LET ME KNOW :-)