Rockbox open source high quality audio player as a Music Player Daemon
mpris rockbox mpd libadwaita audio rust zig deno
2
fork

Configure Feed

Select the types of activity you want to include in your feed.

libtremor: merge upstream revision 17538 'Fix decoder handling of floor0 when the LSP order is 1.'

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28770 a1c6a512-1295-4272-9138-f99709370657

+18 -13
+6 -4
apps/codecs/libtremor/asm_arm.h
··· 249 249 ogg_int32_t qexp=*qexpp; 250 250 251 251 asm("mov r0,%3;" 252 - "mov r1,%5,asr#1;" 252 + "movs r1,%5,asr#1;" 253 253 "add r0,r0,r1,lsl#3;" 254 + "beq 2f;\n" 254 255 "1:" 255 256 256 257 "ldmdb r0!,{r1,r3};" ··· 273 274 "cmp r0,%3;\n" 274 275 "bhi 1b;\n" 275 276 277 + "2:" 276 278 // odd filter assymetry 277 279 "ands r0,%5,#1;\n" 278 - "beq 2f;\n" 280 + "beq 3f;\n" 279 281 "add r0,%3,%5,lsl#2;\n" 280 282 281 283 "ldr r1,[r0,#-4];\n" ··· 287 289 "umull %1,r3,r0,%1;\n" //pi*=labs(ilsp[j+1]-wi) 288 290 289 291 "cmn r2,r3;\n" // shift down 16? 290 - "beq 2f;\n" 292 + "beq 3f;\n" 291 293 "add %2,%2,#16;\n" 292 294 "mov %0,%0,lsr #16;\n" 293 295 "orr %0,%0,r2,lsl #16;\n" ··· 301 303 //} 302 304 303 305 /* normalize to max 16 sig figs */ 304 - "2:" 306 + "3:" 305 307 "mov r2,#0;" 306 308 "orr r1,%0,%1;" 307 309 "tst r1,#0xff000000;"
+12 -9
apps/codecs/libtremor/floor0.c
··· 200 200 201 201 #else 202 202 203 - qi*=labs(ilsp[0]-wi); 204 - pi*=labs(ilsp[1]-wi); 203 + j=1; 204 + if(m>1){ 205 + qi*=labs(ilsp[0]-wi); 206 + pi*=labs(ilsp[1]-wi); 205 207 206 - for(j=3;j<m;j+=2){ 207 - if(!(shift=MLOOP_1[(pi|qi)>>25])) 208 - if(!(shift=MLOOP_2[(pi|qi)>>19])) 209 - shift=MLOOP_3[(pi|qi)>>16]; 210 - qi=(qi>>shift)*labs(ilsp[j-1]-wi); 211 - pi=(pi>>shift)*labs(ilsp[j]-wi); 212 - qexp+=shift; 208 + for(j+=2;j<m;j+=2){ 209 + if(!(shift=MLOOP_1[(pi|qi)>>25])) 210 + if(!(shift=MLOOP_2[(pi|qi)>>19])) 211 + shift=MLOOP_3[(pi|qi)>>16]; 212 + qi=(qi>>shift)*labs(ilsp[j-1]-wi); 213 + pi=(pi>>shift)*labs(ilsp[j]-wi); 214 + qexp+=shift; 215 + } 213 216 } 214 217 if(!(shift=MLOOP_1[(pi|qi)>>25])) 215 218 if(!(shift=MLOOP_2[(pi|qi)>>19]))