hf_apply_noise_0_c: 35.7 hf_apply_noise_0_rvv_f32: 9.5 hf_apply_noise_1_c: 38.5 hf_apply_noise_1_rvv_f32: 10.0 hf_apply_noise_2_c: 35.5 hf_apply_noise_2_rvv_f32: 9.7 hf_apply_noise_3_c: 38.5 hf_apply_noise_3_rvv_f32: 10.0 Maybe extending the noise table manually is not such great idea, but I not quite sure how to deal with that otherwise? Allocating the table dynamically is possible but would require an ELF destructor to clean up.
Showing the changes to libavcodec (2 of 2 files). Show all
Unified · Split
| @@ -52,7 +52,7 @@ av_cold void ff_sbrdsp_init_riscv(SBRDSPContext *c) · 51 unmodified lines | ||
| 52 | 52 | c->sum_square = ff_sbr_sum_square_rvv; |
| 53 | 53 | c->hf_gen = ff_sbr_hf_gen_rvv; |
| 54 | 54 | c->hf_g_filt = ff_sbr_hf_g_filt_rvv; |
| 55 | − if (ff_get_rv_vlenb() <= 16) { | |
| 55 | + if (ff_get_rv_vlenb() <= 32) { | |
| 56 | 56 | c->hf_apply_noise[0] = ff_sbr_hf_apply_noise_0_rvv; |
| 57 | 57 | c->hf_apply_noise[2] = ff_sbr_hf_apply_noise_2_rvv; |
| 58 | 58 | if (flags & AV_CPU_FLAG_RVB_BASIC) { |
| @@ -376,5 +376,13 @@ const attribute_visibility_hidden DECLARE_ALIGNED(16, INTFLOAT, AAC_RENAME(ff_sb · 375 unmodified lines | ||
| 376 | 376 | {Q31(-0.99867974711855f), Q31(-0.88147068645358f)}, {Q31(-0.95531076805040f), Q31( 0.90908757154593f)}, |
| 377 | 377 | {Q31(-0.45725933317144f), Q31(-0.56716323646760f)}, {Q31(-0.72929675029275f), Q31(-0.98008272727324f)}, |
| 378 | 378 | {Q31( 0.75622801399036f), Q31( 0.20950329995549f)}, {Q31( 0.07069442601050f), Q31(-0.78247898470706f)}, |
| 379 | +{Q31( 0.74496252926055f), Q31(-0.91169004445807f)}, {Q31(-0.96440182703856f), Q31(-0.94739918296622f)}, | |
| 380 | +{Q31( 0.30424629369539f), Q31(-0.49438267012479f)}, {Q31( 0.66565033746925f), Q31( 0.64652935542491f)}, | |
| 381 | +{Q31( 0.91697008020594f), Q31( 0.17514097332009f)}, {Q31(-0.70774918760427f), Q31( 0.52548653416543f)}, | |
| 382 | +{Q31(-0.70051415345560f), Q31(-0.45340028808763f)}, {Q31(-0.99496513054797f), Q31(-0.90071908066973f)}, | |
| 383 | +{Q31( 0.98164490790123f), Q31(-0.77463155528697f)}, {Q31(-0.54671580548181f), Q31(-0.02570928536004f)}, | |
| 384 | +{Q31(-0.01689629065389f), Q31( 0.00287506445732f)}, {Q31(-0.86110349531986f), Q31( 0.42548583726477f)}, | |
| 385 | +{Q31(-0.98892980586032f), Q31(-0.87881132267556f)}, {Q31( 0.51756627678691f), Q31( 0.66926784710139f)}, | |
| 386 | +{Q31(-0.99635026409640f), Q31(-0.58107730574765f)}, {Q31(-0.99969370862163f), Q31( 0.98369989360250f)}, | |
| 379 | 387 | #endif |
| 380 | 388 | }; |