Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crash on boot for particular basic/scenes/Untitled.json #10682

Open
Glitched opened this issue May 17, 2024 · 1 comment
Open

Crash on boot for particular basic/scenes/Untitled.json #10682

Glitched opened this issue May 17, 2024 · 1 comment

Comments

@Glitched
Copy link

Glitched commented May 17, 2024

Operating System Info

macOS 14

Other OS

No response

OBS Studio Version

30.1.2

OBS Studio Version (Other)

No response

OBS Studio Log URL

https://obsproject.com/logs/PoDNSobWHFldo2Nz

OBS Studio Crash Log URL

No crash logs generated

Expected Behavior

OBS not to crash on startup.

I don't think those OBS logs will be super useful -- I looked at all my logs and they don't seem to have anything related to the crash.

I also found making a more than few websocket requests back to back consistently creates bad Untitled.json files which cause my OBS to crash on startup.

Current Behavior

OBS crashes on startup with seemingly no relevant logs.

Steps to Reproduce

I got here from programmatically making a number of (valid) websocket requests, but I found I the source of. the crash to be in the Untitled.json that OBS created.

  1. Starting from a fresh install
  2. Open OBS so files in ~/Library/Application Support/obs-studio/ are created
  3. Replace ~/Library/Application Support/obs-studio/basic/scenes/Untitled.json with the following contents:
{
    "AuxAudioDevice1": {
        "prev_ver": 503382018,
        "name": "Mic/Aux",
        "uuid": "44d819e4-36e9-42d8-adac-d94909f8dfec",
        "id": "coreaudio_input_capture",
        "versioned_id": "coreaudio_input_capture",
        "settings": {
            "device_id": "default"
        },
        "mixers": 255,
        "sync": 0,
        "flags": 0,
        "volume": 1.0,
        "balance": 0.5,
        "enabled": true,
        "muted": false,
        "push-to-mute": false,
        "push-to-mute-delay": 0,
        "push-to-talk": false,
        "push-to-talk-delay": 0,
        "hotkeys": {
            "libobs.mute": [],
            "libobs.unmute": [],
            "libobs.push-to-mute": [],
            "libobs.push-to-talk": []
        },
        "deinterlace_mode": 0,
        "deinterlace_field_order": 0,
        "monitoring_type": 0,
        "private_settings": {}
    },
    "current_scene": "",
    "current_program_scene": "",
    "scene_order": [],
    "name": "Untitled",
    "sources": [
        {
            "prev_ver": 503382018,
            "name": "Countdown Timer • 0b391f21-41d9-4600-8f00-9d0287851f4c",
            "uuid": "48c11126-c4e9-406d-88e5-829edda05999",
            "id": "text_ft2_source",
            "versioned_id": "text_ft2_source_v2",
            "settings": {
                "color": 4294967295,
                "text": "4:08",
                "font": {
                    "face": "Avenir",
                    "size": 120
                },
                "color1": 4278198255,
                "color2": 4278190185
            },
            "mixers": 0,
            "sync": 0,
            "flags": 0,
            "volume": 1.0,
            "balance": 0.5,
            "enabled": true,
            "muted": false,
            "push-to-mute": false,
            "push-to-mute-delay": 0,
            "push-to-talk": false,
            "push-to-talk-delay": 0,
            "hotkeys": {},
            "deinterlace_mode": 0,
            "deinterlace_field_order": 0,
            "monitoring_type": 0,
            "private_settings": {}
        },
        {
            "prev_ver": 503382018,
            "name": "Execution Text • 0b391f21-41d9-4600-8f00-9d0287851f4c",
            "uuid": "9d260956-d599-4c97-8c2f-882552682978",
            "id": "text_ft2_source",
            "versioned_id": "text_ft2_source_v2",
            "settings": {
                "color": 4294967295,
                "text": "Execution",
                "font": {
                    "face": "Avenir",
                    "size": 120
                },
                "color1": 4278198255,
                "color2": 4278190185
            },
            "mixers": 0,
            "sync": 0,
            "flags": 0,
            "volume": 1.0,
            "balance": 0.5,
            "enabled": true,
            "muted": false,
            "push-to-mute": false,
            "push-to-mute-delay": 0,
            "push-to-talk": false,
            "push-to-talk-delay": 0,
            "hotkeys": {},
            "deinterlace_mode": 0,
            "deinterlace_field_order": 0,
            "monitoring_type": 0,
            "private_settings": {}
        }
    ],
    "groups": [],
    "quick_transitions": [
        {
            "name": "Cut",
            "duration": 300,
            "hotkeys": [],
            "id": 1,
            "fade_to_black": false
        },
        {
            "name": "Fade",
            "duration": 300,
            "hotkeys": [],
            "id": 2,
            "fade_to_black": false
        },
        {
            "name": "Fade",
            "duration": 300,
            "hotkeys": [],
            "id": 3,
            "fade_to_black": true
        }
    ],
    "transitions": [],
    "saved_projectors": [],
    "current_transition": "Fade",
    "transition_duration": 300,
    "preview_locked": false,
    "scaling_enabled": false,
    "scaling_level": 0,
    "scaling_off_x": 0.0,
    "scaling_off_y": 0.0,
    "virtual-camera": {
        "type2": 3
    },
    "modules": {
        "scripts-tool": [],
        "output-timer": {
            "streamTimerHours": 0,
            "streamTimerMinutes": 0,
            "streamTimerSeconds": 30,
            "recordTimerHours": 0,
            "recordTimerMinutes": 0,
            "recordTimerSeconds": 30,
            "autoStartStreamTimer": false,
            "autoStartRecordTimer": false,
            "pauseRecordTimer": true
        },
        "auto-scene-switcher": {
            "interval": 300,
            "non_matching_scene": "",
            "switch_if_not_matching": false,
            "active": false,
            "switches": []
        }
    }
}

Anything else we should know?

No response

@RytoEX
Copy link
Member

RytoEX commented May 17, 2024

macOS application crash logs are handled by macOS and available on application crash or via Console.app.

  1. Open Console.app (Located in /Applications/Utilities).
  2. Navigate to the Crash Reports view along the left sidebar, then sort the table by date to find the most recent crash with the OBS process name.
  3. Drag and drop the selected crash onto the comment box to upload the file, or zip it and upload it, or copy-and-paste the report text here.

Strangely, this crash looks like it occurs within obs-websocket itself. Worth noting that this does not cause a crash on Windows. However, since there are no scenes defined in the scene collection, nothing is displayed.

The key here seems to be that there are no scenes in the scene collection file, which causes a crash deep in obs-websocket/nlohmann-json/stdlib when trying to get the name of the current scene (there is none).

Did you delete all scenes via websocket calls?

cc @tt2468

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants