# HG changeset patch # User William Pitcock # Date 1224101494 18000 # Node ID 77f8f7f1b0d81b497621e541127008ee872d200a # Parent f2c62b0fc3ba61e65d0665ff27add336fb24ab9f Implement silence detection. diff -r f2c62b0fc3ba -r 77f8f7f1b0d8 src/psf2/peops2/spu.c --- a/src/psf2/peops2/spu.c Wed Oct 15 14:57:48 2008 -0500 +++ b/src/psf2/peops2/spu.c Wed Oct 15 15:11:34 2008 -0500 @@ -773,7 +773,21 @@ } else if ((((unsigned char *)pS)-((unsigned char *)pSpuBuffer)) == (735*4)) { - psf2_update((u8*)pSpuBuffer,(u8*)pS-(u8*)pSpuBuffer, data); + short *pSilenceIter = (short *)pSpuBuffer; + int iSilenceCount = 0; + + for (; pSilenceIter < pS; pSilenceIter++) + { + if (*pSilenceIter == 0) + iSilenceCount++; + + if (iSilenceCount > 20) + break; + } + + if (iSilenceCount < 20) + psf2_update((u8*)pSpuBuffer,(u8*)pS-(u8*)pSpuBuffer, data); + pS=(short *)pSpuBuffer; } }