GithubHelp home page GithubHelp logo

NumUsed is not defined about lamejs HOT 12 CLOSED

zhuker avatar zhuker commented on June 21, 2024
NumUsed is not defined

from lamejs.

Comments (12)

zhuker avatar zhuker commented on June 21, 2024

fixed
let me know if it works for you.

from lamejs.

aviankona avatar aviankona commented on June 21, 2024

thanks for the fix,

now it throws "fill_buffer_resample is not defined"

lame.all.js:15169 Uncaught ReferenceError: fill_buffer_resample is not defined

from lamejs.

zhuker avatar zhuker commented on June 21, 2024

can you send me the code which reproduces the bug?
do you intentionally resample?

from lamejs.

aviankona avatar aviankona commented on June 21, 2024

Hi Alex,

Here is my complete flow:

  • record audio with the WebAudio Api,
    block size 2048
    sample rate - according to the mic input (will probably be 44,100 or 48,000).
  • Convert it to WAV - preserving it's sample rate, using it's block size. defining the WAV output to mono. the function returns an UInt16Array.
  • Execute a copy of your function (from the example page) with the original sample rate and block size.

I'm executing the conversion in a web worker.

See conversion function below:
function _newEncodeMp3( uint16Array ){
var liblame = new lamejs();
var mp3enc = new liblame.Mp3Encoder(1, ORIGINAL_SAMPLE_RATE, 16);
var remaining = uint16Array.length;
var maxSamples = ORIGINAL_BLOCK_SIZE;
for (var i = 0; remaining >= maxSamples; i += maxSamples) {
var mono = uint16Array.subarray(i, i + maxSamples);
var mp3buf = mp3enc.encodeBuffer(mono);
if (mp3buf.length > 0) {
//TODO write to output
}
remaining -= maxSamples;
}
var mp3buf = mp3enc.flush();

    return mp3buf;
}

Thanks for the support,
Avi.

from lamejs.

zhuker avatar zhuker commented on June 21, 2024

what was the ORIGINAL_SAMPLE_RATE when the code failed?

from lamejs.

zhuker avatar zhuker commented on June 21, 2024

are you sure you want 16kbps mp3?
for such low bitrates lame does resampling to a lower sample rate

from lamejs.

aviankona avatar aviankona commented on June 21, 2024

My sample rate is 44100
what's the minimum kbps that you suggest?

from lamejs.

zhuker avatar zhuker commented on June 21, 2024

depends on your application
try 64 and let me know if it works for you

from lamejs.

zhuker avatar zhuker commented on June 21, 2024

just fixed the resampling code
should work with 16kbps now
try it

from lamejs.

aviankona avatar aviankona commented on June 21, 2024

Just tested it.

it fails on the initialization with the following error:
lame.all.js:15509 Uncaught ReferenceError: fs is not defined

from lamejs.

zhuker avatar zhuker commented on June 21, 2024

my bad, forgot to disable tests, just fixed

from lamejs.

aviankona avatar aviankona commented on June 21, 2024

Hi Alex,

Conversion function has finished successfully!

I'll create an output file and check the conversion.

Thanks!
Avi.

from lamejs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.