User Tools

Site Tools


ffmpeg:conversions:convert_h264_to_h265

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
ffmpeg:conversions:convert_h264_to_h265 [2023/06/13 10:55] peterffmpeg:conversions:convert_h264_to_h265 [2023/11/01 21:23] (current) peter
Line 1: Line 1:
 ====== ffmpeg - Conversions - Convert H264 to H265 ====== ====== ffmpeg - Conversions - Convert H264 to H265 ======
  
-===== Software Encoding =====+===== Convert h.264 to h.265 (no change in resolution) =====
  
 <code bash> <code bash>
-ffmpeg -i a.mp4 -c:v libx265 -map 0:v -c:a copy -map 0:a -c:s copy b.mkv+ffmpeg -i input.mp4 -c:v libx265 -vtag hvc1 -c:a copy output.mp4
 </code> </code>
  
 ---- ----
  
-===== Using GPU Hardware Encoding =====+===== Software Encoding =====
  
 <code bash> <code bash>
-ffmpeg -i a.mp4 -vaapi_device /dev/dri/renderD128 -vf format=nv12,hwupload -c:v hevc_vaapi -map 0:v:0 -map 0:a? -c:a copy -map 0:s? -c:s copy -rc_mode 1 -qp 25 -map_chapters 0 b.mkv+ffmpeg -i a.mp4 -c:v libx265 a.mkv
  
-ffmpeg -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -i a.mp4 -c:v hevc_vaapi -map 0:v:0 -map 0:a? -c:a copy -map 0:s? -c:s copy -b:a 320k -global_quality 25 k.mkv+ffmpeg -i a.mp4 -c:v libx265 -map 0:v -c:a copy -map 0:-c:s copy b.mkv
  
-ffmpeg -init_hw_device vaapi=amd:/dev/dri/renderD128 -hwaccel vaapi -hwaccel_output_format vaapi -hwaccel_device amd -filter_hw_device amd -i a.mp4 -vf 'format=nv12|vaapi,hwupload' -y -c:v hevc_vaapi -map 0:v:-map 0:a? -c:copy -map 0:s? -c:s copy -qp:v 28 b.mkv+ffmpeg -i a.mp4 -c:v libx265 -map 0:v -c:a copy -map 0:a? -c:copy -map 0:s? b.mkv 
 +</code>
  
 +<WRAP info>
 +**NOTE:**  **libx265** is a software encoder.
  
-ffmpeg -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -i a.mp4 -c:v hevc_vaapi b.mkv+  * It does not support hardware encoding.
  
-ffmpeg -threads 16 -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -i a.mp4 -c:v hevc_vaapi c.mkv+</WRAP> 
 + 
 +---- 
 + 
 +===== Using GPU Hardware Encoding ===== 
 + 
 +<code bash> 
 +ffmpeg -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -i a.mp4 -c:v hevc_vaapi a.mkv 
 + 
 +ffmpeg -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -i a.mp4 -c:v hevc_vaapi -map 0:v -c:a copy -map 0:a -c:s copy a.mkv 
 + 
 +ffmpeg -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -i a.mp4 -c:v hevc_vaapi -map 0:v -c:a copy -map 0:a? -c:s copy -map 0:s? a.mkv
 </code> </code>
  
 <WRAP info> <WRAP info>
-**NOTE:** These allow the GPU to be used:+**NOTE:**  This allows the GPU to be used:
  
 <code bash> <code bash>
Line 48: Line 62:
  
 ---- ----
 +
 +===== Keeping the output size low, similar to Software encoding =====
 +
  
 <code bash> <code bash>
Line 62: Line 79:
  
 </WRAP> </WRAP>
 +
 +----
 +
 +==== Other examples ====
 +
 +<code bash>
 +ffmpeg -i a.mp4 -vaapi_device /dev/dri/renderD128 -vf format=nv12,hwupload -c:v hevc_vaapi -map 0:v:0 -map 0:a? -c:a copy -map 0:s? -c:s copy -rc_mode 1 -qp 25 -map_chapters 0 b.mkv
 +
 +ffmpeg -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -i a.mp4 -c:v hevc_vaapi -map 0:v:0 -map 0:a? -c:a copy -map 0:s? -c:s copy -b:a 320k -global_quality 25 k.mkv
 +
 +ffmpeg -init_hw_device vaapi=amd:/dev/dri/renderD128 -hwaccel vaapi -hwaccel_output_format vaapi -hwaccel_device amd -filter_hw_device amd -i a.mp4 -vf 'format=nv12|vaapi,hwupload' -y -c:v hevc_vaapi -map 0:v:0 -map 0:a? -c:a copy -map 0:s? -c:s copy -qp:v 28 b.mkv
 +
 +
 +ffmpeg -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -i a.mp4 -c:v hevc_vaapi b.mkv
 +
 +ffmpeg -threads 16 -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -i a.mp4 -c:v hevc_vaapi c.mkv
 +</code>
 +
 +----
 +
 +=== References ===
 +
 +https://trac.ffmpeg.org/wiki/Encode/H.265
  
ffmpeg/conversions/convert_h264_to_h265.1686653753.txt.gz · Last modified: 2023/06/13 10:55 by peter

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki