Windows機で動画エンコード
環境
- CPU: Core i7 9750H
- GPU: GeForce GTX 1660Ti
- OS: Windows 10 Home 1903
素材
前回と同じように1080p 29.97Fに変換します。
- sony_xavcs_30p.MP4
- 1920 × 1080 29.97fps
- 50Mbps
- Sony RX100M4 X-AVCS
- 11175F
- 6分13秒
- canon_uhd.MP4
- gh5_422_uhd.MP4
- 3840x2160 29.97fps
- 150Mbps
- LUMIX GH5
- 1770F
- 59秒
Adobe Media Encoder編
Input | Codec | Min:Sec | FPS |
---|---|---|---|
sony_xavcs_30p.MP4 | H.264 | 0:26 | 429 |
↑ | HEVC(H.265) | 0:41 | 272 |
canon_uhd.MP4 | H.264 | 0:12 | 118 |
↑ | HEVC(H.265) | 0:13 | 109 |
gh5_422_uhd.MP4 | H.264 | 0:27 | 65 |
↑ | HEVC(H.265) | 0:28 | 63 |
sony_xavcs_30p.MP4 と canon_uhd.MP4の場合はIntel内臓GPUでデコードを行い、GeForceでエンコードを行なっているため、かなり早いです。
gh5_422_uhd.MP4の場合は、デコードをCPUで行なっているためこちらが性能は下がり気味です。
FFmpeg編
FFmpegはChocolateyでインストールしたバージョン4.2.2を使用します。
Input | Codec | FPS |
---|---|---|
sony_xavcs_30p.MP4 | libx264 | 44 |
↑ | h264_nvenc | 266 |
↑ | libx265 | 16 |
↑ | hevc_nvenc | 166 |
canon_uhd.MP4 | libx264 | 40 |
↑ | h264_nvenc | 92 |
↑ | libx265 | 17.5 |
↑ | hevc_nvenc | 91 |
gh5_422_uhd.MP4 | libx264 | 32 |
↑ | h264_nvenc | 80 |
↑ | libx265 | 21.01 |
↑ | hevc_nvenc | 78 |
ffmpegの場合は全てCPUでデコードを行います。Adobe Media Encoder程速度は出ていない印象です。ただしnvencの性能は高いです。
ffmpeg -y -i sony_xavcs_30p.MP4 -c:v libx264 -b:v 5000k fhd2fhd_x264_1.mp4 ffmpeg -y -i sony_xavcs_30p.MP4 -c:v h264_nvenc -b:v 5000k fhd2fhd_nvenc_h264_1.mp4 ffmpeg -y -i sony_xavcs_30p.MP4 -c:v libx265 -b:v 5000k fhd2fhd_h265_1.mp4 ffmpeg -y -i sony_xavcs_30p.MP4 -c:v hevc_nvenc -b:v 5000k fhd2fhd_nvenc_hevc_1.mp4 ffmpeg -y -i canon_uhd.MP4 -vf "scale=1920:-1" -c:v libx264 -b:v 5000k uhd2fhd_x264_1.mp4 ffmpeg -y -i canon_uhd.MP4 -vf "scale=1920:-1" -c:v h264_nvenc -b:v 5000k uhd2fhd_nvenc_h264_1.mp4 ffmpeg -y -i canon_uhd.MP4 -vf "scale=1920:-1" -c:v libx265 -b:v 5000k uhd2fhd_h265_1.mp4 ffmpeg -y -i canon_uhd.MP4 -vf "scale=1920:-1" -c:v hevc_nvenc -b:v 5000k uhd2fhd_nvenc_h265_1.mp4 ffmpeg -y -i gh5_422_uhd.MP4 -vf "scale=1920:-1" -c:v libx264 -b:v 5000k -pix_fmt yuv420p uhd422_to_fhd_x264_1.mp4 ffmpeg -y -i gh5_422_uhd.MP4 -vf "scale=1920:-1" -c:v h264_nvenc -b:v 5000k -pix_fmt yuv420p uhd422_to_fhd_nvenc_h264_1.mp4 ffmpeg -y -i gh5_422_uhd.MP4 -vf "scale=1920:-1" -c:v libx265 -b:v 5000k -pix_fmt yuv420p uhd422_to_fhd_h265_1.mp4 ffmpeg -y -i gh5_422_uhd.MP4 -vf "scale=1920:-1" -c:v hevc_nvenc -b:v 5000k -pix_fmt yuv420p uhd422_to_fhd_nvenc_h265_1.mp4