PDA

View Full Version : H264 to H265


MrBlonde89
27-11-2018, 16:00
Ciao a tutto il forum,
Ho dei video MKV in H264, navigando qua e la ho scoperto che esiste anche il codec H265 , più efficiente in termini di qualità/spazio occupato. Per tanto ho pensato (da profano) ma se trasformassi tutti i miei mkv che già possiedo in H265 perderei qualità rispetto all'H264? o la compressione risulterebbe lossless? vi ringrazio, ciao!

superexpert
28-11-2018, 08:07
Io li lascerei come sono, per più di un motivo.

Riducendone sensibilmente le dimensioni perderesti in qualità (ogni conversione fa perdere qualità). E' vero che l'H265 è efficiente, ma volendo mantenere una qualità quasi uguale all'originale non avresti un grande guadagno di spazio, o comunque non tale da giustificare il tempo e la fatica (per il tuo pc) che ci vogliono per fare la conversione.

Inoltre l'H264 ha il grande vantaggio che lo leggi dovunque: lo metti su una chiavetta, vai a casa di un amico che ha un TV vecchiotto con presa USB e lo vedi senza problemi. Per l'H265 non è (ancora) così: ci vuole per forza il pc o comunque un dispositivo molto recente per poterlo leggere

MrBlonde89
28-11-2018, 10:20
Ho fatto qualche test Encodando in MKV H.265 1080p, lasciando gli FPS come l'originale e impostando l'RF a 22 e a livello di spazio, non è una differenza trascurabile:
AVC:
Complete name : test.mkv
Format : Matroska
Format version : Version 2
File size : 7.96 GiB
Duration : 2 h 32 min
Overall bit rate : 7 453 kb/s
Movie name : test
Encoded date : UTC 2009-12-06 13:59:08
Writing application : mkvmerge v2.9.9 ('Tutu') built on Nov 25 2009 21:13:32
Writing library : libebml v0.7.9 + libmatroska v0.8.1

Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High
Format level : 4.1
Format settings, CABAC : Yes
Format settings, ReFrames : 5 frames
Codec ID : V_MPEG4/ISO/AVC
Duration : 2 h 32 min
Nominal bit rate : 6 429 kb/s
Width : 1 920 pixels
Height : 800 pixels
Display aspect ratio : 2.40:1
Frame rate mode : Constant
Frame rate : 23.976 FPS
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.175
Title : Inglourious Basterds
Writing library : x264 core 79 r1354 636f98f
Encoding settings : cabac=1 / ref=5 / deblock=1:-2:-1 / analyse=0x3:0x133 / me=umh / subme=9 / psy=1 / psy_rd=1.0:0.0 / mixed_ref=1 / me_range=32 / chroma_me=1 / trellis=2 / 8x8dct=1 / cqm=0 / deadzone=21,11 / chroma_qp_offset=-2 / threads=6 / nr=0 / decimate=0 / mbaff=0 / constrained_intra=0 / bframes=5 / b_pyramid=0 / b_adapt=2 / b_bias=0 / direct=3 / wpredb=1 / wpredp=2 / keyint=240 / keyint_min=24 / scenecut=40 / rc_lookahead=50 / rc=2pass / mbtree=1 / bitrate=6429 / ratetol=1.0 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / vbv_maxrate=50000 / vbv_bufsize=50000 / ip_ratio=1.40 / aq=1:1.00
Language : English
Default : Yes
Forced : Yes


HEVC:
Complete name : test.mkv
Format : Matroska
Format version : Version 4
File size : 2.43 GiB
Duration : 2 h 32 min
Overall bit rate : 2 272 kb/s
Movie name : test
Encoded date : UTC 2018-11-16T10:43:34Z
Writing application : HandBrake 1.1.2 2018091900
Writing library : Lavf57.7.2

