Selur's Little Message Board
Is SVT-AV1 encoder implementation a planned feature? - Printable Version

+- Selur's Little Message Board (https://forum.selur.net)
+-- Forum: Hybrid - Support (https://forum.selur.net/forum-1.html)
+--- Forum: Problems & Questions (https://forum.selur.net/forum-3.html)
+--- Thread: Is SVT-AV1 encoder implementation a planned feature? (/thread-965.html)

Pages: 1 2


Is SVT-AV1 encoder implementation a planned feature? - Execrated - 02.04.2019

If not, if there a limitation that would prevent it from being added?


RE: Is SVT-AV1 encoder implementation a planned feature? - Selur - 02.04.2019

Yes it is planned.
Waiting for builds which support pipe input, since I'm not planning to support it while humongous temporary files are needed.
+ https://github.com/jb-alvarado/media-autobuild_suite/ doesn't support it atm. and there are some issues compiling it.


Cu Selur


RE: Is SVT-AV1 encoder implementation a planned feature? - erjigit17 - 20.04.2020

(02.04.2019, 05:39)Selur Wrote: Yes it is planned.
Waiting for builds which support pipe input, since I'm not planning to support it while humongous temporary files are needed.
+ https://github.com/jb-alvarado/media-autobuild_suite/ doesn't support it atm. and there are some issues compiling it.


Cu Selur

https://github.com/m-ab-s/media-autobuild_suite

already appeared on the list svt av1

looking forward to update


RE: Is SVT-AV1 encoder implementation a planned feature? - Selur - 20.04.2020

Yes, I noticed that a few days ago, it's on my todo list, but I'm too busy atm. fixing bugs.
So once I fix the currently reported problems I'll try to look at it.

Cu Selur


RE: Is SVT-AV1 encoder implementation a planned feature? - Selur - 20.04.2020

Had a quick look at the options:
------------------------------------------- SVT-AV1 Encoder Usage: SvtAv1EncApp.exe <options> -b dst_filename -i src_filename Options: --help Show usage options and exit -i --input Input filename -b --output Output filename --errlog Error filename -o --recon Recon filename --stat-file Stat filename Encoder Global Options: -w --width Frame width -h --height Frame height -n --frames Stop encoding after n input frames --nb Buffer n input frames --color-format Set encoder color format(EB_YUV400, EB_YUV420, EB_YUV422, EB_YUV444) --profile Bitstream profile number to use(0: main profile[default], 1: high profile, 2: professional profile) --fps Stream frame rate (rate/scale) --fps-num Stream frame rate numerator --fps-denom Stream frame rate denominator --input-depth Bit depth for codec(8 or 10) --16bit-pipeline Bit depth for enc-dec(0: lbd[default], 1: hbd) --hierarchical-levels Set hierarchical levels(3 or 4[default]) --pred-struct Set prediction structure( 0: low delay P, 1: low delay B, 2: random access [default]) --enable-hdr Enable high dynamic range(0: OFF[default], ON: 1) --asm Assembly instruction set (0: Automatically select lowest assembly instruction set supported, 1: Automatically select highest assembly instruction set supported) --lp number of logical processors to be used --unpin-lp1 allows the execution of multiple encodes on the CPU without having to pin them to a specific mask( 0: OFF ,1: ON[default]) --ss Specify which socket the encoder runs on Rate Control Options: --rc Rate control mode(0 = CQP , 1 = VBR , 2 = CVBR) --tbr Target Bitrate (kbps) --use-q-file Overwrite QP assignment using qp values in QP file --qpfile Path to Qp file --max-qp Maximum (worst) quantizer[0-63] --min-qp Minimum (best) quantizer[0-63] --adaptive-quantization Set adaptive QP level(0: OFF ,1: variance base using segments ,2: Deltaq pred efficiency) --vbv-bufsize VBV buffer size Twopass Options: --output-stat-file First pass stat file output --input-stat-file Input the first pass output to the second pass --enc-mode-2p Use Hme/Me settings of the second pass'encoder mode in the first pass Keyframe Placement Options: --keyint Intra period interval(frames) (-2: No intra update, -1: default intra period or [0-255]) --irefresh-type Intra refresh type (1: CRA (Open GOP)2: IDR (Closed GOP)) AV1 Specific Options: --preset Encoder mode/Preset used[0-8] --compressed-ten-bit-format Offline packing of the 2bits: requires two bits packed input (0: OFF[default], 1: ON) --tile-rows Number of tile rows to use, log2[0-6] --tile-columns Number of tile columns to use, log2[0-6] -q --qp Constant/Constrained Quality level --lookahead When RC is ON , it is best to set this parameter to be equal to the intra period value --disable-dlf Disable loop filter(0: loop filter enabled[default] ,1: loop filter disabled) --cdef-mode CDEF Mode, 0: OFF, 1-5: ON with 2,4,8,16,64 step refinement, -1: DEFAULT --enable-restoration-filtering Enable the loop restoration filter(0: OFF ,1: ON ,-1:DEFAULT) --sg-filter-mode Self-guided filter mode (0:OFF, 1: step 0, 2: step 1, 3: step 4, 4: step 16, -1: DEFAULT) --wn-filter-mode Wiener filter mode (0:OFF, 1: 3-Tap luma/ 3-Tap chroma, 2: 5-Tap luma/ 5-Tap chroma, 3: 7-Tap luma/ 7-Tap chroma, -1: DEFAULT) --enable-mfmv Enable motion field motion vector( 0: OFF, 1: ON, -1: DEFAULT) --enable-redundant-blk Use the same md results(mode, residual , cost,etc..)as the previously processed identical block(0: OFF, 1: ON, -1: DEFAULT) --enable-spatial-sse-fl Enable spatial sse full loop(0: OFF, 1: ON, -1: DEFAULT) --subpel Enable subpel(0: OFF, 1: ON, -1: DEFAULT) --enable-over-bndry-blk Enable over boundary block mode (0: OFF, 1: ON, -1: DEFAULT) --enable-new-nrst-near-comb Enable new nearest near comb injection (0: OFF, 1: ON, -1: DEFAULT) --enable-prune-unipred-me Enable prune unipred at me (0: OFF, 1: ON, -1: DEFAULT) --enable-prune-ref-rec-part Enable prune ref frame for rec partitions (0: OFF, 1: ON, -1: DEFAULT) --enable-nsq-table-use Enable nsq table (0: OFF, 1: ON, -1: DEFAULT) --enable-framend-cdf-upd-mode Enable frame end cdf update mode (0: OFF, 1: ON, -1: DEFAULT) --chroma-mode Select chroma mode([0-3], -1: DEFAULT) --disable-cfl Disable chroma from luma (CFL) flag (0: OFF (do not disable), 1: ON (disable), -1: DEFAULT) --enable-local-warp Enable warped motion use , 0 = OFF, 1 = ON, -1 = DEFAULT --enable-global-motion Enable global motion (0: OFF, 1: ON [default]) --enable-class-12 Enable combine MD Class1&2 (0: OFF, 1: ON, -1: DEFAULT) --enable-intra-edge-skp Enable intra edge filtering (0: OFF, 1: ON (default)) --intra-angle-delta Enable intra angle delta filtering filtering (0: OFF, 1: ON, -1: DEFAULT) --enable-interintra-comp Enable interintra compound (0: OFF, 1: ON (default)) --enable-paeth Enable paeth (0: OFF, 1: ON, -1: DEFAULT) --enable-smooth Enable smooth (0: OFF, 1: ON, -1: DEFAULT) --obmc Enable OBMC(0: OFF, 1: ON[default]) --enable-rdoq Enable RDOQ (0: OFF, 1: ON, -1: DEFAULT) --enable-filter-intra Enable filter intra prediction mode (0: OFF, 1: ON [default]) --enable-intra-edge-filter Enable intra edge filter (0: OFF, 1: ON, -1: DEFAULT) --pic-based-rate-est Enable picture based rate estimation (0: OFF, 1: ON, -1: DEFAULT) --pred-me Set predictive motion estimation level(-1: default, [0-5]) --bipred-3x3 Set bipred3x3 injection (0: OFF, 1: ON FULL, 2: Reduced set, -1: DEFAULT) --compound Enable compound mode(0: OFF, 1:ON[AVG/DIST/DIFF], 2: ON[AVG/DIST/DIFF/WEDGE], -1: default) --use-default-me-hme Use default motion estimation/hierarchical motion estimation settings(0: OFF, 1: ON[default]) --hme Enable hierarchical motion estimation(0: OFF, 1: ON) --hme-l0 Enable hierarchical motion estimation Level 0 (0: OFF, 1: ON) --hme-l1 Enable hierarchical motion estimation Level 1 (0: OFF, 1: ON) --hme-l2 Enable hierarchical motion estimation Level 2 (0: OFF, 1: ON) --ext-block Enable the rectangular and asymetric block (0: OFF, 1: ON) --search-w Set search area in width[1-256] --search-h Set search area in height[1-256] --num-hme-w Set hierarchical motion estimation search region in Width --num-hme-h Set hierarchical motion estimation search region in height --hme-tot-l0-w Set hierarchical motion estimation level0 total search area in Width --hme-tot-l0-h Set hierarchical motion estimation level0 total search area in height --scm Set screen content detection level([0-2], 2: DEFAULT) --intrabc-mode Set intraBC mode (0: OFF, 1: ON slow, 2: ON faster, 3: ON fastest, -1: DEFAULT) --hbd-md Enable high bit depth mode decision(0: OFF, 1: ON partially[default],2: fully ON) --palette Set palette prediction mode(-1: default or [0-6]) --umv Allow motion vectors to reach outside of the picture boundary(O: OFF, 1: ON[default]) --inj Inject pictures at defined frame rate(0: OFF[default],1: ON) --inj-frm-rt Set injector frame rate --speed-ctrl Enable speed control(0: OFF[default], 1: ON) --film-grain Enable film grain(0: OFF[default], 1-50: ON, film-grain denoising strength) --hme-l0-w Set hierarchical motion estimation level0 search area in Width --hme-l0-h Set hierarchical motion estimation level0 search area in height --hme-l1-w Set hierarchical motion estimation level1 search area in Width --hme-l1-h Set hierarchical motion estimation level1 search area in height --hme-l2-w Set hierarchical motion estimation level2 search area in Width --hme-l2-h Set hierarchical motion estimation level2 search area in height --enable-altrefs Enable automatic alt reference frames(0: OFF, 1: ON[default]) --altref-strength AltRef filter strength([0-6], default: 5) --altref-nframes AltRef max frames([0-10], default: 7) --enable-overlays Enable the insertion of an extra picture called overlayer picture which will be used as an extra reference frame for the base-layer picture(0: OFF[default], 1: ON) --sqw Determines if HA, HB, VA, VB, H4 and V4 shapes could be skipped based on the cost of SQ, H and V shapes([75-100], default: 100) --mds-1-class-th Set MD Stage 1 prune class threshold[5-200] --mds-1-cand-th Set MD Stage 1 prune candidate threshold[5,150] --mds-2-3-class-th Set MD Stage 2/3 prune class threshold[5,100] --mds-2-3-cand-th Set MD Stage 2/3 prune candidate threshold[5,50] --enable-stat-report Stat Report --enable-intra-angle-delta CDEF Mode, 0: OFF, 1-5: ON with 2,4,8,16,64 step refinement, -1: DEFAULT
source: SvtAv1EncApp.exe -help
+
https://github.com/OpenVisualCloud/SVT-AV1/blob/master/Docs/svt-av1_encoder_user_guide.md

=> this will take quite a while, especially since there are LOTS of options.

Cu Selur


RE: Is SVT-AV1 encoder implementation a planned feature? - Selur - 23.04.2020

btw. if you want to help, I'm looking for a few sub categories to split the 'AV1 Specific Options' into.
-> so if you (or anyone lese) knows enough about AV1 to sort them into sub categories (like MotionEstimation, RateControl, Partitioning or similar let me know)

Cu Selur


RE: Is SVT-AV1 encoder implementation a planned feature? - Selur - 25.04.2020

Btw. I just added SVT-AV1 support to my dev version with tons of parameters I'm not sure of what they do exactly.
So the general tool-tips will probably not really help much and I'm not sure I categorized each of the ~100 options correctly.

https://github.com/OpenVisualCloud/SVT-AV1/blob/master/Docs/svt-av1_encoder_user_guide.md
and
https://github.com/OpenVisualCloud/SVT-AV1/blob/master/Docs/README.md
are nice, not always in sync with the command line help info, but all in all a great help.

One thing that I noticed is that the encoder is fast, but by default configured for top speed and once you change the presets it gets slow. Tongue

Cu Selur


RE: Is SVT-AV1 encoder implementation a planned feature? - erjigit17 - 29.04.2020

(23.04.2020, 20:43)Selur Wrote: btw. if you want to help, I'm looking for a few sub categories to split the 'AV1 Specific Options' into.
-> so if you (or anyone lese) knows enough about AV1 to sort them into sub categories (like MotionEstimation, RateControl, Partitioning or similar let me know)

Cu Selur


I really like svt hevc

and for me enough toolbox of svt hevc

I use your application exclusively for converting video on a separate PC
my settings for converting: constant quantizer, preset 


I've try gui for svt av1, it was horrible(((


RE: Is SVT-AV1 encoder implementation a planned feature? - Selur - 29.04.2020

send you a link to my current dev version which supports SVT-AV1, haven't had much time to test Smile

Cu Selur


RE: Is SVT-AV1 encoder implementation a planned feature? - erjigit17 - 29.04.2020

(29.04.2020, 15:14)Selur Wrote: send you a link to my current dev version which supports SVT-AV1, haven't had much time to test Smile

Cu Selur
works good,

But  progress bar does not visible for a long time(

I,ve test 
10sec video 1080p
Const quan 55 
Presset 8
Converting time 2-3min
Laptop MacBook Pro 2014 (i7 4770HQ)