Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Psymodel #26

Open
friesendrywall opened this issue Aug 30, 2017 · 2 comments
Open

Psymodel #26

friesendrywall opened this issue Aug 30, 2017 · 2 comments

Comments

@friesendrywall
Copy link

I am not sure where to ask, but LAME and shine have similar 'calc_xmin' functions, but the shine function doesn't do anything inside other than setting l3_xmin->l[gr][ch][sfb] = 0; inside the loop. Could I get some overview of what it would take for me to port this?

If this is the wrong place, please advise the correct place to ask.

@toots
Copy link
Owner

toots commented Aug 30, 2017

Hi,

Any contribution would be much welcome on this front! I'm not sure what it would take except that you'd have to adapt any float-based math to use fixed-point.

@friesendrywall
Copy link
Author

friesendrywall commented Sep 4, 2017

I have been working on this in a different model, more based on Lame's low pass filter. Implementing a hard low pass filter by setting upper spectral values to zero's seems to help some, but is there a way to be sure that almost no bits are allocated to the chosen spectrum?

In shine_iteration_loop in l3loop.c

	  for (i = GRANULE_SIZE, config->l3loop.xrmax = 0; i--;)
 {
		  if (i > 287){//Set all spectral values above this to 0
			  config->l3loop.xr[i] = 0;
		  }
		  config->l3loop.xrsq[i] = mulsr(config->l3loop.xr[i], config->l3loop.xr[i]);
		  config->l3loop.xrabs[i] = labs(config->l3loop.xr[i]);
		  if (config->l3loop.xrabs[i]>config->l3loop.xrmax)
			  config->l3loop.xrmax = config->l3loop.xrabs[i];
	  }

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants