diff --git a/alacritty/alacritty.toml b/alacritty/alacritty.toml new file mode 100644 index 0000000..187e9b5 --- /dev/null +++ b/alacritty/alacritty.toml @@ -0,0 +1,167 @@ +[env] +TERM = "xterm-256color" +WINIT_X11_SCALE_FACTOR = "1" + +[window] +dynamic_padding = true +decorations = "full" +title = "Alacritty@CachyOS" +opacity = 0.8 +decorations_theme_variant = "Dark" + +[window.dimensions] +columns = 100 +lines = 30 + +[window.class] +instance = "Alacritty" +general = "Alacritty" + +[scrolling] +history = 10000 +multiplier = 3 + +[colors] +draw_bold_text_with_bright_colors = true + +[colors.primary] +background = "0x2E3440" +foreground = "0xD8DEE9" + +[colors.normal] +black = "0x3B4252" +red = "0xBF616A" +green = "0xA3BE8C" +yellow = "0xEBCB8B" +blue = "0x81A1C1" +magenta = "0xB48EAD" +cyan = "0x88C0D0" +white = "0xE5E9F0" + +[colors.bright] +black = "0x4C566A" +red = "0xBF616A" +green = "0xA3BE8C" +yellow = "0xEBCB8B" +blue = "0x81A1C1" +magenta = "0xB48EAD" +cyan = "0x8FBCBB" +white = "0xECEFF4" + +[font] +size = 12.0 + +[font.normal] +family = "JetBrainsMono Nerd Font" +style = "Regular" + +[font.bold] +family = "JetBrainsMono Nerd Font" +style = "Bold" + +[font.italic] +family = "JetBrainsMono Nerd Font" +style = "Italic" + + +[selection] +semantic_escape_chars = ",│`|:\"' ()[]{}<>\t" +save_to_clipboard = true + +[cursor] +style = "Underline" +vi_mode_style = "None" +unfocused_hollow = true +thickness = 0.15 + +[mouse] +hide_when_typing = true + +[[mouse.bindings]] +mouse = "Middle" +action = "PasteSelection" + +[keyboard] +[[keyboard.bindings]] +key = "Paste" +action = "Paste" + +[[keyboard.bindings]] +key = "Copy" +action = "Copy" + +[[keyboard.bindings]] +key = "L" +mods = "Control" +action = "ClearLogNotice" + +[[keyboard.bindings]] +key = "L" +mods = "Control" +mode = "~Vi" +chars = "\f" + +[[keyboard.bindings]] +key = "PageUp" +mods = "Shift" +mode = "~Alt" +action = "ScrollPageUp" + +[[keyboard.bindings]] +key = "PageDown" +mods = "Shift" +mode = "~Alt" +action = "ScrollPageDown" + +[[keyboard.bindings]] +key = "Home" +mods = "Shift" +mode = "~Alt" +action = "ScrollToTop" + +[[keyboard.bindings]] +key = "End" +mods = "Shift" +mode = "~Alt" +action = "ScrollToBottom" + +[[keyboard.bindings]] +key = "V" +mods = "Control|Shift" +action = "Paste" + +[[keyboard.bindings]] +key = "C" +mods = "Control|Shift" +action = "Copy" + +[[keyboard.bindings]] +key = "F" +mods = "Control|Shift" +action = "SearchForward" + +[[keyboard.bindings]] +key = "B" +mods = "Control|Shift" +action = "SearchBackward" + +[[keyboard.bindings]] +key = "C" +mods = "Control|Shift" +mode = "Vi" +action = "ClearSelection" + +[[keyboard.bindings]] +key = "Key0" +mods = "Control" +action = "ResetFontSize" + +[general] +live_config_reload = true +working_directory = "None" + +[terminal.shell] +program = "/usr/bin/sh" +args = ["-c", "fastfetch && exec nu"] + + diff --git a/aria2/aria2.conf b/aria2/aria2.conf new file mode 100644 index 0000000..10f2df0 --- /dev/null +++ b/aria2/aria2.conf @@ -0,0 +1,9 @@ +enable-rpc=true +rpc-listen-all=true +rpc-allow-origin-all=true +rpc-listen-port=6800 +continue=true +dir=/home/dich/Downloads +input-file=/home/dich/.config/aria2/aria2.session +save-session=/home/dich/.config/aria2/aria2.session +save-session-interval=60 diff --git a/atuin/config.toml b/atuin/config.toml new file mode 100644 index 0000000..eedc858 --- /dev/null +++ b/atuin/config.toml @@ -0,0 +1,10 @@ +enter_accept = true + +[sync] +records = true + +[preview] +strategy = "auto" + +[daemon] +enabled = false diff --git a/btop/btop.conf b/btop/btop.conf new file mode 100644 index 0000000..ce54a93 --- /dev/null +++ b/btop/btop.conf @@ -0,0 +1,254 @@ +#? Config file for btop v. 1.4.3 + +#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes. +#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes" +color_theme = "Default" + +#* If the theme set background should be shown, set to False if you want terminal background transparency. +theme_background = True + +#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false. +truecolor = True + +#* Set to true to force tty mode regardless if a real tty has been detected or not. +#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols. +force_tty = False + +#* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets. +#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box. +#* Use whitespace " " as separator between different presets. +#* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty" +presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty" + +#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists. +#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift. +vim_keys = False + +#* Rounded corners on boxes, is ignored if TTY mode is ON. +rounded_corners = True + +#* Default symbols to use for graph creation, "braille", "block" or "tty". +#* "braille" offers the highest resolution but might not be included in all fonts. +#* "block" has half the resolution of braille but uses more common characters. +#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY. +#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view. +graph_symbol = "braille" + +# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". +graph_symbol_cpu = "default" + +# Graph symbol to use for graphs in gpu box, "default", "braille", "block" or "tty". +graph_symbol_gpu = "default" + +# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". +graph_symbol_mem = "default" + +# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". +graph_symbol_net = "default" + +# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". +graph_symbol_proc = "default" + +#* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace. +shown_boxes = "cpu mem net proc" + +#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs. +update_ms = 2000 + +#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct", +#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly. +proc_sorting = "cpu lazy" + +#* Reverse sorting order, True or False. +proc_reversed = False + +#* Show processes as a tree. +proc_tree = False + +#* Use the cpu graph colors in the process list. +proc_colors = True + +#* Use a darkening gradient in the process list. +proc_gradient = True + +#* If process cpu usage should be of the core it's running on or usage of the total available cpu power. +proc_per_core = False + +#* Show process memory as bytes instead of percent. +proc_mem_bytes = True + +#* Show cpu graph for each process. +proc_cpu_graphs = True + +#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate) +proc_info_smaps = False + +#* Show proc box on left side of screen instead of right. +proc_left = False + +#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop). +proc_filter_kernel = False + +#* In tree-view, always accumulate child process resources in the parent process. +proc_aggregate = False + +#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available. +#* Select from a list of detected attributes from the options menu. +cpu_graph_upper = "Auto" + +#* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available. +#* Select from a list of detected attributes from the options menu. +cpu_graph_lower = "Auto" + +#* If gpu info should be shown in the cpu box. Available values = "Auto", "On" and "Off". +show_gpu_info = "Auto" + +#* Toggles if the lower CPU graph should be inverted. +cpu_invert_lower = True + +#* Set to True to completely disable the lower CPU graph. +cpu_single_graph = False + +#* Show cpu box at bottom of screen instead of top. +cpu_bottom = False + +#* Shows the system uptime in the CPU box. +show_uptime = True + +#* Show cpu temperature. +check_temp = True + +#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors. +cpu_sensor = "Auto" + +#* Show temperatures for cpu cores also if check_temp is True and sensors has been found. +show_coretemp = True + +#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core. +#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine. +#* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries. +#* Example: "4:0 5:1 6:3" +cpu_core_map = "" + +#* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine". +temp_scale = "celsius" + +#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024. +base_10_sizes = False + +#* Show CPU frequency. +show_cpu_freq = True + +#* Draw a clock at top of screen, formatting according to strftime, empty string to disable. +#* Special formatting: /host = hostname | /user = username | /uptime = system uptime +clock_format = "%X" + +#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort. +background_update = True + +#* Custom cpu model name, empty string to disable. +custom_cpu_name = "" + +#* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ". +#* Begin line with "exclude=" to change to exclude filter, otherwise defaults to "most include" filter. Example: disks_filter="exclude=/boot /home/user". +disks_filter = "" + +#* Show graphs instead of meters for memory values. +mem_graphs = True + +#* Show mem box below net box instead of above. +mem_below_net = False + +#* Count ZFS ARC in cached and available memory. +zfs_arc_cached = True + +#* If swap memory should be shown in memory box. +show_swap = True + +#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk. +swap_disk = True + +#* If mem box should be split to also show disks info. +show_disks = True + +#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar. +only_physical = True + +#* Read disks list from /etc/fstab. This also disables only_physical. +use_fstab = True + +#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool) +zfs_hide_datasets = False + +#* Set to true to show available disk space for privileged users. +disk_free_priv = False + +#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view. +show_io_stat = True + +#* Toggles io mode for disks, showing big graphs for disk read/write speeds. +io_mode = False + +#* Set to True to show combined read/write io graphs in io mode. +io_graph_combined = False + +#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ". +#* Example: "/mnt/media:100 /:20 /boot:1". +io_graph_speeds = "" + +#* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False. +net_download = 100 + +net_upload = 100 + +#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest. +net_auto = True + +#* Sync the auto scaling for download and upload to whichever currently has the highest scale. +net_sync = True + +#* Starts with the Network Interface specified here. +net_iface = "" + +#* "True" shows bitrates in base 10 (Kbps, Mbps). "False" shows bitrates in binary sizes (Kibps, Mibps, etc.). "Auto" uses base_10_sizes. +base_10_bitrate = "Auto" + +#* Show battery stats in top right if battery is present. +show_battery = True + +#* Which battery to use if multiple are present. "Auto" for auto detection. +selected_battery = "Auto" + +#* Show power stats of battery next to charge indicator. +show_battery_watts = True + +#* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG". +#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info. +log_level = "WARNING" + +#* Measure PCIe throughput on NVIDIA cards, may impact performance on certain cards. +nvml_measure_pcie_speeds = True + +#* Measure PCIe throughput on AMD cards, may impact performance on certain cards. +rsmi_measure_pcie_speeds = True + +#* Horizontally mirror the GPU graph. +gpu_mirror_graph = True + +#* Custom gpu0 model name, empty string to disable. +custom_gpu_name0 = "" + +#* Custom gpu1 model name, empty string to disable. +custom_gpu_name1 = "" + +#* Custom gpu2 model name, empty string to disable. +custom_gpu_name2 = "" + +#* Custom gpu3 model name, empty string to disable. +custom_gpu_name3 = "" + +#* Custom gpu4 model name, empty string to disable. +custom_gpu_name4 = "" + +#* Custom gpu5 model name, empty string to disable. +custom_gpu_name5 = "" diff --git a/fastfetch/config.jsonc b/fastfetch/config.jsonc new file mode 100644 index 0000000..2584afe --- /dev/null +++ b/fastfetch/config.jsonc @@ -0,0 +1,162 @@ +{ + "display": { + "separator": " ", + }, + "logo": { + "source": "apple", + "padding": { + "top": 0 + }, + }, + "modules": [ + { + "type": "custom", + "format": "\u001b[36m╭────────────┬──────────────────Hardware───────────────────────╮", + }, + { + "type": "host", + "key": " PC │", + "keyColor": "cyan", + "format": "{2}", + "outputColor": "cyan", + }, + { + "type": "board", + "key": "│ ╠ Board │", + "keyColor": "cyan", + "format": "{1}", + "outputColor": "cyan", + }, + { + "type": "cpu", + "key": "│ ╠ CPU │", + "keyColor": "cyan", + "format": "{1}", + "outputColor": "cyan", + }, + { + "type": "gpu", + "key": "│ ╠ GPU │", + "keyColor": "cyan", + "format": "{1} {2}", + "outputColor": "cyan", + }, + { + "type": "memory", + "key": "│ ╠ RAM │", + "keyColor": "cyan", + "outputColor": "cyan", + }, + { + "type": "disk", + "key": "│ ╠ Disk │", + "keyColor": "cyan", + "outputColor": "cyan", + "format": "{1} / {2} ({3}) {9}", + }, + { + "type": "display", + "key": "│ ╠󰍺 Display │", + "keyColor": "cyan", + "outputColor": "cyan", + "format": "{1}x{2}@{3}Hz in {12}-inch", + }, + { + "type": "battery", + "key": "│ ╠ Battery │", + "keyColor": "cyan", + "outputColor": "cyan", + }, + { + "type": "uptime", + "key": "│ ╚ Uptime │", + "keyColor": "cyan", + "format": "{1} days {2} hours {3} minutes", + "outputColor": "cyan", + }, + { + "type": "custom", + "format": "\u001b[36m╰────────────┴─────────────────────────────────────────────────╯", + }, + { + "type": "custom", + "format": "\u001b[34m╭────────────┬──────────────────Software───────────────────────╮", + }, + { + "type": "os", + "key": " OS │", + "keyColor": "blue", + "format": "{2} {8} {12}", + "outputColor": "blue", + }, + { + "type": "kernel", + "key": "│ ╠ Kernel │", + "keyColor": "blue", + "format": "{1} {2}", + "outputColor": "blue", + }, + { + "type": "packages", + "key": "│ ╠󰏖 Packages│", + "keyColor": "blue", + "outputColor": "blue", + }, + { + "type": "shell", + "key": "│ ╠ Shell │", + "keyColor": "blue", + "outputColor": "blue", + "format": "nushell", + }, + { + "type": "terminal", + "key": "│ ╠ Terminal│", + "keyColor": "blue", + "outputColor": "blue", + "format": "{5} {6}", + }, + { + "type": "lm", + "key": "│ ╠󰍂 LM │", + "keyColor": "blue", + "outputColor": "blue", + }, + { + "type": "de", + "key": "│ ╠ DE │", + "keyColor": "blue", + "outputColor": "blue", + "format": "{2}", + }, + { + "type": "terminalfont", + "key": "│ ╠󰬴 TermFont│", + "keyColor": "blue", + "outputColor": "blue", + }, + { + "type": "icons", + "key": "│ ╠ Icons │", + "keyColor": "blue", + "outputColor": "blue", + "format": "{1} {2}", + }, + { + "type": "title", + "key": "│ ╚ Hostname│", + "keyColor": "blue", + "outputColor": "blue", + "format": "{8}", + }, + { + "type": "custom", + "format": "\u001b[34m╰────────────┴─────────────────────────────────────────────────╯", + }, + { + "type": "custom", + "format": "\u001b[90m \u001b[91m \u001b[92m \u001b[93m \u001b[94m \u001b[95m \u001b[96m \u001b[97m \u001b[97m \u001b[96m \u001b[95m \u001b[94m \u001b[93m \u001b[92m \u001b[91m \u001b[90m", + }, + ], +} + diff --git a/lazygit/config.yml b/lazygit/config.yml new file mode 100644 index 0000000..6cfbafc --- /dev/null +++ b/lazygit/config.yml @@ -0,0 +1,23 @@ +gui: + authorColors: + "*": "#b4befe" + theme: + activeBorderColor: + - "#cba6f7" + - bold + inactiveBorderColor: + - "#a6adc8" + optionsTextColor: + - "#89b4fa" + selectedLineBgColor: + - "#313244" + cherryPickedCommitBgColor: + - "#45475a" + cherryPickedCommitFgColor: + - "#cba6f7" + unstagedChangesColor: + - "#f38ba8" + defaultFgColor: + - "#cdd6f4" + searchingActiveBorderColor: + - "#f9e2af" diff --git a/nushell/config.nu b/nushell/config.nu new file mode 100644 index 0000000..51e7758 --- /dev/null +++ b/nushell/config.nu @@ -0,0 +1,24 @@ +# config.nu +# +# Installed by: +# version = "0.103.0" +# +# This file is used to override default Nushell settings, define +# (or import) custom commands, or run any other startup tasks. +# See https://www.nushell.sh/book/configuration.html +# +# This file is loaded after env.nu and before login.nu +# +# You can open this file in your default editor using: +# config nu +# +# See `help config nu` for more options +# +# You can remove these comments if you want or leave +# them for future reference. + +source ~/.local/share/atuin/init.nu +mkdir ($nu.data-dir | path join "vendor/autoload") +starship init nu | save -f ($nu.data-dir | path join "vendor/autoload/starship.nu") +# 彻底关闭启动欢迎横幅 +$env.config.show_banner = false diff --git a/nushell/env.nu b/nushell/env.nu new file mode 100644 index 0000000..2a6217e --- /dev/null +++ b/nushell/env.nu @@ -0,0 +1,18 @@ +# env.nu +# +# Installed by: +# version = "0.103.0" +# +# Previously, environment variables were typically configured in `env.nu`. +# In general, most configuration can and should be performed in `config.nu` +# or one of the autoload directories. +# +# This file is generated for backwards compatibility for now. +# It is loaded before config.nu and login.nu +# +# See https://www.nushell.sh/book/configuration.html +# +# Also see `help config env` for more options. +# +# You can remove these comments if you want or leave +# them for future reference. \ No newline at end of file diff --git a/nvim/.gitignore b/nvim/.gitignore new file mode 100644 index 0000000..cc5457a --- /dev/null +++ b/nvim/.gitignore @@ -0,0 +1,8 @@ +tt.* +.tests +doc/tags +debug +.repro +foo.* +*.log +data diff --git a/nvim/.neoconf.json b/nvim/.neoconf.json new file mode 100644 index 0000000..7c48087 --- /dev/null +++ b/nvim/.neoconf.json @@ -0,0 +1,15 @@ +{ + "neodev": { + "library": { + "enabled": true, + "plugins": true + } + }, + "neoconf": { + "plugins": { + "lua_ls": { + "enabled": true + } + } + } +} diff --git a/nvim/LICENSE b/nvim/LICENSE new file mode 100644 index 0000000..261eeb9 --- /dev/null +++ b/nvim/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/nvim/README.md b/nvim/README.md new file mode 100644 index 0000000..185280b --- /dev/null +++ b/nvim/README.md @@ -0,0 +1,4 @@ +# 💤 LazyVim + +A starter template for [LazyVim](https://github.com/LazyVim/LazyVim). +Refer to the [documentation](https://lazyvim.github.io/installation) to get started. diff --git a/nvim/init.lua b/nvim/init.lua new file mode 100644 index 0000000..bb0d29c --- /dev/null +++ b/nvim/init.lua @@ -0,0 +1,9 @@ +-- bootstrap lazy.nvim, LazyVim and your plugins +require("config.lazy") + +vim.api.nvim_create_autocmd("FileType", { + pattern = "markdown", + callback = function() + vim.opt_local.conceallevel = 0 + end, +}) diff --git a/nvim/lazy-lock.json b/nvim/lazy-lock.json new file mode 100644 index 0000000..73a7cd7 --- /dev/null +++ b/nvim/lazy-lock.json @@ -0,0 +1,48 @@ +{ + "LazyVim": { "branch": "main", "commit": "25abbf546d564dc484cf903804661ba12de45507" }, + "SchemaStore.nvim": { "branch": "main", "commit": "a9ba109549de51e3b4594d39a1c07f14b9d0cfa5" }, + "blink.cmp": { "branch": "main", "commit": "022521a8910a5543b0251b21c9e1a1e989745796" }, + "bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" }, + "catppuccin": { "branch": "main", "commit": "56a9dfd1e05868cf3189369aad87242941396563" }, + "clangd_extensions.nvim": { "branch": "main", "commit": "db28f29be928d18cbfb86fbfb9f83f584f658feb" }, + "cmake-tools.nvim": { "branch": "master", "commit": "591ae37fc5494677e929118f0a182d2b61fe1af1" }, + "conform.nvim": { "branch": "master", "commit": "6feb2f28f9a9385e401857b21eeac3c1b66dd628" }, + "dashboard-nvim": { "branch": "master", "commit": "0f99b3cd66b9fde13926724c67c6e1abeb48e07d" }, + "flash.nvim": { "branch": "main", "commit": "3c942666f115e2811e959eabbdd361a025db8b63" }, + "friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" }, + "gitsigns.nvim": { "branch": "main", "commit": "8b729e489f1475615dc6c9737da917b3bc163605" }, + "grug-far.nvim": { "branch": "main", "commit": "f24022147ca4a0fe1d424a520a9437accbeba193" }, + "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, + "lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" }, + "lazygit.nvim": { "branch": "main", "commit": "b9eae3badab982e71abab96d3ee1d258f0c07961" }, + "lualine.nvim": { "branch": "master", "commit": "0c6cca9f2c63dadeb9225c45bc92bb95a151d4af" }, + "markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "1a31f824b9cd5bc6f342fc29e9a53b60d74af245" }, + "mason-nvim-dap.nvim": { "branch": "main", "commit": "4c2cdc69d69fe00c15ae8648f7e954d99e5de3ea" }, + "mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" }, + "mini.ai": { "branch": "main", "commit": "7f1fe86277f0e977642cf8fe15f004229f61e61a" }, + "mini.icons": { "branch": "main", "commit": "397ed3807e96b59709ef3292f0a3e253d5c1dc0a" }, + "mini.pairs": { "branch": "main", "commit": "69864a2efb36c030877421634487fd90db1e4298" }, + "noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" }, + "nui.nvim": { "branch": "main", "commit": "7cd18e73cfbd70e1546931b7268b3eebaeff9391" }, + "nvim-dap": { "branch": "master", "commit": "b0f983507e3702f073bfe1516846e58b56d4e42f" }, + "nvim-dap-go": { "branch": "main", "commit": "8763ced35b19c8dc526e04a70ab07c34e11ad064" }, + "nvim-dap-ui": { "branch": "master", "commit": "73a26abf4941aa27da59820fd6b028ebcdbcf932" }, + "nvim-dap-virtual-text": { "branch": "master", "commit": "fbdb48c2ed45f4a8293d0d483f7730d24467ccb6" }, + "nvim-lint": { "branch": "master", "commit": "b47cbb249351873e3a571751c3fb66ed6369852f" }, + "nvim-lspconfig": { "branch": "master", "commit": "b8e7957bde4cbb3cb25a13a62548f7c273b026e9" }, + "nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" }, + "nvim-osc52": { "branch": "main", "commit": "04cfaba1865ae5c53b6f887c3ca7304973824fb2" }, + "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, + "nvim-treesitter-textobjects": { "branch": "master", "commit": "0f051e9813a36481f48ca1f833897210dbcfffde" }, + "nvim-ts-autotag": { "branch": "main", "commit": "a1d526af391f6aebb25a8795cbc05351ed3620b5" }, + "nvim-web-devicons": { "branch": "master", "commit": "1fb58cca9aebbc4fd32b086cb413548ce132c127" }, + "persistence.nvim": { "branch": "main", "commit": "166a79a55bfa7a4db3e26fc031b4d92af71d0b51" }, + "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, + "snacks.nvim": { "branch": "main", "commit": "bc0630e43be5699bb94dadc302c0d21615421d93" }, + "todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" }, + "tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" }, + "trouble.nvim": { "branch": "main", "commit": "85bedb7eb7fa331a2ccbecb9202d8abba64d37b3" }, + "ts-comments.nvim": { "branch": "main", "commit": "1bd9d0ba1d8b336c3db50692ffd0955fe1bb9f0c" }, + "which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" } +} diff --git a/nvim/lazyvim.json b/nvim/lazyvim.json new file mode 100644 index 0000000..54fa8d2 --- /dev/null +++ b/nvim/lazyvim.json @@ -0,0 +1,15 @@ +{ + "extras": [ + "lazyvim.plugins.extras.dap.core", + "lazyvim.plugins.extras.lang.clangd", + "lazyvim.plugins.extras.lang.cmake", + "lazyvim.plugins.extras.lang.docker", + "lazyvim.plugins.extras.lang.go", + "lazyvim.plugins.extras.lang.yaml" + ], + "install_version": 8, + "news": { + "NEWS.md": "10960" + }, + "version": 8 +} \ No newline at end of file diff --git a/nvim/lua/config/autocmds.lua b/nvim/lua/config/autocmds.lua new file mode 100644 index 0000000..4221e75 --- /dev/null +++ b/nvim/lua/config/autocmds.lua @@ -0,0 +1,8 @@ +-- Autocmds are automatically loaded on the VeryLazy event +-- Default autocmds that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/autocmds.lua +-- +-- Add any additional autocmds here +-- with `vim.api.nvim_create_autocmd` +-- +-- Or remove existing autocmds by their group name (which is prefixed with `lazyvim_` for the defaults) +-- e.g. vim.api.nvim_del_augroup_by_name("lazyvim_wrap_spell") diff --git a/nvim/lua/config/keymaps.lua b/nvim/lua/config/keymaps.lua new file mode 100644 index 0000000..a74173c --- /dev/null +++ b/nvim/lua/config/keymaps.lua @@ -0,0 +1,31 @@ +-- Keymaps are automatically loaded on the VeryLazy event +-- Default keymaps that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/keymaps.lua +-- Add any additional keymaps here + +local map = vim.keymap.set +local opts = { noremap = true, silent = true } + +-- === VSCode-like buffer/tab navigation === +map("n", "", "bnext", { desc = "Next buffer (like VSCode)" }) +map("n", "", "bprevious", { desc = "Previous buffer (like VSCode)" }) + +-- === Close buffer like Ctrl + W in VSCode === +vim.keymap.set("n", "", "BufferLinePickClose", { desc = "Close buffer (BufferLine)" }) + +vim.keymap.set("n", "", function() +if vim.bo.buftype == "terminal" then + vim.cmd("vsplit | terminal") + else + vim.cmd("botright split | terminal") + end + end, { desc = "Split terminal" }) + +-- 在终端模式下的快捷键 +vim.keymap.set("t", "", "h", { desc = "Go to left window" }) +vim.keymap.set("t", "", "j", { desc = "Go to lower window" }) +vim.keymap.set("t", "", "k", { desc = "Go to upper window" }) +vim.keymap.set("t", "", "l", { desc = "Go to right window" }) + +vim.keymap.set("n", "xo", function() +vim.fn.jobstart({ "xdg-open", vim.fn.expand("%:p") }, { detach = true }) +end, { desc = "使用系统默认应用程序打开当前文件" }) diff --git a/nvim/lua/config/lazy.lua b/nvim/lua/config/lazy.lua new file mode 100644 index 0000000..d73bfa1 --- /dev/null +++ b/nvim/lua/config/lazy.lua @@ -0,0 +1,53 @@ +local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" +if not (vim.uv or vim.loop).fs_stat(lazypath) then + local lazyrepo = "https://github.com/folke/lazy.nvim.git" + local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath }) + if vim.v.shell_error ~= 0 then + vim.api.nvim_echo({ + { "Failed to clone lazy.nvim:\n", "ErrorMsg" }, + { out, "WarningMsg" }, + { "\nPress any key to exit..." }, + }, true, {}) + vim.fn.getchar() + os.exit(1) + end +end +vim.opt.rtp:prepend(lazypath) + +require("lazy").setup({ + spec = { + -- add LazyVim and import its plugins + { "LazyVim/LazyVim", import = "lazyvim.plugins" }, + -- import/override with your plugins + { import = "plugins" }, + }, + defaults = { + -- By default, only LazyVim plugins will be lazy-loaded. Your custom plugins will load during startup. + -- If you know what you're doing, you can set this to `true` to have all your custom plugins lazy-loaded by default. + lazy = false, + -- It's recommended to leave version=false for now, since a lot the plugin that support versioning, + -- have outdated releases, which may break your Neovim install. + version = false, -- always use the latest git commit + -- version = "*", -- try installing the latest stable version for plugins that support semver + }, + install = { colorscheme = { "tokyonight", "habamax" } }, + checker = { + enabled = true, -- check for plugin updates periodically + notify = false, -- notify on update + }, -- automatically check for plugin updates + performance = { + rtp = { + -- disable some rtp plugins + disabled_plugins = { + "gzip", + -- "matchit", + -- "matchparen", + -- "netrwPlugin", + "tarPlugin", + "tohtml", + "tutor", + "zipPlugin", + }, + }, + }, +}) diff --git a/nvim/lua/config/options.lua b/nvim/lua/config/options.lua new file mode 100644 index 0000000..3ea1454 --- /dev/null +++ b/nvim/lua/config/options.lua @@ -0,0 +1,3 @@ +-- Options are automatically loaded before lazy.nvim startup +-- Default options that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/options.lua +-- Add any additional options here diff --git a/nvim/lua/plugins/example.lua b/nvim/lua/plugins/example.lua new file mode 100644 index 0000000..17f53d6 --- /dev/null +++ b/nvim/lua/plugins/example.lua @@ -0,0 +1,197 @@ +-- since this is just an example spec, don't actually load anything here and return an empty spec +-- stylua: ignore +if true then return {} end + +-- every spec file under the "plugins" directory will be loaded automatically by lazy.nvim +-- +-- In your plugin files, you can: +-- * add extra plugins +-- * disable/enabled LazyVim plugins +-- * override the configuration of LazyVim plugins +return { + -- add gruvbox + { "ellisonleao/gruvbox.nvim" }, + + -- Configure LazyVim to load gruvbox + { + "LazyVim/LazyVim", + opts = { + colorscheme = "gruvbox", + }, + }, + + -- change trouble config + { + "folke/trouble.nvim", + -- opts will be merged with the parent spec + opts = { use_diagnostic_signs = true }, + }, + + -- disable trouble + { "folke/trouble.nvim", enabled = false }, + + -- override nvim-cmp and add cmp-emoji + { + "hrsh7th/nvim-cmp", + dependencies = { "hrsh7th/cmp-emoji" }, + ---@param opts cmp.ConfigSchema + opts = function(_, opts) + table.insert(opts.sources, { name = "emoji" }) + end, + }, + + -- change some telescope options and a keymap to browse plugin files + { + "nvim-telescope/telescope.nvim", + keys = { + -- add a keymap to browse plugin files + -- stylua: ignore + { + "fp", + function() require("telescope.builtin").find_files({ cwd = require("lazy.core.config").options.root }) end, + desc = "Find Plugin File", + }, + }, + -- change some options + opts = { + defaults = { + layout_strategy = "horizontal", + layout_config = { prompt_position = "top" }, + sorting_strategy = "ascending", + winblend = 0, + }, + }, + }, + + -- add pyright to lspconfig + { + "neovim/nvim-lspconfig", + ---@class PluginLspOpts + opts = { + ---@type lspconfig.options + servers = { + -- pyright will be automatically installed with mason and loaded with lspconfig + pyright = {}, + }, + }, + }, + + -- add tsserver and setup with typescript.nvim instead of lspconfig + { + "neovim/nvim-lspconfig", + dependencies = { + "jose-elias-alvarez/typescript.nvim", + init = function() + require("lazyvim.util").lsp.on_attach(function(_, buffer) + -- stylua: ignore + vim.keymap.set( "n", "co", "TypescriptOrganizeImports", { buffer = buffer, desc = "Organize Imports" }) + vim.keymap.set("n", "cR", "TypescriptRenameFile", { desc = "Rename File", buffer = buffer }) + end) + end, + }, + ---@class PluginLspOpts + opts = { + ---@type lspconfig.options + servers = { + -- tsserver will be automatically installed with mason and loaded with lspconfig + tsserver = {}, + }, + -- you can do any additional lsp server setup here + -- return true if you don't want this server to be setup with lspconfig + ---@type table + setup = { + -- example to setup with typescript.nvim + tsserver = function(_, opts) + require("typescript").setup({ server = opts }) + return true + end, + -- Specify * to use this function as a fallback for any server + -- ["*"] = function(server, opts) end, + }, + }, + }, + + -- for typescript, LazyVim also includes extra specs to properly setup lspconfig, + -- treesitter, mason and typescript.nvim. So instead of the above, you can use: + { import = "lazyvim.plugins.extras.lang.typescript" }, + + -- add more treesitter parsers + { + "nvim-treesitter/nvim-treesitter", + opts = { + ensure_installed = { + "bash", + "html", + "javascript", + "json", + "lua", + "markdown", + "markdown_inline", + "python", + "query", + "regex", + "tsx", + "typescript", + "vim", + "yaml", + }, + }, + }, + + -- since `vim.tbl_deep_extend`, can only merge tables and not lists, the code above + -- would overwrite `ensure_installed` with the new value. + -- If you'd rather extend the default config, use the code below instead: + { + "nvim-treesitter/nvim-treesitter", + opts = function(_, opts) + -- add tsx and treesitter + vim.list_extend(opts.ensure_installed, { + "tsx", + "typescript", + }) + end, + }, + + -- the opts function can also be used to change the default opts: + { + "nvim-lualine/lualine.nvim", + event = "VeryLazy", + opts = function(_, opts) + table.insert(opts.sections.lualine_x, { + function() + return "😄" + end, + }) + end, + }, + + -- or you can return new options to override all the defaults + { + "nvim-lualine/lualine.nvim", + event = "VeryLazy", + opts = function() + return { + --[[add your custom lualine config here]] + } + end, + }, + + -- use mini.starter instead of alpha + { import = "lazyvim.plugins.extras.ui.mini-starter" }, + + -- add jsonls and schemastore packages, and setup treesitter for json, json5 and jsonc + { import = "lazyvim.plugins.extras.lang.json" }, + + -- add any tools you want to have installed below + { + "williamboman/mason.nvim", + opts = { + ensure_installed = { + "stylua", + "shellcheck", + "shfmt", + "flake8", + }, + }, + }, +} diff --git a/nvim/lua/plugins/lazygit.lua b/nvim/lua/plugins/lazygit.lua new file mode 100644 index 0000000..f260504 --- /dev/null +++ b/nvim/lua/plugins/lazygit.lua @@ -0,0 +1,16 @@ +return { + "kdheepak/lazygit.nvim", + cmd = { + "LazyGit", + "LazyGitConfig", + "LazyGitCurrentFile", + "LazyGitFilter", + "LazyGitFilterCurrentFile", + }, + keys = { + { "gg", "LazyGit", desc = "Open LazyGit" }, + }, + dependencies = { + "nvim-lua/plenary.nvim", + }, +} diff --git a/nvim/lua/plugins/markdown.lua b/nvim/lua/plugins/markdown.lua new file mode 100644 index 0000000..1b0209f --- /dev/null +++ b/nvim/lua/plugins/markdown.lua @@ -0,0 +1,9 @@ +return { + { + "iamcco/markdown-preview.nvim", + cmd = { "MarkdownPreviewToggle", "MarkdownPreview", "MarkdownPreviewStop" }, + ft = { "markdown" }, + build = ':call mkdp#util#install()' + } +} + diff --git a/nvim/lua/plugins/osc52.lua b/nvim/lua/plugins/osc52.lua new file mode 100644 index 0000000..7a20603 --- /dev/null +++ b/nvim/lua/plugins/osc52.lua @@ -0,0 +1,18 @@ +return { + "ojroques/nvim-osc52", + config = function() + require("osc52").setup { + max_length = 0, -- 不限制长度 + silent = false, + trim = false, + } + + local function copy() + if vim.v.event.operator == "y" and vim.v.event.regname == "" then + require("osc52").copy_register("") + end + end + + vim.api.nvim_create_autocmd("TextYankPost", { callback = copy }) + end, +} diff --git a/nvim/stylua.toml b/nvim/stylua.toml new file mode 100644 index 0000000..5d6c50d --- /dev/null +++ b/nvim/stylua.toml @@ -0,0 +1,3 @@ +indent_type = "Spaces" +indent_width = 2 +column_width = 120 \ No newline at end of file diff --git a/obs-studio/basic/profiles/Untitled/basic.ini b/obs-studio/basic/profiles/Untitled/basic.ini new file mode 100644 index 0000000..63a657c --- /dev/null +++ b/obs-studio/basic/profiles/Untitled/basic.ini @@ -0,0 +1,113 @@ +[General] +Name=Untitled + +[Output] +Mode=Simple +FilenameFormatting=%CCYY-%MM-%DD %hh-%mm-%ss +DelayEnable=false +DelaySec=20 +DelayPreserve=true +Reconnect=true +RetryDelay=2 +MaxRetries=25 +BindIP=default +IPFamily=IPv4+IPv6 +NewSocketLoopEnable=false +LowLatencyEnable=false + +[Stream1] +IgnoreRecommended=false +EnableMultitrackVideo=false +MultitrackVideoMaximumAggregateBitrateAuto=true +MultitrackVideoMaximumVideoTracksAuto=true + +[SimpleOutput] +FilePath=/home/dich +RecFormat2=mp4 +VBitrate=2500 +ABitrate=160 +UseAdvanced=false +Preset=veryfast +NVENCPreset2=p5 +RecQuality=Stream +RecRB=false +RecRBTime=20 +RecRBSize=512 +RecRBPrefix=Replay +StreamAudioEncoder=aac +RecAudioEncoder=aac +RecTracks=1 +StreamEncoder=x264 +RecEncoder=x264 + +[AdvOut] +ApplyServiceSettings=true +UseRescale=false +TrackIndex=1 +VodTrackIndex=2 +Encoder=obs_x264 +RecType=Standard +RecFilePath=/home/dich +RecFormat2=mkv +RecUseRescale=false +RecTracks=1 +RecEncoder=none +FLVTrack=1 +StreamMultiTrackAudioMixes=1 +FFOutputToFile=true +FFFilePath=/home/dich +FFVBitrate=2500 +FFVGOPSize=250 +FFUseRescale=false +FFIgnoreCompat=false +FFABitrate=160 +FFAudioMixes=1 +Track1Bitrate=160 +Track2Bitrate=160 +Track3Bitrate=160 +Track4Bitrate=160 +Track5Bitrate=160 +Track6Bitrate=160 +RecSplitFileTime=15 +RecSplitFileSize=2048 +RecRB=false +RecRBTime=20 +RecRBSize=512 +AudioEncoder=libfdk_aac +RecAudioEncoder=libfdk_aac +RecSplitFileType=Time +FFFormat= +FFFormatMimeType= +FFVEncoderId=0 +FFVEncoder= +FFAEncoderId=0 +FFAEncoder= +FFExtension=mp4 + +[Video] +BaseCX=1920 +BaseCY=1080 +OutputCX=1280 +OutputCY=720 +FPSType=0 +FPSCommon=30 +FPSInt=30 +FPSNum=30 +FPSDen=1 +ScaleType=bicubic +ColorFormat=NV12 +ColorSpace=709 +ColorRange=Partial +SdrWhiteLevel=300 +HdrNominalPeakLevel=1000 + +[Audio] +MonitoringDeviceId=alsa_output.pci-0000_05_00.6.analog-stereo +MonitoringDeviceName=Family 17h/19h/1ah HD Audio Controller Analog Stereo +SampleRate=48000 +ChannelSetup=Stereo +MeterDecayRate=23.53 +PeakMeterType=0 + +[Panels] +CookieId=9FF9985CAAB5C18B diff --git a/obs-studio/basic/scenes/Untitled.json b/obs-studio/basic/scenes/Untitled.json new file mode 100644 index 0000000..1cb6079 --- /dev/null +++ b/obs-studio/basic/scenes/Untitled.json @@ -0,0 +1,247 @@ +{ + "DesktopAudioDevice1": { + "prev_ver": 520093699, + "name": "Desktop Audio", + "uuid": "02d5047a-68ce-43a6-a1c2-401dfb117480", + "id": "pulse_output_capture", + "versioned_id": "pulse_output_capture", + "settings": { + "device_id": "alsa_output.pci-0000_05_00.6.analog-stereo.monitor" + }, + "mixers": 255, + "sync": 0, + "flags": 0, + "volume": 0.32882726192474365, + "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": {} + }, + "AuxAudioDevice1": { + "prev_ver": 520093699, + "name": "Mic/Aux", + "uuid": "72203d14-38fc-419b-aac9-46a4c1385437", + "id": "pulse_input_capture", + "versioned_id": "pulse_input_capture", + "settings": { + "device_id": "alsa_input.pci-0000_05_00.6.analog-stereo" + }, + "mixers": 255, + "sync": 0, + "flags": 0, + "volume": 0.31743475794792175, + "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": {}, + "filters": [ + { + "prev_ver": 520093699, + "name": "噪声抑制", + "uuid": "fd3d521b-86d5-48c6-b720-264c708ea2cb", + "id": "noise_suppress_filter", + "versioned_id": "noise_suppress_filter_v2", + "settings": {}, + "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": {}, + "deinterlace_mode": 0, + "deinterlace_field_order": 0, + "monitoring_type": 0, + "private_settings": {} + } + ] + }, + "current_scene": "Scene", + "current_program_scene": "Scene", + "scene_order": [ + { + "name": "Scene" + } + ], + "name": "Untitled", + "sources": [ + { + "prev_ver": 520093699, + "name": "Scene", + "uuid": "aa201eee-721f-44aa-8e7a-6383fa5da63a", + "id": "scene", + "versioned_id": "scene", + "settings": { + "id_counter": 1, + "custom_size": false, + "items": [ + { + "name": "Screen Capture (PipeWire)", + "source_uuid": "385bea17-7de2-41ea-9fbb-acc8c50c9fb3", + "visible": true, + "locked": false, + "rot": 0.0, + "scale_ref": { + "x": 1920.0, + "y": 1080.0 + }, + "align": 5, + "bounds_type": 0, + "bounds_align": 0, + "bounds_crop": false, + "crop_left": 0, + "crop_top": 0, + "crop_right": 0, + "crop_bottom": 0, + "id": 1, + "group_item_backup": false, + "pos": { + "x": 0.0, + "y": 0.0 + }, + "pos_rel": { + "x": -1.7777777910232544, + "y": -1.0 + }, + "scale": { + "x": 0.75, + "y": 0.75 + }, + "scale_rel": { + "x": 0.75, + "y": 0.75 + }, + "bounds": { + "x": 0.0, + "y": 0.0 + }, + "bounds_rel": { + "x": 0.0, + "y": 0.0 + }, + "scale_filter": "disable", + "blend_method": "default", + "blend_type": "normal", + "show_transition": { + "duration": 0 + }, + "hide_transition": { + "duration": 0 + }, + "private_settings": {} + } + ] + }, + "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": { + "OBSBasic.SelectScene": [], + "libobs.show_scene_item.1": [], + "libobs.hide_scene_item.1": [] + }, + "deinterlace_mode": 0, + "deinterlace_field_order": 0, + "monitoring_type": 0, + "private_settings": {} + }, + { + "prev_ver": 520093699, + "name": "Screen Capture (PipeWire)", + "uuid": "385bea17-7de2-41ea-9fbb-acc8c50c9fb3", + "id": "pipewire-screen-capture-source", + "versioned_id": "pipewire-screen-capture-source", + "settings": { + "RestoreToken": "5f9f4fdb-56d1-45a2-aedf-19564983774a" + }, + "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": [], + "transitions": [], + "saved_projectors": [], + "current_transition": "淡入淡出", + "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 + } + }, + "resolution": { + "x": 1920, + "y": 1080 + }, + "version": 2 +} \ No newline at end of file diff --git a/obs-studio/basic/scenes/Untitled.json.bak b/obs-studio/basic/scenes/Untitled.json.bak new file mode 100644 index 0000000..1cb6079 --- /dev/null +++ b/obs-studio/basic/scenes/Untitled.json.bak @@ -0,0 +1,247 @@ +{ + "DesktopAudioDevice1": { + "prev_ver": 520093699, + "name": "Desktop Audio", + "uuid": "02d5047a-68ce-43a6-a1c2-401dfb117480", + "id": "pulse_output_capture", + "versioned_id": "pulse_output_capture", + "settings": { + "device_id": "alsa_output.pci-0000_05_00.6.analog-stereo.monitor" + }, + "mixers": 255, + "sync": 0, + "flags": 0, + "volume": 0.32882726192474365, + "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": {} + }, + "AuxAudioDevice1": { + "prev_ver": 520093699, + "name": "Mic/Aux", + "uuid": "72203d14-38fc-419b-aac9-46a4c1385437", + "id": "pulse_input_capture", + "versioned_id": "pulse_input_capture", + "settings": { + "device_id": "alsa_input.pci-0000_05_00.6.analog-stereo" + }, + "mixers": 255, + "sync": 0, + "flags": 0, + "volume": 0.31743475794792175, + "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": {}, + "filters": [ + { + "prev_ver": 520093699, + "name": "噪声抑制", + "uuid": "fd3d521b-86d5-48c6-b720-264c708ea2cb", + "id": "noise_suppress_filter", + "versioned_id": "noise_suppress_filter_v2", + "settings": {}, + "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": {}, + "deinterlace_mode": 0, + "deinterlace_field_order": 0, + "monitoring_type": 0, + "private_settings": {} + } + ] + }, + "current_scene": "Scene", + "current_program_scene": "Scene", + "scene_order": [ + { + "name": "Scene" + } + ], + "name": "Untitled", + "sources": [ + { + "prev_ver": 520093699, + "name": "Scene", + "uuid": "aa201eee-721f-44aa-8e7a-6383fa5da63a", + "id": "scene", + "versioned_id": "scene", + "settings": { + "id_counter": 1, + "custom_size": false, + "items": [ + { + "name": "Screen Capture (PipeWire)", + "source_uuid": "385bea17-7de2-41ea-9fbb-acc8c50c9fb3", + "visible": true, + "locked": false, + "rot": 0.0, + "scale_ref": { + "x": 1920.0, + "y": 1080.0 + }, + "align": 5, + "bounds_type": 0, + "bounds_align": 0, + "bounds_crop": false, + "crop_left": 0, + "crop_top": 0, + "crop_right": 0, + "crop_bottom": 0, + "id": 1, + "group_item_backup": false, + "pos": { + "x": 0.0, + "y": 0.0 + }, + "pos_rel": { + "x": -1.7777777910232544, + "y": -1.0 + }, + "scale": { + "x": 0.75, + "y": 0.75 + }, + "scale_rel": { + "x": 0.75, + "y": 0.75 + }, + "bounds": { + "x": 0.0, + "y": 0.0 + }, + "bounds_rel": { + "x": 0.0, + "y": 0.0 + }, + "scale_filter": "disable", + "blend_method": "default", + "blend_type": "normal", + "show_transition": { + "duration": 0 + }, + "hide_transition": { + "duration": 0 + }, + "private_settings": {} + } + ] + }, + "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": { + "OBSBasic.SelectScene": [], + "libobs.show_scene_item.1": [], + "libobs.hide_scene_item.1": [] + }, + "deinterlace_mode": 0, + "deinterlace_field_order": 0, + "monitoring_type": 0, + "private_settings": {} + }, + { + "prev_ver": 520093699, + "name": "Screen Capture (PipeWire)", + "uuid": "385bea17-7de2-41ea-9fbb-acc8c50c9fb3", + "id": "pipewire-screen-capture-source", + "versioned_id": "pipewire-screen-capture-source", + "settings": { + "RestoreToken": "5f9f4fdb-56d1-45a2-aedf-19564983774a" + }, + "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": [], + "transitions": [], + "saved_projectors": [], + "current_transition": "淡入淡出", + "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 + } + }, + "resolution": { + "x": 1920, + "y": 1080 + }, + "version": 2 +} \ No newline at end of file diff --git a/obs-studio/global.ini b/obs-studio/global.ini new file mode 100644 index 0000000..9102158 --- /dev/null +++ b/obs-studio/global.ini @@ -0,0 +1,19 @@ +[General] +Pre31Migrated=true +MaxLogs=10 +InfoIncrement=-1 +ProcessPriority=Normal +EnableAutoUpdates=true +LastVersion=520093699 + +[Video] +Renderer=OpenGL + +[Locations] +Configuration=/home/dich/.config +SceneCollections=/home/dich/.config +Profiles=/home/dich/.config + +[PropertiesWindow] +cx=720 +cy=580 diff --git a/obs-studio/logs/2025-04-07 19-27-24.txt b/obs-studio/logs/2025-04-07 19-27-24.txt new file mode 100644 index 0000000..9e0c9b0 --- /dev/null +++ b/obs-studio/logs/2025-04-07 19-27-24.txt @@ -0,0 +1,314 @@ +19:27:24.166: Platform: Wayland +19:27:24.166: CPU Name: AMD Ryzen 7 8845HS w/ Radeon 780M Graphics +19:27:24.166: CPU Speed: 2192.270MHz +19:27:24.166: Physical Cores: 8, Logical Cores: 16 +19:27:24.166: Physical Memory: 31266MB Total, 16827MB Free +19:27:24.166: Kernel Version: Linux 6.14.0-4-cachyos +19:27:24.167: Distribution: "CachyOS Linux" Unknown +19:27:24.167: Desktop Environment: KDE (KDE) +19:27:24.167: Session Type: wayland +19:27:24.168: Qt Version: 6.9.0 (runtime), 6.8.3 (compiled) +19:27:24.168: Portable mode: false +19:27:24.197: OBS 31.0.3 (linux) +19:27:24.197: --------------------------------- +19:27:24.197: --------------------------------- +19:27:24.197: audio settings reset: +19:27:24.197: samples per sec: 48000 +19:27:24.197: speakers: 2 +19:27:24.197: max buffering: 960 milliseconds +19:27:24.197: buffering type: dynamically increasing +19:27:24.199: --------------------------------- +19:27:24.199: Initializing OpenGL... +19:27:24.199: Using EGL/Wayland +19:27:24.205: Initialized EGL 1.5 +19:27:24.217: Loading up OpenGL on adapter AMD AMD Radeon Graphics (radeonsi, phoenix, LLVM 19.1.7, DRM 3.61, 6.14.0-4-cachyos) +19:27:24.217: OpenGL loaded successfully, version 4.6 (Core Profile) Mesa 25.0.3-cachyos1.2, shading language 4.60 +19:27:24.330: --------------------------------- +19:27:24.330: video settings reset: +19:27:24.330: base resolution: 1920x1080 +19:27:24.330: output resolution: 1280x720 +19:27:24.330: downscale filter: Bicubic +19:27:24.330: fps: 30/1 +19:27:24.330: format: NV12 +19:27:24.330: YUV mode: Rec. 709/Partial +19:27:24.331: NV12 texture support enabled +19:27:24.331: P010 texture support not available +19:27:24.333: Audio monitoring device: +19:27:24.333: name: Default +19:27:24.333: id: default +19:27:24.334: --------------------------------- +19:27:24.343: Failed to load 'en-US' text for module: 'decklink-captions.so' +19:27:24.350: Failed to load 'en-US' text for module: 'decklink-output-ui.so' +19:27:24.356: A DeckLink iterator could not be created. The DeckLink drivers may not be installed +19:27:24.356: Failed to initialize module 'decklink.so' +19:27:24.476: [pipewire] Available capture sources: +19:27:24.476: [pipewire] - Monitor source +19:27:24.476: [pipewire] - Window source +19:27:24.550: VAAPI: API version 1.22 +19:27:24.551: FFmpeg VAAPI H264 encoding supported +19:27:24.555: FFmpeg VAAPI AV1 encoding supported +19:27:24.558: FFmpeg VAAPI HEVC encoding supported +19:27:24.585: os_dlopen(libnvidia-encode.so.1->libnvidia-encode.so.1): libnvidia-encode.so.1: cannot open shared object file: No such file or directory +19:27:24.585: +19:27:24.585: NVENC not supported +19:27:24.585: Failed to initialize module 'obs-nvenc.so' +19:27:24.659: os_dlopen(/usr/lib/obs-plugins/obs-websocket.so->/usr/lib/obs-plugins/obs-websocket.so): libqrcodegencpp.so.1: cannot open shared object file: No such file or directory +19:27:24.659: +19:27:24.662: os_dlopen(/usr/lib/obs-plugins/obs-websocket.so->/usr/lib/obs-plugins/obs-websocket.so): libqrcodegencpp.so.1: cannot open shared object file: No such file or directory +19:27:24.662: +19:27:24.662: Module '/usr/lib/obs-plugins/obs-websocket.so' not loaded +19:27:24.683: --------------------------------- +19:27:24.683: Loaded Modules: +19:27:24.683: text-freetype2.so +19:27:24.683: rtmp-services.so +19:27:24.683: obs-x264.so +19:27:24.683: obs-webrtc.so +19:27:24.683: obs-vst.so +19:27:24.683: obs-transitions.so +19:27:24.683: obs-qsv11.so +19:27:24.683: obs-outputs.so +19:27:24.683: obs-libfdk.so +19:27:24.683: obs-filters.so +19:27:24.683: obs-ffmpeg.so +19:27:24.683: linux-v4l2.so +19:27:24.683: linux-pulseaudio.so +19:27:24.683: linux-pipewire.so +19:27:24.683: linux-jack.so +19:27:24.683: linux-capture.so +19:27:24.683: linux-alsa.so +19:27:24.683: image-source.so +19:27:24.683: frontend-tools.so +19:27:24.683: decklink-output-ui.so +19:27:24.683: decklink-captions.so +19:27:24.683: --------------------------------- +19:27:24.683: --------------------------------- +19:27:24.683: Available Encoders: +19:27:24.683: Video Encoders: +19:27:24.683: - ffmpeg_svt_av1 (SVT-AV1) +19:27:24.683: - ffmpeg_aom_av1 (AOM AV1) +19:27:24.683: - ffmpeg_vaapi_tex (FFmpeg VAAPI H.264) +19:27:24.683: - av1_ffmpeg_vaapi_tex (FFmpeg VAAPI AV1) +19:27:24.683: - hevc_ffmpeg_vaapi_tex (FFmpeg VAAPI HEVC) +19:27:24.683: - obs_x264 (x264) +19:27:24.683: Audio Encoders: +19:27:24.683: - ffmpeg_aac (FFmpeg AAC) +19:27:24.683: - ffmpeg_opus (FFmpeg Opus) +19:27:24.683: - ffmpeg_pcm_s16le (FFmpeg PCM (16-bit)) +19:27:24.683: - ffmpeg_pcm_s24le (FFmpeg PCM (24-bit)) +19:27:24.683: - ffmpeg_pcm_f32le (FFmpeg PCM (32-bit float)) +19:27:24.683: - ffmpeg_alac (FFmpeg ALAC (24-bit)) +19:27:24.683: - ffmpeg_flac (FFmpeg FLAC (16-bit)) +19:27:24.683: - libfdk_aac (libfdk AAC) +19:27:24.683: ==== Startup complete =============================================== +19:27:24.687: No scene file found, creating default scene +19:27:24.712: All scene data cleared +19:27:24.712: ------------------------------------------------ +19:27:24.722: pulse-input: Server name: 'PulseAudio (on PipeWire 1.4.1) 15.0.0' +19:27:24.722: pulse-input: Audio format: s32le, 48000 Hz, 2 channels +19:27:24.722: pulse-input: Started recording from 'alsa_output.pci-0000_05_00.6.analog-stereo.monitor' (default) +19:27:24.722: pulse-input: Server name: 'PulseAudio (on PipeWire 1.4.1) 15.0.0' +19:27:24.722: pulse-input: Audio format: s32le, 48000 Hz, 2 channels +19:27:24.722: pulse-input: Started recording from 'alsa_input.pci-0000_05_00.6.analog-stereo' (default) +19:27:24.723: Switched to scene 'Scene' +19:27:24.723: Created scene collection 'Untitled' (clean, Untitled.json) +19:27:24.723: ------------------------------------------------ +19:27:25.457: adding 21 milliseconds of audio buffering, total audio buffering is now 21 milliseconds (source: Desktop Audio) +19:27:25.457: +19:28:02.383: PipeWire initialized +19:28:02.388: User added source 'Screen Capture (PipeWire)' (pipewire-screen-capture-source) to scene 'Scene' +19:28:02.439: [pipewire] Screencast session created +19:28:02.448: [pipewire] Asking for monitor and window +19:28:03.608: [pipewire] source selected, setting up screencast +19:28:03.613: [pipewire] Server version: 1.4.1 +19:28:03.613: [pipewire] Library version: 1.4.1 +19:28:03.613: [pipewire] Header version: 1.4.1 +19:28:03.613: [pipewire] Created stream 0x62cd78938870 +19:28:03.614: [pipewire] Stream 0x62cd78938870 state: "connecting" (error: none) +19:28:03.614: [pipewire] Playing stream 0x62cd78938870 +19:28:03.614: [pipewire] Stream 0x62cd78938870 state: "paused" (error: none) +19:28:03.622: [pipewire] Negotiated format: +19:28:03.622: [pipewire] Format: 12 (Spa:Enum:VideoFormat:BGRA) +19:28:03.622: [pipewire] Modifier: 0x0 +19:28:03.622: [pipewire] Size: 2560x1440 +19:28:03.622: [pipewire] Framerate: 0/1 +19:28:03.622: [pipewire] Negotiated format: +19:28:03.622: [pipewire] Format: 12 (Spa:Enum:VideoFormat:BGRA) +19:28:03.622: [pipewire] Modifier: 0x20000001046bb04 +19:28:03.622: [pipewire] Size: 2560x1440 +19:28:03.622: [pipewire] Framerate: 0/1 +19:28:03.624: [pipewire] Stream 0x62cd78938870 state: "streaming" (error: none) +19:28:56.402: [pipewire] Stream 0x62cd78938870 state: "paused" (error: none) +19:28:56.402: [pipewire] Stream 0x62cd78938870 state: "unconnected" (error: none) +19:28:56.408: PipeWire initialized +19:28:56.411: [pipewire] Screencast session created +19:28:56.411: [pipewire] Asking for monitor and window +19:28:58.523: [pipewire] Failed to start screencast, denied or cancelled by user +19:29:03.042: PipeWire initialized +19:29:03.046: [pipewire] Screencast session created +19:29:03.046: [pipewire] Asking for monitor and window +19:29:04.309: [pipewire] source selected, setting up screencast +19:29:04.314: [pipewire] Server version: 1.4.1 +19:29:04.314: [pipewire] Library version: 1.4.1 +19:29:04.314: [pipewire] Header version: 1.4.1 +19:29:04.314: [pipewire] Created stream 0x62cd78b3ded0 +19:29:04.315: [pipewire] Stream 0x62cd78b3ded0 state: "connecting" (error: none) +19:29:04.315: [pipewire] Playing stream 0x62cd78b3ded0 +19:29:04.315: [pipewire] Stream 0x62cd78b3ded0 state: "paused" (error: none) +19:29:04.322: [pipewire] Negotiated format: +19:29:04.322: [pipewire] Format: 12 (Spa:Enum:VideoFormat:BGRA) +19:29:04.322: [pipewire] Modifier: 0x0 +19:29:04.322: [pipewire] Size: 2560x1600 +19:29:04.322: [pipewire] Framerate: 0/1 +19:29:04.322: [pipewire] Negotiated format: +19:29:04.322: [pipewire] Format: 12 (Spa:Enum:VideoFormat:BGRA) +19:29:04.322: [pipewire] Modifier: 0x20000001046bb04 +19:29:04.322: [pipewire] Size: 2560x1600 +19:29:04.322: [pipewire] Framerate: 0/1 +19:29:04.323: [pipewire] Stream 0x62cd78b3ded0 state: "streaming" (error: none) +19:29:07.372: [pipewire] Stream 0x62cd78b3ded0 state: "paused" (error: none) +19:29:07.372: [pipewire] Stream 0x62cd78b3ded0 state: "unconnected" (error: none) +19:29:07.374: PipeWire initialized +19:29:07.376: [pipewire] Screencast session created +19:29:07.377: [pipewire] Asking for monitor and window +19:29:08.546: [pipewire] source selected, setting up screencast +19:29:08.550: [pipewire] Server version: 1.4.1 +19:29:08.550: [pipewire] Library version: 1.4.1 +19:29:08.550: [pipewire] Header version: 1.4.1 +19:29:08.550: [pipewire] Created stream 0x62cd78b3ded0 +19:29:08.550: [pipewire] Stream 0x62cd78b3ded0 state: "connecting" (error: none) +19:29:08.551: [pipewire] Playing stream 0x62cd78b3ded0 +19:29:08.551: [pipewire] Stream 0x62cd78b3ded0 state: "paused" (error: none) +19:29:08.572: [pipewire] Negotiated format: +19:29:08.572: [pipewire] Format: 12 (Spa:Enum:VideoFormat:BGRA) +19:29:08.572: [pipewire] Modifier: 0x0 +19:29:08.572: [pipewire] Size: 2560x1440 +19:29:08.572: [pipewire] Framerate: 0/1 +19:29:08.575: [pipewire] Negotiated format: +19:29:08.575: [pipewire] Format: 12 (Spa:Enum:VideoFormat:BGRA) +19:29:08.575: [pipewire] Modifier: 0x20000001046bb04 +19:29:08.575: [pipewire] Size: 2560x1440 +19:29:08.575: [pipewire] Framerate: 0/1 +19:29:08.576: [pipewire] Stream 0x62cd78b3ded0 state: "streaming" (error: none) +19:29:33.426: --------------------------------- +19:29:33.426: [x264 encoder: 'simple_video_stream'] preset: veryfast +19:29:33.426: [x264 encoder: 'simple_video_stream'] settings: +19:29:33.426: rate_control: CBR +19:29:33.426: bitrate: 2500 +19:29:33.426: buffer size: 2500 +19:29:33.426: crf: 23 +19:29:33.426: fps_num: 30 +19:29:33.426: fps_den: 1 +19:29:33.426: width: 1280 +19:29:33.426: height: 720 +19:29:33.426: keyint: 250 +19:29:33.426: +19:29:33.431: libfdk_aac encoder created +19:29:33.431: libfdk_aac bitrate: 160, channels: 2 +19:29:33.435: ==== Recording Start =============================================== +19:29:33.435: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-07 19-29-33.mkv'... +19:29:48.308: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-07 19-29-33.mkv' stopped +19:29:48.308: Output 'simple_file_output': stopping +19:29:48.308: Output 'simple_file_output': Total frames output: 409 +19:29:48.308: Output 'simple_file_output': Total drawn frames: 446 +19:29:48.309: ==== Recording Stop ================================================ +19:29:48.316: libfdk_aac encoder destroyed +19:30:49.459: Switched to Preview/Program mode +19:30:49.459: ------------------------------------------------ +19:30:51.285: User switched Program to scene 'Scene' +19:30:52.275: User switched Program to scene 'Scene' +19:30:53.195: User faded from scene 'Scene' to black +19:30:54.485: User switched Program to scene 'Scene' +19:30:56.446: Switched to scene 'Scene' +19:30:56.447: Switched to regular Preview mode +19:30:56.447: ------------------------------------------------ +19:31:15.702: ReadOne on org.freedesktop.portal.Settings returned an invalid reply +19:31:15.702: ReadOne on org.freedesktop.portal.Settings returned an invalid reply +19:31:19.305: Settings changed (general) +19:31:19.305: ------------------------------------------------ +19:31:20.745: ==== Shutting down ================================================== +19:31:20.747: pulse-input: Stopped recording from 'alsa_output.pci-0000_05_00.6.analog-stereo.monitor' +19:31:20.747: pulse-input: Got 9432 packets with 11318400 frames +19:31:20.748: pulse-input: Stopped recording from 'alsa_input.pci-0000_05_00.6.analog-stereo' +19:31:20.748: pulse-input: Got 9431 packets with 11317200 frames +19:31:20.748: [pipewire] Stream 0x62cd78b3ded0 state: "paused" (error: none) +19:31:20.748: [pipewire] Stream 0x62cd78b3ded0 state: "unconnected" (error: none) +19:31:20.789: All scene data cleared +19:31:20.790: ------------------------------------------------ +19:31:20.864: [Scripting] Total detached callbacks: 0 +19:31:20.864: Freeing OBS context data +19:31:20.887: == Profiler Results ============================= +19:31:20.887: run_program_init: 700.602 ms +19:31:20.887: ┣OBSApp::AppInit: 15.283 ms +19:31:20.887: ┃ ┗OBSApp::InitLocale: 4.837 ms +19:31:20.887: ┗OBSApp::OBSInit: 588.254 ms +19:31:20.887: ┣obs_startup: 1.927 ms +19:31:20.887: ┗OBSBasic::OBSInit: 557.421 ms +19:31:20.887: ┣OBSBasic::InitBasicConfig: 0.438 ms +19:31:20.887: ┣OBSBasic::ResetAudio: 0.205 ms +19:31:20.887: ┣OBSBasic::ResetVideo: 135.928 ms +19:31:20.887: ┃ ┗obs_init_graphics: 132.827 ms +19:31:20.887: ┃ ┗shader compilation: 112.398 ms +19:31:20.887: ┣OBSBasic::InitOBSCallbacks: 0.004 ms +19:31:20.887: ┣OBSBasic::InitHotkeys: 0.023 ms +19:31:20.887: ┣obs_load_all_modules2: 349.475 ms +19:31:20.887: ┃ ┣obs_init_module(decklink-captions.so): 0 ms +19:31:20.887: ┃ ┣obs_init_module(decklink-output-ui.so): 0 ms +19:31:20.887: ┃ ┣obs_init_module(decklink.so): 0.098 ms +19:31:20.887: ┃ ┣obs_init_module(frontend-tools.so): 55.355 ms +19:31:20.887: ┃ ┣obs_init_module(image-source.so): 0.014 ms +19:31:20.887: ┃ ┣obs_init_module(linux-alsa.so): 0.001 ms +19:31:20.887: ┃ ┣obs_init_module(linux-capture.so): 0 ms +19:31:20.887: ┃ ┣obs_init_module(linux-jack.so): 0.002 ms +19:31:20.887: ┃ ┣obs_init_module(linux-pipewire.so): 12.815 ms +19:31:20.887: ┃ ┣obs_init_module(linux-pulseaudio.so): 0.007 ms +19:31:20.887: ┃ ┣obs_init_module(linux-v4l2.so): 5.02 ms +19:31:20.887: ┃ ┣obs_init_module(obs-ffmpeg.so): 13.026 ms +19:31:20.887: ┃ ┣obs_init_module(obs-filters.so): 0.029 ms +19:31:20.887: ┃ ┣obs_init_module(obs-libfdk.so): 0.002 ms +19:31:20.887: ┃ ┣obs_init_module(obs-nvenc.so): 0.141 ms +19:31:20.887: ┃ ┃ ┗nvenc_check: 0.12 ms +19:31:20.887: ┃ ┣obs_init_module(obs-outputs.so): 0.005 ms +19:31:20.887: ┃ ┣obs_init_module(obs-qsv11.so): 8.657 ms +19:31:20.887: ┃ ┣obs_init_module(obs-transitions.so): 0.01 ms +19:31:20.887: ┃ ┣obs_init_module(obs-vst.so): 0.004 ms +19:31:20.887: ┃ ┣obs_init_module(obs-webrtc.so): 0.007 ms +19:31:20.887: ┃ ┣obs_init_module(obs-x264.so): 0.004 ms +19:31:20.887: ┃ ┣obs_init_module(rtmp-services.so): 0.106 ms +19:31:20.887: ┃ ┗obs_init_module(text-freetype2.so): 0.024 ms +19:31:20.887: ┣OBSBasic::InitService: 1.316 ms +19:31:20.887: ┣OBSBasic::ResetOutputs: 0.151 ms +19:31:20.887: ┣OBSBasic::CreateHotkeys: 0.02 ms +19:31:20.887: ┣OBSBasic::InitPrimitives: 0.271 ms +19:31:20.887: ┗OBSBasic::Load: 36.107 ms +19:31:20.887: obs_hotkey_thread(25 ms): min=0 ms, median=0 ms, max=0.034 ms, 99th percentile=0.001 ms, 100% below 25 ms +19:31:20.887: audio_thread(Audio): min=0.008 ms, median=0.04 ms, max=11.601 ms, 99th percentile=0.642 ms +19:31:20.887: ┗receive_audio: min=0.002 ms, median=0.353 ms, max=3.958 ms, 99th percentile=0.669 ms, 0.0629226 calls per parent call +19:31:20.887: ┣buffer_audio: min=0 ms, median=0.001 ms, max=0.03 ms, 99th percentile=0.004 ms +19:31:20.887: ┗do_encode: min=0.16 ms, median=0.352 ms, max=3.956 ms, 99th percentile=0.665 ms +19:31:20.887: ┣encode(simple_aac): min=0.155 ms, median=0.34 ms, max=0.872 ms, 99th percentile=0.621 ms +19:31:20.887: ┗send_packet: min=0.001 ms, median=0.005 ms, max=3.778 ms, 99th percentile=0.057 ms +19:31:20.887: obs_graphics_thread(33.3333 ms): min=0.134 ms, median=0.589 ms, max=247.936 ms, 99th percentile=2.149 ms, 99.8019% below 33.333 ms +19:31:20.887: ┣tick_sources: min=0 ms, median=0.007 ms, max=14.694 ms, 99th percentile=1.089 ms +19:31:20.887: ┣output_frame: min=0.061 ms, median=0.277 ms, max=22.198 ms, 99th percentile=1.277 ms +19:31:20.887: ┃ ┣gs_context(video->graphics): min=0.061 ms, median=0.275 ms, max=22.195 ms, 99th percentile=1.107 ms +19:31:20.887: ┃ ┃ ┣render_video: min=0.007 ms, median=0.059 ms, max=13.635 ms, 99th percentile=0.251 ms +19:31:20.887: ┃ ┃ ┃ ┣render_main_texture: min=0.006 ms, median=0.055 ms, max=3.274 ms, 99th percentile=0.188 ms +19:31:20.887: ┃ ┃ ┃ ┣render_output_texture: min=0.013 ms, median=0.033 ms, max=7.757 ms, 99th percentile=0.119 ms, 0.0631013 calls per parent call +19:31:20.887: ┃ ┃ ┃ ┣render_convert_texture: min=0.011 ms, median=0.035 ms, max=5.416 ms, 99th percentile=0.103 ms, 0.0631013 calls per parent call +19:31:20.887: ┃ ┃ ┃ ┗stage_output_texture: min=0.007 ms, median=0.02 ms, max=0.349 ms, 99th percentile=0.07 ms, 0.0631013 calls per parent call +19:31:20.887: ┃ ┃ ┣gs_flush: min=0.001 ms, median=0.175 ms, max=8.808 ms, 99th percentile=0.963 ms +19:31:20.887: ┃ ┃ ┗download_frame: min=0 ms, median=0.068 ms, max=0.382 ms, 99th percentile=0.165 ms, 0.0631013 calls per parent call +19:31:20.887: ┃ ┗output_video_data: min=0.085 ms, median=0.468 ms, max=1.464 ms, 99th percentile=0.92 ms, 0.0629598 calls per parent call +19:31:20.887: ┗render_displays: min=0.001 ms, median=0.266 ms, max=247.444 ms, 99th percentile=0.818 ms +19:31:20.887: video_thread(video): min=0.405 ms, median=1.156 ms, max=2.222 ms, 99th percentile=2.079 ms +19:31:20.887: ┗receive_video: min=0.404 ms, median=1.152 ms, max=2.22 ms, 99th percentile=2.075 ms +19:31:20.887: ┗do_encode: min=0.403 ms, median=1.151 ms, max=2.218 ms, 99th percentile=2.073 ms +19:31:20.887: ┣encode(simple_video_stream): min=0.398 ms, median=1.134 ms, max=2.217 ms, 99th percentile=2.07 ms +19:31:20.887: ┗send_packet: min=0.002 ms, median=0.013 ms, max=0.113 ms, 99th percentile=0.079 ms, 0.921348 calls per parent call +19:31:20.887: OBSBasicSettings::LoadThemeList: 0.033 ms +19:31:20.887: ================================================= +19:31:20.887: == Profiler Time Between Calls ================== +19:31:20.887: obs_hotkey_thread(25 ms): min=25.01 ms, median=25.075 ms, max=26.792 ms, 97.4756% within ±2% of 25 ms (0% lower, 2.5244% higher) +19:31:20.887: obs_graphics_thread(33.3333 ms): min=7.201 ms, median=33.333 ms, max=247.947 ms, 97.1982% within ±2% of 33.333 ms (1.44333% lower, 1.35843% higher) +19:31:20.887: ================================================= +19:31:20.893: Number of memory leaks: 0 diff --git a/obs-studio/logs/2025-04-07 19-31-21.txt b/obs-studio/logs/2025-04-07 19-31-21.txt new file mode 100644 index 0000000..249553b --- /dev/null +++ b/obs-studio/logs/2025-04-07 19-31-21.txt @@ -0,0 +1,357 @@ +19:31:21.019: Platform: Wayland +19:31:21.019: CPU Name: AMD Ryzen 7 8845HS w/ Radeon 780M Graphics +19:31:21.019: CPU Speed: 1806.030MHz +19:31:21.019: Physical Cores: 8, Logical Cores: 16 +19:31:21.019: Physical Memory: 31266MB Total, 16098MB Free +19:31:21.019: Kernel Version: Linux 6.14.0-4-cachyos +19:31:21.019: Distribution: "CachyOS Linux" Unknown +19:31:21.019: Desktop Environment: KDE (KDE) +19:31:21.019: Session Type: wayland +19:31:21.020: Qt Version: 6.9.0 (runtime), 6.8.3 (compiled) +19:31:21.020: Portable mode: false +19:31:21.045: OBS 31.0.3 (linux) +19:31:21.045: --------------------------------- +19:31:21.045: --------------------------------- +19:31:21.045: audio settings reset: +19:31:21.045: samples per sec: 48000 +19:31:21.045: speakers: 2 +19:31:21.045: max buffering: 960 milliseconds +19:31:21.045: buffering type: dynamically increasing +19:31:21.046: --------------------------------- +19:31:21.046: Initializing OpenGL... +19:31:21.046: Using EGL/Wayland +19:31:21.052: Initialized EGL 1.5 +19:31:21.064: Loading up OpenGL on adapter AMD AMD Radeon Graphics (radeonsi, phoenix, LLVM 19.1.7, DRM 3.61, 6.14.0-4-cachyos) +19:31:21.064: OpenGL loaded successfully, version 4.6 (Core Profile) Mesa 25.0.3-cachyos1.2, shading language 4.60 +19:31:21.086: --------------------------------- +19:31:21.086: video settings reset: +19:31:21.086: base resolution: 1920x1080 +19:31:21.086: output resolution: 1280x720 +19:31:21.086: downscale filter: Bicubic +19:31:21.086: fps: 30/1 +19:31:21.086: format: NV12 +19:31:21.086: YUV mode: Rec. 709/Partial +19:31:21.086: NV12 texture support enabled +19:31:21.086: P010 texture support not available +19:31:21.089: Audio monitoring device: +19:31:21.089: name: Default +19:31:21.089: id: default +19:31:21.089: --------------------------------- +19:31:21.097: Failed to load 'en-US' text for module: 'decklink-captions.so' +19:31:21.102: Failed to load 'en-US' text for module: 'decklink-output-ui.so' +19:31:21.107: A DeckLink iterator could not be created. The DeckLink drivers may not be installed +19:31:21.107: Failed to initialize module 'decklink.so' +19:31:21.210: [pipewire] Available capture sources: +19:31:21.210: [pipewire] - Monitor source +19:31:21.210: [pipewire] - Window source +19:31:21.266: VAAPI: API version 1.22 +19:31:21.268: FFmpeg VAAPI H264 encoding supported +19:31:21.271: FFmpeg VAAPI AV1 encoding supported +19:31:21.275: FFmpeg VAAPI HEVC encoding supported +19:31:21.295: os_dlopen(libnvidia-encode.so.1->libnvidia-encode.so.1): libnvidia-encode.so.1: cannot open shared object file: No such file or directory +19:31:21.295: +19:31:21.295: NVENC not supported +19:31:21.295: Failed to initialize module 'obs-nvenc.so' +19:31:21.355: os_dlopen(/usr/lib/obs-plugins/obs-websocket.so->/usr/lib/obs-plugins/obs-websocket.so): libqrcodegencpp.so.1: cannot open shared object file: No such file or directory +19:31:21.355: +19:31:21.356: os_dlopen(/usr/lib/obs-plugins/obs-websocket.so->/usr/lib/obs-plugins/obs-websocket.so): libqrcodegencpp.so.1: cannot open shared object file: No such file or directory +19:31:21.356: +19:31:21.356: Module '/usr/lib/obs-plugins/obs-websocket.so' not loaded +19:31:21.373: --------------------------------- +19:31:21.373: Loaded Modules: +19:31:21.373: text-freetype2.so +19:31:21.373: rtmp-services.so +19:31:21.373: obs-x264.so +19:31:21.373: obs-webrtc.so +19:31:21.373: obs-vst.so +19:31:21.373: obs-transitions.so +19:31:21.373: obs-qsv11.so +19:31:21.373: obs-outputs.so +19:31:21.373: obs-libfdk.so +19:31:21.373: obs-filters.so +19:31:21.373: obs-ffmpeg.so +19:31:21.373: linux-v4l2.so +19:31:21.373: linux-pulseaudio.so +19:31:21.373: linux-pipewire.so +19:31:21.373: linux-jack.so +19:31:21.373: linux-capture.so +19:31:21.373: linux-alsa.so +19:31:21.373: image-source.so +19:31:21.373: frontend-tools.so +19:31:21.373: decklink-output-ui.so +19:31:21.373: decklink-captions.so +19:31:21.373: --------------------------------- +19:31:21.373: --------------------------------- +19:31:21.373: Available Encoders: +19:31:21.373: Video Encoders: +19:31:21.374: - ffmpeg_svt_av1 (SVT-AV1) +19:31:21.374: - ffmpeg_aom_av1 (AOM AV1) +19:31:21.374: - ffmpeg_vaapi_tex (FFmpeg VAAPI H.264) +19:31:21.374: - av1_ffmpeg_vaapi_tex (FFmpeg VAAPI AV1) +19:31:21.374: - hevc_ffmpeg_vaapi_tex (FFmpeg VAAPI HEVC) +19:31:21.374: - obs_x264 (x264) +19:31:21.374: Audio Encoders: +19:31:21.374: - ffmpeg_aac (FFmpeg AAC) +19:31:21.374: - ffmpeg_opus (FFmpeg Opus) +19:31:21.374: - ffmpeg_pcm_s16le (FFmpeg PCM (16位)) +19:31:21.374: - ffmpeg_pcm_s24le (FFmpeg PCM (24位)) +19:31:21.374: - ffmpeg_pcm_f32le (FFmpeg PCM (32位浮点)) +19:31:21.374: - ffmpeg_alac (FFmpeg ALAC (24位)) +19:31:21.374: - ffmpeg_flac (FFmpeg FLAC (16位)) +19:31:21.374: - libfdk_aac (libfdk AAC) +19:31:21.374: ==== Startup complete =============================================== +19:31:21.410: All scene data cleared +19:31:21.410: ------------------------------------------------ +19:31:21.414: pulse-input: Server name: 'PulseAudio (on PipeWire 1.4.1) 15.0.0' +19:31:21.414: pulse-input: Audio format: s32le, 48000 Hz, 2 channels +19:31:21.414: pulse-input: Started recording from 'alsa_output.pci-0000_05_00.6.analog-stereo.monitor' (default) +19:31:21.414: [Loaded global audio device]: 'Desktop Audio' +19:31:21.414: pulse-input: Server name: 'PulseAudio (on PipeWire 1.4.1) 15.0.0' +19:31:21.414: pulse-input: Audio format: s32le, 48000 Hz, 2 channels +19:31:21.414: pulse-input: Started recording from 'alsa_input.pci-0000_05_00.6.analog-stereo' (default) +19:31:21.414: [Loaded global audio device]: 'Mic/Aux' +19:31:21.414: PipeWire initialized +19:31:21.415: Switched to scene 'Scene' +19:31:21.415: ------------------------------------------------ +19:31:21.415: Loaded scenes: +19:31:21.415: - scene 'Scene': +19:31:21.415: - source: 'Screen Capture (PipeWire)' (pipewire-screen-capture-source) +19:31:21.415: ------------------------------------------------ +19:31:21.458: [pipewire] Screencast session created +19:31:21.537: [pipewire] Asking for monitor and window +19:31:21.542: [pipewire] source selected, setting up screencast +19:31:21.546: [pipewire] Server version: 1.4.1 +19:31:21.546: [pipewire] Library version: 1.4.1 +19:31:21.546: [pipewire] Header version: 1.4.1 +19:31:21.546: [pipewire] Created stream 0x5a21a5f2efe0 +19:31:21.546: [pipewire] Stream 0x5a21a5f2efe0 state: "connecting" (error: none) +19:31:21.547: [pipewire] Playing stream 0x5a21a5f2efe0 +19:31:21.547: [pipewire] Stream 0x5a21a5f2efe0 state: "paused" (error: none) +19:31:21.552: [pipewire] Negotiated format: +19:31:21.552: [pipewire] Format: 12 (Spa:Enum:VideoFormat:BGRA) +19:31:21.552: [pipewire] Modifier: 0x0 +19:31:21.552: [pipewire] Size: 2560x1440 +19:31:21.552: [pipewire] Framerate: 0/1 +19:31:21.555: [pipewire] Negotiated format: +19:31:21.556: [pipewire] Format: 12 (Spa:Enum:VideoFormat:BGRA) +19:31:21.556: [pipewire] Modifier: 0x20000001046bb04 +19:31:21.556: [pipewire] Size: 2560x1440 +19:31:21.556: [pipewire] Framerate: 0/1 +19:31:21.577: [pipewire] Stream 0x5a21a5f2efe0 state: "streaming" (error: none) +19:31:21.985: adding 42 milliseconds of audio buffering, total audio buffering is now 42 milliseconds (source: Desktop Audio) +19:31:21.985: +19:31:34.487: Switched to Preview/Program mode +19:31:34.487: ------------------------------------------------ +19:31:37.857: Switched to scene 'Scene' +19:31:37.858: Switched to regular Preview mode +19:31:37.858: ------------------------------------------------ +19:31:38.419: ReadOne on org.freedesktop.portal.Settings returned an invalid reply +19:31:38.419: ReadOne on org.freedesktop.portal.Settings returned an invalid reply +19:32:12.154: Settings changed (audio) +19:32:12.154: ------------------------------------------------ +19:32:13.807: --------------------------------- +19:32:13.807: [x264 encoder: 'simple_video_stream'] preset: veryfast +19:32:13.807: [x264 encoder: 'simple_video_stream'] settings: +19:32:13.807: rate_control: CBR +19:32:13.807: bitrate: 2500 +19:32:13.807: buffer size: 2500 +19:32:13.807: crf: 23 +19:32:13.807: fps_num: 30 +19:32:13.807: fps_den: 1 +19:32:13.807: width: 1280 +19:32:13.807: height: 720 +19:32:13.807: keyint: 250 +19:32:13.807: +19:32:13.813: libfdk_aac encoder created +19:32:13.813: libfdk_aac bitrate: 160, channels: 2 +19:32:13.815: ==== Recording Start =============================================== +19:32:13.815: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-07 19-32-13.mkv'... +19:32:45.194: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-07 19-32-13.mkv' stopped +19:32:45.194: Output 'simple_file_output': stopping +19:32:45.194: Output 'simple_file_output': Total frames output: 905 +19:32:45.194: Output 'simple_file_output': Total drawn frames: 942 +19:32:45.194: ==== Recording Stop ================================================ +19:32:45.199: libfdk_aac encoder destroyed +19:33:13.546: ReadOne on org.freedesktop.portal.Settings returned an invalid reply +19:33:13.546: ReadOne on org.freedesktop.portal.Settings returned an invalid reply +19:33:42.318: pulse-input: Server name: 'PulseAudio (on PipeWire 1.4.1) 15.0.0' +19:33:42.318: pulse-input: Audio format: s32le, 48000 Hz, 2 channels +19:33:42.318: pulse-input: Started recording from 'alsa_output.pci-0000_05_00.1.hdmi-stereo-extra1.monitor' +19:33:42.319: pulse-input: Server name: 'PulseAudio (on PipeWire 1.4.1) 15.0.0' +19:33:42.319: pulse-input: Audio format: s32le, 48000 Hz, 2 channels +19:33:42.319: pulse-input: Started recording from 'alsa_input.pci-0000_05_00.6.analog-stereo' (default) +19:33:42.319: Audio monitoring device: +19:33:42.319: name: Family 17h/19h/1ah HD Audio Controller Analog Stereo +19:33:42.319: id: alsa_output.pci-0000_05_00.6.analog-stereo +19:33:42.322: Number of remaining views: 1 +19:33:42.322: --------------------------------- +19:33:42.322: video settings reset: +19:33:42.322: base resolution: 1920x1080 +19:33:42.322: output resolution: 1280x720 +19:33:42.322: downscale filter: Bicubic +19:33:42.322: fps: 30/1 +19:33:42.322: format: NV12 +19:33:42.322: YUV mode: Rec. 709/Partial +19:33:42.322: NV12 texture support enabled +19:33:42.322: P010 texture support not available +19:33:42.324: Settings changed (audio, advanced) +19:33:42.324: ------------------------------------------------ +19:33:45.396: --------------------------------- +19:33:45.396: [x264 encoder: 'simple_video_stream'] preset: veryfast +19:33:45.396: [x264 encoder: 'simple_video_stream'] settings: +19:33:45.396: rate_control: CBR +19:33:45.396: bitrate: 2500 +19:33:45.396: buffer size: 2500 +19:33:45.396: crf: 23 +19:33:45.396: fps_num: 30 +19:33:45.396: fps_den: 1 +19:33:45.396: width: 1280 +19:33:45.396: height: 720 +19:33:45.396: keyint: 250 +19:33:45.396: +19:33:45.403: libfdk_aac encoder created +19:33:45.403: libfdk_aac bitrate: 160, channels: 2 +19:33:45.404: ==== Recording Start =============================================== +19:33:45.404: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-07 19-33-45.mkv'... +19:33:48.719: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-07 19-33-45.mkv' stopped +19:33:48.719: Output 'simple_file_output': stopping +19:33:48.719: Output 'simple_file_output': Total frames output: 63 +19:33:48.719: Output 'simple_file_output': Total drawn frames: 99 +19:33:48.719: ==== Recording Stop ================================================ +19:33:48.729: libfdk_aac encoder destroyed +19:35:19.237: --------------------------------- +19:35:19.237: [x264 encoder: 'simple_video_stream'] preset: veryfast +19:35:19.237: [x264 encoder: 'simple_video_stream'] settings: +19:35:19.237: rate_control: CBR +19:35:19.237: bitrate: 2500 +19:35:19.237: buffer size: 2500 +19:35:19.237: crf: 23 +19:35:19.237: fps_num: 30 +19:35:19.237: fps_den: 1 +19:35:19.237: width: 1280 +19:35:19.237: height: 720 +19:35:19.237: keyint: 250 +19:35:19.237: +19:35:19.243: libfdk_aac encoder created +19:35:19.243: libfdk_aac bitrate: 160, channels: 2 +19:35:19.243: ==== Recording Start =============================================== +19:35:19.244: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-07 19-35-19.mkv'... +19:35:24.965: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-07 19-35-19.mkv' stopped +19:35:24.965: Output 'simple_file_output': stopping +19:35:24.965: Output 'simple_file_output': Total frames output: 135 +19:35:24.965: Output 'simple_file_output': Total drawn frames: 172 +19:35:24.965: ==== Recording Stop ================================================ +19:35:24.974: libfdk_aac encoder destroyed +19:37:16.265: --------------------------------- +19:37:16.265: [x264 encoder: 'simple_video_stream'] preset: veryfast +19:37:16.265: [x264 encoder: 'simple_video_stream'] settings: +19:37:16.265: rate_control: CBR +19:37:16.265: bitrate: 2500 +19:37:16.265: buffer size: 2500 +19:37:16.265: crf: 23 +19:37:16.265: fps_num: 30 +19:37:16.265: fps_den: 1 +19:37:16.265: width: 1280 +19:37:16.265: height: 720 +19:37:16.265: keyint: 250 +19:37:16.265: +19:37:16.268: libfdk_aac encoder created +19:37:16.268: libfdk_aac bitrate: 160, channels: 2 +19:37:16.269: ==== Recording Start =============================================== +19:37:16.269: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-07 19-37-16.mkv'... +19:37:19.995: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-07 19-37-16.mkv' stopped +19:37:19.996: Output 'simple_file_output': stopping +19:37:19.996: Output 'simple_file_output': Total frames output: 75 +19:37:19.996: Output 'simple_file_output': Total drawn frames: 112 +19:37:19.996: ==== Recording Stop ================================================ +19:37:20.000: libfdk_aac encoder destroyed +19:38:28.777: --------------------------------- +19:38:28.777: [x264 encoder: 'simple_video_stream'] preset: veryfast +19:38:28.777: [x264 encoder: 'simple_video_stream'] settings: +19:38:28.777: rate_control: CBR +19:38:28.777: bitrate: 2500 +19:38:28.777: buffer size: 2500 +19:38:28.777: crf: 23 +19:38:28.777: fps_num: 30 +19:38:28.777: fps_den: 1 +19:38:28.777: width: 1280 +19:38:28.777: height: 720 +19:38:28.777: keyint: 250 +19:38:28.777: +19:38:28.784: libfdk_aac encoder created +19:38:28.784: libfdk_aac bitrate: 160, channels: 2 +19:38:28.785: ==== Recording Start =============================================== +19:38:28.785: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-07 19-38-28.mkv'... +19:38:33.030: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-07 19-38-28.mkv' stopped +19:38:33.030: Output 'simple_file_output': stopping +19:38:33.030: Output 'simple_file_output': Total frames output: 91 +19:38:33.030: Output 'simple_file_output': Total drawn frames: 128 +19:38:33.031: ==== Recording Stop ================================================ +19:38:33.036: libfdk_aac encoder destroyed +19:39:39.714: ReadOne on org.freedesktop.portal.Settings returned an invalid reply +19:39:39.715: ReadOne on org.freedesktop.portal.Settings returned an invalid reply +19:41:15.922: This plugin supports grabbing the mouse only for popup windows +19:41:16.130: This plugin supports grabbing the mouse only for popup windows +19:41:35.566: User added filter '噪声抑制' (noise_suppress_filter_v2) to source '麦克风/Aux 2' +19:41:35.595: adding 64 milliseconds of audio buffering, total audio buffering is now 106 milliseconds (source: 麦克风/Aux 2) +19:41:35.595: +19:41:43.446: adding 106 milliseconds of audio buffering, total audio buffering is now 213 milliseconds (source: 麦克风/Aux 2) +19:41:43.446: +19:41:55.549: User added filter '噪声门限' (noise_gate_filter) to source '麦克风/Aux 2' +19:42:13.453: User removed filter '噪声门限' (noise_gate_filter) from source '麦克风/Aux 2' +19:42:24.558: User added filter '噪声抑制' (noise_suppress_filter_v2) to source 'Mic/Aux' +19:42:26.950: --------------------------------- +19:42:26.950: [x264 encoder: 'simple_video_stream'] preset: veryfast +19:42:26.950: [x264 encoder: 'simple_video_stream'] settings: +19:42:26.950: rate_control: CBR +19:42:26.950: bitrate: 2500 +19:42:26.950: buffer size: 2500 +19:42:26.950: crf: 23 +19:42:26.950: fps_num: 30 +19:42:26.950: fps_den: 1 +19:42:26.950: width: 1280 +19:42:26.950: height: 720 +19:42:26.950: keyint: 250 +19:42:26.950: +19:42:26.954: libfdk_aac encoder created +19:42:26.955: libfdk_aac bitrate: 160, channels: 2 +19:42:26.955: ==== Recording Start =============================================== +19:42:26.955: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-07 19-42-26.mkv'... +19:42:31.493: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-07 19-42-26.mkv' stopped +19:42:31.493: Output 'simple_file_output': stopping +19:42:31.493: Output 'simple_file_output': Total frames output: 100 +19:42:31.493: Output 'simple_file_output': Total drawn frames: 137 +19:42:31.493: ==== Recording Stop ================================================ +19:42:31.499: libfdk_aac encoder destroyed +19:50:42.752: --------------------------------- +19:50:42.752: [x264 encoder: 'simple_video_stream'] preset: veryfast +19:50:42.752: [x264 encoder: 'simple_video_stream'] settings: +19:50:42.752: rate_control: CBR +19:50:42.752: bitrate: 2500 +19:50:42.752: buffer size: 2500 +19:50:42.752: crf: 23 +19:50:42.752: fps_num: 30 +19:50:42.752: fps_den: 1 +19:50:42.752: width: 1280 +19:50:42.752: height: 720 +19:50:42.752: keyint: 250 +19:50:42.752: +19:50:42.755: libfdk_aac encoder created +19:50:42.755: libfdk_aac bitrate: 160, channels: 2 +19:50:42.756: ==== Recording Start =============================================== +19:50:42.756: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-07 19-50-42.mkv'... +19:50:47.966: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-07 19-50-42.mkv' stopped +19:50:47.966: Output 'simple_file_output': stopping +19:50:47.966: Output 'simple_file_output': Total frames output: 120 +19:50:47.966: Output 'simple_file_output': Total drawn frames: 157 +19:50:47.966: ==== Recording Stop ================================================ +19:50:47.971: libfdk_aac encoder destroyed +19:53:50.230: adding 128 milliseconds of audio buffering, total audio buffering is now 341 milliseconds (source: 麦克风/Aux 2) +19:53:50.230: +20:02:43.286: adding 64 milliseconds of audio buffering, total audio buffering is now 405 milliseconds (source: 麦克风/Aux 2) +20:02:43.286: +20:22:48.301: ReadOne on org.freedesktop.portal.Settings returned an invalid reply +20:22:48.302: ReadOne on org.freedesktop.portal.Settings returned an invalid reply +20:23:03.532: Settings changed (outputs) +20:23:03.532: ------------------------------------------------ +20:23:03.533: The Wayland connection experienced a fatal error: Bad file descriptor diff --git a/obs-studio/logs/2025-04-07 20-23-11.txt b/obs-studio/logs/2025-04-07 20-23-11.txt new file mode 100644 index 0000000..59d0ae5 --- /dev/null +++ b/obs-studio/logs/2025-04-07 20-23-11.txt @@ -0,0 +1,241 @@ +20:23:11.017: [Safe Mode] Unclean shutdown detected! +20:23:14.774: [Safe Mode] User elected to launch normally. +20:23:14.774: Platform: Wayland +20:23:14.774: CPU Name: AMD Ryzen 7 8845HS w/ Radeon 780M Graphics +20:23:14.774: CPU Speed: 1100.980MHz +20:23:14.775: Physical Cores: 8, Logical Cores: 16 +20:23:14.775: Physical Memory: 31266MB Total, 14118MB Free +20:23:14.775: Kernel Version: Linux 6.14.0-4-cachyos +20:23:14.775: Distribution: "CachyOS Linux" Unknown +20:23:14.775: Desktop Environment: KDE (KDE) +20:23:14.775: Session Type: wayland +20:23:14.776: Qt Version: 6.9.0 (runtime), 6.8.3 (compiled) +20:23:14.776: Portable mode: false +20:23:14.791: OBS 31.0.3 (linux) +20:23:14.791: --------------------------------- +20:23:14.792: --------------------------------- +20:23:14.792: audio settings reset: +20:23:14.792: samples per sec: 48000 +20:23:14.792: speakers: 2 +20:23:14.792: max buffering: 960 milliseconds +20:23:14.792: buffering type: dynamically increasing +20:23:14.793: --------------------------------- +20:23:14.793: Initializing OpenGL... +20:23:14.793: Using EGL/Wayland +20:23:14.799: Initialized EGL 1.5 +20:23:14.812: Loading up OpenGL on adapter AMD AMD Radeon Graphics (radeonsi, phoenix, LLVM 19.1.7, DRM 3.61, 6.14.0-4-cachyos) +20:23:14.812: OpenGL loaded successfully, version 4.6 (Core Profile) Mesa 25.0.3-cachyos1.2, shading language 4.60 +20:23:14.833: --------------------------------- +20:23:14.833: video settings reset: +20:23:14.833: base resolution: 1920x1080 +20:23:14.833: output resolution: 1280x720 +20:23:14.833: downscale filter: Bicubic +20:23:14.833: fps: 30/1 +20:23:14.833: format: NV12 +20:23:14.833: YUV mode: Rec. 709/Partial +20:23:14.833: NV12 texture support enabled +20:23:14.833: P010 texture support not available +20:23:14.835: Audio monitoring device: +20:23:14.835: name: Family 17h/19h/1ah HD Audio Controller Analog Stereo +20:23:14.835: id: alsa_output.pci-0000_05_00.6.analog-stereo +20:23:14.835: --------------------------------- +20:23:14.842: Failed to load 'en-US' text for module: 'decklink-captions.so' +20:23:14.849: Failed to load 'en-US' text for module: 'decklink-output-ui.so' +20:23:14.854: A DeckLink iterator could not be created. The DeckLink drivers may not be installed +20:23:14.854: Failed to initialize module 'decklink.so' +20:23:14.967: [pipewire] Available capture sources: +20:23:14.967: [pipewire] - Monitor source +20:23:14.967: [pipewire] - Window source +20:23:15.026: VAAPI: API version 1.22 +20:23:15.027: FFmpeg VAAPI H264 encoding supported +20:23:15.031: FFmpeg VAAPI AV1 encoding supported +20:23:15.034: FFmpeg VAAPI HEVC encoding supported +20:23:15.055: os_dlopen(libnvidia-encode.so.1->libnvidia-encode.so.1): libnvidia-encode.so.1: cannot open shared object file: No such file or directory +20:23:15.055: +20:23:15.055: NVENC not supported +20:23:15.055: Failed to initialize module 'obs-nvenc.so' +20:23:15.115: os_dlopen(/usr/lib/obs-plugins/obs-websocket.so->/usr/lib/obs-plugins/obs-websocket.so): libqrcodegencpp.so.1: cannot open shared object file: No such file or directory +20:23:15.115: +20:23:15.117: os_dlopen(/usr/lib/obs-plugins/obs-websocket.so->/usr/lib/obs-plugins/obs-websocket.so): libqrcodegencpp.so.1: cannot open shared object file: No such file or directory +20:23:15.117: +20:23:15.117: Module '/usr/lib/obs-plugins/obs-websocket.so' not loaded +20:23:15.137: --------------------------------- +20:23:15.137: Loaded Modules: +20:23:15.137: text-freetype2.so +20:23:15.137: rtmp-services.so +20:23:15.137: obs-x264.so +20:23:15.137: obs-webrtc.so +20:23:15.137: obs-vst.so +20:23:15.137: obs-transitions.so +20:23:15.137: obs-qsv11.so +20:23:15.137: obs-outputs.so +20:23:15.137: obs-libfdk.so +20:23:15.137: obs-filters.so +20:23:15.137: obs-ffmpeg.so +20:23:15.137: linux-v4l2.so +20:23:15.137: linux-pulseaudio.so +20:23:15.137: linux-pipewire.so +20:23:15.137: linux-jack.so +20:23:15.137: linux-capture.so +20:23:15.137: linux-alsa.so +20:23:15.137: image-source.so +20:23:15.137: frontend-tools.so +20:23:15.137: decklink-output-ui.so +20:23:15.137: decklink-captions.so +20:23:15.137: --------------------------------- +20:23:15.137: --------------------------------- +20:23:15.137: Available Encoders: +20:23:15.137: Video Encoders: +20:23:15.137: - ffmpeg_svt_av1 (SVT-AV1) +20:23:15.137: - ffmpeg_aom_av1 (AOM AV1) +20:23:15.137: - ffmpeg_vaapi_tex (FFmpeg VAAPI H.264) +20:23:15.137: - av1_ffmpeg_vaapi_tex (FFmpeg VAAPI AV1) +20:23:15.137: - hevc_ffmpeg_vaapi_tex (FFmpeg VAAPI HEVC) +20:23:15.137: - obs_x264 (x264) +20:23:15.138: Audio Encoders: +20:23:15.138: - ffmpeg_aac (FFmpeg AAC) +20:23:15.138: - ffmpeg_opus (FFmpeg Opus) +20:23:15.138: - ffmpeg_pcm_s16le (FFmpeg PCM (16位)) +20:23:15.138: - ffmpeg_pcm_s24le (FFmpeg PCM (24位)) +20:23:15.138: - ffmpeg_pcm_f32le (FFmpeg PCM (32位浮点)) +20:23:15.138: - ffmpeg_alac (FFmpeg ALAC (24位)) +20:23:15.138: - ffmpeg_flac (FFmpeg FLAC (16位)) +20:23:15.138: - libfdk_aac (libfdk AAC) +20:23:15.138: ==== Startup complete =============================================== +20:23:15.177: All scene data cleared +20:23:15.178: ------------------------------------------------ +20:23:15.181: pulse-input: Server name: 'PulseAudio (on PipeWire 1.4.1) 15.0.0' +20:23:15.182: pulse-input: Audio format: s32le, 48000 Hz, 2 channels +20:23:15.182: pulse-input: Started recording from 'alsa_output.pci-0000_05_00.6.analog-stereo.monitor' +20:23:15.182: [Loaded global audio device]: 'Desktop Audio' +20:23:15.182: pulse-input: Server name: 'PulseAudio (on PipeWire 1.4.1) 15.0.0' +20:23:15.182: pulse-input: Audio format: s32le, 48000 Hz, 2 channels +20:23:15.182: pulse-input: Started recording from 'alsa_output.pci-0000_05_00.1.hdmi-stereo-extra1.monitor' +20:23:15.182: [Loaded global audio device]: '桌面音频 2' +20:23:15.183: pulse-input: Server name: 'PulseAudio (on PipeWire 1.4.1) 15.0.0' +20:23:15.183: pulse-input: Audio format: s32le, 48000 Hz, 2 channels +20:23:15.183: pulse-input: Started recording from 'alsa_input.pci-0000_05_00.6.analog-stereo' +20:23:15.183: [Loaded global audio device]: 'Mic/Aux' +20:23:15.183: - filter: '噪声抑制' (noise_suppress_filter_v2) +20:23:15.184: pulse-input: Server name: 'PulseAudio (on PipeWire 1.4.1) 15.0.0' +20:23:15.184: pulse-input: Audio format: s32le, 48000 Hz, 2 channels +20:23:15.184: pulse-input: Started recording from 'alsa_input.pci-0000_05_00.6.analog-stereo' (default) +20:23:15.185: [Loaded global audio device]: '麦克风/Aux 2' +20:23:15.185: - filter: '噪声抑制' (noise_suppress_filter_v2) +20:23:15.185: PipeWire initialized +20:23:15.186: Switched to scene 'Scene' +20:23:15.186: ------------------------------------------------ +20:23:15.186: Loaded scenes: +20:23:15.186: - scene 'Scene': +20:23:15.186: - source: 'Screen Capture (PipeWire)' (pipewire-screen-capture-source) +20:23:15.186: ------------------------------------------------ +20:23:15.231: [pipewire] Screencast session created +20:23:15.272: [pipewire] Asking for monitor and window +20:23:15.320: [pipewire] source selected, setting up screencast +20:23:15.325: [pipewire] Server version: 1.4.1 +20:23:15.325: [pipewire] Library version: 1.4.1 +20:23:15.325: [pipewire] Header version: 1.4.1 +20:23:15.325: [pipewire] Created stream 0x5f201d66a4f0 +20:23:15.325: [pipewire] Stream 0x5f201d66a4f0 state: "connecting" (error: none) +20:23:15.325: [pipewire] Playing stream 0x5f201d66a4f0 +20:23:15.325: [pipewire] Stream 0x5f201d66a4f0 state: "paused" (error: none) +20:23:15.332: [pipewire] Negotiated format: +20:23:15.332: [pipewire] Format: 12 (Spa:Enum:VideoFormat:BGRA) +20:23:15.332: [pipewire] Modifier: 0x0 +20:23:15.332: [pipewire] Size: 2560x1440 +20:23:15.332: [pipewire] Framerate: 0/1 +20:23:15.332: [pipewire] Negotiated format: +20:23:15.332: [pipewire] Format: 12 (Spa:Enum:VideoFormat:BGRA) +20:23:15.332: [pipewire] Modifier: 0x20000001046bb04 +20:23:15.332: [pipewire] Size: 2560x1440 +20:23:15.332: [pipewire] Framerate: 0/1 +20:23:15.334: [pipewire] Stream 0x5f201d66a4f0 state: "streaming" (error: none) +20:23:15.731: adding 21 milliseconds of audio buffering, total audio buffering is now 21 milliseconds (source: Desktop Audio) +20:23:15.731: +20:23:15.752: adding 21 milliseconds of audio buffering, total audio buffering is now 42 milliseconds (source: 桌面音频 2) +20:23:15.752: +20:23:15.796: adding 21 milliseconds of audio buffering, total audio buffering is now 64 milliseconds (source: Mic/Aux) +20:23:15.796: +20:23:16.542: adding 64 milliseconds of audio buffering, total audio buffering is now 128 milliseconds (source: 麦克风/Aux 2) +20:23:16.542: +20:24:03.987: adding 42 milliseconds of audio buffering, total audio buffering is now 170 milliseconds (source: 麦克风/Aux 2) +20:24:03.987: +20:24:50.025: adding 21 milliseconds of audio buffering, total audio buffering is now 192 milliseconds (source: 麦克风/Aux 2) +20:24:50.025: +20:25:28.979: adding 21 milliseconds of audio buffering, total audio buffering is now 213 milliseconds (source: 麦克风/Aux 2) +20:25:28.979: +20:57:37.644: ==== Shutting down ================================================== +20:57:37.647: pulse-input: Stopped recording from 'alsa_output.pci-0000_05_00.6.analog-stereo.monitor' +20:57:37.647: pulse-input: Got 82509 packets with 99010800 frames +20:57:37.647: pulse-input: Stopped recording from 'alsa_output.pci-0000_05_00.1.hdmi-stereo-extra1.monitor' +20:57:37.647: pulse-input: Got 82508 packets with 99009600 frames +20:57:37.647: pulse-input: Stopped recording from 'alsa_input.pci-0000_05_00.6.analog-stereo' +20:57:37.647: pulse-input: Got 82509 packets with 99010800 frames +20:57:37.648: pulse-input: Stopped recording from 'alsa_input.pci-0000_05_00.6.analog-stereo' +20:57:37.648: pulse-input: Got 82507 packets with 99008400 frames +20:57:37.648: [pipewire] Stream 0x5f201d66a4f0 state: "paused" (error: none) +20:57:37.649: [pipewire] Stream 0x5f201d66a4f0 state: "unconnected" (error: none) +20:57:37.687: All scene data cleared +20:57:37.687: ------------------------------------------------ +20:57:37.755: [Scripting] Total detached callbacks: 0 +20:57:37.755: Freeing OBS context data +20:57:37.773: == Profiler Results ============================= +20:57:37.773: run_program_init: 4305.37 ms +20:57:37.773: ┣OBSApp::AppInit: 8.589 ms +20:57:37.774: ┃ ┗OBSApp::InitLocale: 0.751 ms +20:57:37.774: ┗OBSApp::OBSInit: 450.538 ms +20:57:37.774: ┣obs_startup: 2.041 ms +20:57:37.774: ┗OBSBasic::OBSInit: 432.989 ms +20:57:37.774: ┣OBSBasic::InitBasicConfig: 0.395 ms +20:57:37.774: ┣OBSBasic::ResetAudio: 0.208 ms +20:57:37.774: ┣OBSBasic::ResetVideo: 42.825 ms +20:57:37.774: ┃ ┗obs_init_graphics: 40.729 ms +20:57:37.774: ┃ ┗shader compilation: 20.683 ms +20:57:37.774: ┣OBSBasic::InitOBSCallbacks: 0.006 ms +20:57:37.774: ┣OBSBasic::InitHotkeys: 0.023 ms +20:57:37.774: ┣obs_load_all_modules2: 301.842 ms +20:57:37.774: ┃ ┣obs_init_module(decklink-captions.so): 0 ms +20:57:37.774: ┃ ┣obs_init_module(decklink-output-ui.so): 0 ms +20:57:37.774: ┃ ┣obs_init_module(decklink.so): 0.11 ms +20:57:37.774: ┃ ┣obs_init_module(frontend-tools.so): 54.231 ms +20:57:37.774: ┃ ┣obs_init_module(image-source.so): 0.009 ms +20:57:37.774: ┃ ┣obs_init_module(linux-alsa.so): 0.001 ms +20:57:37.774: ┃ ┣obs_init_module(linux-capture.so): 0 ms +20:57:37.774: ┃ ┣obs_init_module(linux-jack.so): 0.002 ms +20:57:37.774: ┃ ┣obs_init_module(linux-pipewire.so): 11.606 ms +20:57:37.774: ┃ ┣obs_init_module(linux-pulseaudio.so): 0.006 ms +20:57:37.774: ┃ ┣obs_init_module(linux-v4l2.so): 3.388 ms +20:57:37.774: ┃ ┣obs_init_module(obs-ffmpeg.so): 12.691 ms +20:57:37.774: ┃ ┣obs_init_module(obs-filters.so): 0.016 ms +20:57:37.774: ┃ ┣obs_init_module(obs-libfdk.so): 0.003 ms +20:57:37.774: ┃ ┣obs_init_module(obs-nvenc.so): 0.129 ms +20:57:37.774: ┃ ┃ ┗nvenc_check: 0.108 ms +20:57:37.774: ┃ ┣obs_init_module(obs-outputs.so): 0.008 ms +20:57:37.774: ┃ ┣obs_init_module(obs-qsv11.so): 6.997 ms +20:57:37.774: ┃ ┣obs_init_module(obs-transitions.so): 0.008 ms +20:57:37.774: ┃ ┣obs_init_module(obs-vst.so): 0.005 ms +20:57:37.774: ┃ ┣obs_init_module(obs-webrtc.so): 0.003 ms +20:57:37.774: ┃ ┣obs_init_module(obs-x264.so): 0.007 ms +20:57:37.774: ┃ ┣obs_init_module(rtmp-services.so): 0.709 ms +20:57:37.774: ┃ ┗obs_init_module(text-freetype2.so): 0.011 ms +20:57:37.774: ┣OBSBasic::InitService: 1.051 ms +20:57:37.774: ┣OBSBasic::ResetOutputs: 0.134 ms +20:57:37.774: ┣OBSBasic::CreateHotkeys: 0.022 ms +20:57:37.774: ┣OBSBasic::InitPrimitives: 0.238 ms +20:57:37.774: ┗OBSBasic::Load: 46.595 ms +20:57:37.774: obs_hotkey_thread(25 ms): min=0 ms, median=0 ms, max=0.088 ms, 99th percentile=0.002 ms, 100% below 25 ms +20:57:37.774: audio_thread(Audio): min=0.006 ms, median=0.099 ms, max=1.093 ms, 99th percentile=0.293 ms +20:57:37.774: obs_graphics_thread(33.3333 ms): min=0.14 ms, median=0.559 ms, max=219.468 ms, 99th percentile=1.181 ms, 99.9984% below 33.333 ms +20:57:37.774: ┣tick_sources: min=0 ms, median=0.009 ms, max=0.14 ms, 99th percentile=0.028 ms +20:57:37.774: ┣output_frame: min=0.077 ms, median=0.301 ms, max=2.161 ms, 99th percentile=0.796 ms +20:57:37.774: ┃ ┗gs_context(video->graphics): min=0.077 ms, median=0.301 ms, max=2.16 ms, 99th percentile=0.795 ms +20:57:37.774: ┃ ┣render_video: min=0.017 ms, median=0.088 ms, max=0.639 ms, 99th percentile=0.212 ms +20:57:37.774: ┃ ┃ ┗render_main_texture: min=0.012 ms, median=0.083 ms, max=0.633 ms, 99th percentile=0.201 ms +20:57:37.774: ┃ ┗gs_flush: min=0.003 ms, median=0.196 ms, max=1.997 ms, 99th percentile=0.701 ms +20:57:37.774: ┗render_displays: min=0.002 ms, median=0.221 ms, max=219.16 ms, 99th percentile=0.451 ms +20:57:37.774: ================================================= +20:57:37.774: == Profiler Time Between Calls ================== +20:57:37.774: obs_hotkey_thread(25 ms): min=25.008 ms, median=25.069 ms, max=27.171 ms, 98.689% within ±2% of 25 ms (0% lower, 1.31102% higher) +20:57:37.774: obs_graphics_thread(33.3333 ms): min=13.865 ms, median=33.333 ms, max=219.475 ms, 98.3759% within ±2% of 33.333 ms (0.803154% lower, 0.82093% higher) +20:57:37.774: ================================================= +20:57:37.779: Number of memory leaks: 0 diff --git a/obs-studio/logs/2025-04-08 16-04-53.txt b/obs-studio/logs/2025-04-08 16-04-53.txt new file mode 100644 index 0000000..884f703 --- /dev/null +++ b/obs-studio/logs/2025-04-08 16-04-53.txt @@ -0,0 +1,581 @@ +16:04:53.071: Platform: Wayland +16:04:53.071: CPU Name: AMD Ryzen 7 8845HS w/ Radeon 780M Graphics +16:04:53.071: CPU Speed: 2908.593MHz +16:04:53.072: Physical Cores: 8, Logical Cores: 16 +16:04:53.072: Physical Memory: 31266MB Total, 24115MB Free +16:04:53.072: Kernel Version: Linux 6.14.1-2-cachyos +16:04:53.072: Distribution: "CachyOS Linux" Unknown +16:04:53.072: Desktop Environment: KDE (KDE) +16:04:53.072: Session Type: wayland +16:04:53.073: Qt Version: 6.9.0 (runtime), 6.8.3 (compiled) +16:04:53.073: Portable mode: false +16:04:53.104: OBS 31.0.3 (linux) +16:04:53.104: --------------------------------- +16:04:53.105: --------------------------------- +16:04:53.105: audio settings reset: +16:04:53.105: samples per sec: 48000 +16:04:53.105: speakers: 2 +16:04:53.105: max buffering: 960 milliseconds +16:04:53.105: buffering type: dynamically increasing +16:04:53.106: --------------------------------- +16:04:53.106: Initializing OpenGL... +16:04:53.106: Using EGL/Wayland +16:04:53.112: Initialized EGL 1.5 +16:04:53.123: Loading up OpenGL on adapter AMD AMD Radeon Graphics (radeonsi, phoenix, LLVM 19.1.7, DRM 3.61, 6.14.1-2-cachyos) +16:04:53.123: OpenGL loaded successfully, version 4.6 (Core Profile) Mesa 25.0.3-cachyos1.2, shading language 4.60 +16:04:53.146: --------------------------------- +16:04:53.146: video settings reset: +16:04:53.146: base resolution: 1920x1080 +16:04:53.146: output resolution: 1280x720 +16:04:53.146: downscale filter: Bicubic +16:04:53.146: fps: 30/1 +16:04:53.146: format: NV12 +16:04:53.146: YUV mode: Rec. 709/Partial +16:04:53.146: NV12 texture support enabled +16:04:53.146: P010 texture support not available +16:04:53.148: Audio monitoring device: +16:04:53.148: name: Family 17h/19h/1ah HD Audio Controller Analog Stereo +16:04:53.148: id: alsa_output.pci-0000_05_00.6.analog-stereo +16:04:53.149: --------------------------------- +16:04:53.158: Failed to load 'en-US' text for module: 'decklink-captions.so' +16:04:53.167: Failed to load 'en-US' text for module: 'decklink-output-ui.so' +16:04:53.173: A DeckLink iterator could not be created. The DeckLink drivers may not be installed +16:04:53.173: Failed to initialize module 'decklink.so' +16:04:53.293: [pipewire] Available capture sources: +16:04:53.293: [pipewire] - Monitor source +16:04:53.293: [pipewire] - Window source +16:04:53.356: VAAPI: API version 1.22 +16:04:53.357: FFmpeg VAAPI H264 encoding supported +16:04:53.361: FFmpeg VAAPI AV1 encoding supported +16:04:53.363: FFmpeg VAAPI HEVC encoding supported +16:04:53.389: os_dlopen(libnvidia-encode.so.1->libnvidia-encode.so.1): libnvidia-encode.so.1: cannot open shared object file: No such file or directory +16:04:53.389: +16:04:53.389: NVENC not supported +16:04:53.389: Failed to initialize module 'obs-nvenc.so' +16:04:53.454: os_dlopen(/usr/lib/obs-plugins/obs-websocket.so->/usr/lib/obs-plugins/obs-websocket.so): libqrcodegencpp.so.1: cannot open shared object file: No such file or directory +16:04:53.454: +16:04:53.455: os_dlopen(/usr/lib/obs-plugins/obs-websocket.so->/usr/lib/obs-plugins/obs-websocket.so): libqrcodegencpp.so.1: cannot open shared object file: No such file or directory +16:04:53.455: +16:04:53.455: Module '/usr/lib/obs-plugins/obs-websocket.so' not loaded +16:04:53.476: --------------------------------- +16:04:53.476: Loaded Modules: +16:04:53.476: text-freetype2.so +16:04:53.476: rtmp-services.so +16:04:53.476: obs-x264.so +16:04:53.476: obs-webrtc.so +16:04:53.476: obs-vst.so +16:04:53.476: obs-transitions.so +16:04:53.476: obs-qsv11.so +16:04:53.476: obs-outputs.so +16:04:53.476: obs-libfdk.so +16:04:53.476: obs-filters.so +16:04:53.476: obs-ffmpeg.so +16:04:53.476: linux-v4l2.so +16:04:53.476: linux-pulseaudio.so +16:04:53.476: linux-pipewire.so +16:04:53.476: linux-jack.so +16:04:53.476: linux-capture.so +16:04:53.476: linux-alsa.so +16:04:53.476: image-source.so +16:04:53.476: frontend-tools.so +16:04:53.477: decklink-output-ui.so +16:04:53.477: decklink-captions.so +16:04:53.477: --------------------------------- +16:04:53.477: --------------------------------- +16:04:53.477: Available Encoders: +16:04:53.477: Video Encoders: +16:04:53.477: - ffmpeg_svt_av1 (SVT-AV1) +16:04:53.477: - ffmpeg_aom_av1 (AOM AV1) +16:04:53.477: - ffmpeg_vaapi_tex (FFmpeg VAAPI H.264) +16:04:53.477: - av1_ffmpeg_vaapi_tex (FFmpeg VAAPI AV1) +16:04:53.477: - hevc_ffmpeg_vaapi_tex (FFmpeg VAAPI HEVC) +16:04:53.477: - obs_x264 (x264) +16:04:53.477: Audio Encoders: +16:04:53.477: - ffmpeg_aac (FFmpeg AAC) +16:04:53.477: - ffmpeg_opus (FFmpeg Opus) +16:04:53.477: - ffmpeg_pcm_s16le (FFmpeg PCM (16位)) +16:04:53.477: - ffmpeg_pcm_s24le (FFmpeg PCM (24位)) +16:04:53.477: - ffmpeg_pcm_f32le (FFmpeg PCM (32位浮点)) +16:04:53.477: - ffmpeg_alac (FFmpeg ALAC (24位)) +16:04:53.477: - ffmpeg_flac (FFmpeg FLAC (16位)) +16:04:53.477: - libfdk_aac (libfdk AAC) +16:04:53.477: ==== Startup complete =============================================== +16:04:53.534: All scene data cleared +16:04:53.534: ------------------------------------------------ +16:04:53.537: pulse-input: Server name: 'PulseAudio (on PipeWire 1.4.1) 15.0.0' +16:04:53.537: pulse-input: Audio format: s32le, 48000 Hz, 2 channels +16:04:53.537: pulse-input: Started recording from 'alsa_output.pci-0000_05_00.6.analog-stereo.monitor' +16:04:53.537: [Loaded global audio device]: 'Desktop Audio' +16:04:53.538: pulse-input: Server name: 'PulseAudio (on PipeWire 1.4.1) 15.0.0' +16:04:53.538: pulse-input: Audio format: s32le, 48000 Hz, 2 channels +16:04:53.538: pulse-input: Started recording from 'alsa_output.pci-0000_05_00.1.hdmi-stereo-extra1.monitor' +16:04:53.538: [Loaded global audio device]: '桌面音频 2' +16:04:53.538: pulse-input: Server name: 'PulseAudio (on PipeWire 1.4.1) 15.0.0' +16:04:53.538: pulse-input: Audio format: s32le, 48000 Hz, 2 channels +16:04:53.538: pulse-input: Started recording from 'alsa_input.pci-0000_05_00.6.analog-stereo' +16:04:53.539: [Loaded global audio device]: 'Mic/Aux' +16:04:53.539: - filter: '噪声抑制' (noise_suppress_filter_v2) +16:04:53.539: pulse-input: Server name: 'PulseAudio (on PipeWire 1.4.1) 15.0.0' +16:04:53.539: pulse-input: Audio format: s32le, 48000 Hz, 2 channels +16:04:53.539: pulse-input: Started recording from 'alsa_input.pci-0000_05_00.6.analog-stereo' (default) +16:04:53.539: [Loaded global audio device]: '麦克风/Aux 2' +16:04:53.539: - filter: '噪声抑制' (noise_suppress_filter_v2) +16:04:53.539: PipeWire initialized +16:04:53.540: Switched to scene 'Scene' +16:04:53.540: ------------------------------------------------ +16:04:53.540: Loaded scenes: +16:04:53.540: - scene 'Scene': +16:04:53.540: - source: 'Screen Capture (PipeWire)' (pipewire-screen-capture-source) +16:04:53.540: ------------------------------------------------ +16:04:53.580: [pipewire] Screencast session created +16:04:53.626: [pipewire] Asking for monitor and window +16:04:53.734: [pipewire] source selected, setting up screencast +16:04:53.757: [pipewire] Server version: 1.4.1 +16:04:53.757: [pipewire] Library version: 1.4.1 +16:04:53.757: [pipewire] Header version: 1.4.1 +16:04:53.757: [pipewire] Created stream 0x6101dd37a270 +16:04:53.757: [pipewire] Stream 0x6101dd37a270 state: "connecting" (error: none) +16:04:53.757: [pipewire] Playing stream 0x6101dd37a270 +16:04:53.762: [pipewire] Stream 0x6101dd37a270 state: "paused" (error: none) +16:04:53.772: [pipewire] Negotiated format: +16:04:53.772: [pipewire] Format: 12 (Spa:Enum:VideoFormat:BGRA) +16:04:53.772: [pipewire] Modifier: 0x0 +16:04:53.772: [pipewire] Size: 2560x1440 +16:04:53.772: [pipewire] Framerate: 0/1 +16:04:53.773: [pipewire] Negotiated format: +16:04:53.773: [pipewire] Format: 12 (Spa:Enum:VideoFormat:BGRA) +16:04:53.773: [pipewire] Modifier: 0x20000001046bb04 +16:04:53.773: [pipewire] Size: 2560x1440 +16:04:53.773: [pipewire] Framerate: 0/1 +16:04:53.780: [pipewire] Stream 0x6101dd37a270 state: "streaming" (error: none) +16:04:54.278: adding 21 milliseconds of audio buffering, total audio buffering is now 21 milliseconds (source: Desktop Audio) +16:04:54.278: +16:04:54.342: adding 21 milliseconds of audio buffering, total audio buffering is now 42 milliseconds (source: Mic/Aux) +16:04:54.342: +16:04:55.089: adding 128 milliseconds of audio buffering, total audio buffering is now 170 milliseconds (source: 麦克风/Aux 2) +16:04:55.089: +16:04:58.562: --------------------------------- +16:04:58.562: [x264 encoder: 'simple_video_stream'] preset: veryfast +16:04:58.562: [x264 encoder: 'simple_video_stream'] settings: +16:04:58.562: rate_control: CBR +16:04:58.562: bitrate: 2500 +16:04:58.562: buffer size: 2500 +16:04:58.562: crf: 23 +16:04:58.562: fps_num: 30 +16:04:58.562: fps_den: 1 +16:04:58.562: width: 1280 +16:04:58.562: height: 720 +16:04:58.562: keyint: 250 +16:04:58.562: +16:04:58.569: libfdk_aac encoder created +16:04:58.569: libfdk_aac bitrate: 160, channels: 2 +16:04:58.573: ==== Recording Start =============================================== +16:04:58.573: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-08 16-04-58.mp4'... +16:05:14.314: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-08 16-04-58.mp4' stopped +16:05:14.314: Output 'simple_file_output': stopping +16:05:14.314: Output 'simple_file_output': Total frames output: 436 +16:05:14.314: Output 'simple_file_output': Total drawn frames: 472 +16:05:14.314: ==== Recording Stop ================================================ +16:05:14.321: libfdk_aac encoder destroyed +16:05:31.249: adding 42 milliseconds of audio buffering, total audio buffering is now 213 milliseconds (source: 麦克风/Aux 2) +16:05:31.249: +16:07:01.006: --------------------------------- +16:07:01.006: [x264 encoder: 'simple_video_stream'] preset: veryfast +16:07:01.006: [x264 encoder: 'simple_video_stream'] settings: +16:07:01.006: rate_control: CBR +16:07:01.006: bitrate: 2500 +16:07:01.006: buffer size: 2500 +16:07:01.006: crf: 23 +16:07:01.006: fps_num: 30 +16:07:01.006: fps_den: 1 +16:07:01.006: width: 1280 +16:07:01.006: height: 720 +16:07:01.006: keyint: 250 +16:07:01.006: +16:07:01.012: libfdk_aac encoder created +16:07:01.012: libfdk_aac bitrate: 160, channels: 2 +16:07:01.014: ==== Recording Start =============================================== +16:07:01.014: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-08 16-07-01.mp4'... +16:07:03.753: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-08 16-07-01.mp4' stopped +16:07:03.753: Output 'simple_file_output': stopping +16:07:03.753: Output 'simple_file_output': Total frames output: 46 +16:07:03.753: Output 'simple_file_output': Total drawn frames: 83 +16:07:03.754: ==== Recording Stop ================================================ +16:07:03.762: libfdk_aac encoder destroyed +16:07:23.610: --------------------------------- +16:07:23.610: [x264 encoder: 'simple_video_stream'] preset: veryfast +16:07:23.610: [x264 encoder: 'simple_video_stream'] settings: +16:07:23.610: rate_control: CBR +16:07:23.610: bitrate: 2500 +16:07:23.610: buffer size: 2500 +16:07:23.610: crf: 23 +16:07:23.610: fps_num: 30 +16:07:23.610: fps_den: 1 +16:07:23.610: width: 1280 +16:07:23.610: height: 720 +16:07:23.610: keyint: 250 +16:07:23.610: +16:07:23.619: libfdk_aac encoder created +16:07:23.619: libfdk_aac bitrate: 160, channels: 2 +16:07:23.620: ==== Recording Start =============================================== +16:07:23.620: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-08 16-07-23.mp4'... +16:07:44.221: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-08 16-07-23.mp4' stopped +16:07:44.221: Output 'simple_file_output': stopping +16:07:44.221: Output 'simple_file_output': Total frames output: 581 +16:07:44.221: Output 'simple_file_output': Total drawn frames: 618 +16:07:44.221: ==== Recording Stop ================================================ +16:07:44.227: libfdk_aac encoder destroyed +16:07:50.966: ReadOne on org.freedesktop.portal.Settings returned an invalid reply +16:07:50.967: ReadOne on org.freedesktop.portal.Settings returned an invalid reply +16:08:59.578: --------------------------------- +16:08:59.578: [x264 encoder: 'simple_video_stream'] preset: veryfast +16:08:59.578: [x264 encoder: 'simple_video_stream'] settings: +16:08:59.578: rate_control: CBR +16:08:59.578: bitrate: 2500 +16:08:59.578: buffer size: 2500 +16:08:59.578: crf: 23 +16:08:59.578: fps_num: 30 +16:08:59.578: fps_den: 1 +16:08:59.578: width: 1280 +16:08:59.578: height: 720 +16:08:59.578: keyint: 250 +16:08:59.578: +16:08:59.584: libfdk_aac encoder created +16:08:59.584: libfdk_aac bitrate: 160, channels: 2 +16:08:59.585: ==== Recording Start =============================================== +16:08:59.585: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-08 16-08-59.mp4'... +16:09:15.520: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-08 16-08-59.mp4' stopped +16:09:15.520: Output 'simple_file_output': stopping +16:09:15.520: Output 'simple_file_output': Total frames output: 441 +16:09:15.520: Output 'simple_file_output': Total drawn frames: 478 +16:09:15.520: ==== Recording Stop ================================================ +16:09:15.524: libfdk_aac encoder destroyed +16:09:52.082: ReadOne on org.freedesktop.portal.Settings returned an invalid reply +16:09:52.082: ReadOne on org.freedesktop.portal.Settings returned an invalid reply +16:10:04.503: Settings changed (audio) +16:10:04.504: ------------------------------------------------ +16:10:04.516: pulse-input: Stopped recording from 'alsa_output.pci-0000_05_00.1.hdmi-stereo-extra1.monitor' +16:10:04.516: pulse-input: Got 12435 packets with 14922000 frames +16:10:06.444: --------------------------------- +16:10:06.444: [x264 encoder: 'simple_video_stream'] preset: veryfast +16:10:06.444: [x264 encoder: 'simple_video_stream'] settings: +16:10:06.444: rate_control: CBR +16:10:06.444: bitrate: 2500 +16:10:06.444: buffer size: 2500 +16:10:06.444: crf: 23 +16:10:06.444: fps_num: 30 +16:10:06.444: fps_den: 1 +16:10:06.444: width: 1280 +16:10:06.444: height: 720 +16:10:06.444: keyint: 250 +16:10:06.444: +16:10:06.451: libfdk_aac encoder created +16:10:06.451: libfdk_aac bitrate: 160, channels: 2 +16:10:06.452: ==== Recording Start =============================================== +16:10:06.452: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-08 16-10-06.mp4'... +16:10:22.580: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-08 16-10-06.mp4' stopped +16:10:22.580: Output 'simple_file_output': stopping +16:10:22.580: Output 'simple_file_output': Total frames output: 447 +16:10:22.580: Output 'simple_file_output': Total drawn frames: 483 +16:10:22.581: ==== Recording Stop ================================================ +16:10:22.588: libfdk_aac encoder destroyed +16:10:42.599: ReadOne on org.freedesktop.portal.Settings returned an invalid reply +16:10:42.599: ReadOne on org.freedesktop.portal.Settings returned an invalid reply +16:11:09.408: Settings changed (audio) +16:11:09.408: ------------------------------------------------ +16:11:09.416: pulse-input: Stopped recording from 'alsa_input.pci-0000_05_00.6.analog-stereo' +16:11:09.416: pulse-input: Got 15028 packets with 18033600 frames +16:11:12.107: --------------------------------- +16:11:12.107: [x264 encoder: 'simple_video_stream'] preset: veryfast +16:11:12.107: [x264 encoder: 'simple_video_stream'] settings: +16:11:12.107: rate_control: CBR +16:11:12.107: bitrate: 2500 +16:11:12.107: buffer size: 2500 +16:11:12.107: crf: 23 +16:11:12.107: fps_num: 30 +16:11:12.107: fps_den: 1 +16:11:12.107: width: 1280 +16:11:12.107: height: 720 +16:11:12.107: keyint: 250 +16:11:12.107: +16:11:12.115: libfdk_aac encoder created +16:11:12.115: libfdk_aac bitrate: 160, channels: 2 +16:11:12.117: ==== Recording Start =============================================== +16:11:12.117: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-08 16-11-12.mp4'... +16:11:25.152: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-08 16-11-12.mp4' stopped +16:11:25.152: Output 'simple_file_output': stopping +16:11:25.152: Output 'simple_file_output': Total frames output: 354 +16:11:25.152: Output 'simple_file_output': Total drawn frames: 391 +16:11:25.152: ==== Recording Stop ================================================ +16:11:25.160: libfdk_aac encoder destroyed +16:12:06.543: --------------------------------- +16:12:06.543: [x264 encoder: 'simple_video_stream'] preset: veryfast +16:12:06.543: [x264 encoder: 'simple_video_stream'] settings: +16:12:06.543: rate_control: CBR +16:12:06.543: bitrate: 2500 +16:12:06.543: buffer size: 2500 +16:12:06.543: crf: 23 +16:12:06.543: fps_num: 30 +16:12:06.543: fps_den: 1 +16:12:06.543: width: 1280 +16:12:06.543: height: 720 +16:12:06.543: keyint: 250 +16:12:06.543: +16:12:06.548: libfdk_aac encoder created +16:12:06.548: libfdk_aac bitrate: 160, channels: 2 +16:12:06.549: ==== Recording Start =============================================== +16:12:06.549: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-08 16-12-06.mp4'... +16:14:25.844: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-08 16-12-06.mp4' stopped +16:14:25.844: Output 'simple_file_output': stopping +16:14:25.844: Output 'simple_file_output': Total frames output: 4143 +16:14:25.844: Output 'simple_file_output': Total drawn frames: 4178 +16:14:25.845: ==== Recording Stop ================================================ +16:14:25.851: libfdk_aac encoder destroyed +16:18:11.618: --------------------------------- +16:18:11.618: [x264 encoder: 'simple_video_stream'] preset: veryfast +16:18:11.618: [x264 encoder: 'simple_video_stream'] settings: +16:18:11.618: rate_control: CBR +16:18:11.618: bitrate: 2500 +16:18:11.618: buffer size: 2500 +16:18:11.618: crf: 23 +16:18:11.618: fps_num: 30 +16:18:11.618: fps_den: 1 +16:18:11.618: width: 1280 +16:18:11.618: height: 720 +16:18:11.618: keyint: 250 +16:18:11.618: +16:18:11.620: libfdk_aac encoder created +16:18:11.620: libfdk_aac bitrate: 160, channels: 2 +16:18:11.621: ==== Recording Start =============================================== +16:18:11.621: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-08 16-18-11.mp4'... +16:18:13.812: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-08 16-18-11.mp4' stopped +16:18:13.812: Output 'simple_file_output': stopping +16:18:13.812: Output 'simple_file_output': Total frames output: 29 +16:18:13.812: Output 'simple_file_output': Total drawn frames: 65 +16:18:13.812: ==== Recording Stop ================================================ +16:18:13.818: libfdk_aac encoder destroyed +16:19:23.023: --------------------------------- +16:19:23.023: [x264 encoder: 'simple_video_stream'] preset: veryfast +16:19:23.023: [x264 encoder: 'simple_video_stream'] settings: +16:19:23.023: rate_control: CBR +16:19:23.023: bitrate: 2500 +16:19:23.023: buffer size: 2500 +16:19:23.023: crf: 23 +16:19:23.023: fps_num: 30 +16:19:23.023: fps_den: 1 +16:19:23.023: width: 1280 +16:19:23.023: height: 720 +16:19:23.023: keyint: 250 +16:19:23.023: +16:19:23.025: libfdk_aac encoder created +16:19:23.025: libfdk_aac bitrate: 160, channels: 2 +16:19:23.025: ==== Recording Start =============================================== +16:19:23.025: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-08 16-19-23.mp4'... +16:19:51.710: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-08 16-19-23.mp4' stopped +16:19:51.710: Output 'simple_file_output': stopping +16:19:51.710: Output 'simple_file_output': Total frames output: 824 +16:19:51.710: Output 'simple_file_output': Total drawn frames: 860 +16:19:51.710: ==== Recording Stop ================================================ +16:19:51.716: libfdk_aac encoder destroyed +16:21:01.770: --------------------------------- +16:21:01.770: [x264 encoder: 'simple_video_stream'] preset: veryfast +16:21:01.770: [x264 encoder: 'simple_video_stream'] settings: +16:21:01.770: rate_control: CBR +16:21:01.770: bitrate: 2500 +16:21:01.770: buffer size: 2500 +16:21:01.770: crf: 23 +16:21:01.770: fps_num: 30 +16:21:01.770: fps_den: 1 +16:21:01.770: width: 1280 +16:21:01.770: height: 720 +16:21:01.770: keyint: 250 +16:21:01.770: +16:21:01.773: libfdk_aac encoder created +16:21:01.773: libfdk_aac bitrate: 160, channels: 2 +16:21:01.773: ==== Recording Start =============================================== +16:21:01.773: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-08 16-21-01.mp4'... +16:21:07.955: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-08 16-21-01.mp4' stopped +16:21:07.955: Output 'simple_file_output': stopping +16:21:07.955: Output 'simple_file_output': Total frames output: 149 +16:21:07.955: Output 'simple_file_output': Total drawn frames: 186 +16:21:07.955: ==== Recording Stop ================================================ +16:21:07.961: libfdk_aac encoder destroyed +16:21:09.487: --------------------------------- +16:21:09.487: [x264 encoder: 'simple_video_stream'] preset: veryfast +16:21:09.487: [x264 encoder: 'simple_video_stream'] settings: +16:21:09.487: rate_control: CBR +16:21:09.487: bitrate: 2500 +16:21:09.487: buffer size: 2500 +16:21:09.487: crf: 23 +16:21:09.487: fps_num: 30 +16:21:09.487: fps_den: 1 +16:21:09.487: width: 1280 +16:21:09.487: height: 720 +16:21:09.487: keyint: 250 +16:21:09.487: +16:21:09.489: libfdk_aac encoder created +16:21:09.489: libfdk_aac bitrate: 160, channels: 2 +16:21:09.490: ==== Recording Start =============================================== +16:21:09.490: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-08 16-21-09.mp4'... +16:21:56.221: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-08 16-21-09.mp4' stopped +16:21:56.221: Output 'simple_file_output': stopping +16:21:56.221: Output 'simple_file_output': Total frames output: 1365 +16:21:56.221: Output 'simple_file_output': Total drawn frames: 1402 +16:21:56.221: ==== Recording Stop ================================================ +16:21:56.228: libfdk_aac encoder destroyed +16:22:19.148: --------------------------------- +16:22:19.148: [x264 encoder: 'simple_video_stream'] preset: veryfast +16:22:19.148: [x264 encoder: 'simple_video_stream'] settings: +16:22:19.148: rate_control: CBR +16:22:19.148: bitrate: 2500 +16:22:19.148: buffer size: 2500 +16:22:19.148: crf: 23 +16:22:19.148: fps_num: 30 +16:22:19.148: fps_den: 1 +16:22:19.148: width: 1280 +16:22:19.148: height: 720 +16:22:19.148: keyint: 250 +16:22:19.148: +16:22:19.154: libfdk_aac encoder created +16:22:19.154: libfdk_aac bitrate: 160, channels: 2 +16:22:19.154: ==== Recording Start =============================================== +16:22:19.154: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-08 16-22-19.mp4'... +16:26:17.548: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-08 16-22-19.mp4' stopped +16:26:17.548: Output 'simple_file_output': stopping +16:26:17.548: Output 'simple_file_output': Total frames output: 7115 +16:26:17.548: Output 'simple_file_output': Total drawn frames: 7151 +16:26:17.548: ==== Recording Stop ================================================ +16:26:17.555: libfdk_aac encoder destroyed +16:32:14.527: --------------------------------- +16:32:14.527: [x264 encoder: 'simple_video_stream'] preset: veryfast +16:32:14.527: [x264 encoder: 'simple_video_stream'] settings: +16:32:14.527: rate_control: CBR +16:32:14.527: bitrate: 2500 +16:32:14.527: buffer size: 2500 +16:32:14.527: crf: 23 +16:32:14.527: fps_num: 30 +16:32:14.527: fps_den: 1 +16:32:14.527: width: 1280 +16:32:14.527: height: 720 +16:32:14.527: keyint: 250 +16:32:14.527: +16:32:14.530: libfdk_aac encoder created +16:32:14.530: libfdk_aac bitrate: 160, channels: 2 +16:32:14.530: ==== Recording Start =============================================== +16:32:14.530: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-08 16-32-14.mp4'... +16:33:01.385: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-08 16-32-14.mp4' stopped +16:33:01.385: Output 'simple_file_output': stopping +16:33:01.385: Output 'simple_file_output': Total frames output: 1369 +16:33:01.385: Output 'simple_file_output': Total drawn frames: 1406 +16:33:01.386: ==== Recording Stop ================================================ +16:33:01.392: libfdk_aac encoder destroyed +16:33:10.331: --------------------------------- +16:33:10.331: [x264 encoder: 'simple_video_stream'] preset: veryfast +16:33:10.331: [x264 encoder: 'simple_video_stream'] settings: +16:33:10.331: rate_control: CBR +16:33:10.331: bitrate: 2500 +16:33:10.331: buffer size: 2500 +16:33:10.331: crf: 23 +16:33:10.331: fps_num: 30 +16:33:10.331: fps_den: 1 +16:33:10.331: width: 1280 +16:33:10.331: height: 720 +16:33:10.331: keyint: 250 +16:33:10.331: +16:33:10.333: libfdk_aac encoder created +16:33:10.333: libfdk_aac bitrate: 160, channels: 2 +16:33:10.333: ==== Recording Start =============================================== +16:33:10.333: [ffmpeg muxer: 'simple_file_output'] Writing file '/home/dich/2025-04-08 16-33-10.mp4'... +16:37:57.619: [ffmpeg muxer: 'simple_file_output'] Output of file '/home/dich/2025-04-08 16-33-10.mp4' stopped +16:37:57.619: Output 'simple_file_output': stopping +16:37:57.619: Output 'simple_file_output': Total frames output: 8582 +16:37:57.619: Output 'simple_file_output': Total drawn frames: 8619 +16:37:57.620: ==== Recording Stop ================================================ +16:37:57.626: libfdk_aac encoder destroyed +16:42:48.670: ==== Shutting down ================================================== +16:42:48.676: pulse-input: Stopped recording from 'alsa_output.pci-0000_05_00.6.analog-stereo.monitor' +16:42:48.676: pulse-input: Got 90995 packets with 109194000 frames +16:42:48.676: pulse-input: Stopped recording from 'alsa_input.pci-0000_05_00.6.analog-stereo' +16:42:48.676: pulse-input: Got 91001 packets with 109201200 frames +16:42:48.676: [pipewire] Stream 0x6101dd37a270 state: "paused" (error: none) +16:42:48.676: [pipewire] Stream 0x6101dd37a270 state: "unconnected" (error: none) +16:42:48.736: All scene data cleared +16:42:48.736: ------------------------------------------------ +16:42:48.801: [Scripting] Total detached callbacks: 0 +16:42:48.802: Freeing OBS context data +16:42:48.815: == Profiler Results ============================= +16:42:48.815: run_program_init: 609.548 ms +16:42:48.815: ┣OBSApp::AppInit: 15.421 ms +16:42:48.815: ┃ ┗OBSApp::InitLocale: 2.683 ms +16:42:48.815: ┗OBSApp::OBSInit: 503.441 ms +16:42:48.815: ┣obs_startup: 2.095 ms +16:42:48.815: ┗OBSBasic::OBSInit: 470.517 ms +16:42:48.815: ┣OBSBasic::InitBasicConfig: 0.651 ms +16:42:48.815: ┣OBSBasic::ResetAudio: 0.14 ms +16:42:48.815: ┣OBSBasic::ResetVideo: 43.592 ms +16:42:48.815: ┃ ┗obs_init_graphics: 41.195 ms +16:42:48.815: ┃ ┗shader compilation: 22.102 ms +16:42:48.815: ┣OBSBasic::InitOBSCallbacks: 0.004 ms +16:42:48.815: ┣OBSBasic::InitHotkeys: 0.026 ms +16:42:48.815: ┣obs_load_all_modules2: 327.25 ms +16:42:48.815: ┃ ┣obs_init_module(decklink-captions.so): 0 ms +16:42:48.815: ┃ ┣obs_init_module(decklink-output-ui.so): 0 ms +16:42:48.815: ┃ ┣obs_init_module(decklink.so): 0.085 ms +16:42:48.815: ┃ ┣obs_init_module(frontend-tools.so): 54.438 ms +16:42:48.815: ┃ ┣obs_init_module(image-source.so): 0.014 ms +16:42:48.815: ┃ ┣obs_init_module(linux-alsa.so): 0.002 ms +16:42:48.816: ┃ ┣obs_init_module(linux-capture.so): 0 ms +16:42:48.816: ┃ ┣obs_init_module(linux-jack.so): 0.003 ms +16:42:48.816: ┃ ┣obs_init_module(linux-pipewire.so): 12.415 ms +16:42:48.816: ┃ ┣obs_init_module(linux-pulseaudio.so): 0.007 ms +16:42:48.816: ┃ ┣obs_init_module(linux-v4l2.so): 4.601 ms +16:42:48.816: ┃ ┣obs_init_module(obs-ffmpeg.so): 11.059 ms +16:42:48.816: ┃ ┣obs_init_module(obs-filters.so): 0.028 ms +16:42:48.816: ┃ ┣obs_init_module(obs-libfdk.so): 0.001 ms +16:42:48.816: ┃ ┣obs_init_module(obs-nvenc.so): 0.126 ms +16:42:48.816: ┃ ┃ ┗nvenc_check: 0.105 ms +16:42:48.816: ┃ ┣obs_init_module(obs-outputs.so): 0.006 ms +16:42:48.816: ┃ ┣obs_init_module(obs-qsv11.so): 7.614 ms +16:42:48.816: ┃ ┣obs_init_module(obs-transitions.so): 0.009 ms +16:42:48.816: ┃ ┣obs_init_module(obs-vst.so): 0.003 ms +16:42:48.816: ┃ ┣obs_init_module(obs-webrtc.so): 0.002 ms +16:42:48.816: ┃ ┣obs_init_module(obs-x264.so): 0.008 ms +16:42:48.816: ┃ ┣obs_init_module(rtmp-services.so): 1.428 ms +16:42:48.816: ┃ ┗obs_init_module(text-freetype2.so): 0.02 ms +16:42:48.816: ┣OBSBasic::InitService: 1.777 ms +16:42:48.816: ┣OBSBasic::ResetOutputs: 0.167 ms +16:42:48.816: ┣OBSBasic::CreateHotkeys: 0.037 ms +16:42:48.816: ┣OBSBasic::InitPrimitives: 0.396 ms +16:42:48.816: ┗OBSBasic::Load: 60.744 ms +16:42:48.816: obs_hotkey_thread(25 ms): min=0 ms, median=0 ms, max=0.135 ms, 99th percentile=0.002 ms, 100% below 25 ms +16:42:48.816: audio_thread(Audio): min=0.01 ms, median=0.087 ms, max=5.747 ms, 99th percentile=0.891 ms +16:42:48.816: ┗receive_audio: min=0.001 ms, median=0.351 ms, max=5.689 ms, 99th percentile=0.746 ms, 0.38664 calls per parent call +16:42:48.816: ┣buffer_audio: min=0 ms, median=0.001 ms, max=0.057 ms, 99th percentile=0.005 ms +16:42:48.816: ┗do_encode: min=0.037 ms, median=0.349 ms, max=5.687 ms, 99th percentile=0.742 ms +16:42:48.816: ┣encode(simple_aac): min=0.034 ms, median=0.338 ms, max=1.343 ms, 99th percentile=0.718 ms +16:42:48.816: ┗send_packet: min=0 ms, median=0.007 ms, max=5.574 ms, 99th percentile=0.054 ms +16:42:48.816: obs_graphics_thread(33.3333 ms): min=0.131 ms, median=0.722 ms, max=215.835 ms, 99th percentile=1.942 ms, 99.9722% below 33.333 ms +16:42:48.816: ┣tick_sources: min=0 ms, median=0.009 ms, max=0.958 ms, 99th percentile=0.032 ms +16:42:48.816: ┣output_frame: min=0.062 ms, median=0.397 ms, max=3.904 ms, 99th percentile=1.487 ms +16:42:48.816: ┃ ┣gs_context(video->graphics): min=0.062 ms, median=0.366 ms, max=3.903 ms, 99th percentile=1.116 ms +16:42:48.816: ┃ ┃ ┣render_video: min=0.016 ms, median=0.092 ms, max=1.178 ms, 99th percentile=0.371 ms +16:42:48.816: ┃ ┃ ┃ ┣render_main_texture: min=0.015 ms, median=0.076 ms, max=0.662 ms, 99th percentile=0.236 ms +16:42:48.816: ┃ ┃ ┃ ┣render_output_texture: min=0.012 ms, median=0.032 ms, max=0.974 ms, 99th percentile=0.079 ms, 0.386767 calls per parent call +16:42:48.816: ┃ ┃ ┃ ┣render_convert_texture: min=0.011 ms, median=0.034 ms, max=0.36 ms, 99th percentile=0.087 ms, 0.386767 calls per parent call +16:42:48.816: ┃ ┃ ┃ ┗stage_output_texture: min=0.006 ms, median=0.02 ms, max=0.18 ms, 99th percentile=0.056 ms, 0.386767 calls per parent call +16:42:48.816: ┃ ┃ ┣gs_flush: min=0.002 ms, median=0.215 ms, max=2.853 ms, 99th percentile=0.929 ms +16:42:48.816: ┃ ┃ ┗download_frame: min=0 ms, median=0.076 ms, max=0.849 ms, 99th percentile=0.17 ms, 0.386767 calls per parent call +16:42:48.816: ┃ ┗output_video_data: min=0.074 ms, median=0.21 ms, max=2.626 ms, 99th percentile=0.656 ms, 0.386562 calls per parent call +16:42:48.816: ┗render_displays: min=0.002 ms, median=0.259 ms, max=215.563 ms, 99th percentile=0.539 ms +16:42:48.816: video_thread(video): min=0.34 ms, median=0.914 ms, max=5.345 ms, 99th percentile=2.087 ms +16:42:48.816: ┗receive_video: min=0.339 ms, median=0.913 ms, max=5.343 ms, 99th percentile=2.085 ms +16:42:48.816: ┗do_encode: min=0.338 ms, median=0.912 ms, max=5.342 ms, 99th percentile=2.082 ms +16:42:48.816: ┣encode(simple_video_stream): min=0.329 ms, median=0.889 ms, max=4.471 ms, 99th percentile=2.037 ms +16:42:48.816: ┗send_packet: min=0.002 ms, median=0.012 ms, max=4.142 ms, 99th percentile=0.073 ms +16:42:48.816: OBSBasicSettings::LoadThemeList: min=0.033 ms, median=0.034 ms, max=0.037 ms, 99th percentile=0.037 ms +16:42:48.816: ================================================= +16:42:48.816: == Profiler Time Between Calls ================== +16:42:48.816: obs_hotkey_thread(25 ms): min=25.007 ms, median=25.079 ms, max=27.055 ms, 97.84% within ±2% of 25 ms (0% lower, 2.16% higher) +16:42:48.816: obs_graphics_thread(33.3333 ms): min=2.988 ms, median=33.333 ms, max=215.894 ms, 96.6559% within ±2% of 33.333 ms (1.66913% lower, 1.675% higher) +16:42:48.816: ================================================= +16:42:48.828: Number of memory leaks: 0 diff --git a/obs-studio/logs/2025-04-12 21-20-31.txt b/obs-studio/logs/2025-04-12 21-20-31.txt new file mode 100644 index 0000000..9e4e8ee --- /dev/null +++ b/obs-studio/logs/2025-04-12 21-20-31.txt @@ -0,0 +1,216 @@ +21:20:31.116: Platform: Wayland +21:20:31.116: CPU Name: AMD Ryzen 7 8845HS w/ Radeon 780M Graphics +21:20:31.116: CPU Speed: 1100.980MHz +21:20:31.116: Physical Cores: 8, Logical Cores: 16 +21:20:31.116: Physical Memory: 31266MB Total, 23548MB Free +21:20:31.116: Kernel Version: Linux 6.14.2-2-cachyos +21:20:31.116: Distribution: "CachyOS Linux" Unknown +21:20:31.116: Desktop Environment: KDE (KDE) +21:20:31.116: Session Type: wayland +21:20:31.118: Qt Version: 6.9.0 (runtime), 6.8.3 (compiled) +21:20:31.118: Portable mode: false +21:20:31.148: OBS 31.0.3 (linux) +21:20:31.148: --------------------------------- +21:20:31.149: --------------------------------- +21:20:31.149: audio settings reset: +21:20:31.149: samples per sec: 48000 +21:20:31.149: speakers: 2 +21:20:31.149: max buffering: 960 milliseconds +21:20:31.149: buffering type: dynamically increasing +21:20:31.150: --------------------------------- +21:20:31.150: Initializing OpenGL... +21:20:31.150: Using EGL/Wayland +21:20:31.156: Initialized EGL 1.5 +21:20:31.168: Loading up OpenGL on adapter AMD AMD Radeon Graphics (radeonsi, phoenix, LLVM 19.1.7, DRM 3.61, 6.14.2-2-cachyos) +21:20:31.168: OpenGL loaded successfully, version 4.6 (Core Profile) Mesa 25.0.3-cachyos1.2, shading language 4.60 +21:20:31.191: --------------------------------- +21:20:31.191: video settings reset: +21:20:31.191: base resolution: 1920x1080 +21:20:31.191: output resolution: 1280x720 +21:20:31.191: downscale filter: Bicubic +21:20:31.191: fps: 30/1 +21:20:31.191: format: NV12 +21:20:31.191: YUV mode: Rec. 709/Partial +21:20:31.192: NV12 texture support enabled +21:20:31.192: P010 texture support not available +21:20:31.195: Audio monitoring device: +21:20:31.195: name: Family 17h/19h/1ah HD Audio Controller Analog Stereo +21:20:31.195: id: alsa_output.pci-0000_05_00.6.analog-stereo +21:20:31.196: --------------------------------- +21:20:31.205: Failed to load 'en-US' text for module: 'decklink-captions.so' +21:20:31.212: Failed to load 'en-US' text for module: 'decklink-output-ui.so' +21:20:31.217: A DeckLink iterator could not be created. The DeckLink drivers may not be installed +21:20:31.217: Failed to initialize module 'decklink.so' +21:20:31.331: [pipewire] Available capture sources: +21:20:31.331: [pipewire] - Monitor source +21:20:31.331: [pipewire] - Window source +21:20:31.413: VAAPI: API version 1.22 +21:20:31.414: FFmpeg VAAPI H264 encoding supported +21:20:31.417: FFmpeg VAAPI AV1 encoding supported +21:20:31.420: FFmpeg VAAPI HEVC encoding supported +21:20:31.444: os_dlopen(libnvidia-encode.so.1->libnvidia-encode.so.1): libnvidia-encode.so.1: cannot open shared object file: No such file or directory +21:20:31.444: +21:20:31.444: NVENC not supported +21:20:31.444: Failed to initialize module 'obs-nvenc.so' +21:20:31.512: os_dlopen(/usr/lib/obs-plugins/obs-websocket.so->/usr/lib/obs-plugins/obs-websocket.so): libqrcodegencpp.so.1: cannot open shared object file: No such file or directory +21:20:31.512: +21:20:31.514: os_dlopen(/usr/lib/obs-plugins/obs-websocket.so->/usr/lib/obs-plugins/obs-websocket.so): libqrcodegencpp.so.1: cannot open shared object file: No such file or directory +21:20:31.514: +21:20:31.514: Module '/usr/lib/obs-plugins/obs-websocket.so' not loaded +21:20:31.533: --------------------------------- +21:20:31.533: Loaded Modules: +21:20:31.533: text-freetype2.so +21:20:31.533: rtmp-services.so +21:20:31.533: obs-x264.so +21:20:31.533: obs-webrtc.so +21:20:31.533: obs-vst.so +21:20:31.533: obs-transitions.so +21:20:31.533: obs-qsv11.so +21:20:31.533: obs-outputs.so +21:20:31.533: obs-libfdk.so +21:20:31.533: obs-filters.so +21:20:31.533: obs-ffmpeg.so +21:20:31.533: linux-v4l2.so +21:20:31.533: linux-pulseaudio.so +21:20:31.533: linux-pipewire.so +21:20:31.533: linux-jack.so +21:20:31.533: linux-capture.so +21:20:31.533: linux-alsa.so +21:20:31.533: image-source.so +21:20:31.533: frontend-tools.so +21:20:31.533: decklink-output-ui.so +21:20:31.533: decklink-captions.so +21:20:31.533: --------------------------------- +21:20:31.533: --------------------------------- +21:20:31.533: Available Encoders: +21:20:31.533: Video Encoders: +21:20:31.533: - ffmpeg_svt_av1 (SVT-AV1) +21:20:31.533: - ffmpeg_aom_av1 (AOM AV1) +21:20:31.533: - ffmpeg_vaapi_tex (FFmpeg VAAPI H.264) +21:20:31.533: - av1_ffmpeg_vaapi_tex (FFmpeg VAAPI AV1) +21:20:31.533: - hevc_ffmpeg_vaapi_tex (FFmpeg VAAPI HEVC) +21:20:31.533: - obs_x264 (x264) +21:20:31.533: Audio Encoders: +21:20:31.533: - ffmpeg_aac (FFmpeg AAC) +21:20:31.533: - ffmpeg_opus (FFmpeg Opus) +21:20:31.533: - ffmpeg_pcm_s16le (FFmpeg PCM (16位)) +21:20:31.533: - ffmpeg_pcm_s24le (FFmpeg PCM (24位)) +21:20:31.533: - ffmpeg_pcm_f32le (FFmpeg PCM (32位浮点)) +21:20:31.533: - ffmpeg_alac (FFmpeg ALAC (24位)) +21:20:31.533: - ffmpeg_flac (FFmpeg FLAC (16位)) +21:20:31.533: - libfdk_aac (libfdk AAC) +21:20:31.533: ==== Startup complete =============================================== +21:20:31.578: All scene data cleared +21:20:31.578: ------------------------------------------------ +21:20:31.581: pulse-input: Server name: 'PulseAudio (on PipeWire 1.4.1) 15.0.0' +21:20:31.581: pulse-input: Audio format: s32le, 48000 Hz, 2 channels +21:20:31.581: pulse-input: Started recording from 'alsa_output.pci-0000_05_00.6.analog-stereo.monitor' +21:20:31.581: [Loaded global audio device]: 'Desktop Audio' +21:20:31.582: pulse-input: Server name: 'PulseAudio (on PipeWire 1.4.1) 15.0.0' +21:20:31.582: pulse-input: Audio format: s32le, 48000 Hz, 2 channels +21:20:31.582: pulse-input: Started recording from 'alsa_input.pci-0000_05_00.6.analog-stereo' +21:20:31.582: [Loaded global audio device]: 'Mic/Aux' +21:20:31.582: - filter: '噪声抑制' (noise_suppress_filter_v2) +21:20:31.582: PipeWire initialized +21:20:31.583: Switched to scene 'Scene' +21:20:31.583: ------------------------------------------------ +21:20:31.583: Loaded scenes: +21:20:31.583: - scene 'Scene': +21:20:31.583: - source: 'Screen Capture (PipeWire)' (pipewire-screen-capture-source) +21:20:31.583: ------------------------------------------------ +21:20:31.624: [pipewire] Screencast session created +21:20:31.628: [pipewire] Asking for monitor and window +21:20:32.323: adding 42 milliseconds of audio buffering, total audio buffering is now 42 milliseconds (source: Desktop Audio) +21:20:32.323: +21:20:32.365: adding 21 milliseconds of audio buffering, total audio buffering is now 64 milliseconds (source: Mic/Aux) +21:20:32.365: +21:20:35.220: [pipewire] source selected, setting up screencast +21:20:35.224: [pipewire] Server version: 1.4.1 +21:20:35.224: [pipewire] Library version: 1.4.1 +21:20:35.224: [pipewire] Header version: 1.4.1 +21:20:35.224: [pipewire] Created stream 0x63c55733e070 +21:20:35.224: [pipewire] Stream 0x63c55733e070 state: "connecting" (error: none) +21:20:35.224: [pipewire] Playing stream 0x63c55733e070 +21:20:35.225: [pipewire] Stream 0x63c55733e070 state: "paused" (error: none) +21:20:35.230: [pipewire] Negotiated format: +21:20:35.230: [pipewire] Format: 12 (Spa:Enum:VideoFormat:BGRA) +21:20:35.230: [pipewire] Modifier: 0x0 +21:20:35.230: [pipewire] Size: 2560x1440 +21:20:35.230: [pipewire] Framerate: 0/1 +21:20:35.231: [pipewire] Negotiated format: +21:20:35.231: [pipewire] Format: 12 (Spa:Enum:VideoFormat:BGRA) +21:20:35.231: [pipewire] Modifier: 0x20000001046bb04 +21:20:35.231: [pipewire] Size: 2560x1440 +21:20:35.231: [pipewire] Framerate: 0/1 +21:20:35.240: [pipewire] Stream 0x63c55733e070 state: "streaming" (error: none) +21:20:40.202: ==== Shutting down ================================================== +21:20:40.205: pulse-input: Stopped recording from 'alsa_output.pci-0000_05_00.6.analog-stereo.monitor' +21:20:40.205: pulse-input: Got 337 packets with 404400 frames +21:20:40.205: pulse-input: Stopped recording from 'alsa_input.pci-0000_05_00.6.analog-stereo' +21:20:40.205: pulse-input: Got 337 packets with 404400 frames +21:20:40.206: [pipewire] Stream 0x63c55733e070 state: "paused" (error: none) +21:20:40.206: [pipewire] Stream 0x63c55733e070 state: "unconnected" (error: none) +21:20:40.241: All scene data cleared +21:20:40.241: ------------------------------------------------ +21:20:40.309: [Scripting] Total detached callbacks: 0 +21:20:40.309: Freeing OBS context data +21:20:40.331: == Profiler Results ============================= +21:20:40.331: run_program_init: 604.944 ms +21:20:40.331: ┣OBSApp::AppInit: 16.092 ms +21:20:40.331: ┃ ┗OBSApp::InitLocale: 2.276 ms +21:20:40.331: ┗OBSApp::OBSInit: 502.6 ms +21:20:40.331: ┣obs_startup: 2.038 ms +21:20:40.331: ┗OBSBasic::OBSInit: 469.802 ms +21:20:40.331: ┣OBSBasic::InitBasicConfig: 0.494 ms +21:20:40.331: ┣OBSBasic::ResetAudio: 0.097 ms +21:20:40.331: ┣OBSBasic::ResetVideo: 46.066 ms +21:20:40.331: ┃ ┗obs_init_graphics: 42.28 ms +21:20:40.331: ┃ ┗shader compilation: 22.518 ms +21:20:40.331: ┣OBSBasic::InitOBSCallbacks: 0.008 ms +21:20:40.331: ┣OBSBasic::InitHotkeys: 0.05 ms +21:20:40.331: ┣obs_load_all_modules2: 336.707 ms +21:20:40.331: ┃ ┣obs_init_module(decklink-captions.so): 0 ms +21:20:40.331: ┃ ┣obs_init_module(decklink-output-ui.so): 0 ms +21:20:40.331: ┃ ┣obs_init_module(decklink.so): 0.083 ms +21:20:40.331: ┃ ┣obs_init_module(frontend-tools.so): 50.143 ms +21:20:40.331: ┃ ┣obs_init_module(image-source.so): 0.006 ms +21:20:40.331: ┃ ┣obs_init_module(linux-alsa.so): 0.001 ms +21:20:40.331: ┃ ┣obs_init_module(linux-capture.so): 0 ms +21:20:40.331: ┃ ┣obs_init_module(linux-jack.so): 0.007 ms +21:20:40.331: ┃ ┣obs_init_module(linux-pipewire.so): 11.447 ms +21:20:40.331: ┃ ┣obs_init_module(linux-pulseaudio.so): 0.012 ms +21:20:40.331: ┃ ┣obs_init_module(linux-v4l2.so): 4.77 ms +21:20:40.331: ┃ ┣obs_init_module(obs-ffmpeg.so): 11.889 ms +21:20:40.331: ┃ ┣obs_init_module(obs-filters.so): 0.016 ms +21:20:40.331: ┃ ┣obs_init_module(obs-libfdk.so): 0.002 ms +21:20:40.331: ┃ ┣obs_init_module(obs-nvenc.so): 0.085 ms +21:20:40.331: ┃ ┃ ┗nvenc_check: 0.074 ms +21:20:40.331: ┃ ┣obs_init_module(obs-outputs.so): 0.005 ms +21:20:40.331: ┃ ┣obs_init_module(obs-qsv11.so): 8.456 ms +21:20:40.331: ┃ ┣obs_init_module(obs-transitions.so): 0.01 ms +21:20:40.331: ┃ ┣obs_init_module(obs-vst.so): 0.003 ms +21:20:40.331: ┃ ┣obs_init_module(obs-webrtc.so): 0.002 ms +21:20:40.331: ┃ ┣obs_init_module(obs-x264.so): 0.002 ms +21:20:40.331: ┃ ┣obs_init_module(rtmp-services.so): 0.994 ms +21:20:40.331: ┃ ┗obs_init_module(text-freetype2.so): 0.013 ms +21:20:40.331: ┣OBSBasic::InitService: 1.326 ms +21:20:40.331: ┣OBSBasic::ResetOutputs: 0.132 ms +21:20:40.331: ┣OBSBasic::CreateHotkeys: 0.02 ms +21:20:40.331: ┣OBSBasic::InitPrimitives: 0.201 ms +21:20:40.331: ┗OBSBasic::Load: 48.497 ms +21:20:40.331: obs_hotkey_thread(25 ms): min=0 ms, median=0 ms, max=0.002 ms, 99th percentile=0.001 ms, 100% below 25 ms +21:20:40.331: audio_thread(Audio): min=0.006 ms, median=0.053 ms, max=2.477 ms, 99th percentile=0.211 ms +21:20:40.331: obs_graphics_thread(33.3333 ms): min=0.127 ms, median=0.479 ms, max=92.221 ms, 99th percentile=6.453 ms, 99.6324% below 33.333 ms +21:20:40.331: ┣tick_sources: min=0 ms, median=0.006 ms, max=0.033 ms, 99th percentile=0.028 ms +21:20:40.331: ┣output_frame: min=0.063 ms, median=0.227 ms, max=3.063 ms, 99th percentile=0.619 ms +21:20:40.331: ┃ ┗gs_context(video->graphics): min=0.063 ms, median=0.226 ms, max=3.063 ms, 99th percentile=0.615 ms +21:20:40.331: ┃ ┣render_video: min=0.009 ms, median=0.052 ms, max=2.827 ms, 99th percentile=0.197 ms +21:20:40.331: ┃ ┃ ┗render_main_texture: min=0.008 ms, median=0.048 ms, max=2.789 ms, 99th percentile=0.188 ms +21:20:40.331: ┃ ┗gs_flush: min=0.001 ms, median=0.105 ms, max=0.411 ms, 99th percentile=0.343 ms +21:20:40.331: ┗render_displays: min=0.001 ms, median=0.24 ms, max=91.944 ms, 99th percentile=1.508 ms +21:20:40.331: ================================================= +21:20:40.331: == Profiler Time Between Calls ================== +21:20:40.331: obs_hotkey_thread(25 ms): min=25.01 ms, median=25.064 ms, max=27.223 ms, 97.8022% within ±2% of 25 ms (0% lower, 2.1978% higher) +21:20:40.331: obs_graphics_thread(33.3333 ms): min=7.779 ms, median=33.333 ms, max=92.235 ms, 99.262% within ±2% of 33.333 ms (0.369004% lower, 0.369004% higher) +21:20:40.331: ================================================= +21:20:40.332: Number of memory leaks: 0 diff --git a/obs-studio/plugin_config/rtmp-services/amazon_ivs_ingests.json b/obs-studio/plugin_config/rtmp-services/amazon_ivs_ingests.json new file mode 100644 index 0000000..2cb31e4 --- /dev/null +++ b/obs-studio/plugin_config/rtmp-services/amazon_ivs_ingests.json @@ -0,0 +1,625 @@ +{ + "ingests": [ + { + "_id": 0, + "availability": 1.0, + "default": false, + "name": "Asia: Japan, Narita (10)", + "url_template": "rtmp://apn10.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://apn10.contribute.live-video.net/app/{stream_key}", + "priority": 0 + }, + { + "_id": 1, + "availability": 1.0, + "default": false, + "name": "Asia: Japan, Tokyo (3)", + "url_template": "rtmp://tyo03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://tyo03.contribute.live-video.net/app/{stream_key}", + "priority": 1 + }, + { + "_id": 2, + "availability": 1.0, + "default": false, + "name": "Asia: Japan, Tokyo (5)", + "url_template": "rtmp://tyo05.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://tyo05.contribute.live-video.net/app/{stream_key}", + "priority": 2 + }, + { + "_id": 3, + "availability": 1.0, + "default": false, + "name": "Asia: Japan, Osaka (1)", + "url_template": "rtmp://osa01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://osa01.contribute.live-video.net/app/{stream_key}", + "priority": 3 + }, + { + "_id": 4, + "availability": 1.0, + "default": false, + "name": "Asia: South Korea, Seoul (3)", + "url_template": "rtmp://sel03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://sel03.contribute.live-video.net/app/{stream_key}", + "priority": 4 + }, + { + "_id": 5, + "availability": 1.0, + "default": false, + "name": "Asia: South Korea, Seoul (4)", + "url_template": "rtmp://sel04.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://sel04.contribute.live-video.net/app/{stream_key}", + "priority": 5 + }, + { + "_id": 6, + "availability": 1.0, + "default": false, + "name": "Asia: Taiwan, Taipei (3)", + "url_template": "rtmp://tpe03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://tpe03.contribute.live-video.net/app/{stream_key}", + "priority": 6 + }, + { + "_id": 7, + "availability": 1.0, + "default": false, + "name": "Asia: Taiwan, Taipei (1)", + "url_template": "rtmp://tpe01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://tpe01.contribute.live-video.net/app/{stream_key}", + "priority": 7 + }, + { + "_id": 8, + "availability": 1.0, + "default": false, + "name": "Asia: China, Hong Kong (6)", + "url_template": "rtmp://hkg06.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://hkg06.contribute.live-video.net/app/{stream_key}", + "priority": 8 + }, + { + "_id": 9, + "availability": 1.0, + "default": false, + "name": "Asia: Manila, Philippines (1)", + "url_template": "rtmp://mnl01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://mnl01.contribute.live-video.net/app/{stream_key}", + "priority": 9 + }, + { + "_id": 10, + "availability": 1.0, + "default": false, + "name": "Asia: Thailand, Bangkok (2)", + "url_template": "rtmp://bkk02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://bkk02.contribute.live-video.net/app/{stream_key}", + "priority": 10 + }, + { + "_id": 11, + "availability": 1.0, + "default": false, + "name": "Asia: Singapore (1)", + "url_template": "rtmp://sin01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://sin01.contribute.live-video.net/app/{stream_key}", + "priority": 11 + }, + { + "_id": 12, + "availability": 1.0, + "default": false, + "name": "Asia: Indonesia, Jakarta (2)", + "url_template": "rtmp://jkt02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://jkt02.contribute.live-video.net/app/{stream_key}", + "priority": 12 + }, + { + "_id": 13, + "availability": 1.0, + "default": false, + "name": "Asia: India, Hyderabad (1)", + "url_template": "rtmp://hyd01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://hyd01.contribute.live-video.net/app/{stream_key}", + "priority": 13 + }, + { + "_id": 14, + "availability": 1.0, + "default": false, + "name": "Asia: India, Chennai (1)", + "url_template": "rtmp://maa01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://maa01.contribute.live-video.net/app/{stream_key}", + "priority": 14 + }, + { + "_id": 15, + "availability": 1.0, + "default": false, + "name": "Asia: India, New Delhi (1)", + "url_template": "rtmp://del01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://del01.contribute.live-video.net/app/{stream_key}", + "priority": 15 + }, + { + "_id": 16, + "availability": 1.0, + "default": false, + "name": "Asia: India, Bangalore (1)", + "url_template": "rtmp://blr01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://blr01.contribute.live-video.net/app/{stream_key}", + "priority": 16 + }, + { + "_id": 17, + "availability": 1.0, + "default": false, + "name": "Asia: India, Mumbai", + "url_template": "rtmp://bom01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://bom01.contribute.live-video.net/app/{stream_key}", + "priority": 17 + }, + { + "_id": 18, + "availability": 1.0, + "default": false, + "name": "US West: Seattle, WA (2)", + "url_template": "rtmp://sea02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://sea02.contribute.live-video.net/app/{stream_key}", + "priority": 18 + }, + { + "_id": 19, + "availability": 1.0, + "default": false, + "name": "Europe: Finland, Helsinki (3)", + "url_template": "rtmp://hel03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://hel03.contribute.live-video.net/app/{stream_key}", + "priority": 19 + }, + { + "_id": 20, + "availability": 1.0, + "default": false, + "name": "Oceania: Australia, Sydney (2)", + "url_template": "rtmp://syd02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://syd02.contribute.live-video.net/app/{stream_key}", + "priority": 20 + }, + { + "_id": 21, + "availability": 1.0, + "default": false, + "name": "Oceania: Australia, Sydney (3)", + "url_template": "rtmp://syd03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://syd03.contribute.live-video.net/app/{stream_key}", + "priority": 21 + }, + { + "_id": 22, + "availability": 1.0, + "default": false, + "name": "Europe: Sweden, Stockholm (3)", + "url_template": "rtmp://arn03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://arn03.contribute.live-video.net/app/{stream_key}", + "priority": 22 + }, + { + "_id": 23, + "availability": 1.0, + "default": false, + "name": "Europe: Sweden, Stockholm (4)", + "url_template": "rtmp://arn04.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://arn04.contribute.live-video.net/app/{stream_key}", + "priority": 23 + }, + { + "_id": 24, + "availability": 1.0, + "default": false, + "name": "US West: San Jose, California (6)", + "url_template": "rtmp://sjc06.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://sjc06.contribute.live-video.net/app/{stream_key}", + "priority": 24 + }, + { + "_id": 25, + "availability": 1.0, + "default": false, + "name": "Europe: Norway, Oslo", + "url_template": "rtmp://osl.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://osl.contribute.live-video.net/app/{stream_key}", + "priority": 25 + }, + { + "_id": 26, + "availability": 1.0, + "default": false, + "name": "Europe: Poland, Warsaw (2)", + "url_template": "rtmp://waw02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://waw02.contribute.live-video.net/app/{stream_key}", + "priority": 26 + }, + { + "_id": 27, + "availability": 1.0, + "default": false, + "name": "Europe: Denmark, Copenhagen", + "url_template": "rtmp://cph.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://cph.contribute.live-video.net/app/{stream_key}", + "priority": 27 + }, + { + "_id": 28, + "availability": 1.0, + "default": false, + "name": "US West: Los Angeles, CA", + "url_template": "rtmp://lax.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://lax.contribute.live-video.net/app/{stream_key}", + "priority": 28 + }, + { + "_id": 29, + "availability": 1.0, + "default": false, + "name": "Europe: Czech Republic, Prague", + "url_template": "rtmp://prg03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://prg03.contribute.live-video.net/app/{stream_key}", + "priority": 29 + }, + { + "_id": 30, + "availability": 1.0, + "default": false, + "name": "Europe: Austria, Vienna (2)", + "url_template": "rtmp://vie02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://vie02.contribute.live-video.net/app/{stream_key}", + "priority": 30 + }, + { + "_id": 31, + "availability": 1.0, + "default": false, + "name": "Europe: Netherlands, Amsterdam (3)", + "url_template": "rtmp://ams03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://ams03.contribute.live-video.net/app/{stream_key}", + "priority": 31 + }, + { + "_id": 32, + "availability": 1.0, + "default": false, + "name": "Europe: Netherlands, Amsterdam (2)", + "url_template": "rtmp://ams02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://ams02.contribute.live-video.net/app/{stream_key}", + "priority": 32 + }, + { + "_id": 33, + "availability": 1.0, + "default": false, + "name": "Europe: Germany, Dusseldorf (1)", + "url_template": "rtmp://dus01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://dus01.contribute.live-video.net/app/{stream_key}", + "priority": 33 + }, + { + "_id": 34, + "availability": 1.0, + "default": false, + "name": "US Central: Denver, CO (52)", + "url_template": "rtmp://den52.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://den52.contribute.live-video.net/app/{stream_key}", + "priority": 34 + }, + { + "_id": 35, + "availability": 1.0, + "default": false, + "name": "Europe: Germany, Munich (1)", + "url_template": "rtmp://muc01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://muc01.contribute.live-video.net/app/{stream_key}", + "priority": 35 + }, + { + "_id": 36, + "availability": 1.0, + "default": false, + "name": "Europe: UK, London (8)", + "url_template": "rtmp://lhr08.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://lhr08.contribute.live-video.net/app/{stream_key}", + "priority": 36 + }, + { + "_id": 37, + "availability": 1.0, + "default": false, + "name": "Europe: UK, London (3)", + "url_template": "rtmp://lhr03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://lhr03.contribute.live-video.net/app/{stream_key}", + "priority": 37 + }, + { + "_id": 38, + "availability": 1.0, + "default": false, + "name": "Europe: France, Paris (2)", + "url_template": "rtmp://cdg02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://cdg02.contribute.live-video.net/app/{stream_key}", + "priority": 38 + }, + { + "_id": 39, + "availability": 1.0, + "default": false, + "name": "Europe: France, Paris (10)", + "url_template": "rtmp://cdg10.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://cdg10.contribute.live-video.net/app/{stream_key}", + "priority": 39 + }, + { + "_id": 40, + "availability": 1.0, + "default": false, + "name": "Europe: Italy, Milan (2)", + "url_template": "rtmp://mil02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://mil02.contribute.live-video.net/app/{stream_key}", + "priority": 40 + }, + { + "_id": 41, + "availability": 1.0, + "default": false, + "name": "Europe: Germany, Frankfurt (5)", + "url_template": "rtmp://fra05.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://fra05.contribute.live-video.net/app/{stream_key}", + "priority": 41 + }, + { + "_id": 42, + "availability": 1.0, + "default": false, + "name": "Europe: Germany, Frankfurt (2)", + "url_template": "rtmp://fra02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://fra02.contribute.live-video.net/app/{stream_key}", + "priority": 42 + }, + { + "_id": 43, + "availability": 1.0, + "default": false, + "name": "Europe: France, Marseille (2)", + "url_template": "rtmp://mrs02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://mrs02.contribute.live-video.net/app/{stream_key}", + "priority": 43 + }, + { + "_id": 44, + "availability": 1.0, + "default": false, + "name": "US East: Chicago, IL (3)", + "url_template": "rtmp://ord03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://ord03.contribute.live-video.net/app/{stream_key}", + "priority": 44 + }, + { + "_id": 45, + "availability": 1.0, + "default": false, + "name": "US East: Chicago, IL (56)", + "url_template": "rtmp://ord56.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://ord56.contribute.live-video.net/app/{stream_key}", + "priority": 45 + }, + { + "_id": 46, + "availability": 1.0, + "default": false, + "name": "NA: Canada, Toronto", + "url_template": "rtmp://yto.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://yto.contribute.live-video.net/app/{stream_key}", + "priority": 46 + }, + { + "_id": 47, + "availability": 1.0, + "default": false, + "name": "NA: Canada, Quebec", + "url_template": "rtmp://ymq03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://ymq03.contribute.live-video.net/app/{stream_key}", + "priority": 47 + }, + { + "_id": 48, + "availability": 1.0, + "default": false, + "name": "US Central: Garland, TX (56)", + "url_template": "rtmp://dfw56.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://dfw56.contribute.live-video.net/app/{stream_key}", + "priority": 48 + }, + { + "_id": 49, + "availability": 1.0, + "default": false, + "name": "US Central: Dallas, TX (2)", + "url_template": "rtmp://dfw02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://dfw02.contribute.live-video.net/app/{stream_key}", + "priority": 49 + }, + { + "_id": 50, + "availability": 1.0, + "default": false, + "name": "US Central: Houston, TX (50)", + "url_template": "rtmp://iah50.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://iah50.contribute.live-video.net/app/{stream_key}", + "priority": 50 + }, + { + "_id": 51, + "availability": 1.0, + "default": false, + "name": "Europe: Spain, Madrid (2)", + "url_template": "rtmp://mad02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://mad02.contribute.live-video.net/app/{stream_key}", + "priority": 51 + }, + { + "_id": 52, + "availability": 1.0, + "default": false, + "name": "Europe: Spain, Madrid (1)", + "url_template": "rtmp://mad01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://mad01.contribute.live-video.net/app/{stream_key}", + "priority": 52 + }, + { + "_id": 53, + "availability": 1.0, + "default": false, + "name": "US East: McAllen, TX (1)", + "url_template": "rtmp://mfe01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://mfe01.contribute.live-video.net/app/{stream_key}", + "priority": 53 + }, + { + "_id": 54, + "availability": 1.0, + "default": false, + "name": "US East: New York, NY (50)", + "url_template": "rtmp://jfk50.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://jfk50.contribute.live-video.net/app/{stream_key}", + "priority": 54 + }, + { + "_id": 55, + "availability": 1.0, + "default": false, + "name": "US East: New York, NY", + "url_template": "rtmp://jfk.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://jfk.contribute.live-video.net/app/{stream_key}", + "priority": 55 + }, + { + "_id": 56, + "availability": 1.0, + "default": false, + "name": "US East: Ashburn, VA (5)", + "url_template": "rtmp://iad05.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://iad05.contribute.live-video.net/app/{stream_key}", + "priority": 56 + }, + { + "_id": 57, + "availability": 1.0, + "default": false, + "name": "US East: Atlanta, GA", + "url_template": "rtmp://atl.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://atl.contribute.live-video.net/app/{stream_key}", + "priority": 57 + }, + { + "_id": 58, + "availability": 1.0, + "default": false, + "name": "NA: Mexico, Queretaro (4)", + "url_template": "rtmp://qro04.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://qro04.contribute.live-video.net/app/{stream_key}", + "priority": 58 + }, + { + "_id": 59, + "availability": 1.0, + "default": false, + "name": "NA: Mexico, Queretaro (3)", + "url_template": "rtmp://qro03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://qro03.contribute.live-video.net/app/{stream_key}", + "priority": 59 + }, + { + "_id": 60, + "availability": 1.0, + "default": false, + "name": "US East: Miami, FL (5)", + "url_template": "rtmp://mia05.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://mia05.contribute.live-video.net/app/{stream_key}", + "priority": 60 + }, + { + "_id": 61, + "availability": 1.0, + "default": false, + "name": "South America: Colombia, Bogota (1)", + "url_template": "rtmp://bog01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://bog01.contribute.live-video.net/app/{stream_key}", + "priority": 61 + }, + { + "_id": 62, + "availability": 1.0, + "default": false, + "name": "South America: Brazil, Fortaleza (1)", + "url_template": "rtmp://for01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://for01.contribute.live-video.net/app/{stream_key}", + "priority": 62 + }, + { + "_id": 63, + "availability": 1.0, + "default": false, + "name": "South America : chile, Santiago (1)", + "url_template": "rtmp://scl01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://scl01.contribute.live-video.net/app/{stream_key}", + "priority": 63 + }, + { + "_id": 64, + "availability": 1.0, + "default": false, + "name": "South America: Buenos Aires, Argentina (1)", + "url_template": "rtmp://bue01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://bue01.contribute.live-video.net/app/{stream_key}", + "priority": 64 + }, + { + "_id": 65, + "availability": 1.0, + "default": false, + "name": "South America: Brazil, Sao Paulo (5)", + "url_template": "rtmp://sao05.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://sao05.contribute.live-video.net/app/{stream_key}", + "priority": 65 + }, + { + "_id": 66, + "availability": 1.0, + "default": false, + "name": "South America: Brazil, Sao Paulo", + "url_template": "rtmp://sao03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://sao03.contribute.live-video.net/app/{stream_key}", + "priority": 66 + }, + { + "_id": 67, + "availability": 1.0, + "default": false, + "name": "South America: Brazil, Rio de Janeiro (4)", + "url_template": "rtmp://rio04.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://rio04.contribute.live-video.net/app/{stream_key}", + "priority": 67 + }, + { + "_id": 68, + "availability": 1.0, + "default": false, + "name": "South America: Brazil, Rio de Janeiro (3)", + "url_template": "rtmp://rio03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://rio03.contribute.live-video.net/app/{stream_key}", + "priority": 68 + } + ] +} diff --git a/obs-studio/plugin_config/rtmp-services/package.json b/obs-studio/plugin_config/rtmp-services/package.json new file mode 100644 index 0000000..7a60fe0 --- /dev/null +++ b/obs-studio/plugin_config/rtmp-services/package.json @@ -0,0 +1,11 @@ +{ + "$schema": "schema/package-schema.json", + "url": "https://obsproject.com/obs2_update/rtmp-services/v5", + "version": 268, + "files": [ + { + "name": "services.json", + "version": 268 + } + ] +} diff --git a/obs-studio/plugin_config/rtmp-services/services.json b/obs-studio/plugin_config/rtmp-services/services.json new file mode 100644 index 0000000..3ddd184 --- /dev/null +++ b/obs-studio/plugin_config/rtmp-services/services.json @@ -0,0 +1,3586 @@ +{ + "$schema": "schema/service-schema-v5.json", + "format_version": 5, + "services": [ + { + "name": "Twitch", + "common": true, + "stream_key_link": "https://dashboard.twitch.tv/settings/stream", + "multitrack_video_configuration_url": "https://ingest.twitch.tv/api/v3/GetClientConfiguration", + "multitrack_video_name": "Enhanced Broadcasting", + "multitrack_video_learn_more_link": "https://help.twitch.tv/s/article/multiple-encodes", + "servers": [ + { + "name": "Asia: Hong Kong", + "url": "rtmp://live-hkg.twitch.tv/app" + }, + { + "name": "Asia: Seoul, South Korea", + "url": "rtmp://live-sel.twitch.tv/app" + }, + { + "name": "Asia: Singapore", + "url": "rtmp://live-sin.twitch.tv/app" + }, + { + "name": "Asia: Taipei, Taiwan", + "url": "rtmp://live-tpe.twitch.tv/app" + }, + { + "name": "Asia: Tokyo, Japan", + "url": "rtmp://live-tyo.twitch.tv/app" + }, + { + "name": "Australia: Sydney", + "url": "rtmp://live-syd.twitch.tv/app" + }, + { + "name": "EU: Amsterdam, NL", + "url": "rtmp://live-ams.twitch.tv/app" + }, + { + "name": "EU: Berlin, DE", + "url": "rtmp://live-ber.twitch.tv/app" + }, + { + "name": "Europe: Copenhagen, DK", + "url": "rtmp://live-cph.twitch.tv/app" + }, + { + "name": "EU: Frankfurt, DE", + "url": "rtmp://live-fra.twitch.tv/app" + }, + { + "name": "EU: Helsinki, FI", + "url": "rtmp://live-hel.twitch.tv/app" + }, + { + "name": "EU: Lisbon, Portugal", + "url": "rtmp://live-lis.twitch.tv/app" + }, + { + "name": "EU: London, UK", + "url": "rtmp://live-lhr.twitch.tv/app" + }, + { + "name": "EU: Madrid, Spain", + "url": "rtmp://live-mad.twitch.tv/app" + }, + { + "name": "EU: Marseille, FR", + "url": "rtmp://live-mrs.twitch.tv/app" + }, + { + "name": "EU: Milan, Italy", + "url": "rtmp://live-mil.twitch.tv/app" + }, + { + "name": "EU: Norway, Oslo", + "url": "rtmp://live-osl.twitch.tv/app" + }, + { + "name": "EU: Paris, FR", + "url": "rtmp://live-cdg.twitch.tv/app" + }, + { + "name": "EU: Prague, CZ", + "url": "rtmp://live-prg.twitch.tv/app" + }, + { + "name": "EU: Stockholm, SE", + "url": "rtmp://live-arn.twitch.tv/app" + }, + { + "name": "EU: Vienna, Austria", + "url": "rtmp://live-vie.twitch.tv/app" + }, + { + "name": "EU: Warsaw, Poland", + "url": "rtmp://live-waw.twitch.tv/app" + }, + { + "name": "NA: Mexico City", + "url": "rtmp://live-qro.twitch.tv/app" + }, + { + "name": "NA: Quebec, Canada", + "url": "rtmp://live-ymq.twitch.tv/app" + }, + { + "name": "NA: Toronto, Canada", + "url": "rtmp://live-yto.twitch.tv/app" + }, + { + "name": "South America: Argentina", + "url": "rtmp://live-eze.twitch.tv/app" + }, + { + "name": "South America: Chile", + "url": "rtmp://live-scl.twitch.tv/app" + }, + { + "name": "South America: Lima, Peru", + "url": "rtmp://live-lim.twitch.tv/app" + }, + { + "name": "South America: Medellin, Colombia", + "url": "rtmp://live-mde.twitch.tv/app" + }, + { + "name": "South America: Rio de Janeiro, Brazil", + "url": "rtmp://live-rio.twitch.tv/app" + }, + { + "name": "South America: Sao Paulo, Brazil", + "url": "rtmp://live-sao.twitch.tv/app" + }, + { + "name": "US Central: Dallas, TX", + "url": "rtmp://live-dfw.twitch.tv/app" + }, + { + "name": "US Central: Denver, CO", + "url": "rtmp://live-den.twitch.tv/app" + }, + { + "name": "US Central: Houston, TX", + "url": "rtmp://live-hou.twitch.tv/app" + }, + { + "name": "US Central: Salt Lake City, UT", + "url": "rtmp://live-slc.twitch.tv/app" + }, + { + "name": "US East: Ashburn, VA", + "url": "rtmp://live-iad.twitch.tv/app" + }, + { + "name": "US East: Atlanta, GA", + "url": "rtmp://live-atl.twitch.tv/app" + }, + { + "name": "US East: Chicago", + "url": "rtmp://live-ord.twitch.tv/app" + }, + { + "name": "US East: Miami, FL", + "url": "rtmp://live-mia.twitch.tv/app" + }, + { + "name": "US East: New York, NY", + "url": "rtmp://live-jfk.twitch.tv/app" + }, + { + "name": "US West: Los Angeles, CA", + "url": "rtmp://live-lax.twitch.tv/app" + }, + { + "name": "US West: Phoenix, AZ", + "url": "rtmp://live-phx.twitch.tv/app" + }, + { + "name": "US West: Portland, Oregon", + "url": "rtmp://live-pdx.twitch.tv/app" + }, + { + "name": "US West: San Francisco, CA", + "url": "rtmp://live-sfo.twitch.tv/app" + }, + { + "name": "US West: San Jose, CA", + "url": "rtmp://live-sjc.twitch.tv/app" + }, + { + "name": "US West: Seattle, WA", + "url": "rtmp://live-sea.twitch.tv/app" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 6000, + "max audio bitrate": 320, + "x264opts": "scenecut=0" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "YouTube - HLS", + "common": false, + "more_info_link": "https://developers.google.com/youtube/v3/live/guides/ingestion-protocol-comparison", + "stream_key_link": "https://www.youtube.com/live_dashboard", + "protocol": "HLS", + "supported video codecs": [ + "h264", + "hevc" + ], + "servers": [ + { + "name": "Primary YouTube ingest server", + "url": "https://a.upload.youtube.com/http_upload_hls?cid={stream_key}©=0&file=out.m3u8" + }, + { + "name": "Backup YouTube ingest server", + "url": "https://b.upload.youtube.com/http_upload_hls?cid={stream_key}©=1&file=out.m3u8" + } + ], + "recommended": { + "keyint": 2, + "output": "ffmpeg_hls_muxer", + "max video bitrate": 51000, + "max audio bitrate": 160 + } + }, + { + "name": "YouTube - RTMPS", + "common": true, + "stream_key_link": "https://www.youtube.com/live_dashboard", + "alt_names": [ + "YouTube / YouTube Gaming", + "YouTube - RTMP", + "YouTube - RTMPS (Beta)" + ], + "supported video codecs": [ + "h264", + "hevc", + "av1" + ], + "servers": [ + { + "name": "Primary YouTube ingest server", + "url": "rtmps://a.rtmps.youtube.com:443/live2" + }, + { + "name": "Backup YouTube ingest server", + "url": "rtmps://b.rtmps.youtube.com:443/live2?backup=1" + }, + { + "name": "Primary YouTube ingest server (legacy RTMP)", + "url": "rtmp://a.rtmp.youtube.com/live2" + }, + { + "name": "Backup YouTube ingest server (legacy RTMP)", + "url": "rtmp://b.rtmp.youtube.com/live2?backup=1" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 51000, + "max audio bitrate": 160 + } + }, + { + "name": "Loola.tv", + "common": false, + "servers": [ + { + "name": "US East: Virginia", + "url": "rtmp://rtmp.loola.tv/push" + }, + { + "name": "EU Central: Germany", + "url": "rtmp://rtmp-eu.loola.tv/push" + }, + { + "name": "South America: Brazil", + "url": "rtmp://rtmp-sa.loola.tv/push" + }, + { + "name": "Asia/Pacific: Singapore", + "url": "rtmp://rtmp-sg.loola.tv/push" + }, + { + "name": "Middle East: Bahrain", + "url": "rtmp://rtmp-me.loola.tv/push" + } + ], + "recommended": { + "keyint": 2, + "profile": "high", + "max video bitrate": 2500, + "max audio bitrate": 160, + "bframes": 2, + "x264opts": "scenecut=0" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Lovecast", + "servers": [ + { + "name": "Default", + "url": "rtmp://live-a.lovecastapp.com:5222/app" + } + ], + "recommended": { + "keyint": 2, + "profile": "main", + "max video bitrate": 8000, + "max audio bitrate": 192, + "supported resolutions": [ + "1920x1080", + "1280x720" + ], + "max fps": 30 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Luzento.com - RTMP", + "stream_key_link": "https://cms.luzento.com/dashboard/stream-key?from=OBS", + "servers": [ + { + "name": "Primary", + "url": "rtmp://ingest.luzento.com/live" + }, + { + "name": "Primary (Test)", + "url": "rtmp://ingest.luzento.com/test" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 6000, + "max audio bitrate": 256, + "bframes": 2, + "x264opts": "scenecut=0" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Web.TV", + "servers": [ + { + "name": "Primary", + "url": "rtmp://live3.origins.web.tv/liveext" + } + ], + "recommended": { + "keyint": 2, + "profile": "main", + "max video bitrate": 3500, + "max audio bitrate": 160 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "GoodGame.ru", + "servers": [ + { + "name": "Моscow", + "url": "rtmp://msk.goodgame.ru:1940/live" + } + ], + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Vaughn Live / iNSTAGIB", + "servers": [ + { + "name": "US: Vint Hill, VA", + "url": "rtmp://live-iad.vaughnsoft.net/live" + }, + { + "name": "US: Vint Hill, VA #2", + "url": "rtmp://live-iad2.vaughnsoft.net/live" + }, + { + "name": "US: Dallas, TX", + "url": "rtmp://live-dfw.vaughnsoft.net/live" + }, + { + "name": "US: Denver, CO", + "url": "rtmp://live-den.vaughnsoft.net/live" + }, + { + "name": "US: New York, NY", + "url": "rtmp://live-nyc.vaughnsoft.net/live" + }, + { + "name": "US: Miami, FL", + "url": "rtmp://live-mia.vaughnsoft.net/live" + }, + { + "name": "US: Seattle, WA", + "url": "rtmp://live-sea.vaughnsoft.net/live" + }, + { + "name": "CA: Toronto", + "url": "rtmp://live-tor.vaughnsoft.net/live" + }, + { + "name": "EU: Amsterdam, NL", + "url": "rtmp://live-ams.vaughnsoft.net/live" + }, + { + "name": "EU: London, UK", + "url": "rtmp://live-lhr.vaughnsoft.net/live" + }, + { + "name": "EU: Paris, FR", + "url": "rtmp://live-lhr.vaughnsoft.net/live" + }, + { + "name": "Tokyo, JP", + "url": "rtmp://live-lhr.vaughnsoft.net/live" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 15000, + "max audio bitrate": 320 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Breakers.TV", + "servers": [ + { + "name": "US: Vint Hill, VA", + "url": "rtmp://live-iad.vaughnsoft.net/live" + }, + { + "name": "US: Vint Hill, VA #2", + "url": "rtmp://live-iad2.vaughnsoft.net/live" + }, + { + "name": "US: Dallas, TX", + "url": "rtmp://live-dfw.vaughnsoft.net/live" + }, + { + "name": "US: Denver, CO", + "url": "rtmp://live-den.vaughnsoft.net/live" + }, + { + "name": "US: New York, NY", + "url": "rtmp://live-nyc.vaughnsoft.net/live" + }, + { + "name": "US: Miami, FL", + "url": "rtmp://live-mia.vaughnsoft.net/live" + }, + { + "name": "US: Seattle, WA", + "url": "rtmp://live-sea.vaughnsoft.net/live" + }, + { + "name": "CA: Toronto", + "url": "rtmp://live-tor.vaughnsoft.net/live" + }, + { + "name": "EU: Amsterdam, NL", + "url": "rtmp://live-ams.vaughnsoft.net/live" + }, + { + "name": "EU: London, UK", + "url": "rtmp://live-lhr.vaughnsoft.net/live" + }, + { + "name": "EU: Paris, FR", + "url": "rtmp://live-lhr.vaughnsoft.net/live" + }, + { + "name": "Tokyo, JP", + "url": "rtmp://live-lhr.vaughnsoft.net/live" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 15000, + "max audio bitrate": 320 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Facebook Live", + "common": true, + "stream_key_link": "https://www.facebook.com/live/producer?ref=OBS", + "servers": [ + { + "name": "Default", + "url": "rtmps://rtmp-api.facebook.com:443/rtmp/" + } + ], + "recommended": { + "keyint": 2, + "profile": "main", + "supported resolutions": [ + "1920x1080", + "1280x720", + "852x480", + "640x360" + ], + "bitrate matrix": [ + { + "res": "640x360", + "fps": 30, + "max bitrate": 1000 + }, + { + "res": "640x360", + "fps": 60, + "max bitrate": 1500 + }, + { + "res": "852x480", + "fps": 30, + "max bitrate": 2000 + }, + { + "res": "852x480", + "fps": 60, + "max bitrate": 3000 + }, + { + "res": "1280x720", + "fps": 30, + "max bitrate": 4000 + }, + { + "res": "1280x720", + "fps": 60, + "max bitrate": 6000 + }, + { + "res": "1920x1080", + "fps": 30, + "max bitrate": 6000 + }, + { + "res": "1920x1080", + "fps": 60, + "max bitrate": 9000 + } + ], + "max fps": 60, + "max video bitrate": 9000, + "max audio bitrate": 128 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Restream.io", + "alt_names": [ + "Restream.io - RTMP", + "Restream.io - FTL" + ], + "common": true, + "stream_key_link": "https://restream.io/settings/streaming-setup?from=OBS", + "servers": [ + { + "name": "Autodetect", + "url": "rtmp://live.restream.io/live" + }, + { + "name": "EU-West (London, GB)", + "url": "rtmp://london.restream.io/live" + }, + { + "name": "EU-West (Amsterdam, NL)", + "url": "rtmp://amsterdam.restream.io/live" + }, + { + "name": "EU-West (Paris, FR)", + "url": "rtmp://paris.restream.io/live" + }, + { + "name": "EU-Central (Frankfurt, DE)", + "url": "rtmp://frankfurt.restream.io/live" + }, + { + "name": "EU-South (Madrid, Spain)", + "url": "rtmp://madrid.restream.io/live" + }, + { + "name": "Turkey (Istanbul)", + "url": "rtmp://istanbul.restream.io/live" + }, + { + "name": "US-West (Seattle, WA)", + "url": "rtmp://seattle.restream.io/live" + }, + { + "name": "US-West (San Jose, CA)", + "url": "rtmp://sanjose.restream.io/live" + }, + { + "name": "US-Central (Dallas, TX)", + "url": "rtmp://dallas.restream.io/live" + }, + { + "name": "US-East (Chicago, IL)", + "url": "rtmp://chicago.restream.io/live" + }, + { + "name": "US-East (New York, NY)", + "url": "rtmp://newyork.restream.io/live" + }, + { + "name": "US-East (Washington, DC)", + "url": "rtmp://washington.restream.io/live" + }, + { + "name": "NA-East (Toronto, Canada)", + "url": "rtmp://toronto.restream.io/live" + }, + { + "name": "SA (Saint Paul, Brazil)", + "url": "rtmp://saopaulo.restream.io/live" + }, + { + "name": "India (Bangalore)", + "url": "rtmp://bangalore.restream.io/live" + }, + { + "name": "Asia (Hong Kong)", + "url": "rtmp://hongkong.restream.io/live" + }, + { + "name": "Asia (Singapore)", + "url": "rtmp://singapore.restream.io/live" + }, + { + "name": "Asia (Seoul, South Korea)", + "url": "rtmp://seoul.restream.io/live" + }, + { + "name": "Asia (Tokyo, Japan)", + "url": "rtmp://tokyo.restream.io/live" + }, + { + "name": "Australia (Sydney)", + "url": "rtmp://sydney.restream.io/live" + } + ], + "recommended": { + "keyint": 2 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Castr.io", + "servers": [ + { + "name": "US-East (Chicago, IL)", + "url": "rtmp://cg.castr.io/static" + }, + { + "name": "US-East (New York, NY)", + "url": "rtmp://ny.castr.io/static" + }, + { + "name": "US-East (Miami, FL)", + "url": "rtmp://mi.castr.io/static" + }, + { + "name": "US-West (Seattle, WA)", + "url": "rtmp://se.castr.io/static" + }, + { + "name": "US-West (Los Angeles, CA)", + "url": "rtmp://la.castr.io/static" + }, + { + "name": "US-Central (Dallas, TX)", + "url": "rtmp://da.castr.io/static" + }, + { + "name": "NA-East (Toronto, CA)", + "url": "rtmp://qc.castr.io/static" + }, + { + "name": "Mexico", + "url": "rtmp://mexico.castr.io/static" + }, + { + "name": "Sao Paulo, BR", + "url": "rtmp://br.castr.io/static" + }, + { + "name": "Colombia", + "url": "rtmp://bogota.castr.io/static" + }, + { + "name": "Santiago, Chile", + "url": "rtmp://santiago.castr.io/static" + }, + { + "name": "Istanbul, TR", + "url": "rtmp://istanbul.castr.io/static" + }, + { + "name": "Tel Aviv, IL", + "url": "rtmp://telaviv.castr.io/static" + }, + { + "name": "EU-West (London, UK)", + "url": "rtmp://uk.castr.io/static" + }, + { + "name": "EU-West (Paris, FR)", + "url": "rtmp://paris.castr.io/static" + }, + { + "name": "EU-West (Madrid, ES)", + "url": "rtmp://madrid.castr.io/static" + }, + { + "name": "EU-Central (Frankfurt, DE)", + "url": "rtmp://fr.castr.io/static" + }, + { + "name": "EU-Central (Milan, IT)", + "url": "rtmp://milan.castr.io/static" + }, + { + "name": "EU-North (Stockholm, SE)", + "url": "rtmp://stockholm.castr.io/static" + }, + { + "name": "EU-North (Copenhagen, DK)", + "url": "rtmp://copenhagen.castr.io/static" + }, + { + "name": "Russia (Moscow)", + "url": "rtmp://ru.castr.io/static" + }, + { + "name": "Asia (Singapore)", + "url": "rtmp://sg.castr.io/static" + }, + { + "name": "Asia (Hong Kong, HK)", + "url": "rtmp://hongkong.castr.io/static" + }, + { + "name": "Asia (India)", + "url": "rtmp://in.castr.io/static" + }, + { + "name": "Australia (Sydney)", + "url": "rtmp://au.castr.io/static" + }, + { + "name": "UAE (Dubai)", + "url": "rtmp://dubai.castr.io/static" + }, + { + "name": "Africa (Johannesburg, ZA)", + "url": "rtmp://southafrica.castr.io/static" + }, + { + "name": "Africa (Lagos, NG)", + "url": "rtmp://lagos.castr.io/static" + }, + { + "name": "US Central", + "url": "rtmp://us-central.castr.io/static" + }, + { + "name": "US West", + "url": "rtmp://us-west.castr.io/static" + }, + { + "name": "US East", + "url": "rtmp://us-east.castr.io/static" + }, + { + "name": "US South", + "url": "rtmp://us-south.castr.io/static" + }, + { + "name": "South America", + "url": "rtmp://south-am.castr.io/static" + }, + { + "name": "EU Central", + "url": "rtmp://eu-central.castr.io/static" + }, + { + "name": "Singapore", + "url": "rtmp://sg-central.castr.io/static" + } + ], + "recommended": { + "keyint": 2 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Boomstream", + "servers": [ + { + "name": "Default", + "url": "rtmp://live.boomstream.com/live" + } + ], + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Meridix Live Sports Platform", + "servers": [ + { + "name": "Primary", + "url": "rtmp://publish.meridix.com/live" + } + ], + "recommended": { + "max video bitrate": 3500 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "AfreecaTV", + "alt_names": [ + "아프리카TV", + "Afreeca.TV" + ], + "servers": [ + { + "name": "Asia : Korea", + "url": "rtmp://rtmpmanager-freecat.afreeca.tv/app" + }, + { + "name": "North America : US East", + "url": "rtmp://rtmp-esu.afreecatv.com/app" + }, + { + "name": "North America : US West", + "url": "rtmp://rtmp-wsu.afreecatv.com/app" + }, + { + "name": "South America : Brazil", + "url": "rtmp://rtmp-brz.afreecatv.com/app" + }, + { + "name": "Europe : UK", + "url": "rtmp://rtmp-uk.afreecatv.com/app" + }, + { + "name": "Asia : Singapore", + "url": "rtmp://rtmp-sgp.afreecatv.com/app" + } + ], + "recommended": { + "keyint": 2, + "profile": "main", + "max video bitrate": 8000, + "max audio bitrate": 192 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "CAM4", + "servers": [ + { + "name": "CAM4", + "url": "rtmp://origin.cam4.com/cam4-origin-live" + } + ], + "recommended": { + "keyint": 1, + "profile": "baseline", + "max video bitrate": 3000, + "max audio bitrate": 128 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "ePlay", + "servers": [ + { + "name": "ePlay Primary", + "url": "rtmp://live.eplay.link/origin" + } + ], + "recommended": { + "keyint": 2, + "profile": "main", + "max video bitrate": 7500, + "max audio bitrate": 192 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Picarto", + "servers": [ + { + "name": "Autoselect closest server", + "url": "rtmp://live.us.picarto.tv/golive" + }, + { + "name": "Los Angeles, USA", + "url": "rtmp://live.us-losangeles.picarto.tv/golive" + }, + { + "name": "Dallas, USA", + "url": "rtmp://live.us-dallas.picarto.tv/golive" + }, + { + "name": "Miami, USA", + "url": "rtmp://live.us-miami.picarto.tv/golive" + }, + { + "name": "New York, USA", + "url": "rtmp://live.us-newyork.picarto.tv/golive" + }, + { + "name": "Europe", + "url": "rtmp://live.eu-west1.picarto.tv/golive" + } + ], + "recommended": { + "keyint": 2, + "profile": "main", + "max video bitrate": 3500 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Livestream", + "servers": [ + { + "name": "Primary", + "url": "rtmp://rtmpin.livestreamingest.com/rtmpin" + } + ], + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Uscreen", + "servers": [ + { + "name": "Default", + "url": "rtmp://global-live.uscreen.app:5222/app" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 8000, + "max audio bitrate": 192 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Stripchat", + "servers": [ + { + "name": "Auto", + "url": "rtmp://live.doppiocdn.com/ext" + } + ], + "recommended": { + "keyint": 2, + "profile": "main", + "bframes": 0, + "max video bitrate": 6000, + "max audio bitrate": 128, + "x264opts": "tune=zerolatency" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "CamSoda", + "servers": [ + { + "name": "North America", + "url": "rtmp://obs-ingest-na.livemediahost.com/cam_obs" + }, + { + "name": "South America", + "url": "rtmp://obs-ingest-sa.livemediahost.com/cam_obs" + }, + { + "name": "Asia", + "url": "rtmp://obs-ingest-as.livemediahost.com/cam_obs" + }, + { + "name": "Europe", + "url": "rtmp://obs-ingest-eu.livemediahost.com/cam_obs" + }, + { + "name": "Oceania", + "url": "rtmp://obs-ingest-oc.livemediahost.com/cam_obs" + } + ], + "recommended": { + "supported resolutions": [ + "1920x1080", + "1280x720", + "852x480", + "480x360" + ], + "max fps": 30, + "max video bitrate": 6000, + "max audio bitrate": 160, + "x264opts": "tune=zerolatency" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Chaturbate", + "stream_key_link": "https://chaturbate.com/b/?useExternalSoftware=true", + "more_info_link": "https://support.chaturbate.com/hc/en-us/articles/360037971952-How-do-I-set-up-OBS", + "servers": [ + { + "name": "Global Main Fastest - Recommended", + "url": "rtmp://global.live.mmcdn.com/live-origin" + }, + { + "name": "Global Backup", + "url": "rtmp://global-backup.live.mmcdn.com/live-origin" + }, + { + "name": "Asia: Mumbai, India", + "url": "rtmp://bom.live.mmcdn.com/live-origin" + }, + { + "name": "Asia: Singapore", + "url": "rtmp://sin.live.mmcdn.com/live-origin" + }, + { + "name": "Asia: Taiwan", + "url": "rtmp://tsa.live.mmcdn.com/live-origin" + }, + { + "name": "Asia: Tokyo, Japan", + "url": "rtmp://nrt.live.mmcdn.com/live-origin" + }, + { + "name": "Australasia: Sydney, Australia", + "url": "rtmp://syd.live.mmcdn.com/live-origin" + }, + { + "name": "EU East: Sofia, Bulgaria", + "url": "rtmp://sof.live.mmcdn.com/live-origin" + }, + { + "name": "EU East: Warsaw, Poland", + "url": "rtmp://waw.live.mmcdn.com/live-origin" + }, + { + "name": "EU North: Helsinki, Finland", + "url": "rtmp://hel.live.mmcdn.com/live-origin" + }, + { + "name": "EU West: Amsterdam, Netherlands", + "url": "rtmp://ams.live.mmcdn.com/live-origin" + }, + { + "name": "EU West: Frankfurt, Germany", + "url": "rtmp://fra.live.mmcdn.com/live-origin" + }, + { + "name": "EU West: Madrid, Spain", + "url": "rtmp://mad.live.mmcdn.com/live-origin" + }, + { + "name": "EU West: Milan, Italy", + "url": "rtmp://mxp.live.mmcdn.com/live-origin" + }, + { + "name": "EU West: Rotterdam, Netherlands", + "url": "rtmp://rtm.live.mmcdn.com/live-origin" + }, + { + "name": "South America: Bogota, Colombia", + "url": "rtmp://bog.live.mmcdn.com/live-origin" + }, + { + "name": "South America: Sao Paulo, Brazil", + "url": "rtmp://gru.live.mmcdn.com/live-origin" + }, + { + "name": "US Central: Austin, TX", + "url": "rtmp://aus.live.mmcdn.com/live-origin" + }, + { + "name": "US Central: Chicago, IL", + "url": "rtmp://chi.live.mmcdn.com/live-origin" + }, + { + "name": "US East: Ashburn, VA", + "url": "rtmp://ash.live.mmcdn.com/live-origin" + }, + { + "name": "US East: Atlanta, GA", + "url": "rtmp://atl.live.mmcdn.com/live-origin" + }, + { + "name": "US East: Miami, FL", + "url": "rtmp://mia.live.mmcdn.com/live-origin" + }, + { + "name": "US West: Los Angeles, CA", + "url": "rtmp://lax.live.mmcdn.com/live-origin" + }, + { + "name": "US West: Phoenix, AZ", + "url": "rtmp://phx.live.mmcdn.com/live-origin" + }, + { + "name": "US West: Salt Lake City, UT", + "url": "rtmp://slc.live.mmcdn.com/live-origin" + }, + { + "name": "US West: Seattle, WA", + "url": "rtmp://sea.live.mmcdn.com/live-origin" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 50000, + "max audio bitrate": 192, + "supported resolutions": [ + "3840x2160", + "2560x1440", + "1920x1080", + "1280x720", + "960x540", + "852x480", + "640x360" + ], + "max fps": 60 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "WpStream", + "more_info_link": "https://wpstream.net/obs-more-info", + "stream_key_link": "https://wpstream.net/obs-get-stream-key", + "servers": [ + { + "name": "Closest server - Automatic", + "url": "rtmp://ingest.wpstream.net/golive" + }, + { + "name": "North America", + "url": "rtmp://ingest-na.wpstream.net/golive" + }, + { + "name": "Europe", + "url": "rtmp://ingest-eu.wpstream.net/golive" + }, + { + "name": "Asia", + "url": "rtmp://ingest-as.wpstream.net/golive" + }, + { + "name": "South America", + "url": "rtmp://ingest-sa.wpstream.net/golive" + }, + { + "name": "Australia & Oceania", + "url": "rtmp://ingest-au.wpstream.net/golive" + } + ], + "recommended": { + "keyint": 2, + "max audio bitrate": 160 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Twitter", + "common": true, + "stream_key_link": "https://studio.twitter.com/producer/sources", + "alt_names": [ + "Twitter / Periscope" + ], + "servers": [ + { + "name": "US West: California", + "url": "rtmp://ca.pscp.tv:80/x" + }, + { + "name": "US West: Oregon", + "url": "rtmp://or.pscp.tv:80/x" + }, + { + "name": "US East: Virginia", + "url": "rtmp://va.pscp.tv:80/x" + }, + { + "name": "South America: Brazil", + "url": "rtmp://br.pscp.tv:80/x" + }, + { + "name": "EU West: France", + "url": "rtmp://fr.pscp.tv:80/x" + }, + { + "name": "EU West: Ireland", + "url": "rtmp://ie.pscp.tv:80/x" + }, + { + "name": "EU Central: Germany", + "url": "rtmp://de.pscp.tv:80/x" + }, + { + "name": "Asia/Pacific: Australia", + "url": "rtmp://au.pscp.tv:80/x" + }, + { + "name": "Asia/Pacific: India", + "url": "rtmp://in.pscp.tv:80/x" + }, + { + "name": "Asia/Pacific: Japan", + "url": "rtmp://jp.pscp.tv:80/x" + }, + { + "name": "Asia/Pacific: Korea", + "url": "rtmp://kr.pscp.tv:80/x" + }, + { + "name": "Asia/Pacific: Singapore", + "url": "rtmp://sg.pscp.tv:80/x" + } + ], + "recommended": { + "keyint": 3, + "max video bitrate": 12000, + "max audio bitrate": 128, + "max fps": 60 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Switchboard Live", + "alt_names": [ + "Switchboard Live (Joicaster)" + ], + "servers": [ + { + "name": "Default", + "url": "rtmps://live.sb.zone:443/live" + } + ], + "recommended": { + "keyint": 2, + "profile": "high" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Eventials", + "servers": [ + { + "name": "Default", + "url": "rtmp://transmission.eventials.com/eventialsLiveOrigin" + } + ], + "recommended": { + "keyint": 1, + "profile": "baseline", + "max video bitrate": 900, + "max audio bitrate": 96 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "EventLive.pro", + "servers": [ + { + "name": "Default", + "url": "rtmp://go.eventlive.pro/live" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 3000, + "max audio bitrate": 192, + "supported resolutions": [ + "1920x1080", + "1280x720" + ], + "max fps": 30 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Lahzenegar - StreamG | لحظه‌نگار - استریمجی", + "servers": [ + { + "name": "Primary", + "url": "rtmp://rtmp.lahzecdn.com/pro" + }, + { + "name": "Iran", + "url": "rtmp://rtmp-iran.lahzecdn.com/pro" + } + ], + "recommended": { + "keyint": 2, + "profile": "main", + "max video bitrate": 4000, + "max audio bitrate": 192 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "MyLive", + "servers": [ + { + "name": "Default", + "url": "rtmp://stream.mylive.in.th/live" + } + ], + "recommended": { + "keyint": 2, + "profile": "main", + "max video bitrate": 7000, + "max audio bitrate": 192 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Trovo", + "alt_names": [ + "Madcat" + ], + "stream_key_link": "https://studio.trovo.live/mychannel/stream", + "servers": [ + { + "name": "Default", + "url": "rtmp://livepush.trovo.live/live/" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 9000, + "max audio bitrate": 160, + "x264opts": "scenecut=0" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Mixcloud", + "servers": [ + { + "name": "Default", + "url": "rtmp://rtmp.mixcloud.com/broadcast" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 6000, + "max audio bitrate": 320, + "supported resolutions": [ + "1280x720", + "852x480", + "480x360" + ], + "max fps": 30, + "x264opts": "scenecut=0" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "SermonAudio Cloud", + "alt_names": [ + "SermonAudio.com" + ], + "servers": [ + { + "name": "Primary", + "url": "rtmp://webcast.sermonaudio.com/sa" + } + ], + "recommended": { + "max video bitrate": 2000, + "max audio bitrate": 128 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Vimeo", + "servers": [ + { + "name": "Default", + "url": "rtmp://rtmp.cloud.vimeo.com/live" + } + ], + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Aparat", + "servers": [ + { + "name": "Default", + "url": "rtmp://rtmp.cdn.asset.aparat.com:443/event" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 6000, + "max audio bitrate": 320, + "x264opts": "scenecut=0" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "KakaoTV", + "servers": [ + { + "name": "Default", + "url": "rtmp://rtmp.play.kakao.com/kakaotv" + } + ], + "recommended": { + "max video bitrate": 8000, + "max audio bitrate": 192 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Piczel.tv", + "servers": [ + { + "name": "Default", + "url": "rtmp://piczel.tv:1935/live" + } + ], + "recommended": { + "keyint": 4, + "max video bitrate": 2500, + "max audio bitrate": 256, + "x264opts": "tune=zerolatency" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "STAGE TEN", + "servers": [ + { + "name": "STAGE TEN", + "url": "rtmps://app-rtmp.stageten.tv:443/stageten" + } + ], + "recommended": { + "keyint": 2, + "profile": "baseline", + "max video bitrate": 4000, + "max audio bitrate": 128 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "DLive", + "servers": [ + { + "name": "Default", + "url": "rtmp://stream.dlive.tv/live" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 6000, + "max audio bitrate": 160 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Lightcast.com", + "servers": [ + { + "name": "North America 1", + "url": "rtmp://ingest-na1.live.lightcast.com/in" + }, + { + "name": "North America 2", + "url": "rtmp://ingest-na2.live.lightcast.com/in" + }, + { + "name": "Europe", + "url": "rtmp://ingest-eu1.live.lightcast.com/in" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 6000, + "max audio bitrate": 320, + "x264opts": "scenecut=0" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Bongacams", + "servers": [ + { + "name": "Automatic / Default", + "url": "rtmp://auto.origin.gnsbc.com:1934/live" + }, + { + "name": "Automatic / Backup", + "url": "rtmp://origin.bcvidorigin.com:1934/live" + }, + { + "name": "Europe", + "url": "rtmp://z-eu.origin.gnsbc.com:1934/live" + }, + { + "name": "North America", + "url": "rtmp://z-us.origin.gnsbc.com:1934/live" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 6000, + "max audio bitrate": 192, + "bframes": 0, + "x264opts": "tune=zerolatency" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "OnlyFans.com", + "stream_key_link": "https://onlyfans.com/my/settings/other", + "servers": [ + { + "name": "CloudBeta", + "url": "rtmp://cloudbetastreaming.onlyfans.com/live" + } + ], + "recommended": { + "keyint": 2, + "profile": "main", + "max video bitrate": 2500, + "max audio bitrate": 192, + "bframes": 0, + "x264opts": "tune=zerolatency" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Steam", + "common": false, + "servers": [ + { + "name": "Default", + "url": "rtmp://ingest-rtmp.broadcast.steamcontent.com/app" + } + ], + "recommended": { + "keyint": 2, + "profile": "high", + "max video bitrate": 7000, + "max audio bitrate": 128 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Konduit.live", + "servers": [ + { + "name": "Default", + "url": "rtmp://rtmp.konduit.live/live" + } + ], + "recommended": { + "keyint": 2, + "x264opts": "scenecut=0" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "LOCO", + "servers": [ + { + "name": "Default", + "url": "rtmp://ivory-ingest.getloconow.com:1935/stream" + } + ], + "recommended": { + "keyint": 2 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "niconico, premium member (ニコニコ生放送 プレミアム会員)", + "servers": [ + { + "name": "Default", + "url": "rtmp://aliveorigin.dmc.nico/named_input" + } + ], + "recommended": { + "keyint": 2, + "profile": "high", + "max audio bitrate": 192, + "max video bitrate": 5808, + "x264opts": "tune=zerolatency" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "niconico, free member (ニコニコ生放送 一般会員)", + "servers": [ + { + "name": "Default", + "url": "rtmp://aliveorigin.dmc.nico/named_input" + } + ], + "recommended": { + "keyint": 2, + "profile": "high", + "max audio bitrate": 96, + "max video bitrate": 904, + "x264opts": "tune=zerolatency" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Nimo TV", + "servers": [ + { + "name": "Global:2", + "url": "rtmp://txpush.rtmp.nimo.tv/live/" + }, + { + "name": "Global:3", + "url": "rtmp://alpush.rtmp.nimo.tv/live/" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 6000, + "max audio bitrate": 160 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "XLoveCam.com", + "servers": [ + { + "name": "Europe(main)", + "url": "rtmp://nl.eu.stream.xlove.com/performer-origin" + }, + { + "name": "Europe(Romania)", + "url": "rtmp://ro.eu.stream.xlove.com/performer-origin" + }, + { + "name": "Europe(Russia)", + "url": "rtmp://ru.eu.stream.xlove.com/performer-origin" + }, + { + "name": "North America(US East)", + "url": "rtmp://usec.na.stream.xlove.com/performer-origin" + }, + { + "name": "North America(US West)", + "url": "rtmp://uswc.na.stream.xlove.com/performer-origin" + }, + { + "name": "North America(Canada)", + "url": "rtmp://ca.na.stream.xlove.com/performer-origin" + }, + { + "name": "South America", + "url": "rtmp://co.sa.stream.xlove.com/performer-origin" + }, + { + "name": "Asia", + "url": "rtmp://sg.as.stream.xlove.com/performer-origin" + } + ], + "recommended": { + "x264opts": "scenecut=0" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "AngelThump", + "servers": [ + { + "name": "Auto", + "url": "rtmp://ingest.angelthump.com/live" + }, + { + "name": "New York 3", + "url": "rtmp://nyc-ingest.angelthump.com:1935/live" + }, + { + "name": "San Francisco 2", + "url": "rtmp://sfo-ingest.angelthump.com:1935/live" + }, + { + "name": "Singapore 1", + "url": "rtmp://sgp-ingest.angelthump.com:1935/live" + }, + { + "name": "London 1", + "url": "rtmp://lon-ingest.angelthump.com:1935/live" + }, + { + "name": "Frankfurt 1", + "url": "rtmp://fra-ingest.angelthump.com:1935/live" + }, + { + "name": "Toronto 1", + "url": "rtmp://tor-ingest.angelthump.com:1935/live" + }, + { + "name": "Amsterdam 3", + "url": "rtmp://ams-ingest.angelthump.com:1935/live" + } + ], + "recommended": { + "keyint": 2, + "profile": "high", + "max video bitrate": 3500, + "max audio bitrate": 160 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "api.video", + "servers": [ + { + "name": "Default", + "url": "rtmp://broadcast.api.video/s" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 20000, + "max audio bitrate": 192 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "SHOWROOM", + "protocol": "RTMP", + "servers": [ + { + "name": "Default", + "url": "https://www.showroom-live.com/api/obs/streaming_info?obs_key=" + } + ], + "recommended": { + "keyint": 2, + "profile": "main", + "max video bitrate": 1500, + "max audio bitrate": 160, + "x264opts": "tune=zerolatency" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Mux", + "servers": [ + { + "name": "Global (RTMPS)", + "url": "rtmps://global-live.mux.com:443/app" + }, + { + "name": "Global (RTMP)", + "url": "rtmp://global-live.mux.com:5222/app" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 5000, + "max audio bitrate": 160 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Viloud", + "servers": [ + { + "name": "Default", + "url": "rtmp://live.viloud.tv:5222/app" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 5000, + "max audio bitrate": 160 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "MyFreeCams", + "servers": [ + { + "name": "Automatic", + "url": "rtmp://publish.myfreecams.com/NxServer" + }, + { + "name": "Australia", + "url": "rtmp://publish-syd.myfreecams.com/NxServer" + }, + { + "name": "East Asia", + "url": "rtmp://publish-tyo.myfreecams.com/NxServer" + }, + { + "name": "Europe (East)", + "url": "rtmp://publish-buh.myfreecams.com/NxServer" + }, + { + "name": "Europe (West)", + "url": "rtmp://publish-ams.myfreecams.com/NxServer" + }, + { + "name": "North America (East Coast)", + "url": "rtmp://publish-ord.myfreecams.com/NxServer" + }, + { + "name": "North America (West Coast)", + "url": "rtmp://publish-tuk.myfreecams.com/NxServer" + }, + { + "name": "South America", + "url": "rtmp://publish-sao.myfreecams.com/NxServer" + } + ], + "recommended": { + "keyint": 1, + "profile": "high", + "max fps": 60, + "max video bitrate": 10000, + "max audio bitrate": 192, + "x264opts": "tune=zerolatency scenecut=0" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "PolyStreamer.com", + "servers": [ + { + "name": "Auto-select closest server", + "url": "rtmp://live.polystreamer.com/live" + }, + { + "name": "United States - West", + "url": "rtmp://us-west.live.polystreamer.com/live" + }, + { + "name": "United States - East", + "url": "rtmp://us-east.live.polystreamer.com/live" + }, + { + "name": "Australia", + "url": "rtmp://aus.live.polystreamer.com/live" + }, + { + "name": "India", + "url": "rtmp://ind.live.polystreamer.com/live" + }, + { + "name": "Germany", + "url": "rtmp://deu.live.polystreamer.com/live" + }, + { + "name": "Japan", + "url": "rtmp://jpn.live.polystreamer.com/live" + }, + { + "name": "Singapore", + "url": "rtmp://sgp.live.polystreamer.com/live" + } + ], + "recommended": { + "keyint": 2 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "OPENREC.tv - Premium member (プレミアム会員)", + "stream_key_link": "https://www.openrec.tv/login?keep_login=true&url=https://www.openrec.tv/dashboard/live?from=obs", + "servers": [ + { + "name": "Default", + "url": "rtmp://a.station.openrec.tv:1935/live1" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 5000, + "max audio bitrate": 160 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "nanoStream Cloud / bintu", + "more_info_link": "https://www.nanocosmos.de/obs", + "stream_key_link": "https://bintu-cloud-frontend.nanocosmos.de/organisation", + "servers": [ + { + "name": "bintu-stream global ingest (rtmp)", + "url": "rtmp://bintu-stream.nanocosmos.de/live" + }, + { + "name": "bintu-stream global ingest (rtmps)", + "url": "rtmps://bintu-stream.nanocosmos.de:1937/live" + }, + { + "name": "bintu-vtrans global ingest with transcoding/ABR (rtmp)", + "url": "rtmp://bintu-vtrans.nanocosmos.de/live" + }, + { + "name": "bintu-vtrans global ingest with transcoding/ABR (rtmps)", + "url": "rtmps://bintu-vtrans.nanocosmos.de:1937/live" + }, + { + "name": "bintu-stream Europe (EU)", + "url": "rtmp://bintu-stream-eu.nanocosmos.de/live" + }, + { + "name": "bintu-stream USA West (USW)", + "url": "rtmp://bintu-stream-usw.nanocosmos.de/live" + }, + { + "name": "bintu-stream US East (USE)", + "url": "rtmp://bintu-stream-use.nanocosmos.de/live" + }, + { + "name": "bintu-stream Asia South (ASS)", + "url": "rtmp://bintu-stream-ass.nanocosmos.de/live" + }, + { + "name": "bintu-stream Australia (AU)", + "url": "rtmp://bintu-stream-au.nanocosmos.de/live" + }, + { + "name": "bintu-vtrans Europe (EU)", + "url": "rtmp://bintu-vtrans-eu.nanocosmos.de/live" + }, + { + "name": "bintu-vtrans USA West (USW)", + "url": "rtmp://bintu-vtrans-usw.nanocosmos.de/live" + }, + { + "name": "bintu-vtrans US East (USE)", + "url": "rtmp://bintu-vtrans-use.nanocosmos.de/live" + }, + { + "name": "bintu-vtrans Asia South (ASS)", + "url": "rtmp://bintu-vtrans-ass.nanocosmos.de/live" + }, + { + "name": "bintu-vtrans Australia (AU)", + "url": "rtmp://bintu-vtrans-au.nanocosmos.de/live" + } + ], + "recommended": { + "keyint": 2, + "profile": "baseline", + "bframes": 0, + "max video bitrate": 5000, + "max audio bitrate": 192, + "x264opts": "tune=zerolatency b-pyramid=0 scenecut=0" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Dacast", + "protocol": "RTMP", + "servers": [ + { + "name": "Default", + "url": "https://developer.dacast.com/v3/encoder-setup/" + } + ], + "recommended": { + "keyint": 1, + "profile": "high", + "max video bitrate": 7000, + "max audio bitrate": 128 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Bilibili Live - RTMP | 哔哩哔哩直播 - RTMP", + "more_info_link": "https://link.bilibili.com/p/help/index?id=4#/tools-tutorial", + "stream_key_link": "https://link.bilibili.com/p/center/index#/my-room/start-live", + "alt_names": [ + "Bilibili Live" + ], + "servers": [ + { + "name": "Global - Primary | 全球 - 主要", + "url": "rtmp://live-push.bilivideo.com/live-bvc/" + }, + { + "name": "Non Chinese Mainland - Primary | 非中国大陆地区 - 主要", + "url": "rtmp://bdy.live-push.bilivideo.com/live-bvc/" + }, + { + "name": "Chinese Mainland - Backup | 中国大陆地区 - 备用", + "url": "rtmp://txy2.live-push.bilivideo.com/live-bvc/" + }, + { + "name": "Non Chinese Mainland - Backup | 非中国大陆地区 - 备用", + "url": "rtmp://txy.live-push.bilivideo.com/live-bvc/" + } + ], + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Volume.com", + "stream_key_link": "https://volume.com/b?show_key=1&webrtc=0", + "servers": [ + { + "name": "Default - Recommended", + "url": "rtmp://live.volume.com/live-origin" + }, + { + "name": "US - West", + "url": "rtmp://live-pdx.volume.com/live-origin" + }, + { + "name": "US - East", + "url": "rtmp://live-ash.volume.com/live-origin" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 20000, + "max fps": 60 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "BoxCast", + "stream_key_link": "https://dashboard.boxcast.com/#/sources", + "servers": [ + { + "name": "BoxCast", + "url": "rtmp://rtmp.boxcast.com/live" + } + ], + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Disciple Media", + "servers": [ + { + "name": "Default", + "url": "rtmp://rtmp.disciplemedia.com/b-fme" + } + ], + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Jio Games", + "servers": [ + { + "name": "Primary", + "url": "rtmp://livepub1.api.engageapps.jio/live" + }, + { + "name": "Secondary", + "url": "rtmp://livepub2.api.engageapps.jio/live" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 32000, + "max audio bitrate": 256 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Kuaishou Live", + "stream_key_link": "https://studio.kuaishou.com/live/list", + "servers": [ + { + "name": "Default", + "url": "rtmp://open-push.voip.yximgs.com/gifshow/" + }, + { + "name": "North America", + "url": "rtmp://tx.push.yximgs.com/live/" + } + ], + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Playeur", + "alt_names": [ + "Utreon" + ], + "servers": [ + { + "name": "Default", + "url": "rtmp://live.playeur.com:5222/app" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 5000, + "max audio bitrate": 160 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "PhoneLiveStreaming", + "stream_key_link": "https://app.phonelivestreaming.com/media/rtmp", + "servers": [ + { + "name": "PhoneLiveStreaming", + "url": "rtmp://live.phonelivestreaming.com/live/" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 128, + "max audio bitrate": 160 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Sympla", + "servers": [ + { + "name": "Sympla RTMP", + "url": "rtmp://rtmp.sympla.com.br:5222/app" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 5000, + "max audio bitrate": 160 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Livepush", + "more_info_link": "https://docs.livepush.io/en/articles/5065323-how-to-stream-live-from-obs-to-livepush", + "servers": [ + { + "name": "Livepush Global (Default)", + "url": "rtmp://dc-global.livepush.io/live" + }, + { + "name": "Chicago, US", + "url": "rtmp://us-central-ch.livepush.io/live" + }, + { + "name": "New York, US", + "url": "rtmp://us-east-ny.livepush.io/live" + }, + { + "name": "Los Angeles, US", + "url": "rtmp://us-west-la.livepush.io/live" + }, + { + "name": "Miami, US", + "url": "rtmp://us-south-mia.livepush.io/live" + }, + { + "name": "Dallas, US", + "url": "rtmp://us-central-dal.livepush.io/live" + }, + { + "name": "Montreal, CA", + "url": "rtmp://ca-central-mon.livepush.io/live" + }, + { + "name": "Toronto, CA", + "url": "rtmp://ca-south-tor.livepush.io/live" + }, + { + "name": "Sydney, AU", + "url": "rtmp://au-east-syd.livepush.io/live" + }, + { + "name": "London, UK", + "url": "rtmp://uk-central-ldn.livepush.io/live" + }, + { + "name": "Milan, Italy", + "url": "rtmp://it-north-mln.livepush.io/live" + }, + { + "name": "Paris, FR", + "url": "rtmp://fr-central-par.livepush.io/live" + }, + { + "name": "Singapore", + "url": "rtmp://as-southeast-sg.livepush.io/live" + }, + { + "name": "Bangalore, IN", + "url": "rtmp://in-south-blr.livepush.io/live" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 16000 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Vindral", + "more_info_link": "https://docs.vindral.com/docs/vindral-cdn/", + "stream_key_link": "https://portal.cdn.vindral.com/channels", + "servers": [ + { + "name": "Global", + "url": "rtmps://rtmp.global.cdn.vindral.com/publish" + } + ], + "recommended": { + "keyint": 1, + "profile": "high", + "bframes": 0, + "max video bitrate": 20000, + "max audio bitrate": 192 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Whowatch (ふわっち)", + "more_info_link": "https://whowatch.tv/help/encoder", + "stream_key_link": "https://whowatch.tv/publish", + "servers": [ + { + "name": "default", + "url": "rtmp://live.whowatch.tv/live/" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 1800, + "max audio bitrate": 192 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "IRLToolkit", + "stream_key_link": "https://irl.run/settings/ingest/", + "servers": [ + { + "name": "Global (Recommended)", + "url": "rtmps://stream.global.irl.run/ingest" + }, + { + "name": "Los Angeles, US", + "url": "rtmps://stream.lax.irl.run/ingest" + }, + { + "name": "Dallas, US", + "url": "rtmps://stream.dal.irl.run/ingest" + }, + { + "name": "New York, US", + "url": "rtmps://stream.ewr.irl.run/ingest" + }, + { + "name": "Miami, US", + "url": "rtmps://stream.mia.irl.run/ingest" + }, + { + "name": "Amsterdam, NL", + "url": "rtmps://stream.ams.irl.run/ingest" + }, + { + "name": "Frankfurt, DE", + "url": "rtmps://stream.fra.irl.run/ingest" + }, + { + "name": "Singapore", + "url": "rtmps://stream.sin.irl.run/ingest" + }, + { + "name": "Tokyo, JP", + "url": "rtmps://stream.tyo.irl.run/ingest" + }, + { + "name": "Sydney, AU", + "url": "rtmps://stream.syd.irl.run/ingest" + } + ], + "recommended": { + "keyint": 2, + "bframes": 2, + "max video bitrate": 20000, + "max audio bitrate": 256 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Bitmovin", + "more_info_link": "https://developer.bitmovin.com/docs/overview", + "stream_key_link": "https://bitmovin.com/dashboard/streams?streamsTab=LIVE", + "servers": [ + { + "name": "Streams Live", + "url": "rtmp://live-input.bitmovin.com/streams" + } + ], + "recommended": { + "keyint": 2 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Live Streamer Cafe", + "more_info_link": "https://livestreamercafe.com/help.php", + "stream_key_link": "https://livestreamercafe.com/profile.php", + "servers": [ + { + "name": "Live Streamer Cafe Server", + "url": "rtmp://tophicles.com/live" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 6000 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Enchant.events", + "more_info_link": "https://docs.enchant.events/knowledge-base-y4pOb", + "servers": [ + { + "name": "Primary RTMPS", + "url": "rtmps://stream.enchant.cloud:443/live" + } + ], + "recommended": { + "keyint": 2, + "profile": "high", + "max video bitrate": 9000, + "max audio bitrate": 192 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Joystick.TV", + "more_info_link": "https://support.joystick.tv/live_streaming/", + "stream_key_link": "https://joystick.tv/stream-settings", + "servers": [ + { + "name": "North America", + "url": "rtmp://live.joystick.tv/live/" + }, + { + "name": "Europe", + "url": "rtmp://eu.live.joystick.tv/live/" + } + ], + "recommended": { + "keyint": 2, + "max video bitrate": 7500, + "max audio bitrate": 192, + "max fps": 60, + "profile": "main", + "bframes": 0, + "x264opts": "tune=zerolatency scenecut=0" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Livepeer Studio", + "more_info_link": "https://docs.livepeer.org/guides/developing/stream-via-obs", + "stream_key_link": "https://livepeer.studio/dashboard/streams", + "servers": [ + { + "name": "Global (RTMP)", + "url": "rtmp://rtmp.livepeer.com/live" + }, + { + "name": "Global (RTMP Primary)", + "url": "rtmp://rtmp-a.livepeer.com/live" + }, + { + "name": "Global (RTMP Backup)", + "url": "rtmp://rtmp-b.livepeer.com/live" + } + ], + "recommended": { + "keyint": 1, + "profile": "high", + "bframes": 0, + "max video bitrate": 20000, + "max audio bitrate": 512 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "MasterStream.iR | مستراستریم | ری استریم و استریم همزمان", + "common": false, + "more_info_link": "https://masterstream.ir/webpage/page/docs", + "stream_key_link": "https://masterstream.ir/managestreams.php", + "servers": [ + { + "name": "Iran Server 1 - Bandwidth Required", + "url": "rtmp://live-vip1.masterstream.ir/live" + }, + { + "name": "Iran Server 2 - Bandwidth Required", + "url": "rtmp://live-vip2.masterstream.ir/live" + }, + { + "name": "Turkey Server 1", + "url": "rtmp://tr-live1.masterstream.ir/live" + }, + { + "name": "Russia Server 1", + "url": "rtmp://ru-live1.masterstream.ir/live" + } + ], + "protocol": "RTMP", + "supported video codecs": [ + "h264" + ], + "recommended": { + "keyint": 2, + "supported resolutions": [ + "1920x1080", + "1280x720", + "852x480", + "640x360" + ], + "max video bitrate": 6000, + "max audio bitrate": 320, + "x264opts": "scenecut=0" + } + }, + { + "name": "PandaTV | 팬더티비", + "common": false, + "servers": [ + { + "name": "Default", + "url": "rtmp://rtmp.pandalive.co.kr/app" + } + ], + "recommended": { + "keyint": 2, + "supported resolutions": [ + "1920x1080", + "1280x720", + "852x480", + "640x360" + ], + "max video bitrate": 7500, + "max audio bitrate": 320, + "x264opts": "scenecut=0" + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "Vault - by CommanderRoot", + "common": false, + "more_info_link": "https://vault.root-space.eu/", + "stream_key_link": "https://vault.root-space.eu/recordings", + "servers": [ + { + "name": "EU - Central", + "url": "rtmp://ingest-eu-central.vault.root-space.eu/app" + }, + { + "name": "US - West", + "url": "rtmp://ingest-us-west.vault.root-space.eu/app" + } + ], + "protocol": "RTMP", + "supported video codecs": [ + "h264" + ], + "supported audio codecs": [ + "aac" + ], + "recommended": { + "keyint": 2, + "max video bitrate": 7800, + "max audio bitrate": 320, + "x264opts": "scenecut=0" + } + }, + { + "name": "CHZZK", + "common": false, + "stream_key_link": "https://studio.chzzk.naver.com/setting", + "servers": [ + { + "name": "Default", + "url": "rtmp://global-rtmp.lip2.navercorp.com:8080/relay" + } + ], + "supported video codecs": [ + "h264" + ], + "recommended": { + "keyint": 1, + "bframes": 0, + "max fps": 60, + "max video bitrate": 8000, + "max audio bitrate": 192, + "x264opts": "tune=zerolatency scenecut=0", + "supported resolutions": [ + "1920x1080" + ] + } + }, + { + "name": "Streamway", + "common": false, + "more_info_link": "https://support.streamway.in/how-to-connect-obs-studio-to-streamway/", + "stream_key_link": "https://app.streamway.in/broadcasts", + "servers": [ + { + "name": "Primary", + "url": "rtmp://injest.streamway.in/LiveApp" + }, + { + "name": "Backup", + "url": "rtmps://bkp.streamway.in:443/live" + } + ], + "protocol": "RTMP", + "supported video codecs": [ + "h264" + ], + "recommended": { + "keyint": 2 + } + }, + { + "name": "SharePlay.tv", + "common": false, + "stream_key_link": "https://playstudio.shareplay.tv/stream/settings", + "servers": [ + { + "name": "Default (Auto Detect)", + "url": "rtmp://stream.shareplay.tv" + }, + { + "name": "Miami, Florida, USA", + "url": "rtmp://live-us-mia-stream.shareplay.tv" + }, + { + "name": "Chicago, Illinois, USA", + "url": "rtmp://live-us-ord-stream.shareplay.tv" + }, + { + "name": "Washington D.C., USA", + "url": "rtmp://live-us-iad-stream.shareplay.tv" + }, + { + "name": "Los Angeles, California, USA", + "url": "rtmp://live-us-lax-stream.shareplay.tv" + }, + { + "name": "Milan, Italy", + "url": "rtmp://live-it-mil-stream.shareplay.tv" + }, + { + "name": "Toronto, Canada", + "url": "rtmp://live-ca-yyz-stream.shareplay.tv" + }, + { + "name": "London, UK", + "url": "rtmp://live-uk-lhr-stream.shareplay.tv" + }, + { + "name": "Atlanta, Georgia, USA", + "url": "rtmp://live-us-atl-stream.shareplay.tv" + }, + { + "name": "Dallas, Texas, USA", + "url": "rtmp://live-us-dfw-stream.shareplay.tv" + } + ], + "supported video codecs": [ + "h264" + ], + "recommended": { + "keyint": 2, + "max video bitrate": 12000, + "max audio bitrate": 320 + } + }, + { + "name": "sheeta", + "common": false, + "more_info_link": "https://partner-support.sheeta.com/hc/ja/articles/4404573942425-%E7%94%9F%E6%94%BE%E9%80%81%E3%81%AE%E9%85%8D%E4%BF%A1%E6%96%B9%E6%B3%95", + "servers": [ + { + "name": "Default", + "url": "rtmp://lsm.sheeta.com:1935/lsm" + } + ], + "protocol": "RTMP", + "supported video codecs": [ + "h264" + ], + "supported audio codecs": [ + "aac" + ], + "recommended": { + "keyint": 1, + "profile": "main", + "supported resolutions": [ + "1920x1080", + "1280x720", + "854x480", + "640x480" + ], + "bitrate matrix": [ + { + "res": "1920x1080", + "fps": 30, + "max bitrate": 6000 + }, + { + "res": "1280x720", + "fps": 30, + "max bitrate": 4700 + }, + { + "res": "854x480", + "fps": 30, + "max bitrate": 3400 + }, + { + "res": "640x480", + "fps": 30, + "max bitrate": 3400 + }, + { + "res": "1920x1080", + "fps": 60, + "max bitrate": 9000 + }, + { + "res": "1280x720", + "fps": 60, + "max bitrate": 7000 + }, + { + "res": "854x480", + "fps": 60, + "max bitrate": 5000 + }, + { + "res": "640x480", + "fps": 60, + "max bitrate": 5000 + } + ], + "max fps": 60, + "max video bitrate": 9000, + "max audio bitrate": 512, + "x264opts": "scenecut=0", + "output": "rtmp_output" + } + }, + { + "name": "Amazon IVS", + "supported video codecs": [ + "h264" + ], + "servers": [ + { + "name": "Asia: China, Hong Kong (6) (RTMPS)", + "url": "rtmps://hkg06.contribute.live-video.net/app" + }, + { + "name": "Asia: India, Bangalore (1) (RTMPS)", + "url": "rtmps://blr01.contribute.live-video.net/app" + }, + { + "name": "Asia: India, Chennai (RTMPS)", + "url": "rtmps://maa01.contribute.live-video.net/app" + }, + { + "name": "Asia: India, Hyderabad (1) (RTMPS)", + "url": "rtmps://hyd01.contribute.live-video.net/app" + }, + { + "name": "Asia: India, Mumbai (RTMPS)", + "url": "rtmps://bom01.contribute.live-video.net/app" + }, + { + "name": "Asia: India, New Delhi (RTMPS)", + "url": "rtmps://del01.contribute.live-video.net/app" + }, + { + "name": "Asia: Indonesia, Cikarang Barat (1) (RTMPS)", + "url": "rtmps://jkt01.contribute.live-video.net/app" + }, + { + "name": "Asia: Indonesia, Jakarta (2) (RTMPS)", + "url": "rtmps://jkt02.contribute.live-video.net/app" + }, + { + "name": "Asia: Japan, Osaka (1) (RTMPS)", + "url": "rtmps://osa01.contribute.live-video.net/app" + }, + { + "name": "Asia: Japan, Tokyo (3) (RTMPS)", + "url": "rtmps://tyo03.contribute.live-video.net/app" + }, + { + "name": "Asia: Japan, Tokyo (5) (RTMPS)", + "url": "rtmps://tyo05.contribute.live-video.net/app" + }, + { + "name": "Asia: Manila, Philippines (1) (RTMPS)", + "url": "rtmps://mnl01.contribute.live-video.net/app" + }, + { + "name": "Asia: Singapore (1) (RTMPS)", + "url": "rtmps://sin01.contribute.live-video.net/app" + }, + { + "name": "Asia: Singapore (4) (RTMPS)", + "url": "rtmps://sin04.contribute.live-video.net/app" + }, + { + "name": "Asia: South Korea, Seoul (3) (RTMPS)", + "url": "rtmps://sel03.contribute.live-video.net/app" + }, + { + "name": "Asia: South Korea, Seoul (4) (RTMPS)", + "url": "rtmps://sel04.contribute.live-video.net/app" + }, + { + "name": "Asia: Taiwan, Taipei (1) (RTMPS)", + "url": "rtmps://tpe01.contribute.live-video.net/app" + }, + { + "name": "Asia: Taiwan, Taipei (3) (RTMPS)", + "url": "rtmps://tpe03.contribute.live-video.net/app" + }, + { + "name": "Asia: Thailand, Bangkok (2) (RTMPS)", + "url": "rtmps://bkk02.contribute.live-video.net/app" + }, + { + "name": "Europe: Austria, Vienna (2) (RTMPS)", + "url": "rtmps://vie02.contribute.live-video.net/app" + }, + { + "name": "Europe: Czech Republic, Prague (RTMPS)", + "url": "rtmps://prg03.contribute.live-video.net/app" + }, + { + "name": "Europe: Denmark, Copenhagen (RTMPS)", + "url": "rtmps://cph.contribute.live-video.net/app" + }, + { + "name": "Europe: Finland, Helsinki (3) (RTMPS)", + "url": "rtmps://hel03.contribute.live-video.net/app" + }, + { + "name": "Europe: France, Marseille (RTMPS)", + "url": "rtmps://mrs.contribute.live-video.net/app" + }, + { + "name": "Europe: France, Marseille (2) (RTMPS)", + "url": "rtmps://mrs02.contribute.live-video.net/app" + }, + { + "name": "Europe: France, Paris (10) (RTMPS)", + "url": "rtmps://cdg10.contribute.live-video.net/app" + }, + { + "name": "Europe: France, Paris (2) (RTMPS)", + "url": "rtmps://cdg02.contribute.live-video.net/app" + }, + { + "name": "Europe: Germany, Berlin (RTMPS)", + "url": "rtmps://ber.contribute.live-video.net/app" + }, + { + "name": "Europe: Germany, Dusseldorf (1) (RTMPS)", + "url": "rtmps://dus01.contribute.live-video.net/app" + }, + { + "name": "Europe: Germany, Frankfurt (2) (RTMPS)", + "url": "rtmps://fra02.contribute.live-video.net/app" + }, + { + "name": "Europe: Germany, Frankfurt (5) (RTMPS)", + "url": "rtmps://fra05.contribute.live-video.net/app" + }, + { + "name": "Europe: Germany, Frankfurt (6) (RTMPS)", + "url": "rtmps://fra06.contribute.live-video.net/app" + }, + { + "name": "Europe: Germany, Munich (1) (RTMPS)", + "url": "rtmps://muc01.contribute.live-video.net/app" + }, + { + "name": "Europe: Italy, Milan (2) (RTMPS)", + "url": "rtmps://mil02.contribute.live-video.net/app" + }, + { + "name": "Europe: Netherlands, Amsterdam (2) (RTMPS)", + "url": "rtmps://ams02.contribute.live-video.net/app" + }, + { + "name": "Europe: Netherlands, Amsterdam (3) (RTMPS)", + "url": "rtmps://ams03.contribute.live-video.net/app" + }, + { + "name": "Europe: Norway, Oslo (RTMPS)", + "url": "rtmps://osl.contribute.live-video.net/app" + }, + { + "name": "Europe: Poland, Warsaw (2) (RTMPS)", + "url": "rtmps://waw02.contribute.live-video.net/app" + }, + { + "name": "Europe: Spain, Madrid (1) (RTMPS)", + "url": "rtmps://mad01.contribute.live-video.net/app" + }, + { + "name": "Europe: Spain, Madrid (2) (RTMPS)", + "url": "rtmps://mad02.contribute.live-video.net/app" + }, + { + "name": "Europe: Sweden, Stockholm (3) (RTMPS)", + "url": "rtmps://arn03.contribute.live-video.net/app" + }, + { + "name": "Europe: Sweden, Stockholm (4) (RTMPS)", + "url": "rtmps://arn04.contribute.live-video.net/app" + }, + { + "name": "Europe: UK, London (3) (RTMPS)", + "url": "rtmps://lhr03.contribute.live-video.net/app" + }, + { + "name": "Europe: UK, London (4) (RTMPS)", + "url": "rtmps://lhr04.contribute.live-video.net/app" + }, + { + "name": "Europe: UK, London (8) (RTMPS)", + "url": "rtmps://lhr08.contribute.live-video.net/app" + }, + { + "name": "NA: Canada, Quebec (RTMPS)", + "url": "rtmps://ymq03.contribute.live-video.net/app" + }, + { + "name": "NA: Canada, Toronto (RTMPS)", + "url": "rtmps://yto.contribute.live-video.net/app" + }, + { + "name": "NA: Mexico, Queretaro (3) (RTMPS)", + "url": "rtmps://qro03.contribute.live-video.net/app" + }, + { + "name": "NA: Mexico, Queretaro (4) (RTMPS)", + "url": "rtmps://qro04.contribute.live-video.net/app" + }, + { + "name": "Oceania: Australia, Sydney (2) (RTMPS)", + "url": "rtmps://syd02.contribute.live-video.net/app" + }, + { + "name": "Oceania: Australia, Sydney (3) (RTMPS)", + "url": "rtmps://syd03.contribute.live-video.net/app" + }, + { + "name": "South America: Brazil, Fortaleza (1) (RTMPS)", + "url": "rtmps://for01.contribute.live-video.net/app" + }, + { + "name": "South America: Brazil, Rio de Janeiro (3) (RTMPS)", + "url": "rtmps://rio03.contribute.live-video.net/app" + }, + { + "name": "South America: Brazil, Rio de Janeiro (4) (RTMPS)", + "url": "rtmps://rio04.contribute.live-video.net/app" + }, + { + "name": "South America: Brazil, Sao Paulo (RTMPS)", + "url": "rtmps://sao03.contribute.live-video.net/app" + }, + { + "name": "South America: Brazil, Sao Paulo (5) (RTMPS)", + "url": "rtmps://sao05.contribute.live-video.net/app" + }, + { + "name": "South America: Buenos Aires, Argentina (1) (RTMPS)", + "url": "rtmps://bue01.contribute.live-video.net/app" + }, + { + "name": "South America: Colombia, Bogota (1) (RTMPS)", + "url": "rtmps://bog01.contribute.live-video.net/app" + }, + { + "name": "US Central: Dallas, TX (RTMPS)", + "url": "rtmps://dfw.contribute.live-video.net/app" + }, + { + "name": "US Central: Dallas, TX (2) (RTMPS)", + "url": "rtmps://dfw02.contribute.live-video.net/app" + }, + { + "name": "US Central: Denver, CO (52) (RTMPS)", + "url": "rtmps://den52.contribute.live-video.net/app" + }, + { + "name": "US Central: Garland, TX (56) (RTMPS)", + "url": "rtmps://dfw56.contribute.live-video.net/app" + }, + { + "name": "US Central: Houston, TX (50) (RTMPS)", + "url": "rtmps://iah50.contribute.live-video.net/app" + }, + { + "name": "US East: Ashburn, VA (5) (RTMPS)", + "url": "rtmps://iad05.contribute.live-video.net/app" + }, + { + "name": "US East: Atlanta, GA (RTMPS)", + "url": "rtmps://atl.contribute.live-video.net/app" + }, + { + "name": "US East: Chicago, IL (3) (RTMPS)", + "url": "rtmps://ord03.contribute.live-video.net/app" + }, + { + "name": "US East: Chicago, IL (56) (RTMPS)", + "url": "rtmps://ord56.contribute.live-video.net/app" + }, + { + "name": "US East: McAllen, TX (1) (RTMPS)", + "url": "rtmps://mfe01.contribute.live-video.net/app" + }, + { + "name": "US East: Miami, FL (5) (RTMPS)", + "url": "rtmps://mia05.contribute.live-video.net/app" + }, + { + "name": "US East: New York, NY (RTMPS)", + "url": "rtmps://jfk.contribute.live-video.net/app" + }, + { + "name": "US East: New York, NY (50) (RTMPS)", + "url": "rtmps://jfk50.contribute.live-video.net/app" + }, + { + "name": "US West: Los Angeles, CA (RTMPS)", + "url": "rtmps://lax.contribute.live-video.net/app" + }, + { + "name": "US West: Salt Lake City, UT (RTMPS)", + "url": "rtmps://slc.contribute.live-video.net/app" + }, + { + "name": "US West: San Francisco, CA (RTMPS)", + "url": "rtmps://sfo.contribute.live-video.net/app" + }, + { + "name": "US West: San Jose, California (6) (RTMPS)", + "url": "rtmps://sjc06.contribute.live-video.net/app" + }, + { + "name": "US West: Seattle, WA (RTMPS)", + "url": "rtmps://sea.contribute.live-video.net/app" + }, + { + "name": "US West: Seattle, WA (2) (RTMPS)", + "url": "rtmps://sea02.contribute.live-video.net/app" + }, + { + "name": "Asia: China, Hong Kong (6) (RTMP)", + "url": "rtmp://hkg06.contribute.live-video.net/app" + }, + { + "name": "Asia: India, Bangalore (1) (RTMP)", + "url": "rtmp://blr01.contribute.live-video.net/app" + }, + { + "name": "Asia: India, Chennai (RTMP)", + "url": "rtmp://maa01.contribute.live-video.net/app" + }, + { + "name": "Asia: India, Hyderabad (1) (RTMP)", + "url": "rtmp://hyd01.contribute.live-video.net/app" + }, + { + "name": "Asia: India, Mumbai (RTMP)", + "url": "rtmp://bom01.contribute.live-video.net/app" + }, + { + "name": "Asia: India, New Delhi (RTMP)", + "url": "rtmp://del01.contribute.live-video.net/app" + }, + { + "name": "Asia: Indonesia, Cikarang Barat (1) (RTMP)", + "url": "rtmp://jkt01.contribute.live-video.net/app" + }, + { + "name": "Asia: Indonesia, Jakarta (2) (RTMP)", + "url": "rtmp://jkt02.contribute.live-video.net/app" + }, + { + "name": "Asia: Japan, Osaka (1) (RTMP)", + "url": "rtmp://osa01.contribute.live-video.net/app" + }, + { + "name": "Asia: Japan, Tokyo (3) (RTMP)", + "url": "rtmp://tyo03.contribute.live-video.net/app" + }, + { + "name": "Asia: Japan, Tokyo (5) (RTMP)", + "url": "rtmp://tyo05.contribute.live-video.net/app" + }, + { + "name": "Asia: Manila, Philippines (1) (RTMP)", + "url": "rtmp://mnl01.contribute.live-video.net/app" + }, + { + "name": "Asia: Singapore (1) (RTMP)", + "url": "rtmp://sin01.contribute.live-video.net/app" + }, + { + "name": "Asia: Singapore (4) (RTMP)", + "url": "rtmp://sin04.contribute.live-video.net/app" + }, + { + "name": "Asia: South Korea, Seoul (3) (RTMP)", + "url": "rtmp://sel03.contribute.live-video.net/app" + }, + { + "name": "Asia: South Korea, Seoul (4) (RTMP)", + "url": "rtmp://sel04.contribute.live-video.net/app" + }, + { + "name": "Asia: Taiwan, Taipei (1) (RTMP)", + "url": "rtmp://tpe01.contribute.live-video.net/app" + }, + { + "name": "Asia: Taiwan, Taipei (3) (RTMP)", + "url": "rtmp://tpe03.contribute.live-video.net/app" + }, + { + "name": "Asia: Thailand, Bangkok (2) (RTMP)", + "url": "rtmp://bkk02.contribute.live-video.net/app" + }, + { + "name": "Europe: Austria, Vienna (2) (RTMP)", + "url": "rtmp://vie02.contribute.live-video.net/app" + }, + { + "name": "Europe: Czech Republic, Prague (RTMP)", + "url": "rtmp://prg03.contribute.live-video.net/app" + }, + { + "name": "Europe: Denmark, Copenhagen (RTMP)", + "url": "rtmp://cph.contribute.live-video.net/app" + }, + { + "name": "Europe: Finland, Helsinki (3) (RTMP)", + "url": "rtmp://hel03.contribute.live-video.net/app" + }, + { + "name": "Europe: France, Marseille (RTMP)", + "url": "rtmp://mrs.contribute.live-video.net/app" + }, + { + "name": "Europe: France, Marseille (2) (RTMP)", + "url": "rtmp://mrs02.contribute.live-video.net/app" + }, + { + "name": "Europe: France, Paris (10) (RTMP)", + "url": "rtmp://cdg10.contribute.live-video.net/app" + }, + { + "name": "Europe: France, Paris (2) (RTMP)", + "url": "rtmp://cdg02.contribute.live-video.net/app" + }, + { + "name": "Europe: Germany, Berlin (RTMP)", + "url": "rtmp://ber.contribute.live-video.net/app" + }, + { + "name": "Europe: Germany, Dusseldorf (1) (RTMP)", + "url": "rtmp://dus01.contribute.live-video.net/app" + }, + { + "name": "Europe: Germany, Frankfurt (2) (RTMP)", + "url": "rtmp://fra02.contribute.live-video.net/app" + }, + { + "name": "Europe: Germany, Frankfurt (5) (RTMP)", + "url": "rtmp://fra05.contribute.live-video.net/app" + }, + { + "name": "Europe: Germany, Frankfurt (6) (RTMP)", + "url": "rtmp://fra06.contribute.live-video.net/app" + }, + { + "name": "Europe: Germany, Munich (1) (RTMP)", + "url": "rtmp://muc01.contribute.live-video.net/app" + }, + { + "name": "Europe: Italy, Milan (2) (RTMP)", + "url": "rtmp://mil02.contribute.live-video.net/app" + }, + { + "name": "Europe: Netherlands, Amsterdam (2) (RTMP)", + "url": "rtmp://ams02.contribute.live-video.net/app" + }, + { + "name": "Europe: Netherlands, Amsterdam (3) (RTMP)", + "url": "rtmp://ams03.contribute.live-video.net/app" + }, + { + "name": "Europe: Norway, Oslo (RTMP)", + "url": "rtmp://osl.contribute.live-video.net/app" + }, + { + "name": "Europe: Poland, Warsaw (2) (RTMP)", + "url": "rtmp://waw02.contribute.live-video.net/app" + }, + { + "name": "Europe: Spain, Madrid (1) (RTMP)", + "url": "rtmp://mad01.contribute.live-video.net/app" + }, + { + "name": "Europe: Spain, Madrid (2) (RTMP)", + "url": "rtmp://mad02.contribute.live-video.net/app" + }, + { + "name": "Europe: Sweden, Stockholm (3) (RTMP)", + "url": "rtmp://arn03.contribute.live-video.net/app" + }, + { + "name": "Europe: Sweden, Stockholm (4) (RTMP)", + "url": "rtmp://arn04.contribute.live-video.net/app" + }, + { + "name": "Europe: UK, London (3) (RTMP)", + "url": "rtmp://lhr03.contribute.live-video.net/app" + }, + { + "name": "Europe: UK, London (4) (RTMP)", + "url": "rtmp://lhr04.contribute.live-video.net/app" + }, + { + "name": "Europe: UK, London (8) (RTMP)", + "url": "rtmp://lhr08.contribute.live-video.net/app" + }, + { + "name": "NA: Canada, Quebec (RTMP)", + "url": "rtmp://ymq03.contribute.live-video.net/app" + }, + { + "name": "NA: Canada, Toronto (RTMP)", + "url": "rtmp://yto.contribute.live-video.net/app" + }, + { + "name": "NA: Mexico, Queretaro (3) (RTMP)", + "url": "rtmp://qro03.contribute.live-video.net/app" + }, + { + "name": "NA: Mexico, Queretaro (4) (RTMP)", + "url": "rtmp://qro04.contribute.live-video.net/app" + }, + { + "name": "Oceania: Australia, Sydney (2) (RTMP)", + "url": "rtmp://syd02.contribute.live-video.net/app" + }, + { + "name": "Oceania: Australia, Sydney (3) (RTMP)", + "url": "rtmp://syd03.contribute.live-video.net/app" + }, + { + "name": "South America: Brazil, Fortaleza (1) (RTMP)", + "url": "rtmp://for01.contribute.live-video.net/app" + }, + { + "name": "South America: Brazil, Rio de Janeiro (3) (RTMP)", + "url": "rtmp://rio03.contribute.live-video.net/app" + }, + { + "name": "South America: Brazil, Rio de Janeiro (4) (RTMP)", + "url": "rtmp://rio04.contribute.live-video.net/app" + }, + { + "name": "South America: Brazil, Sao Paulo (RTMP)", + "url": "rtmp://sao03.contribute.live-video.net/app" + }, + { + "name": "South America: Brazil, Sao Paulo (5) (RTMP)", + "url": "rtmp://sao05.contribute.live-video.net/app" + }, + { + "name": "South America: Buenos Aires, Argentina (1) (RTMP)", + "url": "rtmp://bue01.contribute.live-video.net/app" + }, + { + "name": "South America: Colombia, Bogota (1) (RTMP)", + "url": "rtmp://bog01.contribute.live-video.net/app" + }, + { + "name": "US Central: Dallas, TX (RTMP)", + "url": "rtmp://dfw.contribute.live-video.net/app" + }, + { + "name": "US Central: Dallas, TX (2) (RTMP)", + "url": "rtmp://dfw02.contribute.live-video.net/app" + }, + { + "name": "US Central: Denver, CO (52) (RTMP)", + "url": "rtmp://den52.contribute.live-video.net/app" + }, + { + "name": "US Central: Garland, TX (56) (RTMP)", + "url": "rtmp://dfw56.contribute.live-video.net/app" + }, + { + "name": "US Central: Houston, TX (50) (RTMP)", + "url": "rtmp://iah50.contribute.live-video.net/app" + }, + { + "name": "US East: Ashburn, VA (5) (RTMP)", + "url": "rtmp://iad05.contribute.live-video.net/app" + }, + { + "name": "US East: Atlanta, GA (RTMP)", + "url": "rtmp://atl.contribute.live-video.net/app" + }, + { + "name": "US East: Chicago, IL (3) (RTMP)", + "url": "rtmp://ord03.contribute.live-video.net/app" + }, + { + "name": "US East: Chicago, IL (56) (RTMP)", + "url": "rtmp://ord56.contribute.live-video.net/app" + }, + { + "name": "US East: McAllen, TX (1) (RTMP)", + "url": "rtmp://mfe01.contribute.live-video.net/app" + }, + { + "name": "US East: Miami, FL (5) (RTMP)", + "url": "rtmp://mia05.contribute.live-video.net/app" + }, + { + "name": "US East: New York, NY (RTMP)", + "url": "rtmp://jfk.contribute.live-video.net/app" + }, + { + "name": "US East: New York, NY (50) (RTMP)", + "url": "rtmp://jfk50.contribute.live-video.net/app" + }, + { + "name": "US West: Los Angeles, CA (RTMP)", + "url": "rtmp://lax.contribute.live-video.net/app" + }, + { + "name": "US West: Salt Lake City, UT (RTMP)", + "url": "rtmp://slc.contribute.live-video.net/app" + }, + { + "name": "US West: San Francisco, CA (RTMP)", + "url": "rtmp://sfo.contribute.live-video.net/app" + }, + { + "name": "US West: San Jose, California (6) (RTMP)", + "url": "rtmp://sjc06.contribute.live-video.net/app" + }, + { + "name": "US West: Seattle, WA (RTMP)", + "url": "rtmp://sea.contribute.live-video.net/app" + }, + { + "name": "US West: Seattle, WA (2) (RTMP)", + "url": "rtmp://sea02.contribute.live-video.net/app" + } + ], + "multitrack_video_configuration_url": "https://ingest.contribute.live-video.net/api/v3/GetClientConfiguration", + "recommended": { + "keyint": 2, + "x264opts": "scenecut=0" + } + }, + { + "name": "Dolby Millicast", + "common": false, + "more_info_link": "https://docs.dolby.io/streaming-apis/docs/using-obs", + "stream_key_link": "https://streaming.dolby.io", + "servers": [ + { + "name": "Global (RTMPS)", + "url": "rtmps://rtmp-auto.millicast.com:443/v2/pub" + }, + { + "name": "Global (RTMP)", + "url": "rtmp://rtmp-auto.millicast.com:1935/v2/pub" + }, + { + "name": "Bangalore, India (RTMPS)", + "url": "rtmps://rtmp-blr-1.millicast.com:443/v2/pub" + }, + { + "name": "Bangalore, India (RTMP)", + "url": "rtmp://rtmp-blr-1.millicast.com:1935/v2/pub" + }, + { + "name": "Frankfurt, Germany (RTMPS)", + "url": "rtmps://rtmp-fra-1.millicast.com:443/v2/pub" + }, + { + "name": "Frankfurt, Germany (RTMP)", + "url": "rtmp://rtmp-fra-1.millicast.com:1935/v2/pub" + }, + { + "name": "Ashburn, Virginia, USA (RTMPS)", + "url": "rtmps://rtmp-iad-1.millicast.com:443/v2/pub" + }, + { + "name": "Ashburn, Virginia, USA (RTMP)", + "url": "rtmp://rtmp-iad-1.millicast.com:1935/v2/pub" + }, + { + "name": "London, England (RTMPS)", + "url": "rtmps://rtmp-lon-1.millicast.com:443/v2/pub" + }, + { + "name": "London, England (RTMP)", + "url": "rtmp://rtmp-lon-1.millicast.com:1935/v2/pub" + }, + { + "name": "Phoenix, AZ, USA (RTMPS)", + "url": "rtmps://rtmp-phx-1.millicast.com:443/v2/pub" + }, + { + "name": "Phoenix, AZ, USA (RTMP)", + "url": "rtmp://rtmp-phx-1.millicast.com:1935/v2/pub" + }, + { + "name": "Sao Paulo, Brazil (RTMPS)", + "url": "rtmps://rtmp-sao-1.millicast.com:443/v2/pub" + }, + { + "name": "Sao Paulo, Brazil (RTMP)", + "url": "rtmp://rtmp-sao-1.millicast.com:1935/v2/pub" + }, + { + "name": "Singapore (RTMPS)", + "url": "rtmps://rtmp-sgp-1.millicast.com:443/v2/pub" + }, + { + "name": "Singapore (RTMP)", + "url": "rtmp://rtmp-sgp-1.millicast.com:1935/v2/pub" + }, + { + "name": "Sydney, Australia (RTMPS)", + "url": "rtmps://rtmp-syd-1.millicast.com:443/v2/pub" + }, + { + "name": "Sydney, Australia (RTMP)", + "url": "rtmp://rtmp-syd-1.millicast.com:1935/v2/pub" + } + ], + "supported video codecs": [ + "h264", + "hevc", + "av1" + ], + "recommended": { + "keyint": 1, + "bframes": 0 + } + }, + { + "name": "NFHS Network", + "more_info_link": "https://support.nfhsnetwork.com/hc/en-us", + "stream_key_link": "https://console.nfhsnetwork.com/nfhs-events/", + "servers": [ + { + "name": "Manual Broadcasts", + "url": "rtmp://video.nfhsnetwork.com/manual" + } + ], + "recommended": { + "supported resolutions": [ + "1920x1080", + "1280x720", + "640x360" + ], + "max fps": 60 + }, + "supported video codecs": [ + "h264" + ] + }, + { + "name": "VRCDN - Live", + "more_info_link": "https://vrcdn.live", + "servers": [ + { + "name": "Automatic", + "url": "rtmp://ingest.vrcdn.live/live" + } + ], + "supported video codecs": ["h264"], + "recommended": { + "keyint": 1, + "max video bitrate": 6000 + } + } + ] +} diff --git a/obs-studio/plugin_config/rtmp-services/twitch_ingests.json b/obs-studio/plugin_config/rtmp-services/twitch_ingests.json new file mode 100644 index 0000000..2cb31e4 --- /dev/null +++ b/obs-studio/plugin_config/rtmp-services/twitch_ingests.json @@ -0,0 +1,625 @@ +{ + "ingests": [ + { + "_id": 0, + "availability": 1.0, + "default": false, + "name": "Asia: Japan, Narita (10)", + "url_template": "rtmp://apn10.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://apn10.contribute.live-video.net/app/{stream_key}", + "priority": 0 + }, + { + "_id": 1, + "availability": 1.0, + "default": false, + "name": "Asia: Japan, Tokyo (3)", + "url_template": "rtmp://tyo03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://tyo03.contribute.live-video.net/app/{stream_key}", + "priority": 1 + }, + { + "_id": 2, + "availability": 1.0, + "default": false, + "name": "Asia: Japan, Tokyo (5)", + "url_template": "rtmp://tyo05.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://tyo05.contribute.live-video.net/app/{stream_key}", + "priority": 2 + }, + { + "_id": 3, + "availability": 1.0, + "default": false, + "name": "Asia: Japan, Osaka (1)", + "url_template": "rtmp://osa01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://osa01.contribute.live-video.net/app/{stream_key}", + "priority": 3 + }, + { + "_id": 4, + "availability": 1.0, + "default": false, + "name": "Asia: South Korea, Seoul (3)", + "url_template": "rtmp://sel03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://sel03.contribute.live-video.net/app/{stream_key}", + "priority": 4 + }, + { + "_id": 5, + "availability": 1.0, + "default": false, + "name": "Asia: South Korea, Seoul (4)", + "url_template": "rtmp://sel04.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://sel04.contribute.live-video.net/app/{stream_key}", + "priority": 5 + }, + { + "_id": 6, + "availability": 1.0, + "default": false, + "name": "Asia: Taiwan, Taipei (3)", + "url_template": "rtmp://tpe03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://tpe03.contribute.live-video.net/app/{stream_key}", + "priority": 6 + }, + { + "_id": 7, + "availability": 1.0, + "default": false, + "name": "Asia: Taiwan, Taipei (1)", + "url_template": "rtmp://tpe01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://tpe01.contribute.live-video.net/app/{stream_key}", + "priority": 7 + }, + { + "_id": 8, + "availability": 1.0, + "default": false, + "name": "Asia: China, Hong Kong (6)", + "url_template": "rtmp://hkg06.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://hkg06.contribute.live-video.net/app/{stream_key}", + "priority": 8 + }, + { + "_id": 9, + "availability": 1.0, + "default": false, + "name": "Asia: Manila, Philippines (1)", + "url_template": "rtmp://mnl01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://mnl01.contribute.live-video.net/app/{stream_key}", + "priority": 9 + }, + { + "_id": 10, + "availability": 1.0, + "default": false, + "name": "Asia: Thailand, Bangkok (2)", + "url_template": "rtmp://bkk02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://bkk02.contribute.live-video.net/app/{stream_key}", + "priority": 10 + }, + { + "_id": 11, + "availability": 1.0, + "default": false, + "name": "Asia: Singapore (1)", + "url_template": "rtmp://sin01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://sin01.contribute.live-video.net/app/{stream_key}", + "priority": 11 + }, + { + "_id": 12, + "availability": 1.0, + "default": false, + "name": "Asia: Indonesia, Jakarta (2)", + "url_template": "rtmp://jkt02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://jkt02.contribute.live-video.net/app/{stream_key}", + "priority": 12 + }, + { + "_id": 13, + "availability": 1.0, + "default": false, + "name": "Asia: India, Hyderabad (1)", + "url_template": "rtmp://hyd01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://hyd01.contribute.live-video.net/app/{stream_key}", + "priority": 13 + }, + { + "_id": 14, + "availability": 1.0, + "default": false, + "name": "Asia: India, Chennai (1)", + "url_template": "rtmp://maa01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://maa01.contribute.live-video.net/app/{stream_key}", + "priority": 14 + }, + { + "_id": 15, + "availability": 1.0, + "default": false, + "name": "Asia: India, New Delhi (1)", + "url_template": "rtmp://del01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://del01.contribute.live-video.net/app/{stream_key}", + "priority": 15 + }, + { + "_id": 16, + "availability": 1.0, + "default": false, + "name": "Asia: India, Bangalore (1)", + "url_template": "rtmp://blr01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://blr01.contribute.live-video.net/app/{stream_key}", + "priority": 16 + }, + { + "_id": 17, + "availability": 1.0, + "default": false, + "name": "Asia: India, Mumbai", + "url_template": "rtmp://bom01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://bom01.contribute.live-video.net/app/{stream_key}", + "priority": 17 + }, + { + "_id": 18, + "availability": 1.0, + "default": false, + "name": "US West: Seattle, WA (2)", + "url_template": "rtmp://sea02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://sea02.contribute.live-video.net/app/{stream_key}", + "priority": 18 + }, + { + "_id": 19, + "availability": 1.0, + "default": false, + "name": "Europe: Finland, Helsinki (3)", + "url_template": "rtmp://hel03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://hel03.contribute.live-video.net/app/{stream_key}", + "priority": 19 + }, + { + "_id": 20, + "availability": 1.0, + "default": false, + "name": "Oceania: Australia, Sydney (2)", + "url_template": "rtmp://syd02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://syd02.contribute.live-video.net/app/{stream_key}", + "priority": 20 + }, + { + "_id": 21, + "availability": 1.0, + "default": false, + "name": "Oceania: Australia, Sydney (3)", + "url_template": "rtmp://syd03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://syd03.contribute.live-video.net/app/{stream_key}", + "priority": 21 + }, + { + "_id": 22, + "availability": 1.0, + "default": false, + "name": "Europe: Sweden, Stockholm (3)", + "url_template": "rtmp://arn03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://arn03.contribute.live-video.net/app/{stream_key}", + "priority": 22 + }, + { + "_id": 23, + "availability": 1.0, + "default": false, + "name": "Europe: Sweden, Stockholm (4)", + "url_template": "rtmp://arn04.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://arn04.contribute.live-video.net/app/{stream_key}", + "priority": 23 + }, + { + "_id": 24, + "availability": 1.0, + "default": false, + "name": "US West: San Jose, California (6)", + "url_template": "rtmp://sjc06.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://sjc06.contribute.live-video.net/app/{stream_key}", + "priority": 24 + }, + { + "_id": 25, + "availability": 1.0, + "default": false, + "name": "Europe: Norway, Oslo", + "url_template": "rtmp://osl.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://osl.contribute.live-video.net/app/{stream_key}", + "priority": 25 + }, + { + "_id": 26, + "availability": 1.0, + "default": false, + "name": "Europe: Poland, Warsaw (2)", + "url_template": "rtmp://waw02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://waw02.contribute.live-video.net/app/{stream_key}", + "priority": 26 + }, + { + "_id": 27, + "availability": 1.0, + "default": false, + "name": "Europe: Denmark, Copenhagen", + "url_template": "rtmp://cph.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://cph.contribute.live-video.net/app/{stream_key}", + "priority": 27 + }, + { + "_id": 28, + "availability": 1.0, + "default": false, + "name": "US West: Los Angeles, CA", + "url_template": "rtmp://lax.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://lax.contribute.live-video.net/app/{stream_key}", + "priority": 28 + }, + { + "_id": 29, + "availability": 1.0, + "default": false, + "name": "Europe: Czech Republic, Prague", + "url_template": "rtmp://prg03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://prg03.contribute.live-video.net/app/{stream_key}", + "priority": 29 + }, + { + "_id": 30, + "availability": 1.0, + "default": false, + "name": "Europe: Austria, Vienna (2)", + "url_template": "rtmp://vie02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://vie02.contribute.live-video.net/app/{stream_key}", + "priority": 30 + }, + { + "_id": 31, + "availability": 1.0, + "default": false, + "name": "Europe: Netherlands, Amsterdam (3)", + "url_template": "rtmp://ams03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://ams03.contribute.live-video.net/app/{stream_key}", + "priority": 31 + }, + { + "_id": 32, + "availability": 1.0, + "default": false, + "name": "Europe: Netherlands, Amsterdam (2)", + "url_template": "rtmp://ams02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://ams02.contribute.live-video.net/app/{stream_key}", + "priority": 32 + }, + { + "_id": 33, + "availability": 1.0, + "default": false, + "name": "Europe: Germany, Dusseldorf (1)", + "url_template": "rtmp://dus01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://dus01.contribute.live-video.net/app/{stream_key}", + "priority": 33 + }, + { + "_id": 34, + "availability": 1.0, + "default": false, + "name": "US Central: Denver, CO (52)", + "url_template": "rtmp://den52.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://den52.contribute.live-video.net/app/{stream_key}", + "priority": 34 + }, + { + "_id": 35, + "availability": 1.0, + "default": false, + "name": "Europe: Germany, Munich (1)", + "url_template": "rtmp://muc01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://muc01.contribute.live-video.net/app/{stream_key}", + "priority": 35 + }, + { + "_id": 36, + "availability": 1.0, + "default": false, + "name": "Europe: UK, London (8)", + "url_template": "rtmp://lhr08.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://lhr08.contribute.live-video.net/app/{stream_key}", + "priority": 36 + }, + { + "_id": 37, + "availability": 1.0, + "default": false, + "name": "Europe: UK, London (3)", + "url_template": "rtmp://lhr03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://lhr03.contribute.live-video.net/app/{stream_key}", + "priority": 37 + }, + { + "_id": 38, + "availability": 1.0, + "default": false, + "name": "Europe: France, Paris (2)", + "url_template": "rtmp://cdg02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://cdg02.contribute.live-video.net/app/{stream_key}", + "priority": 38 + }, + { + "_id": 39, + "availability": 1.0, + "default": false, + "name": "Europe: France, Paris (10)", + "url_template": "rtmp://cdg10.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://cdg10.contribute.live-video.net/app/{stream_key}", + "priority": 39 + }, + { + "_id": 40, + "availability": 1.0, + "default": false, + "name": "Europe: Italy, Milan (2)", + "url_template": "rtmp://mil02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://mil02.contribute.live-video.net/app/{stream_key}", + "priority": 40 + }, + { + "_id": 41, + "availability": 1.0, + "default": false, + "name": "Europe: Germany, Frankfurt (5)", + "url_template": "rtmp://fra05.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://fra05.contribute.live-video.net/app/{stream_key}", + "priority": 41 + }, + { + "_id": 42, + "availability": 1.0, + "default": false, + "name": "Europe: Germany, Frankfurt (2)", + "url_template": "rtmp://fra02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://fra02.contribute.live-video.net/app/{stream_key}", + "priority": 42 + }, + { + "_id": 43, + "availability": 1.0, + "default": false, + "name": "Europe: France, Marseille (2)", + "url_template": "rtmp://mrs02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://mrs02.contribute.live-video.net/app/{stream_key}", + "priority": 43 + }, + { + "_id": 44, + "availability": 1.0, + "default": false, + "name": "US East: Chicago, IL (3)", + "url_template": "rtmp://ord03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://ord03.contribute.live-video.net/app/{stream_key}", + "priority": 44 + }, + { + "_id": 45, + "availability": 1.0, + "default": false, + "name": "US East: Chicago, IL (56)", + "url_template": "rtmp://ord56.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://ord56.contribute.live-video.net/app/{stream_key}", + "priority": 45 + }, + { + "_id": 46, + "availability": 1.0, + "default": false, + "name": "NA: Canada, Toronto", + "url_template": "rtmp://yto.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://yto.contribute.live-video.net/app/{stream_key}", + "priority": 46 + }, + { + "_id": 47, + "availability": 1.0, + "default": false, + "name": "NA: Canada, Quebec", + "url_template": "rtmp://ymq03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://ymq03.contribute.live-video.net/app/{stream_key}", + "priority": 47 + }, + { + "_id": 48, + "availability": 1.0, + "default": false, + "name": "US Central: Garland, TX (56)", + "url_template": "rtmp://dfw56.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://dfw56.contribute.live-video.net/app/{stream_key}", + "priority": 48 + }, + { + "_id": 49, + "availability": 1.0, + "default": false, + "name": "US Central: Dallas, TX (2)", + "url_template": "rtmp://dfw02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://dfw02.contribute.live-video.net/app/{stream_key}", + "priority": 49 + }, + { + "_id": 50, + "availability": 1.0, + "default": false, + "name": "US Central: Houston, TX (50)", + "url_template": "rtmp://iah50.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://iah50.contribute.live-video.net/app/{stream_key}", + "priority": 50 + }, + { + "_id": 51, + "availability": 1.0, + "default": false, + "name": "Europe: Spain, Madrid (2)", + "url_template": "rtmp://mad02.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://mad02.contribute.live-video.net/app/{stream_key}", + "priority": 51 + }, + { + "_id": 52, + "availability": 1.0, + "default": false, + "name": "Europe: Spain, Madrid (1)", + "url_template": "rtmp://mad01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://mad01.contribute.live-video.net/app/{stream_key}", + "priority": 52 + }, + { + "_id": 53, + "availability": 1.0, + "default": false, + "name": "US East: McAllen, TX (1)", + "url_template": "rtmp://mfe01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://mfe01.contribute.live-video.net/app/{stream_key}", + "priority": 53 + }, + { + "_id": 54, + "availability": 1.0, + "default": false, + "name": "US East: New York, NY (50)", + "url_template": "rtmp://jfk50.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://jfk50.contribute.live-video.net/app/{stream_key}", + "priority": 54 + }, + { + "_id": 55, + "availability": 1.0, + "default": false, + "name": "US East: New York, NY", + "url_template": "rtmp://jfk.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://jfk.contribute.live-video.net/app/{stream_key}", + "priority": 55 + }, + { + "_id": 56, + "availability": 1.0, + "default": false, + "name": "US East: Ashburn, VA (5)", + "url_template": "rtmp://iad05.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://iad05.contribute.live-video.net/app/{stream_key}", + "priority": 56 + }, + { + "_id": 57, + "availability": 1.0, + "default": false, + "name": "US East: Atlanta, GA", + "url_template": "rtmp://atl.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://atl.contribute.live-video.net/app/{stream_key}", + "priority": 57 + }, + { + "_id": 58, + "availability": 1.0, + "default": false, + "name": "NA: Mexico, Queretaro (4)", + "url_template": "rtmp://qro04.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://qro04.contribute.live-video.net/app/{stream_key}", + "priority": 58 + }, + { + "_id": 59, + "availability": 1.0, + "default": false, + "name": "NA: Mexico, Queretaro (3)", + "url_template": "rtmp://qro03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://qro03.contribute.live-video.net/app/{stream_key}", + "priority": 59 + }, + { + "_id": 60, + "availability": 1.0, + "default": false, + "name": "US East: Miami, FL (5)", + "url_template": "rtmp://mia05.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://mia05.contribute.live-video.net/app/{stream_key}", + "priority": 60 + }, + { + "_id": 61, + "availability": 1.0, + "default": false, + "name": "South America: Colombia, Bogota (1)", + "url_template": "rtmp://bog01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://bog01.contribute.live-video.net/app/{stream_key}", + "priority": 61 + }, + { + "_id": 62, + "availability": 1.0, + "default": false, + "name": "South America: Brazil, Fortaleza (1)", + "url_template": "rtmp://for01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://for01.contribute.live-video.net/app/{stream_key}", + "priority": 62 + }, + { + "_id": 63, + "availability": 1.0, + "default": false, + "name": "South America : chile, Santiago (1)", + "url_template": "rtmp://scl01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://scl01.contribute.live-video.net/app/{stream_key}", + "priority": 63 + }, + { + "_id": 64, + "availability": 1.0, + "default": false, + "name": "South America: Buenos Aires, Argentina (1)", + "url_template": "rtmp://bue01.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://bue01.contribute.live-video.net/app/{stream_key}", + "priority": 64 + }, + { + "_id": 65, + "availability": 1.0, + "default": false, + "name": "South America: Brazil, Sao Paulo (5)", + "url_template": "rtmp://sao05.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://sao05.contribute.live-video.net/app/{stream_key}", + "priority": 65 + }, + { + "_id": 66, + "availability": 1.0, + "default": false, + "name": "South America: Brazil, Sao Paulo", + "url_template": "rtmp://sao03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://sao03.contribute.live-video.net/app/{stream_key}", + "priority": 66 + }, + { + "_id": 67, + "availability": 1.0, + "default": false, + "name": "South America: Brazil, Rio de Janeiro (4)", + "url_template": "rtmp://rio04.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://rio04.contribute.live-video.net/app/{stream_key}", + "priority": 67 + }, + { + "_id": 68, + "availability": 1.0, + "default": false, + "name": "South America: Brazil, Rio de Janeiro (3)", + "url_template": "rtmp://rio03.contribute.live-video.net/app/{stream_key}", + "url_template_secure": "rtmps://rio03.contribute.live-video.net/app/{stream_key}", + "priority": 68 + } + ] +} diff --git a/obs-studio/profiler_data/2025-04-07 19-27-24.csv.gz b/obs-studio/profiler_data/2025-04-07 19-27-24.csv.gz new file mode 100644 index 0000000..ab92780 Binary files /dev/null and b/obs-studio/profiler_data/2025-04-07 19-27-24.csv.gz differ diff --git a/obs-studio/profiler_data/2025-04-07 20-23-11.csv.gz b/obs-studio/profiler_data/2025-04-07 20-23-11.csv.gz new file mode 100644 index 0000000..0874d60 Binary files /dev/null and b/obs-studio/profiler_data/2025-04-07 20-23-11.csv.gz differ diff --git a/obs-studio/profiler_data/2025-04-08 16-04-53.csv.gz b/obs-studio/profiler_data/2025-04-08 16-04-53.csv.gz new file mode 100644 index 0000000..3dce8d5 Binary files /dev/null and b/obs-studio/profiler_data/2025-04-08 16-04-53.csv.gz differ diff --git a/obs-studio/profiler_data/2025-04-12 21-20-31.csv.gz b/obs-studio/profiler_data/2025-04-12 21-20-31.csv.gz new file mode 100644 index 0000000..cda1a2e Binary files /dev/null and b/obs-studio/profiler_data/2025-04-12 21-20-31.csv.gz differ diff --git a/obs-studio/user.ini b/obs-studio/user.ini new file mode 100644 index 0000000..7222899 --- /dev/null +++ b/obs-studio/user.ini @@ -0,0 +1,68 @@ +[General] +Pre19Defaults=false +Pre21Defaults=false +Pre23Defaults=false +Pre24.1Defaults=false +ConfirmOnExit=true +HotkeyFocusType=NeverDisableHotkeys +FirstRun=true +Language=zh-CN + +[BasicWindow] +PreviewEnabled=true +PreviewProgramMode=false +SceneDuplicationMode=true +SwapScenesMode=true +SnappingEnabled=true +ScreenSnapping=true +SourceSnapping=true +CenterSnapping=false +SnapDistance=10 +SpacingHelpersEnabled=true +RecordWhenStreaming=false +KeepRecordingWhenStreamStops=false +SysTrayEnabled=true +SysTrayWhenStarted=false +SaveProjectors=false +ShowTransitions=true +ShowListboxToolbars=true +ShowStatusBar=true +ShowSourceIcons=true +ShowContextToolbars=true +StudioModeLabels=true +VerticalVolControl=false +MultiviewMouseSwitch=true +MultiviewDrawNames=true +MultiviewDrawAreas=true +MediaControlsCountdownTimer=true +WarnBeforeStartingStream=false +WarnBeforeStoppingStream=false +WarnBeforeStoppingRecord=false +geometry=AdnQywADAAAAAAAAAAAAAAAAA2oAAAPwAAAAAAAAAAAAAANqAAAD8AAAAAAAAAAAB2gAAAAAAAAAAAAAA2oAAAPw +DockState=AAAA/wAAAAD9AAAAAQAAAAMAAANrAAAA/PwBAAAABvsAAAAUAHMAYwBlAG4AZQBzAEQAbwBjAGsBAAAAAAAAAKMAAACYAP////sAAAAWAHMAbwB1AHIAYwBlAHMARABvAGMAawEAAACnAAAAowAAAJgA////+wAAABIAbQBpAHgAZQByAEQAbwBjAGsBAAABTgAAAN4AAADeAP////sAAAAeAHQAcgBhAG4AcwBpAHQAaQBvAG4AcwBEAG8AYwBrAQAAAjAAAACIAAAAiAD////7AAAAGABjAG8AbgB0AHIAbwBsAHMARABvAGMAawEAAAK8AAAArwAAAK8A////+wAAABIAcwB0AGEAdABzAEQAbwBjAGsCAAACVgAAAbIAAAK8AAAAyAAAA2sAAAK4AAAABAAAAAQAAAAIAAAACPwAAAAA +AlwaysOnTop=false +EditPropertiesMode=false +DocksLocked=false +SideDocks=false +AdvAudioVolumeType=1 + +[Basic] +Profile=Untitled +ProfileDir=Untitled +SceneCollection=Untitled +SceneCollectionFile=Untitled +ConfigOnNewProfile=true + +[Accessibility] +SelectRed=255 +SelectGreen=65280 +SelectBlue=16744192 +MixerGreen=2522918 +MixerYellow=2523007 +MixerRed=2500223 +MixerGreenActive=5046092 +MixerYellowActive=5046271 +MixerRedActive=5000447 + +[ScriptLogWindow] +geometry=AdnQywADAAAAAAABAAAAGQAAAlgAAAGoAAAAAQAAABkAAAJYAAABqAAAAAAAAAAAB2gAAAABAAAAGQAAAlgAAAGo diff --git a/starship.toml b/starship.toml new file mode 100644 index 0000000..557ecd0 --- /dev/null +++ b/starship.toml @@ -0,0 +1,80 @@ +palette = "catppuccin_mocha" + +[palettes.catppuccin_mocha] +rosewater = "#f5e0dc" +flamingo = "#f2cdcd" +pink = "#f5c2e7" +mauve = "#cba6f7" +red = "#f38ba8" +maroon = "#eba0ac" +peach = "#fab387" +yellow = "#f9e2af" +green = "#a6e3a1" +teal = "#94e2d5" +sky = "#89dceb" +sapphire = "#74c7ec" +blue = "#89b4fa" +lavender = "#b4befe" +text = "#cdd6f4" +subtext1 = "#bac2de" +subtext0 = "#a6adc8" +overlay2 = "#9399b2" +overlay1 = "#7f849c" +overlay0 = "#6c7086" +surface2 = "#585b70" +surface1 = "#45475a" +surface0 = "#313244" +base = "#1e1e2e" +mantle = "#181825" +crust = "#11111b" + +continuation_prompt = '▶▶ ' + +format = """ +$username\ +$hostname\ +$directory\ +$git_branch\ +$git_state\ +$git_status\ +$cmd_duration\ +$line_break\ +$python\ +$character""" + +[directory] +style = "blue" + +[character] +success_symbol = "[❯](purple)" +error_symbol = "[❯](red)" +vimcmd_symbol = "[❮](green)" + +[git_branch] +format = "[$branch]($style)" +style = "bright-black" + +[git_status] +format = "[[(*$conflicted$untracked$modified$staged$renamed$deleted)](218) ($ahead_behind$stashed)]($style)" +style = "cyan" +conflicted = "​" +untracked = "​" +modified = "​" +staged = "​" +renamed = "​" +deleted = "​" +stashed = "≡" + +[git_state] +format = '\([$state( $progress_current/$progress_total)]($style)\) ' +style = "bright-black" + +[cmd_duration] +format = "[$duration]($style) " +style = "yellow" + +[python] +format = "[$virtualenv]($style) " +style = "bright-black" + + diff --git a/strawberry/strawberry.conf b/strawberry/strawberry.conf new file mode 100644 index 0000000..a85c90a --- /dev/null +++ b/strawberry/strawberry.conf @@ -0,0 +1,373 @@ +[Analyzer] +framerate=25 +type=BlockAnalyzer + +[Appearance] +style=default + +[Backend] +AutoCrossfadeEnabled=false +CrossfadeEnabled=false +FadeoutDuration=2000 +FadeoutEnabled=false +FadeoutPauseDuration=250 +FadeoutPauseEnabled=false +NoCrossfadeSameAlbum=true +alsaplugin=3 +bs2b=false +bufferduration=4000 +bufferhighwatermark=0.99 +bufferlowwatermark=0.33 +channels=2 +channels_enabled=false +device=@Invalid() +ebur128_loudness_normalization=false +ebur128_target_level_lufs=-23 +http2=false +output=autoaudiosink +playbin3=true +rgcompression=true +rgenabled=false +rgfallbackgain=0 +rgmode=0 +rgpreamp=0 +strict_ssl=false +volume_control=true + +[Behaviour] +doubleclick_addmode=1 +doubleclick_playlist_addmode=1 +doubleclick_playmode=1 +keeprunning=false +language=zh_CN +menu_playmode=1 +menu_previousmode=1 +playing_widget=true +resumeplayback=false +seek_step_sec=10 +showtrayicon=true +startupbehaviour=1 +taskbar_progress=true +trayicon_progress=false +volume_increment=5 + +[Collection] +group_by1=1 +group_by2=4 +group_by3=0 +group_by_version=1 +separate_albums_by_grouping=false + +[Context] +AlbumEnable=true +SearchCoverEnable=true +SearchLyricsEnable=true +SongLyricsEnable=true +SummaryFmt=%album% +TechnicalDataEnable=false +TitleFmt=%title% - %artist% +font_headline=Noto Sans +font_normal=Noto Sans +font_size_headline=11 +font_size_normal=10 + +[Covers] +providers=Last.fm, MusicBrainz, Deezer, Musixmatch, OpenTidal, Tidal, Spotify, Qobuz +save_filename=2 +save_lowercase=true +save_overwrite=false +save_pattern=%albumartist-%album +save_replace_spaces=true +save_type=1 +types=art_unset, art_manual, art_automatic, art_embedded + +[DiscordRPC] +enabled=false + +[Equalizer] +enable_stereo_balancer=false +enabled=false +presets\1\name=Classical +presets\1\params=@Variant(\0\0\0\x7f\0\0\0\x12\x45qualizer::Params\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xff\xff\xff\xd8\xff\xff\xff\xd8\xff\xff\xff\xd8\xff\xff\xff\xce) +presets\10\name=Live +presets\10\params=@Variant(\0\0\0\x7f\0\0\0\x12\x45qualizer::Params\0\0\0\0\0\xff\xff\xff\xe7\0\0\0\0\0\0\0\x14\0\0\0\x19\0\0\0\x1e\0\0\0\x1e\0\0\0\x14\0\0\0\xf\0\0\0\xf\0\0\0\n) +presets\11\name=Party +presets\11\params=@Variant(\0\0\0\x7f\0\0\0\x12\x45qualizer::Params\0\0\0\0\0\0\0\0#\0\0\0#\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0#\0\0\0#) +presets\12\name=Pop +presets\12\params=@Variant(\0\0\0\x7f\0\0\0\x12\x45qualizer::Params\0\0\0\0\0\xff\xff\xff\xf6\0\0\0\x19\0\0\0#\0\0\0(\0\0\0\x19\xff\xff\xff\xfb\xff\xff\xff\xf1\xff\xff\xff\xf1\xff\xff\xff\xf6\xff\xff\xff\xf6) +presets\13\name=Reggae +presets\13\params=@Variant(\0\0\0\x7f\0\0\0\x12\x45qualizer::Params\0\0\0\0\0\0\0\0\0\0\0\0\0\xff\xff\xff\xfb\xff\xff\xff\xe2\0\0\0\0\xff\xff\xff\xdd\xff\xff\xff\xdd\0\0\0\0\0\0\0\0\0\0\0\0) +presets\14\name=Rock +presets\14\params=@Variant(\0\0\0\x7f\0\0\0\x12\x45qualizer::Params\0\0\0\0\0\0\0\0(\0\0\0\x19\xff\xff\xff\xe2\xff\xff\xff\xd8\xff\xff\xff\xec\0\0\0\x14\0\0\0-\0\0\0\x37\0\0\0\x37\0\0\0\x37) +presets\15\name=Ska +presets\15\params=@Variant(\0\0\0\x7f\0\0\0\x12\x45qualizer::Params\0\0\0\0\0\xff\xff\xff\xf1\xff\xff\xff\xe7\xff\xff\xff\xe7\xff\xff\xff\xfb\0\0\0\x14\0\0\0\x1e\0\0\0-\0\0\0\x32\0\0\0\x37\0\0\0\x32) +presets\16\name=Soft +presets\16\params=@Variant(\0\0\0\x7f\0\0\0\x12\x45qualizer::Params\0\0\0\0\0\0\0\0\x19\0\0\0\n\xff\xff\xff\xfb\xff\xff\xff\xf1\xff\xff\xff\xfb\0\0\0\x14\0\0\0-\0\0\0\x32\0\0\0\x37\0\0\0<) +presets\17\name=Soft Rock +presets\17\params=@Variant(\0\0\0\x7f\0\0\0\x12\x45qualizer::Params\0\0\0\0\0\0\0\0\x14\0\0\0\x14\0\0\0\n\xff\xff\xff\xfb\xff\xff\xff\xe7\xff\xff\xff\xe2\xff\xff\xff\xec\xff\xff\xff\xfb\0\0\0\xf\0\0\0-) +presets\18\name=Techno +presets\18\params=@Variant(\0\0\0\x7f\0\0\0\x12\x45qualizer::Params\0\0\0\0\0\0\0\0(\0\0\0\x1e\0\0\0\0\xff\xff\xff\xe2\xff\xff\xff\xe7\0\0\0\0\0\0\0(\0\0\0\x32\0\0\0\x32\0\0\0-) +presets\19\name=Zero +presets\19\params=@Variant(\0\0\0\x7f\0\0\0\x12\x45qualizer::Params\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0) +presets\2\name=Club +presets\2\params=@Variant(\0\0\0\x7f\0\0\0\x12\x45qualizer::Params\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x14\0\0\0\x1e\0\0\0\x1e\0\0\0\x1e\0\0\0\x14\0\0\0\0\0\0\0\0\0\0\0\0) +presets\3\name=Custom +presets\3\params=@Variant(\0\0\0\x7f\0\0\0\x12\x45qualizer::Params\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0) +presets\4\name=Dance +presets\4\params=@Variant(\0\0\0\x7f\0\0\0\x12\x45qualizer::Params\0\0\0\0\0\0\0\0\x32\0\0\0#\0\0\0\n\0\0\0\0\0\0\0\0\xff\xff\xff\xe2\xff\xff\xff\xd8\xff\xff\xff\xd8\0\0\0\0\0\0\0\0) +presets\5\name=Full Bass +presets\5\params=@Variant(\0\0\0\x7f\0\0\0\x12\x45qualizer::Params\0\0\0\0\0\0\0\0\x46\0\0\0\x46\0\0\0\x46\0\0\0(\0\0\0\x14\xff\xff\xff\xd3\xff\xff\xff\xce\xff\xff\xff\xc9\xff\xff\xff\xc9\xff\xff\xff\xc9) +presets\6\name=Full Bass + Treble +presets\6\params=@Variant(\0\0\0\x7f\0\0\0\x12\x45qualizer::Params\0\0\0\0\0\0\0\0#\0\0\0\x1e\0\0\0\0\xff\xff\xff\xd8\xff\xff\xff\xe7\0\0\0\n\0\0\0-\0\0\0\x37\0\0\0<\0\0\0<) +presets\7\name=Full Treble +presets\7\params=@Variant(\0\0\0\x7f\0\0\0\x12\x45qualizer::Params\0\0\0\0\0\xff\xff\xff\xce\xff\xff\xff\xce\xff\xff\xff\xce\xff\xff\xff\xe7\0\0\0\xf\0\0\0\x37\0\0\0P\0\0\0P\0\0\0P\0\0\0U) +presets\8\name=Laptop/Headphones +presets\8\params=@Variant(\0\0\0\x7f\0\0\0\x12\x45qualizer::Params\0\0\0\0\0\0\0\0\x19\0\0\0\x32\0\0\0\x19\xff\xff\xff\xec\0\0\0\0\xff\xff\xff\xe2\xff\xff\xff\xd8\xff\xff\xff\xd8\0\0\0\0\0\0\0\0) +presets\9\name=Large Hall +presets\9\params=@Variant(\0\0\0\x7f\0\0\0\x12\x45qualizer::Params\0\0\0\0\0\0\0\0\x32\0\0\0\x32\0\0\0\x1e\0\0\0\x1e\0\0\0\0\xff\xff\xff\xe7\xff\xff\xff\xe7\xff\xff\xff\xe7\0\0\0\0\0\0\0\0) +presets\size=19 +selected_preset=Custom +stereo_balance=0 + +[GlobalShortcuts] +dec_volume= +inc_volume= +love= +mute= +next_track=Media Next +pause= +play= +play_pause=Media Play +prev_track=Media Previous +repeat_mode= +restart_or_prev_track= +seek_backward= +seek_forward= +show_hide= +show_osd= +shuffle_mode= +stop=Media Stop +stop_after= +toggle_pretty_osd= +toggle_scrobbling= +use_kglobalaccel=true +use_x11=false + +[LastFM] +enabled=false + +[LibreFM] +enabled=false + +[ListenBrainz] +enabled=false +user_token= + +[Lyrics] +providers=Lyrics.ovh, LoloLyrics, Musixmatch, songlyrics.com, azlyrics.com, elyrics.net, letras.mus.br, lyricfind.com + +[MainWindow] +current_tab=1 +do_not_show_sponsor_message=true +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\x4j\0\0\x2\xac\0\0\0\0\0\0\0\0\0\0\x4j\0\0\x2\xac\0\0\0\0\0\0\0\0\ah\0\0\0\0\0\0\0\0\0\0\x4j\0\0\x2\xac) +hidden=false +maximized=false +minimized=false +search_for_cover_auto=true +show_sidebar=true +splitter_state=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\0\0\x1\x36\0\0\x4W\0\xff\xff\xff\xff\x1\0\0\0\x1\0) +tab_collection=1 +tab_context=0 +tab_devices=7 +tab_files=5 +tab_mode=1 +tab_playlists=3 +tab_queue=2 +tab_radios=6 +tab_smartplaylists=4 + +[Moodbar] +enabled=false +save=false +show=false +style=0 + +[NetworkProxy] +engine=true +hostname= +mode=0 +password= +port=0 +type=3 +use_authentication=false +username= + +[OSD] +Behaviour=1 +CustomText1= +CustomText2= +CustomTextEnabled=false +ShowArt=true +ShowOnPausePlayback=true +ShowOnPlayModeChange=true +ShowOnResumePlayback=false +ShowOnVolumeChange=false +Timeout=5000 + +[OSDPretty] +background_color=4284913379 +background_opacity=0.85 +disable_duration=false +fading=false +font="Verdana,9,-1,5,400,0,0,0,0,0,0,0,0,0,0,1" +foreground_color=4278190080 +popup_pos=@Point(1500 0) +popup_screen=DP-1 + +[Player] +playback_playlist=-1 +playback_position=0 +playback_state=0 +volume=100 + +[Playlist] +alternating_row_colors=true +auto_sort=false +column_alignments=@Variant(\0\0\0\x7f\0\0\0\x13\x43olumnAlignmentMap\0\0\0\0\v\0\0\0\x6\0\0\0\x82\0\0\0\a\0\0\0\x82\0\0\0\b\0\0\0\x82\0\0\0\t\0\0\0\x82\0\0\0\n\0\0\0\x82\0\0\0\f\0\0\0\x82\0\0\0\r\0\0\0\x82\0\0\0\xe\0\0\0\x82\0\0\0\x11\0\0\0\x82\0\0\0\x15\0\0\0\x82\0\0\0\x16\0\0\0\x82) +continue_on_error=false +delete_files=false +editmetadatainline=false +glow_effect=true +greyout_songs_play=true +greyout_songs_startup=false +path_type=0 +playlist_clear=true +rating_locked=false +select_track=false +show_bars=true +show_toolbar=true +state="@ByteArray(P,\x95\x10\x1\0\0\0 \0\0\0\b\0\0\0\0\0\0\0\x1\0\0\0\x2\0\0\0\x3\0\0\0\x4\0\0\0\x5\0\0\0\x6\0\0\0\a\0\0\0\t\0\0\0\n\0\0\0\v\0\0\0\f\0\0\0\r\0\0\0\xe\0\0\0\xf\0\0\0\x10\0\0\0\x11\0\0\0\x12\0\0\0\x13\0\0\0\x14\0\0\0\x15\0\0\0\x16\0\0\0\x17\0\0\0\x18\0\0\0\x19\0\0\0\x1a\0\0\0\x1b\0\0\0\x1c\0\0\0\x1d\0\0\0\x1e\0\0\0\x1f\0\0\0 \0\0\0\xa4\0\0\0\xc1\0\0\0\xe8\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0$\0\0\0\0\0\0\0'\0\0\0\0\0\0\0\x30\0\0\0%\0\0\0$\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0#\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\n\0\0\0\0\0\0\0\x1\0\0\0\x2\0\0\0\b\0\0\0\n\0\0\0\f\0\0\0\r\0\0\0\xe\0\0\0\x12\0\0\0\x1a\0\0\0 ?\xc8i\xfb\xbd\xea\xca\xe2?\xcc\xdb\xf4\x8cW\x14\x41?\xd1P\xeb\xa0\xfd}\xec\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0?\xa5\xe7\x62\xd6\xdboV\0\0\0\0\0\0\0\0?\xa7\x81\xd0T\xf5\xd3\xe0\0\0\0\0\0\0\0\0?\xac\xecp]\x1a\x64\xef?\xa6\x83\xa8>\xca\xd1\xf3?\xa5\xdd\x19\xddH\x18\x8d\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0?\xa5/\x9a\xe2_\xec\xc3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0?\xa4z\xe1G\xae\x14{\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0)" +state_version=1 +warn_close_playlist=true +write_metadata=false + +[Qobuz] +albums_group_by1=1 +albums_group_by2=4 +albums_group_by3=0 +albums_group_by_version=1 +albums_separate_albums_by_grouping=false +artists_group_by1=1 +artists_group_by2=4 +artists_group_by3=0 +artists_group_by_version=1 +artists_separate_albums_by_grouping=false +search_group_by1=1 +search_group_by2=4 +search_group_by3=0 +search_group_by_version=1 +songs_group_by1=1 +songs_group_by2=4 +songs_group_by3=0 +songs_group_by_version=1 +songs_separate_albums_by_grouping=false +tab=artists + +[Scrobbler] +albumartist=false +enabled=false +love_button=false +offline=false +scrobble_button=false +show_error_dialog=true +sources=collection, file, cd, device, subsonic, tidal, qobuz, spotify, stream, somafm, radioparadise, unknown +strip_remastered=true +submit=0 + +[SerializedSmartPlaylists] +songs\1\data=@ByteArray(\0\0\0\0\x2\x11\0\0\0\x14\x2\0) +songs\1\name=Newest tracks +songs\1\type=1 +songs\10\data=@ByteArray(\0\0\0\0\0\x3\0\0\0\x14\x2\x1) +songs\10\name=Dynamic random mix +songs\10\type=1 +songs\2\data=@ByteArray(\0\0\0\0\0\x3\0\0\0\x32\x2\0) +songs\2\name=50 random tracks +songs\2\type=1 +songs\3\data=@ByteArray(\0\0\0\x1\x13\x4\0\0\0\x2\0\0\0\0\0\0\0\0\0\x1\0\0\x3\0\0\0\x14\0\0) +songs\3\name=Ever played +songs\3\type=1 +songs\4\data=@ByteArray(\0\0\0\x1\x13\x6\0\0\0\x2\0\0\0\0\0\0\0\0\0\x1\0\0\x3\0\0\0\x14\0\0) +songs\4\name=Never played +songs\4\type=1 +songs\5\data=@ByteArray(\0\0\0\0\x2\x15\0\0\0\x14\x2\0) +songs\5\name=Last played +songs\5\type=1 +songs\6\data=@ByteArray(\0\0\0\0\x2\x13\0\0\0\x14\x2\0) +songs\6\name=Most played +songs\6\type=1 +songs\7\data=@ByteArray(\0\0\0\0\x2\x16\0\0\0\x14\x2\0) +songs\7\name=Favourite tracks +songs\7\type=1 +songs\8\data=@ByteArray(\0\0\0\x2\x16\x5\0\0\0\x6\0?\xe0\0\0\0\0\0\0\0\0\0\0\x1\0\x14\x4\0\0\0\x2\0\0\0\0\x4\0\0\0\0\x1\0\x2\x14\0\0\0\x14\x1\0) +songs\8\name=Least favourite tracks +songs\8\type=1 +songs\9\data=@ByteArray(\0\0\0\0\x1\x1\xff\xff\xff\xff\x2\0) +songs\9\name=All tracks +songs\9\type=1 +songs\size=10 +songs_version=3 + +[SettingsDialog] +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\x2\x16\0\0\0\x96\0\0\x5P\0\0\x3\x95\0\0\x2\x16\0\0\0\x96\0\0\x5P\0\0\x3\x95\0\0\0\0\0\0\0\0\ah\0\0\x2\x16\0\0\0\x96\0\0\x5P\0\0\x3\x95) + +[Spotify] +albums_group_by1=1 +albums_group_by2=4 +albums_group_by3=0 +albums_group_by_version=1 +albums_separate_albums_by_grouping=false +artists_group_by1=1 +artists_group_by2=4 +artists_group_by3=0 +artists_group_by_version=1 +artists_separate_albums_by_grouping=false +search_group_by1=1 +search_group_by2=4 +search_group_by3=0 +search_group_by_version=1 +songs_group_by1=1 +songs_group_by2=4 +songs_group_by3=0 +songs_group_by_version=1 +songs_separate_albums_by_grouping=false +tab=artists + +[Subsonic] +group_by1=1 +group_by2=4 +group_by3=0 +group_by_version=1 +separate_albums_by_grouping=false + +[Tidal] +albums_group_by1=1 +albums_group_by2=4 +albums_group_by3=0 +albums_group_by_version=1 +albums_separate_albums_by_grouping=false +artists_group_by1=1 +artists_group_by2=4 +artists_group_by3=0 +artists_group_by_version=1 +artists_separate_albums_by_grouping=false +search_group_by1=1 +search_group_by2=4 +search_group_by3=0 +search_group_by_version=1 +songs_group_by1=1 +songs_group_by2=4 +songs_group_by3=0 +songs_group_by_version=1 +songs_separate_albums_by_grouping=false +tab=artists