{"id":43020242,"url":"https://github.com/norihiro/obs-h8819-source","last_synced_at":"2026-01-31T06:19:56.150Z","repository":{"id":37462980,"uuid":"457372936","full_name":"norihiro/obs-h8819-source","owner":"norihiro","description":"OBS Studio audio source capturing REAC packets","archived":false,"fork":false,"pushed_at":"2025-09-03T13:43:00.000Z","size":199,"stargazers_count":4,"open_issues_count":7,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-10T12:25:42.833Z","etag":null,"topics":["obs-studio","obs-studio-plugin"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/norihiro.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"custom":"https://paypal.me/nkamae","github":"norihiro","ko_fi":"nkamae"}},"created_at":"2022-02-09T13:36:31.000Z","updated_at":"2025-09-22T10:11:08.000Z","dependencies_parsed_at":"2023-01-21T05:17:42.875Z","dependency_job_id":"a5114566-3624-4598-bd41-9b3056b1116d","html_url":"https://github.com/norihiro/obs-h8819-source","commit_stats":{"total_commits":108,"total_committers":1,"mean_commits":108.0,"dds":0.0,"last_synced_commit":"68d922f2f64ad5e342976aaac44c890de7521fba"},"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/norihiro/obs-h8819-source","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/norihiro%2Fobs-h8819-source","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/norihiro%2Fobs-h8819-source/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/norihiro%2Fobs-h8819-source/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/norihiro%2Fobs-h8819-source/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/norihiro","download_url":"https://codeload.github.com/norihiro/obs-h8819-source/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/norihiro%2Fobs-h8819-source/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28931096,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-31T04:05:25.756Z","status":"ssl_error","status_checked_at":"2026-01-31T04:02:35.005Z","response_time":128,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["obs-studio","obs-studio-plugin"],"created_at":"2026-01-31T06:19:55.455Z","updated_at":"2026-01-31T06:19:56.140Z","avatar_url":"https://github.com/norihiro.png","language":"C","funding_links":["https://paypal.me/nkamae","https://github.com/sponsors/norihiro","https://ko-fi.com/nkamae"],"categories":[],"sub_categories":[],"readme":"# h8819 Source Plugin - Audio over Ethernet Source\n\n## Introduction\n\nThis plugin captures audio packets from REAC, which is an audio-over-ethernet protocol developed by Roland,\nand provides the audio as sources on OBS Studio.\n\nWhy h8819... This plugin captures packets whose EtherType is 0x8819.\nAn initial `h` is added to express that the hardware was made by the company at Hamamatsu, Japan.\n\n## Tested device\n\nThis plugin was developed and tested with Roland M-200i with it's sampling frequency 48 kHz.\n\n44.1 kHz sampling frequency is not currently supported since the sampling frequency is hard-coded to 48 kHz.\nTo use this plugin, you have to set the sampling frequency of the REAC device to 48 kHz.\n(Still you can set any sampling frequency on OBS Studio.)\n\n## Disclaimer\n\nThis plugin is provided \"as is\" without warranty of any kind,\neither expressed or implied, and the plugin is to be used at your own risk.\nThe author of this plugin has no relationship with Roland.\nDo not ask Roland for support of this plugin.\n\n## Prerequisite\n\nThis plugin is developed for hardware supporting REAC.\nIn addition to your PC running OBS, you need to have\n- Dedicated Ethernet adapter on your PC for REAC connection.\n  You should not share your LAN with REAC. That means two ethernet ports are required for streaming.\n- REAC supported device.\n  Currently only M-200i is tested with this plugin.\n\n## Configuring as a global audio device\n\nThe source type of the global audio devices is hard-coded in OBS Studio.\nYou have to edit your scene collection file.\n\nInstruction below is made for Linux.\nFor macOS user, replace `~/.config/obs-studio/` with `~/Library/Application Support/obs-studio/`.\n\nBefore start editing, add a default audio source on OBS Studio and exit OBS Studio.\n\nAt first, find your scene collection file and format it to be edited easily.\nBelow is an example. If you have changed your scene collection name, the file name will differ.\nAt the same time, take a backup file `scene-backup.json`.\n```\npython3 -mjson.tool ~/.config/obs-studio/basic/scenes/Untitled.json \u003e scene.json\ncp scene.json scene-backup.json\n```\n\nThen, open the file `scene.json` by your editor and find an entry named `AuxAudioDevice1`.\nEdit `id`, `settings`, `versioned_id` as below (`+` indicates a new line, `-` indicates a removed line).\n```patch\n     \"AuxAudioDevice1\": {\n         \"balance\": 0.5,\n         \"deinterlace_field_order\": 0,\n         \"deinterlace_mode\": 0,\n         \"enabled\": true,\n         \"flags\": 0,\n         \"hotkeys\": {\n             \"libobs.mute\": [],\n             \"libobs.push-to-mute\": [],\n             \"libobs.push-to-talk\": [],\n             \"libobs.unmute\": []\n         },\n-        \"id\": \"pulse_input_capture\",\n+        \"id\": \"net.nagater.obs-h8819-source.source\",\n         \"mixers\": 255,\n         \"monitoring_type\": 0,\n         \"muted\": false,\n         \"name\": \"Mic/Aux\",\n         \"prev_ver\": 453115907,\n         \"private_settings\": {},\n         \"push-to-mute\": false,\n         \"push-to-mute-delay\": 0,\n         \"push-to-talk\": false,\n         \"push-to-talk-delay\": 0,\n         \"settings\": {\n-            \"device_id\": \"default\"\n+            \"channel_l\": 7,\n+            \"channel_r\": 8,\n+            \"device_name\": \"enp12s0\"\n         },\n         \"sync\": 0,\n-        \"versioned_id\": \"pulse_input_capture\",\n+        \"versioned_id\": \"net.nagater.obs-h8819-source.source\",\n         \"volume\": 1.0\n     },\n```\nYou might need to adjust `device_name` depending on your hardware configuration.\n\nFinally, apply your change.\n```\ncp scene.json ~/.config/obs-studio/basic/scenes/Untitled.json\n```\n\nJust in case something went wrong, revert to your backup.\n```\ncp scene-backup.json ~/.config/obs-studio/basic/scenes/Untitled.json\n```\n\n## Properties\n\n### Ethernet device\nSpecifies which ethernet device to be monitored.\nAvailable devices will be listed on the popup list.\n\n### Channel L / R\nSpecify left and right channel to be captured.\nAvailable range is 1 to 40.\n\n## Build and install\n### Linux\nUse cmake to build on Linux. After checkout, run these commands.\n```\nsed -i 's;${CMAKE_INSTALL_FULL_LIBDIR};/usr/lib;' CMakeLists.txt\nmkdir build \u0026\u0026 cd build\ncmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=/usr/lib ..\nmake\nsudo make install\n```\nDuring install, `setcap` will be called to enable packet capture.\nYou might need to adjust `CMAKE_INSTALL_LIBDIR` for your system.\n\n### macOS\nBuild flow is similar to that for Linux.\n\nAfter install, you need to set permission to capture raw packets. For example,\n```\nsudo chmod og+rw /dev/bpf0\n```\nNote that `bpf0` in the example should be adjusted depending on your system and usage.\n\n## Log file\nThis plugin will periodically output log lines like below.\nIf there are dropped packets, you should adjust your computer settings or connection, or just insufficient hardware performance.\n```\nh8819[enp2s0] current status: 262144 packets received, 0 packets dropped\n```\n\nOBS Studio might leave a log saying adding audio buffering like below.\nIf the amount is around 50 milliseconds or less, it should be all right.\nIf the amount keeps increasing, something is wrong.\n```\nadding 42 milliseconds of audio buffering, total audio buffering is now 42 milliseconds\n```\n\n## See also\n\n- [reacdriver](https://github.com/per-gron/reacdriver) - The format of the packet was taken from this implementation.\n- [reaccapture](https://github.com/norihiro/reaccapture) - Standalone implementation to convert the packet to wave file.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnorihiro%2Fobs-h8819-source","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnorihiro%2Fobs-h8819-source","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnorihiro%2Fobs-h8819-source/lists"}