Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gummif/naive-ffmpeg
A simple command line FFmpeg wrapper for converting videos to .mp4 or .webm (in parallel). Set quality and scaling with simple parameters.
https://github.com/gummif/naive-ffmpeg
Last synced: about 2 months ago
JSON representation
A simple command line FFmpeg wrapper for converting videos to .mp4 or .webm (in parallel). Set quality and scaling with simple parameters.
- Host: GitHub
- URL: https://github.com/gummif/naive-ffmpeg
- Owner: gummif
- License: gpl-3.0
- Created: 2014-03-20T23:29:19.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2014-08-04T22:17:55.000Z (over 10 years ago)
- Last Synced: 2024-10-15T15:11:54.247Z (3 months ago)
- Language: Shell
- Size: 234 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Naive-FFmpeg
============A simple command line FFmpeg wrapper for converting videos to .mp4 or .webm (in parallel).
Set quality and scaling with simple parameters. The formats determine the codecs: mp4 for x264 and mp3lame; webm for VPx and vorbis.Copyright (c) 2014 Gudmundur Adalsteinsson (GNU General Public License v3). See file LICENSE for license and warranty details.
Requirements
----------* [FFmpeg](http://www.ffmpeg.org) installed
* [Bash](https://en.wikipedia.org/wiki/Bash_(Unix_shell)) shell (for Windows users e.g. Cygwin)Usage
----------Multiple files can be converted and scaled easily in parallel.
E.g., to convert a folder of 1080p .MOV videos to 720p .mp4 (with x264 encoding) in parallel using at most 4 threads (e.g. quad-core), simply excecute in Bash e.g.` $ naiveffmpeg -mp4 -quality high -scale 2:3 -parallel 4 "*.MOV" `
or using the default parameters (-mp4 -quality med -scale 1:1)
` $ naiveffmpeg -parallel 4 "*.MOV" `
The program creates a new thread for every video file. The quality (low, med, high) determines the compression rate which has been optimized for the encoder type and video resolution.
Output example:
` $ naiveffmpeg -mp4 -quality high -parallel 7 "./*.MOV" `
```
-rw-r--r-- 1 gfa users 86214416 Jul 25 16:33 ./MVI_1402.MOV
-rw-r--r-- 1 gfa users 55929720 Jul 26 12:17 ./MVI_1425.MOV
-rw-r--r-- 1 gfa users 430840604 Jul 26 12:30 ./MVI_1426.MOV
-rw-r--r-- 1 gfa users 393173536 Jul 26 12:36 ./MVI_1427.MOV
-rw-r--r-- 1 gfa users 190708020 Jul 26 21:41 ./MVI_1445.MOV
-rw-r--r-- 1 gfa users 63936848 Jul 26 21:41 ./MVI_1446.MOV
-rw-r--r-- 1 gfa users 149726536 Jul 26 21:50 ./MVI_1447.MOVconverting 0:
./MVI_1402.MOV (1920x1080) ->
./MVI_1402.mp4 (1920x1080) at bitrate 6750K
converting 1:
./MVI_1425.MOV (1920x1080) ->
./MVI_1425.mp4 (1920x1080) at bitrate 6750K
converting 2:
./MVI_1426.MOV (1920x1080) ->
./MVI_1426.mp4 (1920x1080) at bitrate 6750K
converting 3:
./MVI_1427.MOV (1920x1080) ->
./MVI_1427.mp4 (1920x1080) at bitrate 6750K
converting 4:
./MVI_1445.MOV (1920x1080) ->
./MVI_1445.mp4 (1920x1080) at bitrate 6750K
converting 5:
./MVI_1446.MOV (1920x1080) ->
./MVI_1446.mp4 (1920x1080) at bitrate 6750K
converting 6:
./MVI_1447.MOV (1920x1080) ->
./MVI_1447.mp4 (1920x1080) at bitrate 6750KConverting 7 files using at most 7 threads...
bash -c ffmpeg -i "./MVI_1402.MOV" -vb 6750K -ab 256k -crf 19 -qmin 3 -qmax 53 -vf "scale=-1:ih*1/1" -vcodec libx264 -acodec libmp3lame -threads 1 -y "./MVI_1402.mp4" /dev/null 2>&1
bash -c ffmpeg -i "./MVI_1425.MOV" -vb 6750K -ab 256k -crf 19 -qmin 3 -qmax 53 -vf "scale=-1:ih*1/1" -vcodec libx264 -acodec libmp3lame -threads 1 -y "./MVI_1425.mp4" /dev/null 2>&1
bash -c ffmpeg -i "./MVI_1426.MOV" -vb 6750K -ab 256k -crf 19 -qmin 3 -qmax 53 -vf "scale=-1:ih*1/1" -vcodec libx264 -acodec libmp3lame -threads 1 -y "./MVI_1426.mp4" /dev/null 2>&1
bash -c ffmpeg -i "./MVI_1427.MOV" -vb 6750K -ab 256k -crf 19 -qmin 3 -qmax 53 -vf "scale=-1:ih*1/1" -vcodec libx264 -acodec libmp3lame -threads 1 -y "./MVI_1427.mp4" /dev/null 2>&1
bash -c ffmpeg -i "./MVI_1445.MOV" -vb 6750K -ab 256k -crf 19 -qmin 3 -qmax 53 -vf "scale=-1:ih*1/1" -vcodec libx264 -acodec libmp3lame -threads 1 -y "./MVI_1445.mp4" /dev/null 2>&1
bash -c ffmpeg -i "./MVI_1446.MOV" -vb 6750K -ab 256k -crf 19 -qmin 3 -qmax 53 -vf "scale=-1:ih*1/1" -vcodec libx264 -acodec libmp3lame -threads 1 -y "./MVI_1446.mp4" /dev/null 2>&1
bash -c ffmpeg -i "./MVI_1447.MOV" -vb 6750K -ab 256k -crf 19 -qmin 3 -qmax 53 -vf "scale=-1:ih*1/1" -vcodec libx264 -acodec libmp3lame -threads 1 -y "./MVI_1447.mp4" /dev/null 2>&1
```