RocketChat / fuselage

React port of Rocket.Chat's design system, Fuselage
https://rocketchat.github.io/fuselage/
MIT License
114 stars 160 forks source link

fix(mp3-encoder): Suppress assertion #1481

Open tassoevan opened 1 week ago

tassoevan commented 1 week ago

Proposed changes (including videos or screenshots)

It suppresses assertions at the LAME encoding due to unknown NaN values.

Issue(s)

Further comments

This is the original assert function: https://github.com/zhuker/lamejs/blob/090eaa9b7e90abb81939145f13be2bdcd06ac5e6/src/js/common.js#L148-L150

During investigation, the input buffers showed a small segment of NaN values instead of the expected typed Float32 numbers. It couldn't be determined where they are allocated, because they seen to exist prior to the flush call. Since there is no async function or callbacks at play (as the original code was transpiled from single-threaded Java code), the hypothesis of message events out of sync at the worker thread can be disregarded. One interesting thing to note is that when using a external microphone instead of Macbook's built-in microphone did not generated the NaN values; it might indicate a bug with the channel enumeration.

changeset-bot[bot] commented 1 week ago

🦋 Changeset detected

Latest commit: 3764a5730fe790c1c0db0220a94d574e3fd23c35

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package | Name | Type | | ------------------------ | ----- | | @rocket.chat/mp3-encoder | Patch |

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR