RESOLVED FIXED 281396
[MediaRecorder/WebM] ASSERT(pts >= m_lastMuxedSampleTime);
https://bugs.webkit.org/show_bug.cgi?id=281396
Summary [MediaRecorder/WebM] ASSERT(pts >= m_lastMuxedSampleTime);
Jean-Yves Avenard [:jya]
Reported 2024-10-13 04:47:02 PDT
STR: In a debug build; open https://codepen.io/jyavenard/pen/JjgKprZ Click on "test webm" ; from time to time it triggers an assertion ASSERT(pts >= m_lastMuxedSampleTime); which indicates that we attempted to write a video frame with a timestamp prior the previously written audio frame (webm required monotonically increasing timestamp) ``` error: invalid value path 'target.prefer-gdb-objc-realized-classes' (lldb) bt * thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x132fe5900) Note: Possible pointer authentication failure detected. Found value that failed to authenticate at address=0x132fe5900. frame #0: 0x00000003000032b0 WebCore`WTFCrashWithInfo(line=461, file="/Users/jyavenard/Work/webkit/OpenSource/Source/WebCore/platform/mediarecorder/cocoa/MediaRecorderPrivateWriterWebM.mm", function="bool WebCore::MediaRecorderPrivateWriterWebM::muxNextFrame()", counter=1705) at Assertions.h:901:5 * frame #1: 0x0000000302fcdfbc WebCore`WebCore::MediaRecorderPrivateWriterWebM::muxNextFrame(this=0x00000001414ec210) at MediaRecorderPrivateWriterWebM.mm:461:9 frame #2: 0x0000000302fce5d8 WebCore`WebCore::MediaRecorderPrivateWriterWebM::partiallyFlushEncodedQueues(this=0x00000001414ec210) at MediaRecorderPrivateWriterWebM.mm:439:19 frame #3: 0x0000000302fe4ae4 WebCore`WebCore::MediaRecorderPrivateWriterWebM::compressedAudioOutputBufferCallback(void*, opaqueCMBufferQueueTriggerToken*)::$_0::operator()(this=0x000000014d55d7c8) const at MediaRecorderPrivateWriterWebM.mm:186:27 frame #4: 0x0000000302fe49dc WebCore`WTF::Detail::CallableWrapper<WebCore::MediaRecorderPrivateWriterWebM::compressedAudioOutputBufferCallback(void*, opaqueCMBufferQueueTriggerToken*)::$_0, void>::call(this=0x000000014d55d7c0) at Function.h:53:39 frame #5: 0x000000012f868ec4 JavaScriptCore`WTF::Function<void ()>::operator()(this=0x000000016d3c2030) const at Function.h:82:35 frame #6: 0x000000012f934060 JavaScriptCore`WTF::RunLoop::performWork(this=0x0000000141018100) at RunLoop.cpp:147:9 frame #7: 0x000000012f938b90 JavaScriptCore`WTF::RunLoop::performWork(context=0x0000000141018100) at RunLoopCF.cpp:46:37 frame #8: 0x000000018a27bd34 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 28 frame #9: 0x000000018a27bcc8 CoreFoundation`__CFRunLoopDoSource0 + 176 frame #10: 0x000000018a27ba2c CoreFoundation`__CFRunLoopDoSources0 + 244 frame #11: 0x000000018a27a5c8 CoreFoundation`__CFRunLoopRun + 840 frame #12: 0x000000018a279bc4 CoreFoundation`CFRunLoopRunSpecific + 588 frame #13: 0x000000018b452128 Foundation`-[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 212 frame #14: 0x000000018b4c9a74 Foundation`-[NSRunLoop(NSRunLoop) run] + 64 frame #15: 0x0000000189ea9718 libxpc.dylib`_xpc_objc_main + 700 frame #16: 0x0000000189eb9824 libxpc.dylib`_xpc_main + 276 frame #17: 0x0000000189ea92b4 libxpc.dylib`xpc_main + 64 frame #18: 0x000000011acdcd04 WebKit`WebKit::XPCServiceMain((null)=1, (null)=0x000000016d3c3448) at XPCServiceMain.mm:278:5 frame #19: 0x000000011d9394cc WebKit`WKXPCServiceMain(argc=1, argv=0x000000016d3c3448) at WKMain.mm:36:12 frame #20: 0x0000000102a3ff8c com.apple.WebKit.WebContent.Development`main(argc=1, argv=0x000000016d3c3448) at AuxiliaryProcessMain.cpp:32:12 frame #21: 0x0000000189e10274 dyld`start + 2840 ```
Attachments
Radar WebKit Bug Importer
Comment 1 2024-10-13 04:47:21 PDT
Jean-Yves Avenard [:jya]
Comment 2 2024-10-13 15:09:06 PDT
EWS
Comment 3 2024-10-14 14:55:05 PDT
Committed 285147@main (cd3d290bb0cb): <https://commits.webkit.org/285147@main> Reviewed commits have been landed. Closing PR #35125 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.