adeverteuil / vid Goto Github PK
View Code? Open in Web Editor NEWA CLI video editor
License: GNU General Public License v3.0
A CLI video editor
License: GNU General Public License v3.0
I'm pretty sure it is against best practices to have huge test binary files inside the git repository. I need to see if I can remove it from there and host it otherwise.
The -b option makes Vid beep when the encoding finishes. Here might be a better beep (more like a bell):
ffplay -f lavfi sine=2000,afade=out:d=2:curve=log
Idea : disable the graphical display with -nodisp
?
When piping a shot that has zero data in it โ such as when the seek value exceeds the length of the file โ the only feedback the user gets on the terminal is "No data found on input".
This message is essentially useless as it does not help the user locate and correct the problem. I think a warning is fine, no need to throw an exception. But the message should explain the probable cause and identify the problematic shot.
The output format is derived from the file extension of the output file specified with --output
. The mapping from an extension to a list of argument to pass to ffmpeg is hardcoded.
Create a "formats" section in the YAML document which allows the user to override this default.
Example:
formats:
ogv: # One itemp per argument.
- -f
- ogg
- -vcodec
- libtheora
- -qscale:v
- 2
- -acodec
- libvorbis
- -qscale:a
- 1
Or:
formats:
ogv:
f: ogg
vcodec: libtheora
qscale:v: 2 # Will the first colon confuse pyyaml?
acodec: libvorbis
qscale:a: 1
# What about options that don't take an argument? Use null value?
Things to think of:
The -ss
option enables timecode information burned in the video frame. When the seek value is greater than 30 seconds, the timecode always start at 20 seconds. This has to do with the fast seek versus the slow seek.
The printed timecode should always start at the seek value.
Vid creates a log
directory and creates very verbose log files in it. It's nice for development but this should be disable by default as of version 1.0.
Option -v
should enable logging and option --logdir=DIR
should specify the log directory to use.
Furthermore, the content of the log directory is erased at each execution of Vid. This is a potential problem. Create timestamped sub-directories instead?
Currently, each filter is a list of two items : the filter name, and the filter arguments.
movie:
- - 42
- vf:
- - filtername
- {argument: value, argument2: value2}
- - filter2
- {arg: v, arg2: v2}
This could be simplified as a list of mappings:
movie:
- - 42
- vf:
- filtername: {argument: value, argument2: value2}
- filter2: {arg: v, arg2: v2}
After Vid has read and parsed the YAML file, print the movie total length and the number of sequences to process before proceeding. This will allow the user to estimate the time required for encoding.
Vid passes the -y
option to ffmpeg subprocesses. However, the user interface should check for existing files and require user interaction before clobbering existing files. There should be a -y
option for vid play
and vid yaml
.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.