-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
0fe045b
commit 61acd50
Showing
21 changed files
with
11,749 additions
and
0 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
{ | ||
"logo-header": "<font id=\"qos\" style=\"color: white;\">O</font>BS.Ninja ", | ||
"GO": "GO", | ||
"copy-this-url": "Copy this URL into an OBS \"Browser Source\"", | ||
"you-are-in-the-control-center": "You are in the room's control center", | ||
"joining-room": "You are joining room", | ||
"add-group-chat": "Add Group Chat to OBS", | ||
"rooms-allow-for": "Rooms allow for simplified group-chat and the advanced management of multiple streams at once.", | ||
"room-name": "Room Name", | ||
"enter-the-rooms-control": "Enter the Room's Control Center", | ||
"show-tips": "Show me some tips..", | ||
"added-notes": "\n<u><i>Added Notes:</i></u>\n<li>Anyone can enter a room if they know the name, so keep it unique</li>\n<li>Invite only guests to the room you trust.</li>\n<li>iOS devices will share just their audio with other guests; this is mainly a hardware limitation</li>\n<li>The \"Recording\" option is considered experimental.</li>\n", | ||
"back": "Back", | ||
"add-your-camera": "Add your Camera to OBS", | ||
"waiting-for-camera": "Waiting for Camera to Load", | ||
"video-source": "Video source", | ||
"max-resolution": "1080p (hi-def)", | ||
"balanced": "720p (balanced)", | ||
"smooth-cool": "360p (smooth)", | ||
"select-audio-source": "Select Audio Source", | ||
"no-audio": "No Audio", | ||
"remote-screenshare-obs": "Remote Screenshare into OBS", | ||
"note-share-audio": "\n<b>note</b>: Do not forget to click \"Share audio\" in Chrome.<br>(Firefox does not support audio sharing.)", | ||
"select-screen-to-share": "SELECT SCREEN TO SHARE", | ||
"audio-sources": "Audio Sources", | ||
"create-reusable-invite": "Create Reusable Invite", | ||
"here-you-can-pre-generate": "Here you can pre-generate a reusable Browser Source link and a related guest invite link.", | ||
"generate-invite-link": "GENERATE THE INVITE LINK", | ||
"advanced-paramaters": "Advanced Options:", | ||
"unlock-video-bitrate": "Unlock Video Bitrate (20mbps)", | ||
"force-vp9-video-codec": "Force VP9 Video Codec (less artifacting)", | ||
"enable-stereo-and-pro": "Enable Stereo and Pro HD Audio", | ||
"video-resolution": "Video Resolution: ", | ||
"high-security-mode": "High Security Mode", | ||
"hide-screen-share": "Hide Screenshare Option", | ||
"allow-remote-control": "Remote Control Camera Zoom (android)", | ||
"add-the-guest-to-a-room": " Add the guest to a room:", | ||
"invite-group-chat-type": "This room guest can:", | ||
"can-see-and-hear": "Can see and hear the group chat", | ||
"can-hear-only": "Can only hear the group chat", | ||
"cant-see-or-hear": "Cannot hear or see the group chat", | ||
"info-blob": "\n<h2>What is OBS.Ninja</h2><br>\n<li>100% <b>free</b>; no downloads; no personal data collection; no sign-in</li>\n<li>Bring video from your smartphone, computer, or friends directly into your OBS video stream</li>\n<li>We use cutting edge Peer-to-Peer forwarding technology that offers privacy and ultra-low latency</li>\n<br>\n<li>Youtube video <i class=\"fa fa-youtube-play\" aria-hidden=\"true\"></i> <a href=\"https://www.youtube.com/watch?v=6R_sQKxFAhg\">Demoing it here</a> </li>\n<br>\n<i><font style=\"color:red\">Known issues:</font></i><br>\n<li><i class=\"fa fa-apple\" aria-hidden=\"true\"></i> <a href=\"https://github.com/steveseguin/obsninja/wiki/FAQ#mac-os\">MacOS users</a> need to use OBS v23 or resort to <a href=\"https://github.com/steveseguin/electroncapture\">Window Capturing</a> a browser with OBS v25</li>\n<li>Some users will have <a href=\"https://github.com/steveseguin/obsninja/wiki/FAQ#video-is-pixelated\">\"pixelation\" problems</a> with videos. Adding <b>&codec=vp9</b> to the OBS links will often correct it.</li>\n<br>\n", | ||
"remote-control-for-obs": "Remote Control for OBS", | ||
"add-to-group": "Add to Group Scene", | ||
"mute": "Mute", | ||
"record": "Record", | ||
"volume": "Volume", | ||
"open-in-new-tab": "Open in new Tab", | ||
"copy-to-clipboard": "Copy to Clipboard" | ||
} |
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,74 @@ | ||
var trans = { | ||
"titles": { | ||
"join-by-room-name-here": "Enter a room name to quick join", | ||
"join-room": "Join room", | ||
"enable-the-chrome-experimental-features-flag-to-use-chrome-flags-enable-experimental-web-platform-features": "Enable the Chrome experimental features flag to use: chrome://flags/#enable-experimental-web-platform-features" | ||
}, | ||
"innerHTML": { | ||
"mute-guest": "Mute Guest", | ||
"logo-header": "\n<font id=\"qos\" style=\"color: white;\">V</font>DO.Ninja \n", | ||
"start": "START", | ||
"update-your-device": "We've detected that you are using an old version of Apple iOS, which is known to have many issues.<br><br>Please consider updating.", | ||
"publish-via-whip": "Publish via WHIP", | ||
"share-whepsrc": "Share via WHEP", | ||
"enter-the-whep-URL-you-wish-to-share": "Enter the WHEP URL you wish to share." | ||
}, | ||
"placeholders": { | ||
"join-by-room-name-here": "Join by Room Name here", | ||
"enter-chat-message-to-send-here": "Enter chat message to send here", | ||
"enter-your-message-here": "Enter your message here", | ||
"-whip-url-to-publish-to-goes-here": "➡️ WHIP URL to publish to goes here", | ||
"-authentication-bearer-token-optional-": "🗝️ Authentication Bearer Token (optional)" | ||
}, | ||
"miscellaneous": { | ||
"start": "START", | ||
"new-display-name": "Enter a new Display Name for this stream", | ||
"this-is-you": "This is you, a co-director.<br />You are also a performer.", | ||
"preview-meshcast-disabled": "You can't adjust the preview bitrate for Meshcast-based streams" | ||
} | ||
}; | ||
|
||
function getAllContentNodes(element) { // takes an element. | ||
if (!element.childNodes || !element.childNodes.length){ | ||
element.textContent = pigLatin(element.textContent) || ""; | ||
} | ||
element.childNodes.forEach(node=>{ | ||
if (node.childNodes.length){ | ||
getAllContentNodes(node) | ||
} else if ((node.nodeType === 3) && (node.textContent.trim().length > 0)){ | ||
node.textContent = pigLatin(node.textContent) || ""; | ||
} | ||
}); | ||
} | ||
|
||
function pigLatin(input) { // should be safe for line breaks, etc. | ||
var vowels = ["a", "e", "i", "o", "u"]; | ||
var translated = ""; | ||
var cluster = ""; | ||
if (vowels.includes(input[0])){ | ||
translated = input + "way"; | ||
} else { | ||
for (var i = 0; i < input.length; i++) { | ||
if (!vowels.includes(input[i])){ | ||
cluster += input[i]; | ||
} else { | ||
translated = input.substring(i) + cluster + "ay"; | ||
break; | ||
} | ||
translated = input + "ay"; | ||
} | ||
} | ||
return translated; | ||
} | ||
|
||
var xx = document.createElement("span"); | ||
|
||
Object.keys(trans).forEach(main=>{ | ||
Object.keys(trans[main]).forEach(key=>{ | ||
xx.innerHTML = trans[main][key]; | ||
getAllContentNodes(xx); | ||
trans[main][key] = xx.innerHTML; | ||
}); | ||
}); | ||
|
||
console.log(JSON.stringify(trans)); // clean up and use. |
Oops, something went wrong.