audiocogs / aac.js Goto Github PK
View Code? Open in Web Editor NEWAAC decoder in JavaScript.
Home Page: http://audiocogs.org/codecs/aac/
License: GNU Lesser General Public License v3.0
AAC decoder in JavaScript.
Home Page: http://audiocogs.org/codecs/aac/
License: GNU Lesser General Public License v3.0
It seems that those formats are in the road map according to README.md.
Any updates planned?
Advanced Audio Coding (.m4a) files contain encoder padding as explained in this Apple documentation.
The afinfo
utility on mac OS can extract length of these paddings, below is an example output of afinfo
:
Can AAC.js be used to obtain these numbers? If yes, then any pointers appreciated.
We use aac.js to decode some aac files but found weird situation.
aac.js can decode aac file and sounds ok when file is encoded by bitrate 64kb, sample rate 48000, channel 1. We low the source bit rate to 32kb with same sample rate, channel. The output has noise(it seems high frequency sound become noise).
The 32kb sample file is here
I'm trying to decode AAC audio stream by fromBuffer().
Help me!
//---------------------------------------------------------------------
this.ws.onmessage = function (evt) {
buffer = new AV.Buffer(new Uint8Array(evt.data));
asset = AV.Asset.fromBuffer(buffer);
player = new AV.Player(asset);
asset.start();
}.bind(this);
//---------------------------------------------------------------------
Hi,
I'm using AAC.js to decode a ffmpeg stream audio transport over a websocket.
The implementation is working good under firefox/chrome on a desktop machine.
In iPhone audio is also play correctly.
In Firefox under Android audio is playing correctly.
However in Andorid Chomre audio have issue and not play nicely.
It plays but every 1 sec or less there is a gap and jump in the audio.
Do any one have idea how to fix? or where to look in order to debug it?
Thanks
aac.js accepts non AAC files.
Test case: create a test page including aurora.js and aac.js. Try to play an MP3.
Result: Aurora recognizes it as AAC and tries to decode it (then aac.js complains about an invalid ADTS header)
can I use this module to record a acc audio from broswer?
Right now we have AAC-LC working but it would be good to support AAC-HE v1 and v2 for streaming purposes. I don't think many of the other profiles are actually used very much these days... Anyway, this means implementing SBR (Spectral Band Replication) and PS (Parametric Stereo) decoding.
i tried playing my 5.1 aac wrapped in mp4 container here http://audiocogs.org/codecs/aac/
did not work
is it a limitation of the player or decoder?
here is the link to the file
https://drive.google.com/file/d/0B14m-5S5eoNQdG5JT3ZwSzJRSjQ/view
Hello
impressive projects.
this is not really an issue, It's more of a question, maybe a stupid one :)
Is it possible to Encode a PCM from The microphone (captured with getUserMedia) to AAC?
and do this in the browser instead of the server?
Thanks in advance
b
This line causes randomState
to be Infinity
after a few iterations.
this.randomState *= 1664525 + 1013904223;
~ https://github.com/audiocogs/aac.js/blob/master/src/ics.js#L234
A few lines later these "random" values will be multiplied with a scale factor of -0
(because energy
is Infinity
as well), resulting in NaN
.
Proposed fix, cast it to an integer:
this.randomState = (this.randomState * (1664525 + 1013904223))|0;
Howdy,
I am having difficulties getting Aurora up and working with AAC. I have the loading of assets working fine, but I can't get the Player to play. On Player(asset).startPlaying() I get a vague error "Cannot call 'read' of undefined". If I dig into it, I see that the asset doesn't have a format defined. I think it's an acc.js related issue, but I haven't tested any others. I can't get the demo site to play an acc file either.
I have been hitting it a while now. One thing I noticed is that it doesn't seem that aac.js registers a demuxer, like the default encodings do. eg:
Demuxer.register(AIFFDemuxer)
I'm still plugging away at it, and will report back any findings.
While I am here, I must recommend you all get with Node/Common js, NPM, and use browserify to build. Build modules. Then your streams, events, buffers and modules will be compatible with a world o' modules that work both in the browser and in Node.js. Right now, the whole project is relatively decomposed, yet those parts all rely on each other in non-decomposable ways. I can't 'npm install aac', stream buffers into it and get a stream of PCM out. In my mind, that is what acc.js should do. Instead, I have to use this framework with its globals, contextual oddities, integrated load/play, and the incompatibilities.
I mean no offense. It is obvious a lot of work has gone into aurora and the decoders. It's a shame it isn't nicer to play with.
The m4a decoder makes a lot of high-frequency crackle and bleeping on some files.
Test case: http://vladkorotnev.me/webtunes/player.php?list=74&track=1
Listen to tracks 1 and 2.
Expected behavior: acceptable quality playback.
Resulting behavior: music along with bleeps and cracks around 10kHz and almost missing high frequencies.
The same files sound awesome in QuickTime 7.
The tracks can be downloaded (play a track and then click the right "down arrow" key in the player control display) and played in QuickTime to prove that it's not the files being low-quality.
Great JS plugin otherwise though, enjoyed building with it, thanks Audiocogs!
The using default mp3 showcase site code to open test.aac the latest aac version does not recon filetype. If however I use the old aac.js from aac demopage that version works, but seekbar is broken. mp3, flac, m4a, opus files works and seekbar also.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.