Closed MarianoFacundoArch closed 5 months ago
Please provide a crash log.
- In Finder, click the Go menu
- Select Go To Folder, and type in
~/Library/Logs/DiagnosticReports/
- Upload the file prefixed
OBS_
with the most recent date (format is year-month-day)
Here it goes: https://www.sendspace.com/file/tgwr8f
It might be related to something triggering it, as sometimes it works, sometimes not, depending on when i restart the media server too apparently.
Whenever this is triggered, OBS just closes on its own crashing
Thank you.
Relevant part of the crash log:
Thread 63 Crashed:
0 libsystem_kernel.dylib 0x18aedf11c __pthread_kill + 8
1 libsystem_pthread.dylib 0x18af16cc0 pthread_kill + 288
2 libsystem_c.dylib 0x18ae26a50 abort + 180
3 libc++abi.dylib 0x18aece6d8 abort_message + 132
4 libc++abi.dylib 0x18aebe7ac demangling_terminate_handler() + 320
5 libobjc.A.dylib 0x18ab6b8a4 _objc_terminate() + 160
6 libc++abi.dylib 0x18aecda9c std::__terminate(void (*)()) + 16
7 libc++abi.dylib 0x18aed0a48 __cxxabiv1::failed_throw(__cxxabiv1::__cxa_exception*) + 36
8 libc++abi.dylib 0x18aed09f4 __cxa_throw + 140
9 libdatachannel.dylib 0x12da988d4 rtc::impl::PeerConnection::validateRemoteDescription(rtc::Description const&) + 1332
10 libdatachannel.dylib 0x12da48208 rtc::PeerConnection::setRemoteDescription(rtc::Description) + 672
11 obs-webrtc 0x12cfbc498 0x12cfb4000 + 33944
12 obs-webrtc 0x12cfb9f6c 0x12cfb4000 + 24428
13 obs-webrtc 0x12cfc021c 0x12cfb4000 + 49692
14 libsystem_pthread.dylib 0x18af17034 _pthread_start + 136
15 libsystem_pthread.dylib 0x18af11e3c thread_start + 8
cc @Sean-Der
I think I tracked the bug down to the a=fingerprint line.
If the sdp has
a=fingerprint:sha-256
It works, but if it has
a=fingerprint:sha-512
It crashes
It crashes too with
a=fingerprint:sha-1 18:5C:A3:46:F1:F3:56:CD:1D:68:22:F2:0D:B2:41:1A:18:B5:4F:CA
Yet another one:
a=fingerprint:sha-224 A7:27:63:0B:22:16:74:44:42:12:99:FC:99:F1:25:B1:D9:A1:0A:8B:9F:B0:B1:D0:8F:A7:81:5D
It seems the problem is that there are missing fingerprint algorithms?
Thank you @MarianoFacundoArch
SHA-256 is what the majority of servers/clients use now, not surprised about the code path!
I will fix upstream now!
Nice Sean , let me know if i can help you somehow or to try after it's been taken care of. below is a list of possible fingerprints with the algorithms that you might want to use as a reference to see all the options!
{
algorithm: 'sha-224',
value: 'A7:27:63:0B:22:16:74:44:42:12:99:FC:99:F1:25:B1:D9:A1:0A:8B:9F:B0:B1:D0:8F:A7:81:5D'
},
{
algorithm: 'sha-256',
value: 'EC:F7:71:7D:6A:90:96:FE:A1:01:DD:D3:D6:7C:DB:51:D4:01:07:6C:D1:2F:26:91:5A:61:41:1D:81:41:E5:FD'
},
{
algorithm: 'sha-384',
value: '33:B6:29:44:42:7C:82:C0:50:78:BE:5F:50:F4:A3:42:BA:6A:83:E3:C8:8D:0E:DE:4D:D2:72:25:D5:8B:09:FE:95:F2:FE:B2:DC:B0:08:AE:42:54:5B:12:FF:94:42:01'
},
{
algorithm: 'sha-1',
value: '18:5C:A3:46:F1:F3:56:CD:1D:68:22:F2:0D:B2:41:1A:18:B5:4F:CA'
},
{
algorithm: 'sha-512',
value: 'D7:E3:E5:7D:86:4C:08:4C:98:FF:8E:4F:98:9D:ED:71:C0:57:8C:93:3D:53:47:FC:CF:26:51:A3:E9:26:A3:BB:75:0C:D7:9B:E3:67:13:EC:D6:80:06:9E:E5:FD:52:BF:32:65:B9:1C:A5:C9:88:B7:22:99:C5:5D:0E:45:EF:C8'
}
@Sean-Der Is this possibly the same issue described in our forum beta/RC thread? https://obsproject.com/forum/threads/obs-studio-30-rc.168984/post-628325 https://obsproject.com/forum/threads/obs-studio-30-rc.168984/post-628398 https://obsproject.com/forum/threads/obs-studio-30-rc.168984/post-628680 https://obsproject.com/forum/threads/obs-studio-30-rc.168984/post-628817
@RytoEX Unrelated unfortunately! That issue is for local certificate generation at session start.
WHIP worked in flatpak at one point. Let me bisect locally to find when it broke.
Sorry, misslick.
@Sean-Der, sorry for pinging. Have you managed to find the reason why it no longer works?
Please ping me anytime! I am always happy to help :)
I haven't had a chance unfortunately. I can show you how to do it (if you are interested)
Could you try out previous betas? See if we can start to establish a window of when it worked/broke
in linux crashes all obs versions i tried 3.0.0, rc2, beta3 , against broadcast box and srs servers
If it helps, non-flatpak version distributed in Fedora repos, works as expected. It seems to be a problem exclusive to the Flatpak version.
I have a fix for libdatachannel not support all hash functions here
@MarianoFacundoArch Would it be helpful for me to generate builds?
I hope to have PR against obs-deps in next few days :)
@MarianoFacundoArch I am also using MediaSoup, did you find any work around to prevent the OBS crash? i.e. forcing sha-256?
@sreplans The only solution I know of is to use my patch.
if you are unable to build yourself I am happy to generate a build!
@Sean-Der Thank you!!! Is it possible to get a Window build and an OS X build? or either at this point! You are a lifesaver!
I can get you both! I will have updated builds in 24 hours :)
Awesome 😎 thank you
On Fri, Dec 29, 2023 at 7:04 PM Sean DuBois @.***> wrote:
I can get you both! I will have updated builds in 24 hours :)
— Reply to this email directly, view it on GitHub https://github.com/obsproject/obs-studio/issues/9800#issuecomment-1872251983, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACM77EIOUEBADXX5STAAFXTYL4A4TAVCNFSM6AAAAAA65TRV62VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNZSGI2TCOJYGM . You are receiving this because you were mentioned.Message ID: @.***>
~hi @sreplans sorry i am not able to generate builds anymore https://discord.com/channels/348973006581923840/374636084883095554/1190662781507207269~
~@PatTheMav any suggestions here? is building in forks a supported workflow still?~
Fixed it! Should have builds soon
When I get a new libdatachannel tag I can do builds against main repo. hopefully soon!
I have builds!
@sreplans Go to https://github.com/Sean-Der/obs-studio/actions/runs/7374742667?pr=6
Here are direct links
Thank you sooo much!!!! I'll check them out.
On Mon, Jan 1, 2024 at 9:13 AM Sean DuBois @.***> wrote:
I have builds!
@sreplans https://github.com/sreplans Go to https://github.com/Sean-Der/obs-studio/actions/runs/7374742667?pr=6
Here are direct links
- mac arm64 - https://github.com/Sean-Der/obs-studio/actions/runs/7374742667/artifacts/1141537317
- mac x64 - https://github.com/Sean-Der/obs-studio/actions/runs/7374742667/artifacts/1141537318
- windows - https://github.com/Sean-Der/obs-studio/actions/runs/7374742667/artifacts/1141537320
— Reply to this email directly, view it on GitHub https://github.com/obsproject/obs-studio/issues/9800#issuecomment-1873344692, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACM77EM7YHIJKK7EUAE5HDTYMLAAXAVCNFSM6AAAAAA65TRV62VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNZTGM2DINRZGI . You are receiving this because you were mentioned.Message ID: @.***>
@Sean-Der Thanks for the builds. I tested on Max os X (the arm64 version) and it still crashes for me while trying to stream to a WHIP endpoint. jere is the stack trace...
@Sean-Der Thanks for the builds. I tested on Max os X (the arm64 version) and it still crashes for me while trying to stream to a WHIP endpoint. jere is the stack trace...
macOS Crash Report
Thank you for providing the crash report - in the future please upload it as a text file or use GitHub's Markdown formatting to make it expendable and use fixed-width formatting (this was fixed via an edit on your post already).
Posting the full report as a GitHub comment makes it very hard to read and parse for maintainers and also makes it harder for other people to engage with the comment thread (because they have to scroll for pages before reaching any other comments).
@sreplans is this a public server? Can I test against it possibly?
Does look like it is throwing on a certificate issue still. I tested with mediasoup locally, maybe something else?
I am Sean-Der
on discord if you want to send me directions privately.
@Sean-Der thanks. I sent you a public server link to your email. I don't use discord.... let me know if you got it , and thanks!
Got your email. Good news is that the builds work for me locally!
info: ---------------------------------
info: [FFmpeg libopus encoder: 'adv_stream_audio'] bitrate: 160, channels: 2, channel_layout: stereo
info: [obs-webrtc] [whip_output: 'adv_stream'] PeerConnection state is now: Connecting
debug: [obs-webrtc] [whip_output: 'adv_stream'] WHIP Resource URL is: https://XXXXX
info: ==== Streaming Start ===============================================
info: [obs-webrtc] [whip_output: 'adv_stream'] PeerConnection state is now: Connected
info: [obs-webrtc] [whip_output: 'adv_stream'] Connect time: 618ms
Confirmed with @sreplans via email.
The WHIP endpoint is responding with setup=actpass
in the answer. It MUST be active
or passive
. I am guessing that an offer is being generated (instead of an answer) by the SFU.
No matter what the root issue is unrelated! My PR fixes the issue of supporting non-sha256 fingerprints.
Awesome! thank you. I'll see if I can fix the endpoint!
I got a few emails/DMs asking for flatpak builds. I put it on my personal server for now.
flatpak --user remote-add --no-gpg-verify sean-der-flatpak-obs https://siobud.com/sean-der-flatpak-obs/
flatpak --user install sean-der-flatpak-obs com.obsproject.Studio
flatpak run com.obsproject.Studio
For Windows/Mac builds see https://github.com/obsproject/obs-studio/issues/9800#issuecomment-1873344692
Hello @Sean-Der , I have tested your custom build of OBS and tested WHIP with LiveKit Ingress, and I am able to have an streaming working in a room for some seconds. But eventually I end up with this log error:
"error": "NALU Type is unhandled: 25"
Other types of NALU appears. I do not understand the low level details about the RTP protocol for x264, but I suppose by these errors that OBS is sending some RTP packet or information that pion/rtp
does not understand or is wrong, so the media just freeze, and stop working.
Transcoding is disabled, so I suppose the media is being sent directly to the room as a new Participant into the room.
I did not test with your Broadcast Box server, but I though it would be good to notify my results after testing it, just in case is something related with OBS.
I've tested with:
The WHIP endpoint is responding with setup=actpass in the answer. It MUST be active or passive. I am guessing that an offer is being generated (instead of an answer) by the SFU.
No matter what the root issue is unrelated! My PR fixes the issue of supporting non-sha256 fingerprints.
@Sean-Der thank you for looking into the issue with the setup=actpass
I'm confused about the requirement for it to be active
or passive
, though. Isn't it a part of the old spec?
According to the latest WHIP spec:
Unlike [RFC5763] a WHIP client MAY use a setup attribute value of setup:active in the SDP offer, in which case the WHIP endpoint MUST use a setup attribute value of setup:passive in the SDP answer.
Based on my understanding, actpass
should be a valid answer.
Additionally, it seems unsound that OBS crashes without providing any useful explanation in this case, and I guess it shouldn't crash at all. Should I create a separate issue for this?
@ArmorDarks
actpass
was coming from the server. Which I believe is invalid? So client was doing actpass
and then server was returning actpass
100% agree on better error handling. When we get a new version of libdatachannel + obs-deps I will add a try+catch
on setRemoteDescription
and print to stdout.
Operating System Info
macOS 14
Other OS
No response
OBS Studio Version
30.0.0-rc2
OBS Studio Version (Other)
No response
OBS Studio Log URL
https://obsproject.com/logs/zpTpVWH7AhTyBaMB
OBS Studio Crash Log URL
No response
Expected Behavior
it should not crash and start broadcasting
Current Behavior
It crashes, closes
Steps to Reproduce
Configure OBS to use a WHIP server.
I provide a sample WHIP answer that makes it crash. What is curious is that it closes no matter what, even if I put an invalid ip (that would not be able to connect to, so should not crash, and give connection error instead). Sometimes it worked, but it's randomly, most of the time just... closes itself.
Anything else we should know?
No response