45 lines
1.9 KiB
Markdown
45 lines
1.9 KiB
Markdown
|
|
# Automated HEVC-Video-Converter 1.0
|
|
|
|
A PowerShell script for converting video to the HEVC video format using GPU hardware acceleration with NVEnc for Windows.
|
|
|
|
The main advantage is that you can (usually) save a lot of disk space this way.
|
|
|
|
![image](/attachments/985e0fa6-ec4a-4ad0-a1c7-d70f59e7a23d)
|
|
|
|
## Space Saving Examples
|
|
|
|
- 2.5GB MP4 to 500MB HEVC MP4
|
|
- 3GB MP4 to 800MB HEVC MP4
|
|
|
|
_Results vary and depend on the input video's format, bitrate etc._
|
|
|
|
## Minimum System Requirements
|
|
|
|
- Computer with at least two CPU cores and 4GB Ram
|
|
- Recent nvidia graphics card ([see: NVENC support matrix](https://developer.nvidia.com/video-encode-decode-gpu-support-matrix))
|
|
- Latest nvidia graphics drivers
|
|
|
|
|
|
## Encoding
|
|
|
|
During encoding (conversion), high **CPU** and **GPU** usage is normal. Make sure that you only run the script if no other graphics processes are running on the computer. (Example computer games)
|
|
|
|
The script converts the files next to the original with '-HEVC' at the end or by replacing the string x264 (old) in the file name with x265.
|
|
After conversion, a test of the new video file is performed to ensure its integrity.
|
|
If this test is successful, the old file is deleted.
|
|
If not, the failed conversion file is deleted and logged.
|
|
|
|
|
|
## Script Usage
|
|
|
|
1. Clone this repository on your computer
|
|
2. Download the latest NVEnc for Windows: https://github.com/rigaya/NVEnc/releases
|
|
3. Extract the files to "video-in-place-hevc-converter\encoder\" and replace the old files.
|
|
4. Edit the $videoPath variable in the PowerShell file to point to the folder of your "video files" to convert. (**ATTENTION: The ending-slash must be preserved in the path specification!**)
|
|
5. Execute **convert_Videos.ps1** to convert the video files under the specified path to HEVC.
|
|
|
|
|
|
## Extra Content (_extras folder)
|
|
|
|
* **manually_review_videos.ps1** - Redoes the review process using the "review_needed.log" -> before useing set the "$logFolderName" variable in file. |