diff options
| author | Christophe Besson <cbesson@gmail.com> | 2026-08-23 22:43:35 +0200 |
|---|---|---|
| committer | Christophe Besson <cbesson@gmail.com> | 2026-08-23 22:43:35 +0200 |
| commit | b6e2dcea65124673da047f9b3c92bc5e25980d63 (patch) | |
| tree | 2776598c32b30229dcd7d6a3d030bb4965ad1c70 /packages/meshbay-common/src/meshbay_common/paths.py | |
| parent | b3709ac4d362987a9d025616c95065ceed0d216b (diff) | |
| download | meshbay-b6e2dcea65124673da047f9b3c92bc5e25980d63.tar.gz | |
fix(node,hub): always transcode video audio to stereo AAC, never copy
MSE only decodes AAC/Opus, so copying a source's real audio codec left
non-AAC files silently unplayable in-browser (E-AC-3 additionally made
ffmpeg itself refuse to write the fragmented MP4 header). Audio is now
always transcoded to AAC and downmixed to stereo — multichannel AAC is
accepted by ffprobe/VLC but silently rejected by some browsers' MSE
decoder once real fragments are appended, which forces the SourceBuffer
out of its MediaSource with no explicit error. Video stays copy-only.
Also: report a clear client-side error instead of a bare STREAM_END when
ffmpeg exits nonzero before producing any output, add video-element/
MediaSource error logging on the client for the next time this class of
bug needs diagnosing, and fix a hub test that had grown too broad a scan
window after an earlier, unrelated transport.js change.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016SF6RKNBKg9qejmoMJ9ybA
Diffstat (limited to 'packages/meshbay-common/src/meshbay_common/paths.py')
0 files changed, 0 insertions, 0 deletions