- Aug 11, 2017
- 10,184
- 80,922
Some animation collections can be huge, sometimes well above 50Gb. If you don't need 8K 60FPS 50K bitrate videos to fap, you can compress your collections by following these instructions.
1. First of all, remove all the developer's files, such as .blend, or video timelapses, etc. Artists often add work in progress files and you may want to remove these as well. You only want to keep the animations [unless the artist also makes pictures!, in which case compress these files following the tutorial for compressing pictures].
Use the search function (ctrl+F) and type the extensions of the files you want to remove (eg. ".blend"). The collection could be much lighter after this.
2. For the compression use the freeware
3. You need to configure the preset:
a. go to "edit", then "presets".
b. Select "MPEG-4" in the first list, then "MPEG-4 720p" in the second list.
c. Paste this code in the Preset command line parameters:
d. First click on "add / update", then "save".
e. In the "Output details" tab, select the preset "MPEG-4" and "MPEG-4 720p".
In "Output folder", select "Use source folder" (note: you can select another folder, but then you will lose the original folder structure. If you select another folder, you can disregard the part about the underscores).
3. Then you need to prepare the files. If all the video files are in one folder with no subfolder, skip to 4. Otherwise, if the videos are spread over many subfolders, you need to do this:
- Use the search function (ctrl+F), and type a dot: ".", it will list all the files in the folder, including subfolders. If there are many pictures, you can search by extension, eg. ".mp4", and it will only list video files (note: some artists use unusual video formats, such as .avi, .wmv, .flv, etc., you may need to search for them too).
- Select all the video files you want to compress. You can sort by extension.
- *In case you have underscores in the file names*: you need to remove them. On Linux it's easy, but not on Windows. The easiest way I have found is to use a command line: hold shift and right click in your main folder, "open powershell window here", then paste:
It will replace your underscores with spaces.
Once you have selected all the files you want to convert, skip to 4.
4. Drag and drop all the selected files to WinFF. Important: do not navigate away from your window with the original files, nor deselect them!
Then select "Convert". It will open another window summarising the tasks. Click "run".
Another window will open. A line in blue will appear once the conversion is done. It can be long.
5. Once the conversion is done, return to your window with the original files. Press "delete".
Run the Powershell once more and paste this code (this is because WinFF adds a o_ prefix to all the new files that shares the same name with the original ones):
Tadam, your big original files should have been replaced by the compressed files by now, with the original folder structure preserved.
The current preset should save about 80% space for files in 1080p with a 10K bitrate, and up to 99% for some monster 4K files!
Feel free to experiment with the FFmpeg code.
1. First of all, remove all the developer's files, such as .blend, or video timelapses, etc. Artists often add work in progress files and you may want to remove these as well. You only want to keep the animations [unless the artist also makes pictures!, in which case compress these files following the tutorial for compressing pictures].
Use the search function (ctrl+F) and type the extensions of the files you want to remove (eg. ".blend"). The collection could be much lighter after this.
2. For the compression use the freeware
You must be registered to see the links
, a visual interface for FFmpeg:
You must be registered to see the links
3. You need to configure the preset:
a. go to "edit", then "presets".
b. Select "MPEG-4" in the first list, then "MPEG-4 720p" in the second list.
c. Paste this code in the Preset command line parameters:
Code:
-crf 20.0 -vcodec libx264 -filter:v scale=-2:720 -preset slow -acodec aac -ar 48000 -b:a 128k -coder 1 -flags +loop -cmp chroma -partitions +parti4x4+partp8x8+partb8x8 -me_method hex -subq 6 -me_range 16 -g 250 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -b_strategy 1 -threads 0
e. In the "Output details" tab, select the preset "MPEG-4" and "MPEG-4 720p".
In "Output folder", select "Use source folder" (note: you can select another folder, but then you will lose the original folder structure. If you select another folder, you can disregard the part about the underscores).
3. Then you need to prepare the files. If all the video files are in one folder with no subfolder, skip to 4. Otherwise, if the videos are spread over many subfolders, you need to do this:
- Use the search function (ctrl+F), and type a dot: ".", it will list all the files in the folder, including subfolders. If there are many pictures, you can search by extension, eg. ".mp4", and it will only list video files (note: some artists use unusual video formats, such as .avi, .wmv, .flv, etc., you may need to search for them too).
- Select all the video files you want to compress. You can sort by extension.
- *In case you have underscores in the file names*: you need to remove them. On Linux it's easy, but not on Windows. The easiest way I have found is to use a command line: hold shift and right click in your main folder, "open powershell window here", then paste:
Code:
get-childitem *.mp4 -Recurse | foreach {rename-item $_ $_.name.replace("_"," ")}
Once you have selected all the files you want to convert, skip to 4.
4. Drag and drop all the selected files to WinFF. Important: do not navigate away from your window with the original files, nor deselect them!
Then select "Convert". It will open another window summarising the tasks. Click "run".
Another window will open. A line in blue will appear once the conversion is done. It can be long.
5. Once the conversion is done, return to your window with the original files. Press "delete".
Run the Powershell once more and paste this code (this is because WinFF adds a o_ prefix to all the new files that shares the same name with the original ones):
Code:
get-childitem *.mp4 -Recurse | foreach {rename-item $_ $_.name.replace("o_","")}
The current preset should save about 80% space for files in 1080p with a 10K bitrate, and up to 99% for some monster 4K files!
Feel free to experiment with the FFmpeg code.
Last edited: