feat: encoder - #1183
feat: encoder#1183mdydek wants to merge 18 commits into
Conversation
Resolves conflicts between the encoder work and the OS-APIs decoding refactor (#1177): - AudioFileConcatenator: main's decoder-factory WAV path + encoder's OS remux (M4A/MP4) path; all FFmpeg remux code removed - AudioEventHandlerRegistry -> IAudioEventHandlerRegistry (#1212) in encoder file writers - AndroidEncoding/AndroidRemux moved to android/src/main/cpp/audioapi/android/ to match AndroidDecoding placement - docs/flags updated: recording and concatAudioFiles are FFmpeg-free Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
WPT non-regression comparisonPASS — no regressions · 0 improved section(s) · overall 2665 → 2665 (0) Unchanged sections (28)
Baseline: Workflow run · this comment is updated on every push. |
closetcaiman
left a comment
There was a problem hiding this comment.
Please add description to the PR for fast-access reference to the scope of these changes.
maciejmakowski2003
left a comment
There was a problem hiding this comment.
could you add an overview of refactor? would be great to get some diagram
| Result<NoneType, std::string> setOnAudioReadyCallback( | ||
| float sampleRate, | ||
| size_t bufferLength, | ||
| int channelCount, | ||
| uint64_t callbackId) = 0; | ||
| virtual void clearOnAudioReadyCallback() = 0; | ||
| uint64_t callbackId); | ||
| void clearOnAudioReadyCallback(); |
There was a problem hiding this comment.
imo AudioRecorder should know only about a fact that has some side effects like callback or file writer, but not explicitly register them. let's create some abstraction over side effects -> easier to scale and integrate with worklets in future
There was a problem hiding this comment.
I would suggest to create a stack PR with AudioRecorder rework.
There was a problem hiding this comment.
can we delegate it to the different pr than here, it is too large anywa
Closes #
Introduced changes
Proposed architecture:

Checklist