Video
ID : 1
Format : HEVC
Format/Info : High Efficiency Video Coding
Format profile : Main
Format level : 4
Format tier : Main
Codec ID : V_MPEGH/ISO/HEVC
Duration : 2 h 32 min
Width : 1 920 pixels
Height : 800 pixels
Display aspect ratio : 2.40:1
Frame rate mode : Constant
Frame rate : 23.976 FPS
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Writing library : x265 2.6:[Linux][GCC 6.4.0][64 bit] 8bit+10bit+12bit
Encoding settings : cpuid=1050111 / frame-threads=3 / wpp / no-pmode / no-pme / no-psnr / no-ssim / log-level=2 / input-csp=1 / input-res=1920x800 / interlace=0 / total-frames=0 / level-idc=0 / high-tier=1 / uhd-bd=0 / ref=5 / no-allow-non-conformance / no-repeat-headers / annexb / no-aud / no-hrd / info / hash=0 / no-temporal-layers / open-gop / min-keyint=24 / keyint=240 / bframes=8 / b-adapt=2 / b-pyramid / bframe-bias=0 / rc-lookahead=40 / lookahead-slices=0 / scenecut=40 / no-intra-refresh / ctu=64 / min-cu-size=8 / no-rect / no-amp / max-tu-size=32 / tu-inter-depth=3 / tu-intra-depth=3 / limit-tu=4 / rdoq-level=2 / dynamic-rd=0.00 / no-ssim-rd / signhide / no-tskip / nr-intra=0 / nr-inter=0 / no-constrained-intra / no-strong-intra-smoothing / max-merge=4 / limit-refs=1 / limit-modes / me=3 / subme=4 / merange=57 / temporal-mvp / weightp / weightb / no-analyze-src-pics / deblock=0:0 / sao / no-sao-non-deblock / rd=6 / no-early-skip / rskip / no-fast-intra / no-tskip-fast / no-cu-lossless / b-intra / no-splitrd-skip / rdpenalty=0 / psy-rd=2.00 / psy-rdoq=1.00 / no-rd-refine / analysis-reuse-mode=0 / no-lossless / cbqpoffs=0 / crqpoffs=0 / rc=crf / crf=22.0 / qcomp=0.60 / qpstep=4 / stats-write=0 / stats-read=0 / ipratio=1.40 / pbratio=1.30 / aq-mode=1 / aq-strength=1.00 / cutree / zone-count=0 / no-strict-cbr / qg-size=32 / no-rc-grain / qpmax=69 / qpmin=0 / no-const-vbv / sar=1 / overscan=0 / videoformat=5 / range=0 / colorprim=1 / transfer=1 / colormatrix=1 / chromaloc=0 / display-window=0 / max-cll=0,0 / min-luma=0 / max-luma=255 / log2-max-poc-lsb=8 / vui-timing-info / vui-hrd-info / slices=1 / no-opt-qp-pps / no-opt-ref-list-length-pps / no-multi-pass-opt-rps / scenecut-bias=0.05 / no-opt-cu-delta-qp / no-aq-motion / no-hdr / no-hdr-opt / no-dhdr10-opt / analysis-reuse-level=5 / scale-factor=0 / refine-intra=0 / refine-inter=0 / refine-mv=0 / no-limit-sao / ctu-info=0 / no-lowpass-dct / refine-mv-type=0 / copy-pic=1
Default : Yes
Forced : No
Color range : Limited
Color primaries : BT.709
Transfer characteristics : BT.709
Matrix coefficients : BT.709

La differenza è ben di 7.96GB Vs 2.43GB, che direi che è un bel risparmio.
Ho encodato solo il video, senza toccare né audio né sottotitoli.
Detto ciò qualcosa si perde, però bisogna valutare se si riesce ad apprezzare ad occhio nudo.

Però una cosa non mi è chiara, Tralasciando la mera prestazione sul tempo e velocità, in molti forum si legge che la bontà di un encoding cambia dall'hardware (tendenzialmente è meglio fare encoding con la CPU rispetto alla GPU). è vero??