obs-studio/UI/data/locale/en-US.ini

853 lines
43 KiB
INI
Raw Normal View History

# Note to translators: *DO NOT* translate this file directly. Instead, visit http://crowdin.com/project/obs-studio and submit your translations there.
# Pull requests for translations outside of CrowdIn will not be accepted.
# Read this forum post for more instructions on submitting translations: https://obsproject.com/forum/threads/how-to-contribute-translations-for-obs.16327/
# Language and language region of this file
2013-12-18 09:08:31 -08:00
Language="English"
Region="United States"
# commonly shared locale
OK="OK"
Apply="Apply"
Cancel="Cancel"
Close="Close"
Save="Save"
Discard="Discard"
Disable="Disable"
Yes="Yes"
No="No"
Add="Add"
Remove="Remove"
Rename="Rename"
Interact="Interact"
2015-02-25 21:23:57 -08:00
Filters="Filters"
Properties="Properties"
MoveUp="Move Up"
MoveDown="Move Down"
2013-12-10 10:22:09 -08:00
Settings="Settings"
Display="Display"
Name="Name"
Exit="Exit"
UI: Add scene editing So, scene editing was interesting (and by interesting I mean excruciating). I almost implemented 'manipulator' visuals (ala 3dsmax for example), and used 3 modes for controlling position/rotation/size, but in a 2D editing, it felt clunky, so I defaulted back to simply click-and-drag for movement, and then took a similar though slightly different looking approach for handling scaling and reszing. I also added a number of menu item helpers related to positioning, scaling, rotating, flipping, and resetting the transform back to default. There is also a new 'transform' dialog (accessible via menu) which will allow you to manually edit every single transform variable of a scene item directly if desired. If a scene item does not have bounds active, pulling on the sides of a source will cause it to resize it via base scale rather than by the bounding box system (if the source resizes that scale will apply). If bounds are active, it will modify the bounding box only instead. How a source scales when a bounding box is active depends on the type of bounds being used. You can set it to scale to the inner bounds, the outer bounds, scale to bounds width only, scale to bounds height only, and a setting to stretch to bounds (which forces a source to always draw at the bounding box size rather than be affected by its internal size). You can also set it to be used as a 'maximum' size, so that the source doesn't necessarily get scaled unless it extends beyond the bounds. Like in OBS1, objects will snap to the edges unless the control key is pressed. However, this will now happen even if the object is rotated or oriented in any strange way. Snapping will also occur when stretching or changing the bounding box size.
2014-06-15 00:54:48 -07:00
Mixer="Mixer"
Browse="Browse"
Mono="Mono"
Stereo="Stereo"
DroppedFrames="Dropped Frames %1 (%2%)"
StudioProgramProjector="Fullscreen Projector (Program)"
PreviewProjector="Fullscreen Projector (Preview)"
SceneProjector="Fullscreen Projector (Scene)"
SourceProjector="Fullscreen Projector (Source)"
StudioProgramWindow="Windowed Projector (Program)"
PreviewWindow="Windowed Projector (Preview)"
SceneWindow="Windowed Projector (Scene)"
SourceWindow="Windowed Projector (Source)"
MultiviewProjector="Multiview (Fullscreen)"
MultiviewWindowed="Multiview (Windowed)"
Clear="Clear"
Revert="Revert"
Show="Show"
Hide="Hide"
UnhideAll="Unhide All"
Untitled="Untitled"
New="New"
Duplicate="Duplicate"
Enable="Enable"
DisableOSXVSync="Disable OSX V-Sync"
ResetOSXVSyncOnExit="Reset OSX V-Sync on Exit"
HighResourceUsage="Encoding overloaded! Consider turning down video settings or using a faster encoding preset."
Transition="Transition"
QuickTransitions="Quick Transitions"
2016-03-31 10:12:13 -07:00
Left="Left"
Right="Right"
Top="Top"
Bottom="Bottom"
Reset="Reset"
Hours="Hours"
Minutes="Minutes"
Seconds="Seconds"
Deprecated="Deprecated"
ReplayBuffer="Replay Buffer"
Import="Import"
Export="Export"
Copy="Copy"
Paste="Paste"
PasteReference="Paste (Reference)"
PasteDuplicate="Paste (Duplicate)"
2017-04-08 23:31:29 -07:00
RemuxRecordings="Remux Recordings"
Next="Next"
Back="Back"
Defaults="Defaults"
HideMixer="Hide in Mixer"
TransitionOverride="Transition Override"
None="None"
StudioMode.Preview="Preview"
StudioMode.Program="Program"
ShowInMultiview="Show in Multiview"
2018-04-27 19:49:48 -07:00
VerticalLayout="Vertical Layout"
2018-06-02 09:45:01 -07:00
Group="Group"
# warning if program already open
AlreadyRunning.Title="OBS is already running"
AlreadyRunning.Text="OBS is already running! Unless you meant to do this, please shut down any existing instances of OBS before trying to run a new instance. If you have OBS set to minimize to the system tray, please check to see if it's still running there."
AlreadyRunning.LaunchAnyway="Launch Anyway"
# copy filters
Copy.Filters="Copy Filters"
Paste.Filters="Paste Filters"
# bandwidth test
BandwidthTest.Region="Region"
BandwidthTest.Region.US="United States"
BandwidthTest.Region.EU="Europe"
BandwidthTest.Region.Asia="Asia"
BandwidthTest.Region.Other="Other"
# first time startup
Basic.FirstStartup.RunWizard="Would you like to run the auto-configuration wizard? You can also manually configure your settings by clicking the Settings button in the main window."
Basic.FirstStartup.RunWizard.BetaWarning="(Note: The auto-configuration wizard is currently in beta)"
Basic.FirstStartup.RunWizard.NoClicked="If you change your mind, you can run the auto-configuration wizard any time again from the Tools menu."
# auto config wizard
Basic.AutoConfig="Auto-Configuration Wizard"
Basic.AutoConfig.Beta="Auto-Configuration Wizard (Beta)"
Basic.AutoConfig.ApplySettings="Apply Settings"
Basic.AutoConfig.StartPage="Usage Information"
Basic.AutoConfig.StartPage.SubTitle="Specify what you want to use the program for"
Basic.AutoConfig.StartPage.PrioritizeStreaming="Optimize for streaming, recording is secondary"
Basic.AutoConfig.StartPage.PrioritizeRecording="Optimize just for recording, I will not be streaming"
Basic.AutoConfig.VideoPage="Video Settings"
Basic.AutoConfig.VideoPage.SubTitle="Specify the desired video settings you would like to use"
Basic.AutoConfig.VideoPage.BaseResolution.UseCurrent="Use Current (%1x%2)"
Basic.AutoConfig.VideoPage.BaseResolution.Display="Display %1 (%2x%3)"
Basic.AutoConfig.VideoPage.FPS.UseCurrent="Use Current (%1)"
Basic.AutoConfig.VideoPage.FPS.PreferHighFPS="Either 60 or 30, but prefer 60 when possible"
Basic.AutoConfig.VideoPage.FPS.PreferHighRes="Either 60 or 30, but prefer high resolution"
Basic.AutoConfig.VideoPage.CanvasExplanation="Note: The canvas (base) resolution is not necessarily the same as the resolution you will stream or record with. Your actual stream/recording resolution may be scaled down from the canvas resolution to reduce resource usage or bitrate requirements."
Basic.AutoConfig.StreamPage="Stream Information"
Basic.AutoConfig.StreamPage.SubTitle="Please enter your stream information"
Basic.AutoConfig.StreamPage.Service="Service"
Basic.AutoConfig.StreamPage.Service.ShowAll="Show All..."
Basic.AutoConfig.StreamPage.Server="Server"
Basic.AutoConfig.StreamPage.StreamKey="Stream Key"
Basic.AutoConfig.StreamPage.StreamKey.LinkToSite="(Link)"
Basic.AutoConfig.StreamPage.PerformBandwidthTest="Estimate bitrate with bandwidth test (may take a few minutes)"
Basic.AutoConfig.StreamPage.PreferHardwareEncoding="Prefer hardware encoding"
Basic.AutoConfig.StreamPage.PreferHardwareEncoding.ToolTip="Hardware Encoding eliminates most CPU usage, but may require more bitrate to obtain the same level of quality."
Basic.AutoConfig.StreamPage.StreamWarning.Title="Stream warning"
Basic.AutoConfig.StreamPage.StreamWarning.Text="The bandwidth test is about to stream randomized video data without audio to your channel. If you're able, it's recommended to temporarily turn off saving videos of streams and set the stream to private until after the test has completed. Continue?"
Basic.AutoConfig.TestPage="Final Results"
Basic.AutoConfig.TestPage.SubTitle.Testing="The program is now executing a set of tests to estimate the most ideal settings"
Basic.AutoConfig.TestPage.SubTitle.Complete="Testing complete"
Basic.AutoConfig.TestPage.TestingBandwidth="Performing bandwidth test, this may take a few minutes..."
Basic.AutoConfig.TestPage.TestingBandwidth.Connecting="Connecting to: %1..."
Basic.AutoConfig.TestPage.TestingBandwidth.ConnectFailed="Failed to connect to any servers, please check your internet connection and try again."
Basic.AutoConfig.TestPage.TestingBandwidth.Server="Testing bandwidth for: %1"
Basic.AutoConfig.TestPage.TestingStreamEncoder="Testing stream encoder, this may take a minute..."
Basic.AutoConfig.TestPage.TestingRecordingEncoder="Testing recording encoder, this may take a minute..."
Basic.AutoConfig.TestPage.TestingRes="Testing resolutions, this may take a few minutes..."
Basic.AutoConfig.TestPage.TestingRes.Fail="Failed to start up encoder"
Basic.AutoConfig.TestPage.TestingRes.Resolution="Testing %1x%2 %3 FPS..."
Basic.AutoConfig.TestPage.Result.StreamingEncoder="Streaming Encoder"
Basic.AutoConfig.TestPage.Result.RecordingEncoder="Recording Encoder"
Basic.AutoConfig.TestPage.Result.Header="The program has determined that these estimated settings are the most ideal for you:"
Basic.AutoConfig.TestPage.Result.Footer="To use these settings, click Apply Settings. To reconfigure the wizard and try again, click Back. To manually configure settings yourself, click Cancel and open Settings."
# stats
Basic.Stats="Stats"
Basic.Stats.CPUUsage="CPU Usage"
Basic.Stats.HDDSpaceAvailable="HDD space available"
Basic.Stats.MemoryUsage="Memory Usage"
Basic.Stats.AverageTimeToRender="Average time to render frame"
Basic.Stats.SkippedFrames="Skipped frames due to encoding lag"
Basic.Stats.MissedFrames="Frames missed due to rendering lag"
Basic.Stats.Output.Stream="Stream"
Basic.Stats.Output.Recording="Recording"
Basic.Stats.Status="Status"
Basic.Stats.Status.Recording="Recording"
Basic.Stats.Status.Live="LIVE"
Basic.Stats.Status.Reconnecting="Reconnecting"
Basic.Stats.Status.Inactive="Inactive"
Basic.Stats.DroppedFrames="Dropped Frames (Network)"
Basic.Stats.MegabytesSent="Total Data Output"
Basic.Stats.Bitrate="Bitrate"
2017-02-20 04:46:29 -08:00
# updater
Updater.Title="New update available"
Updater.Text="There is a new update available:"
Updater.UpdateNow="Update Now"
Updater.RemindMeLater="Remind me Later"
Updater.Skip="Skip Version"
Updater.Running.Title="Program currently active"
Updater.Running.Text="Outputs are currently active, please shut down any active outputs before attempting to update"
Updater.NoUpdatesAvailable.Title="No updates available"
Updater.NoUpdatesAvailable.Text="No updates are currently available"
Updater.FailedToLaunch="Failed to launch updater"
Updater.GameCaptureActive.Title="Game capture active"
Updater.GameCaptureActive.Text="Game capture hook library is currently in use. Please close any games/programs being captured (or restart windows) and try again."
# quick transitions
QuickTransitions.SwapScenes="Swap Preview/Output Scenes After Transitioning"
QuickTransitions.SwapScenesTT="Swaps the preview and output scenes after transitioning (if the output's original scene still exists).\nThis will not undo any changes that may have been made to the output's original scene."
QuickTransitions.DuplicateScene="Duplicate Scene"
QuickTransitions.DuplicateSceneTT="When editing the same scene, allows editing transform/visibility of sources without modifying the output.\nTo edit properties of sources without modifying the output, enable 'Duplicate Sources'.\nChanging this value will reset the current output scene (if it still exists)."
QuickTransitions.EditProperties="Duplicate Sources"
QuickTransitions.EditPropertiesTT="When editing the same scene, allows editing properties of sources without modifying the output.\nThis can only be used if 'Duplicate Scene' is enabled.\nCertain sources (such as capture or media sources) do not support this and cannot be edited separately.\nChanging this value will reset the current output scene (if it still exists).\n\nWarning: Because sources will be duplicated, this may require extra system or video resources."
QuickTransitions.HotkeyName="Quick Transition: %1"
# transitions
2016-02-27 02:50:04 -08:00
Basic.AddTransition="Add Configurable Transition"
Basic.RemoveTransition="Remove Configurable Transition"
Basic.TransitionProperties="Transition Properties"
Basic.SceneTransitions="Scene Transitions"
Basic.TransitionDuration="Duration"
Basic.TogglePreviewProgramMode="Studio Mode"
2016-02-27 02:50:04 -08:00
# transition name dialog
TransitionNameDlg.Text="Please enter the name of the transition"
TransitionNameDlg.Title="Transition Name"
# title bar strings
TitleBar.Profile="Profile"
TitleBar.Scenes="Scenes"
# "name already exists" dialog box
NameExists.Title="Name already exists"
NameExists.Text="The name is already in use."
NoNameEntered.Title="Please enter a valid name"
NoNameEntered.Text="You cannot use empty names."
# confirm start stream dialog box
ConfirmStart.Title="Start Stream?"
ConfirmStart.Text="Are you sure you want to start the stream?"
# confirm stop stream dialog box
ConfirmStop.Title="Stop Stream?"
ConfirmStop.Text="Are you sure you want to stop the stream?"
# confirm exit dialog box
ConfirmExit.Title="Exit OBS?"
2015-09-06 15:58:06 -07:00
ConfirmExit.Text="OBS is currently active. All streams/recordings will be shut down. Are you sure you wish to exit?"
# confirm delete dialog box
ConfirmRemove.Title="Confirm Remove"
ConfirmRemove.Text="Are you sure you wish to remove '$1'?"
ConfirmRemove.TextMultiple="Are you sure you wish to remove %1 items?"
# output start messages
Output.StartStreamFailed="Failed to start streaming"
Output.StartRecordingFailed="Failed to start recording"
Output.StartReplayFailed="Failed to start replay buffer"
Output.StartFailedGeneric="Starting the output failed. Please check the log for details.\n\nNote: If you are using the NVENC or AMD encoders, make sure your video drivers are up to date."
# output connect messages
Output.ConnectFail.Title="Failed to connect"
Output.ConnectFail.BadPath="Invalid Path or Connection URL. Please check your settings to confirm that they are valid."
Output.ConnectFail.ConnectFailed="Failed to connect to server"
Output.ConnectFail.InvalidStream="Could not access the specified channel or stream key, please double-check your stream key. If it is correct, there may be a problem connecting to the server."
Output.ConnectFail.Error="An unexpected error occurred when trying to connect to the server. More information in the log file."
Output.ConnectFail.Disconnected="Disconnected from server."
# output recording-related messages
Output.RecordFail.Title="Failed to start recording"
Output.RecordFail.Unsupported="The output format is either unsupported or does not support more than one audio track. Please check your settings and try again."
Output.RecordNoSpace.Title="Insufficient disk space"
Output.RecordNoSpace.Msg="There is not sufficient disk space to continue recording."
Output.RecordError.Title="Recording error"
Output.RecordError.Msg="An unspecified error occurred while recording."
Output.ReplayBuffer.NoHotkey.Title="No hotkey set!"
Output.ReplayBuffer.NoHotkey.Msg="No save hotkey set for replay buffer. Please set the \"Save\" hotkey to use for saving replay recordings."
# output recording messages
Output.BadPath.Title="Bad File Path"
Output.BadPath.Text="The configured file output path is invalid. Please check your settings to confirm that a valid file path has been set."
# log upload dialog text and messages
LogReturnDialog="Log Upload Successful"
LogReturnDialog.CopyURL="Copy URL"
LogReturnDialog.ErrorUploadingLog="Error uploading log file"
2014-07-13 11:36:47 -07:00
# license agreement dialog
LicenseAgreement="License Agreement"
LicenseAgreement.PleaseReview="Please review the license terms before using OBS. By using this program, you acknowledge that you have read and agree to the terms of the <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU General Public License v2.0</a>. Please scroll down to see the rest of the agreement."
LicenseAgreement.ClickIAgreeToContinue="If you accept the terms of the agreement, click I Agree to continue. You must accept the agreement to use OBS."
LicenseAgreement.IAgree="I Agree"
LicenseAgreement.Exit="Exit"
# remux dialog
Remux.SourceFile="OBS Recording"
Remux.TargetFile="Target File"
Remux.Remux="Remux"
Remux.OBSRecording="OBS Recording"
Remux.FinishedTitle="Remuxing finished"
Remux.Finished="Recording remuxed"
Remux.FinishedError="Recording remuxed, but the file may be incomplete"
Remux.SelectRecording="Select OBS Recording …"
Remux.SelectTarget="Select target file …"
Remux.FileExistsTitle="Target file exists"
Remux.FileExists="Target file exists, do you want to replace it?"
Remux.ExitUnfinishedTitle="Remuxing in progress"
Remux.ExitUnfinished="Remuxing is not finished, stopping now may render the target file unusable.\nAre you sure you want to stop remuxing?"
2014-07-13 23:56:28 -07:00
# update dialog
UpdateAvailable="New Update Available"
UpdateAvailable.Text="Version %1.%2.%3 is now available. <a href='%4'>Click here to download</a>"
# audio device names
Basic.DesktopDevice1="Desktop Audio"
Basic.DesktopDevice2="Desktop Audio 2"
Basic.AuxDevice1="Mic/Aux"
Basic.AuxDevice2="Mic/Aux 2"
Basic.AuxDevice3="Mic/Aux 3"
Basic.AuxDevice4="Mic/Aux 4"
# startup scene/capture
Basic.Scene="Scene"
Basic.DisplayCapture="Display Capture"
# display context menu
Basic.Main.PreviewConextMenu.Enable="Enable Preview"
# scale filtering
ScaleFiltering="Scale Filtering"
ScaleFiltering.Point="Point"
ScaleFiltering.Bilinear="Bilinear"
ScaleFiltering.Bicubic="Bicubic"
ScaleFiltering.Lanczos="Lanczos"
# deinterlacing
Deinterlacing="Deinterlacing"
Deinterlacing.Discard="Discard"
Deinterlacing.Retro="Retro"
Deinterlacing.Blend="Blend"
Deinterlacing.Blend2x="Blend 2x"
Deinterlacing.Linear="Linear"
Deinterlacing.Linear2x="Linear 2x"
Deinterlacing.Yadif="Yadif"
Deinterlacing.Yadif2x="Yadif 2x"
Deinterlacing.TopFieldFirst="Top Field First"
Deinterlacing.BottomFieldFirst="Bottom Field First"
# volume control accessibility text
VolControl.SliderUnmuted="Volume slider for '%1': %2"
VolControl.SliderMuted="Volume slider for '%1': %2 (currently muted)"
VolControl.Mute="Mute '%1'"
VolControl.Properties="Properties for '%1'"
# add scene dialog
Basic.Main.AddSceneDlg.Title="Add Scene"
Basic.Main.AddSceneDlg.Text="Please enter the name of the scene"
# add scene suggested name
Basic.Main.DefaultSceneName.Text="Scene %1"
# add scene collection dialog
Basic.Main.AddSceneCollection.Title="Add Scene Collection"
Basic.Main.AddSceneCollection.Text="Please enter the name of the scene collection"
# rename scene collection dialog
Basic.Main.RenameSceneCollection.Title="Rename Scene Collection"
# add profile dialog
AddProfile.Title="Add Profile"
AddProfile.Text="Please enter the name of the profile"
# rename profile dialog
RenameProfile.Title="Rename Profile"
# rename audio source in mixer
Basic.Main.MixerRename.Title="Rename Audio Source"
Basic.Main.MixerRename.Text="Please enter the name of the audio source"
# preview window disabled
Basic.Main.PreviewDisabled="Preview is currently disabled"
# add source dialog
2014-07-13 13:09:56 -07:00
Basic.SourceSelect="Create/Select Source"
Basic.SourceSelect.CreateNew="Create new"
Basic.SourceSelect.AddExisting="Add Existing"
Basic.SourceSelect.AddVisible="Make source visible"
# properties window
2014-07-12 02:08:51 -07:00
Basic.PropertiesWindow="Properties for '%1'"
Basic.PropertiesWindow.AutoSelectFormat="%1 (autoselect: %2)"
2014-07-19 12:00:14 -07:00
Basic.PropertiesWindow.SelectColor="Select color"
Basic.PropertiesWindow.SelectFont="Select font"
Basic.PropertiesWindow.ConfirmTitle="Settings Changed"
Basic.PropertiesWindow.Confirm="There are unsaved changes. Do you want to keep them?"
Basic.PropertiesWindow.NoProperties="No properties available"
Basic.PropertiesWindow.AddFiles="Add Files"
Basic.PropertiesWindow.AddDir="Add Directory"
Basic.PropertiesWindow.AddURL="Add Path/URL"
Basic.PropertiesWindow.AddEditableListDir="Add directory to '%1'"
Basic.PropertiesWindow.AddEditableListFiles="Add files to '%1'"
Basic.PropertiesWindow.AddEditableListEntry="Add entry to '%1'"
Basic.PropertiesWindow.EditEditableListEntry="Edit entry from '%1'"
# properties view
Basic.PropertiesView.FPS.Simple="Simple FPS Values"
Basic.PropertiesView.FPS.Rational="Rational FPS Values"
Basic.PropertiesView.FPS.ValidFPSRanges="Valid FPS Ranges:"
2014-09-15 16:16:16 -07:00
# interaction window
Basic.InteractionWindow="Interacting with '%1'"
# status bar
Basic.StatusBar.Reconnecting="Disconnected, reconnecting in %2 second(s) (attempt %1)"
Basic.StatusBar.AttemptingReconnect="Attempting to reconnect... (attempt %1)"
Basic.StatusBar.ReconnectSuccessful="Reconnection successful"
Basic.StatusBar.Delay="Delay (%1 sec)"
Basic.StatusBar.DelayStartingIn="Delay (starting in %1 sec)"
Basic.StatusBar.DelayStoppingIn="Delay (stopping in %1 sec)"
Basic.StatusBar.DelayStartingStoppingIn="Delay (stopping in %1 sec, starting in %2 sec)"
2015-02-25 21:23:57 -08:00
# filters window
Basic.Filters="Filters"
Basic.Filters.AsyncFilters="Audio/Video Filters"
Basic.Filters.AudioFilters="Audio Filters"
Basic.Filters.EffectFilters="Effect Filters"
Basic.Filters.Title="Filters for '%1'"
Basic.Filters.AddFilter.Title="Filter name"
Basic.Filters.AddFilter.Text="Please specify the name of the filter"
UI: Add scene editing So, scene editing was interesting (and by interesting I mean excruciating). I almost implemented 'manipulator' visuals (ala 3dsmax for example), and used 3 modes for controlling position/rotation/size, but in a 2D editing, it felt clunky, so I defaulted back to simply click-and-drag for movement, and then took a similar though slightly different looking approach for handling scaling and reszing. I also added a number of menu item helpers related to positioning, scaling, rotating, flipping, and resetting the transform back to default. There is also a new 'transform' dialog (accessible via menu) which will allow you to manually edit every single transform variable of a scene item directly if desired. If a scene item does not have bounds active, pulling on the sides of a source will cause it to resize it via base scale rather than by the bounding box system (if the source resizes that scale will apply). If bounds are active, it will modify the bounding box only instead. How a source scales when a bounding box is active depends on the type of bounds being used. You can set it to scale to the inner bounds, the outer bounds, scale to bounds width only, scale to bounds height only, and a setting to stretch to bounds (which forces a source to always draw at the bounding box size rather than be affected by its internal size). You can also set it to be used as a 'maximum' size, so that the source doesn't necessarily get scaled unless it extends beyond the bounds. Like in OBS1, objects will snap to the edges unless the control key is pressed. However, this will now happen even if the object is rotated or oriented in any strange way. Snapping will also occur when stretching or changing the bounding box size.
2014-06-15 00:54:48 -07:00
# transform window
Basic.TransformWindow="Scene Item Transform"
Basic.TransformWindow.Position="Position"
Basic.TransformWindow.Rotation="Rotation"
Basic.TransformWindow.Size="Size"
UI: Add scene editing So, scene editing was interesting (and by interesting I mean excruciating). I almost implemented 'manipulator' visuals (ala 3dsmax for example), and used 3 modes for controlling position/rotation/size, but in a 2D editing, it felt clunky, so I defaulted back to simply click-and-drag for movement, and then took a similar though slightly different looking approach for handling scaling and reszing. I also added a number of menu item helpers related to positioning, scaling, rotating, flipping, and resetting the transform back to default. There is also a new 'transform' dialog (accessible via menu) which will allow you to manually edit every single transform variable of a scene item directly if desired. If a scene item does not have bounds active, pulling on the sides of a source will cause it to resize it via base scale rather than by the bounding box system (if the source resizes that scale will apply). If bounds are active, it will modify the bounding box only instead. How a source scales when a bounding box is active depends on the type of bounds being used. You can set it to scale to the inner bounds, the outer bounds, scale to bounds width only, scale to bounds height only, and a setting to stretch to bounds (which forces a source to always draw at the bounding box size rather than be affected by its internal size). You can also set it to be used as a 'maximum' size, so that the source doesn't necessarily get scaled unless it extends beyond the bounds. Like in OBS1, objects will snap to the edges unless the control key is pressed. However, this will now happen even if the object is rotated or oriented in any strange way. Snapping will also occur when stretching or changing the bounding box size.
2014-06-15 00:54:48 -07:00
Basic.TransformWindow.Alignment="Positional Alignment"
Basic.TransformWindow.BoundsType="Bounding Box Type"
Basic.TransformWindow.BoundsAlignment="Alignment in Bounding Box"
Basic.TransformWindow.Bounds="Bounding Box Size"
2016-03-31 10:12:13 -07:00
Basic.TransformWindow.Crop="Crop"
UI: Add scene editing So, scene editing was interesting (and by interesting I mean excruciating). I almost implemented 'manipulator' visuals (ala 3dsmax for example), and used 3 modes for controlling position/rotation/size, but in a 2D editing, it felt clunky, so I defaulted back to simply click-and-drag for movement, and then took a similar though slightly different looking approach for handling scaling and reszing. I also added a number of menu item helpers related to positioning, scaling, rotating, flipping, and resetting the transform back to default. There is also a new 'transform' dialog (accessible via menu) which will allow you to manually edit every single transform variable of a scene item directly if desired. If a scene item does not have bounds active, pulling on the sides of a source will cause it to resize it via base scale rather than by the bounding box system (if the source resizes that scale will apply). If bounds are active, it will modify the bounding box only instead. How a source scales when a bounding box is active depends on the type of bounds being used. You can set it to scale to the inner bounds, the outer bounds, scale to bounds width only, scale to bounds height only, and a setting to stretch to bounds (which forces a source to always draw at the bounding box size rather than be affected by its internal size). You can also set it to be used as a 'maximum' size, so that the source doesn't necessarily get scaled unless it extends beyond the bounds. Like in OBS1, objects will snap to the edges unless the control key is pressed. However, this will now happen even if the object is rotated or oriented in any strange way. Snapping will also occur when stretching or changing the bounding box size.
2014-06-15 00:54:48 -07:00
Basic.TransformWindow.Alignment.TopLeft="Top Left"
Basic.TransformWindow.Alignment.TopCenter="Top Center"
Basic.TransformWindow.Alignment.TopRight="Top Right"
Basic.TransformWindow.Alignment.CenterLeft="Center Left"
Basic.TransformWindow.Alignment.Center="Center"
Basic.TransformWindow.Alignment.CenterRight="Center Right"
Basic.TransformWindow.Alignment.BottomLeft="Bottom Left"
Basic.TransformWindow.Alignment.BottomCenter="Bottom Center"
Basic.TransformWindow.Alignment.BottomRight="Bottom Right"
Basic.TransformWindow.BoundsType.None="No bounds"
Basic.TransformWindow.BoundsType.MaxOnly="Maximum size only"
Basic.TransformWindow.BoundsType.ScaleInner="Scale to inner bounds"
Basic.TransformWindow.BoundsType.ScaleOuter="Scale to outer bounds"
Basic.TransformWindow.BoundsType.ScaleToWidth="Scale to width of bounds"
Basic.TransformWindow.BoundsType.ScaleToHeight="Scale to height of bounds"
Basic.TransformWindow.BoundsType.Stretch="Stretch to bounds"
# no scene warning
Basic.Main.AddSourceHelp.Title="Cannot Add Source"
Basic.Main.AddSourceHelp.Text="You need to have at least 1 scene to add a source."
# basic mode main window
Basic.Main.Scenes="Scenes"
Basic.Main.Sources="Sources"
Basic.Main.Controls="Controls"
Basic.Main.Connecting="Connecting..."
Basic.Main.StartRecording="Start Recording"
Basic.Main.StartReplayBuffer="Start Replay Buffer"
Basic.Main.StartStreaming="Start Streaming"
Basic.Main.StopRecording="Stop Recording"
Basic.Main.StoppingRecording="Stopping Recording..."
Basic.Main.StopReplayBuffer="Stop Replay Buffer"
Basic.Main.StoppingReplayBuffer="Stopping Replay Buffer..."
Basic.Main.StopStreaming="Stop Streaming"
Basic.Main.StoppingStreaming="Stopping Stream..."
Basic.Main.ForceStopStreaming="Stop Streaming (discard delay)"
2018-06-02 09:45:01 -07:00
Basic.Main.Group="Group %1"
Basic.Main.GroupItems="Group Selected Items"
Basic.Main.Ungroup="Ungroup"
# basic mode file menu
Basic.MainMenu.File="&File"
Basic.MainMenu.File.Export="&Export"
Basic.MainMenu.File.Import="&Import"
Basic.MainMenu.File.ShowRecordings="Show &Recordings"
Basic.MainMenu.File.Remux="Re&mux Recordings"
Basic.MainMenu.File.Settings="&Settings"
Basic.MainMenu.File.ShowSettingsFolder="Show Settings Folder"
Basic.MainMenu.File.ShowProfileFolder="Show Profile Folder"
Basic.MainMenu.AlwaysOnTop="&Always On Top"
Basic.MainMenu.File.Exit="E&xit"
UI: Add scene editing So, scene editing was interesting (and by interesting I mean excruciating). I almost implemented 'manipulator' visuals (ala 3dsmax for example), and used 3 modes for controlling position/rotation/size, but in a 2D editing, it felt clunky, so I defaulted back to simply click-and-drag for movement, and then took a similar though slightly different looking approach for handling scaling and reszing. I also added a number of menu item helpers related to positioning, scaling, rotating, flipping, and resetting the transform back to default. There is also a new 'transform' dialog (accessible via menu) which will allow you to manually edit every single transform variable of a scene item directly if desired. If a scene item does not have bounds active, pulling on the sides of a source will cause it to resize it via base scale rather than by the bounding box system (if the source resizes that scale will apply). If bounds are active, it will modify the bounding box only instead. How a source scales when a bounding box is active depends on the type of bounds being used. You can set it to scale to the inner bounds, the outer bounds, scale to bounds width only, scale to bounds height only, and a setting to stretch to bounds (which forces a source to always draw at the bounding box size rather than be affected by its internal size). You can also set it to be used as a 'maximum' size, so that the source doesn't necessarily get scaled unless it extends beyond the bounds. Like in OBS1, objects will snap to the edges unless the control key is pressed. However, this will now happen even if the object is rotated or oriented in any strange way. Snapping will also occur when stretching or changing the bounding box size.
2014-06-15 00:54:48 -07:00
# basic mode edit menu
Basic.MainMenu.Edit="&Edit"
Basic.MainMenu.Edit.Undo="&Undo"
Basic.MainMenu.Edit.Redo="&Redo"
Basic.MainMenu.Edit.UndoAction="&Undo $1"
Basic.MainMenu.Edit.RedoAction="&Redo $1"
Basic.MainMenu.Edit.LockPreview="&Lock Preview"
Basic.MainMenu.Edit.Scale="Preview &Scaling"
Basic.MainMenu.Edit.Scale.Window="Scale to Window"
Basic.MainMenu.Edit.Scale.Canvas="Canvas (%1x%2)"
Basic.MainMenu.Edit.Scale.Output="Output (%1x%2)"
UI: Add scene editing So, scene editing was interesting (and by interesting I mean excruciating). I almost implemented 'manipulator' visuals (ala 3dsmax for example), and used 3 modes for controlling position/rotation/size, but in a 2D editing, it felt clunky, so I defaulted back to simply click-and-drag for movement, and then took a similar though slightly different looking approach for handling scaling and reszing. I also added a number of menu item helpers related to positioning, scaling, rotating, flipping, and resetting the transform back to default. There is also a new 'transform' dialog (accessible via menu) which will allow you to manually edit every single transform variable of a scene item directly if desired. If a scene item does not have bounds active, pulling on the sides of a source will cause it to resize it via base scale rather than by the bounding box system (if the source resizes that scale will apply). If bounds are active, it will modify the bounding box only instead. How a source scales when a bounding box is active depends on the type of bounds being used. You can set it to scale to the inner bounds, the outer bounds, scale to bounds width only, scale to bounds height only, and a setting to stretch to bounds (which forces a source to always draw at the bounding box size rather than be affected by its internal size). You can also set it to be used as a 'maximum' size, so that the source doesn't necessarily get scaled unless it extends beyond the bounds. Like in OBS1, objects will snap to the edges unless the control key is pressed. However, this will now happen even if the object is rotated or oriented in any strange way. Snapping will also occur when stretching or changing the bounding box size.
2014-06-15 00:54:48 -07:00
Basic.MainMenu.Edit.Transform="&Transform"
Basic.MainMenu.Edit.Transform.EditTransform="&Edit Transform..."
Basic.MainMenu.Edit.Transform.CopyTransform="Copy Transform"
Basic.MainMenu.Edit.Transform.PasteTransform="Paste Transform"
UI: Add scene editing So, scene editing was interesting (and by interesting I mean excruciating). I almost implemented 'manipulator' visuals (ala 3dsmax for example), and used 3 modes for controlling position/rotation/size, but in a 2D editing, it felt clunky, so I defaulted back to simply click-and-drag for movement, and then took a similar though slightly different looking approach for handling scaling and reszing. I also added a number of menu item helpers related to positioning, scaling, rotating, flipping, and resetting the transform back to default. There is also a new 'transform' dialog (accessible via menu) which will allow you to manually edit every single transform variable of a scene item directly if desired. If a scene item does not have bounds active, pulling on the sides of a source will cause it to resize it via base scale rather than by the bounding box system (if the source resizes that scale will apply). If bounds are active, it will modify the bounding box only instead. How a source scales when a bounding box is active depends on the type of bounds being used. You can set it to scale to the inner bounds, the outer bounds, scale to bounds width only, scale to bounds height only, and a setting to stretch to bounds (which forces a source to always draw at the bounding box size rather than be affected by its internal size). You can also set it to be used as a 'maximum' size, so that the source doesn't necessarily get scaled unless it extends beyond the bounds. Like in OBS1, objects will snap to the edges unless the control key is pressed. However, this will now happen even if the object is rotated or oriented in any strange way. Snapping will also occur when stretching or changing the bounding box size.
2014-06-15 00:54:48 -07:00
Basic.MainMenu.Edit.Transform.ResetTransform="&Reset Transform"
Basic.MainMenu.Edit.Transform.Rotate90CW="Rotate 90 degrees CW"
Basic.MainMenu.Edit.Transform.Rotate90CCW="Rotate 90 degrees CCW"
Basic.MainMenu.Edit.Transform.Rotate180="Rotate 180 degrees"
Basic.MainMenu.Edit.Transform.FlipHorizontal="Flip &Horizontal"
Basic.MainMenu.Edit.Transform.FlipVertical="Flip &Vertical"
Basic.MainMenu.Edit.Transform.FitToScreen="&Fit to screen"
Basic.MainMenu.Edit.Transform.StretchToScreen="&Stretch to screen"
Basic.MainMenu.Edit.Transform.CenterToScreen="&Center to screen"
Basic.MainMenu.Edit.Order="&Order"
Basic.MainMenu.Edit.Order.MoveUp="Move &Up"
Basic.MainMenu.Edit.Order.MoveDown="Move &Down"
Basic.MainMenu.Edit.Order.MoveToTop="Move to &Top"
Basic.MainMenu.Edit.Order.MoveToBottom="Move to &Bottom"
Basic.MainMenu.Edit.AdvAudio="&Advanced Audio Properties"
UI: Add scene editing So, scene editing was interesting (and by interesting I mean excruciating). I almost implemented 'manipulator' visuals (ala 3dsmax for example), and used 3 modes for controlling position/rotation/size, but in a 2D editing, it felt clunky, so I defaulted back to simply click-and-drag for movement, and then took a similar though slightly different looking approach for handling scaling and reszing. I also added a number of menu item helpers related to positioning, scaling, rotating, flipping, and resetting the transform back to default. There is also a new 'transform' dialog (accessible via menu) which will allow you to manually edit every single transform variable of a scene item directly if desired. If a scene item does not have bounds active, pulling on the sides of a source will cause it to resize it via base scale rather than by the bounding box system (if the source resizes that scale will apply). If bounds are active, it will modify the bounding box only instead. How a source scales when a bounding box is active depends on the type of bounds being used. You can set it to scale to the inner bounds, the outer bounds, scale to bounds width only, scale to bounds height only, and a setting to stretch to bounds (which forces a source to always draw at the bounding box size rather than be affected by its internal size). You can also set it to be used as a 'maximum' size, so that the source doesn't necessarily get scaled unless it extends beyond the bounds. Like in OBS1, objects will snap to the edges unless the control key is pressed. However, this will now happen even if the object is rotated or oriented in any strange way. Snapping will also occur when stretching or changing the bounding box size.
2014-06-15 00:54:48 -07:00
# basic mode view menu
Basic.MainMenu.View="&View"
Basic.MainMenu.View.Toolbars="&Toolbars"
Basic.MainMenu.View.Docks="Docks"
Basic.MainMenu.View.Docks.ResetUI="Reset UI"
Basic.MainMenu.View.Docks.LockUI="Lock UI"
Basic.MainMenu.View.Toolbars.Listboxes="&Listboxes"
Basic.MainMenu.View.SceneTransitions="S&cene Transitions"
Basic.MainMenu.View.StatusBar="&Status Bar"
Basic.MainMenu.View.Fullscreen.Interface="Fullscreen Interface"
# basic mode profile/scene collection menus
Basic.MainMenu.SceneCollection="&Scene Collection"
Basic.MainMenu.Profile="&Profile"
Basic.MainMenu.Profile.Import="Import Profile"
Basic.MainMenu.Profile.Export="Export Profile"
Basic.MainMenu.SceneCollection.Import="Import Scene Collection"
Basic.MainMenu.SceneCollection.Export="Export Scene Collection"
Basic.MainMenu.Profile.Exists="The profile already exists"
Basic.MainMenu.SceneCollection.Exists="The scene collection already exists"
# basic mode help menu
Basic.MainMenu.Tools="&Tools"
# basic mode help menu
Basic.MainMenu.Help="&Help"
2018-01-05 13:20:39 -08:00
Basic.MainMenu.Help.HelpPortal="Help &Portal"
Basic.MainMenu.Help.Website="Visit &Website"
Basic.MainMenu.Help.Logs="&Log Files"
Basic.MainMenu.Help.Logs.ShowLogs="&Show Log Files"
Basic.MainMenu.Help.Logs.UploadCurrentLog="Upload &Current Log File"
Basic.MainMenu.Help.Logs.UploadLastLog="Upload &Last Log File"
Basic.MainMenu.Help.Logs.ViewCurrentLog="&View Current Log"
2014-07-13 23:56:28 -07:00
Basic.MainMenu.Help.CheckForUpdates="Check For Updates"
Basic.MainMenu.Help.CrashLogs="Crash &Reports"
Basic.MainMenu.Help.CrashLogs.ShowLogs="&Show Crash Reports"
Basic.MainMenu.Help.CrashLogs.UploadLastLog="Upload &Last Crash Report"
# basic mode settings dialog
Basic.Settings.ProgramRestart="The program must be restarted for these settings to take effect."
Basic.Settings.ConfirmTitle="Confirm Changes"
Basic.Settings.Confirm="You have unsaved changes. Save changes?"
# basic mode 'general' settings
Basic.Settings.General="General"
Basic.Settings.General.Theme="Theme"
Basic.Settings.General.Language="Language"
2017-02-20 04:46:29 -08:00
Basic.Settings.General.EnableAutoUpdates="Automatically check for updates on startup"
Basic.Settings.General.OpenStatsOnStartup="Open stats dialog on startup"
Basic.Settings.General.WarnBeforeStartingStream="Show confirmation dialog when starting streams"
Basic.Settings.General.WarnBeforeStoppingStream="Show confirmation dialog when stopping streams"
Basic.Settings.General.Projectors="Projectors"
Basic.Settings.General.HideProjectorCursor="Hide cursor over projectors"
Basic.Settings.General.ProjectorAlwaysOnTop="Make projectors always on top"
Basic.Settings.General.Snapping="Source Alignment Snapping"
Basic.Settings.General.ScreenSnapping="Snap Sources to edge of screen"
Basic.Settings.General.CenterSnapping="Snap Sources to horizontal and vertical center"
Basic.Settings.General.SourceSnapping="Snap Sources to other sources"
Basic.Settings.General.SnapDistance="Snap Sensitivity"
Basic.Settings.General.RecordWhenStreaming="Automatically record when streaming"
Basic.Settings.General.KeepRecordingWhenStreamStops="Keep recording when stream stops"
Basic.Settings.General.ReplayBufferWhileStreaming="Automatically start replay buffer when streaming"
Basic.Settings.General.KeepReplayBufferStreamStops="Keep replay buffer active when stream stops"
2017-02-25 11:26:28 -08:00
Basic.Settings.General.SysTray="System Tray"
Basic.Settings.General.SysTrayWhenStarted="Minimize to system tray when started"
Basic.Settings.General.SystemTrayHideMinimize="Always minimize to system tray instead of task bar"
Basic.Settings.General.SaveProjectors="Save projectors on exit"
Basic.Settings.General.SwitchOnDoubleClick="Transition to scene when double-clicked"
Basic.Settings.General.StudioPortraitLayout="Enable portrait/vertical layout"
Basic.Settings.General.Multiview="Multiview"
Basic.Settings.General.Multiview.MouseSwitch="Click to switch between scenes"
Basic.Settings.General.Multiview.DrawSourceNames="Show scene names"
Basic.Settings.General.Multiview.DrawSafeAreas="Draw safe areas (EBU R 95)"
2017-12-13 13:42:19 -08:00
Basic.Settings.General.MultiviewLayout="Multiview Layout"
2018-03-20 17:41:39 -07:00
Basic.Settings.General.MultiviewLayout.Horizontal.Top="Horizontal, Top (8 Scenes)"
Basic.Settings.General.MultiviewLayout.Horizontal.Bottom="Horizontal, Bottom (8 Scenes)"
Basic.Settings.General.MultiviewLayout.Vertical.Left="Vertical, Left (8 Scenes)"
Basic.Settings.General.MultiviewLayout.Vertical.Right="Vertical, Right (8 Scenes)"
Basic.Settings.General.MultiviewLayout.Horizontal.Extended.Top="Horizontal, Top (24 Scenes)"
# basic mode 'stream' settings
Basic.Settings.Stream="Stream"
Basic.Settings.Stream.StreamType="Stream Type"
# basic mode 'output' settings
Basic.Settings.Output="Output"
Basic.Settings.Output.Format="Recording Format"
Basic.Settings.Output.Encoder="Encoder"
Basic.Settings.Output.SelectDirectory="Select Recording Directory"
Basic.Settings.Output.SelectFile="Select Recording File"
Basic.Settings.Output.EnforceBitrate="Enforce streaming service bitrate limits"
Basic.Settings.Output.Mode="Output Mode"
Basic.Settings.Output.Mode.Simple="Simple"
Basic.Settings.Output.Mode.Adv="Advanced"
Basic.Settings.Output.Mode.FFmpeg="FFmpeg Output"
Basic.Settings.Output.UseReplayBuffer="Enable Replay Buffer"
Basic.Settings.Output.ReplayBuffer.SecondsMax="Maximum Replay Time (Seconds)"
Basic.Settings.Output.ReplayBuffer.MegabytesMax="Maximum Memory (Megabytes)"
Basic.Settings.Output.ReplayBuffer.Estimate="Estimated memory usage: %1 MB"
Basic.Settings.Output.ReplayBuffer.EstimateUnknown="Cannot estimate memory usage. Please set maximum memory limit."
Basic.Settings.Output.ReplayBuffer.HotkeyMessage="(Note: Make sure to set a hotkey for the replay buffer in the hotkeys section)"
Basic.Settings.Output.ReplayBuffer.Prefix="Replay Buffer Filename Prefix"
Basic.Settings.Output.ReplayBuffer.Suffix="Suffix"
Basic.Settings.Output.Simple.SavePath="Recording Path"
UI: Add recording presets to simple output So certain high-profile individuals were complaining that it was difficult to configure recording settings for quality in OBS. So, I decided to add a very easy-to-use auto-configuration for high quality encoding -- including lossless encoding. This feature will automatically configure ideal recording settings based upon a specified quality level. Recording quality presets added to simple output: - Same as stream: Copies the encoded streaming data with no extra usage hit. - High quality: uses a higher CRF value (starting at 23) if using x264. - Indistinguishable quality: uses a low CRF value (starting at 16) if using x264. - Lossless will spawn an FFmpeg output that uses huffyuv encoding. If a user tries to select lossless, they will be warned both via a dialog prompt and a warning message in the settings window to ensure they understand that it requires tremendous amounts of free space. It will always use the AVI file format. Extra Notes: - When High/Indistinguishable quality is set, it will allow you to select the recording encoder. Currently, it just allows you to select x264 (at either veryfast or ultrafast). Later on, it'll be useful to be able to set up pre-configured presets for hardware encoders once more are implemented and tested. - I decided to allow the use of x264 at both veryfast or ultrafast presets. The reasoning is two-fold: 1.) ultrafast is perfectly viable even for near indistinguishable quality as long as it has the appropriate CRF value. It's nice if you want to record but would like to or need to reduce the impact of encoding on the CPU. It will automatically compensate for the preset at the cost of larger file size. 2.) It was suggested to just always use ultrafast, but ultrafast requires 2-4x as much disk space for the same CRF (most likely due to x264 compensating for the preset). Providing veryfast is important if you really want to reduce file size and/or reduce blocking at lower quality levels. - When a recording preset is used, a secondary audio encoder is also spawned at 192 bitrate to ensure high quality audio. I chose 192 because that's the limit of the media foundation aac encoder on windows, which I want to make sure is used if available due to its high performance. - The CRF calculation is based upon resolution, quality, and whether it's set to ultrafast. First, quality sets the base CRF, 23 for "good" quality, 16 for "very high" quality. If set to ultrafast, it'll subtract 2 points from the CRF value to help compensate. Lower resolutions will also lower the CRF value to help improve higher details with a smaller pixel ratio.
2015-09-18 22:29:36 -07:00
Basic.Settings.Output.Simple.RecordingQuality="Recording Quality"
Basic.Settings.Output.Simple.RecordingQuality.Stream="Same as stream"
Basic.Settings.Output.Simple.RecordingQuality.Small="High Quality, Medium File Size"
Basic.Settings.Output.Simple.RecordingQuality.HQ="Indistinguishable Quality, Large File Size"
Basic.Settings.Output.Simple.RecordingQuality.Lossless="Lossless Quality, Tremendously Large File Size"
Basic.Settings.Output.Simple.Warn.VideoBitrate="Warning: The streaming video bitrate will be set to %1, which is the upper limit for the current streaming service. If you're sure you want to go above %1, enable advanced encoder options and uncheck \"Enforce streaming service bitrate limits\"."
Basic.Settings.Output.Simple.Warn.AudioBitrate="Warning: The streaming audio bitrate will be set to %1, which is the upper limit for the current streaming service. If you're sure you want to go above %1, enable advanced encoder options and uncheck \"Enforce streaming service bitrate limits\"."
UI: Add recording presets to simple output So certain high-profile individuals were complaining that it was difficult to configure recording settings for quality in OBS. So, I decided to add a very easy-to-use auto-configuration for high quality encoding -- including lossless encoding. This feature will automatically configure ideal recording settings based upon a specified quality level. Recording quality presets added to simple output: - Same as stream: Copies the encoded streaming data with no extra usage hit. - High quality: uses a higher CRF value (starting at 23) if using x264. - Indistinguishable quality: uses a low CRF value (starting at 16) if using x264. - Lossless will spawn an FFmpeg output that uses huffyuv encoding. If a user tries to select lossless, they will be warned both via a dialog prompt and a warning message in the settings window to ensure they understand that it requires tremendous amounts of free space. It will always use the AVI file format. Extra Notes: - When High/Indistinguishable quality is set, it will allow you to select the recording encoder. Currently, it just allows you to select x264 (at either veryfast or ultrafast). Later on, it'll be useful to be able to set up pre-configured presets for hardware encoders once more are implemented and tested. - I decided to allow the use of x264 at both veryfast or ultrafast presets. The reasoning is two-fold: 1.) ultrafast is perfectly viable even for near indistinguishable quality as long as it has the appropriate CRF value. It's nice if you want to record but would like to or need to reduce the impact of encoding on the CPU. It will automatically compensate for the preset at the cost of larger file size. 2.) It was suggested to just always use ultrafast, but ultrafast requires 2-4x as much disk space for the same CRF (most likely due to x264 compensating for the preset). Providing veryfast is important if you really want to reduce file size and/or reduce blocking at lower quality levels. - When a recording preset is used, a secondary audio encoder is also spawned at 192 bitrate to ensure high quality audio. I chose 192 because that's the limit of the media foundation aac encoder on windows, which I want to make sure is used if available due to its high performance. - The CRF calculation is based upon resolution, quality, and whether it's set to ultrafast. First, quality sets the base CRF, 23 for "good" quality, 16 for "very high" quality. If set to ultrafast, it'll subtract 2 points from the CRF value to help compensate. Lower resolutions will also lower the CRF value to help improve higher details with a smaller pixel ratio.
2015-09-18 22:29:36 -07:00
Basic.Settings.Output.Simple.Warn.Encoder="Warning: Recording with a software encoder at a different quality than the stream will require extra CPU usage if you stream and record at the same time."
Basic.Settings.Output.Simple.Warn.Lossless="Warning: Lossless quality generates tremendously large file sizes! Lossless quality can use upward of 7 gigabytes of disk space per minute at high resolutions and framerates. Lossless is not recommended for long recordings unless you have a very large amount of disk space available."
Basic.Settings.Output.Simple.Warn.Lossless.Msg="Are you sure you want to use lossless quality?"
Basic.Settings.Output.Simple.Warn.Lossless.Title="Lossless quality warning!"
Basic.Settings.Output.Simple.Warn.MultipleQSV="Warning: You cannot use multiple separate QSV encoders when streaming and recording at the same time. If you want to stream and record at the same time, please change either the recording encoder or the stream encoder."
UI: Add recording presets to simple output So certain high-profile individuals were complaining that it was difficult to configure recording settings for quality in OBS. So, I decided to add a very easy-to-use auto-configuration for high quality encoding -- including lossless encoding. This feature will automatically configure ideal recording settings based upon a specified quality level. Recording quality presets added to simple output: - Same as stream: Copies the encoded streaming data with no extra usage hit. - High quality: uses a higher CRF value (starting at 23) if using x264. - Indistinguishable quality: uses a low CRF value (starting at 16) if using x264. - Lossless will spawn an FFmpeg output that uses huffyuv encoding. If a user tries to select lossless, they will be warned both via a dialog prompt and a warning message in the settings window to ensure they understand that it requires tremendous amounts of free space. It will always use the AVI file format. Extra Notes: - When High/Indistinguishable quality is set, it will allow you to select the recording encoder. Currently, it just allows you to select x264 (at either veryfast or ultrafast). Later on, it'll be useful to be able to set up pre-configured presets for hardware encoders once more are implemented and tested. - I decided to allow the use of x264 at both veryfast or ultrafast presets. The reasoning is two-fold: 1.) ultrafast is perfectly viable even for near indistinguishable quality as long as it has the appropriate CRF value. It's nice if you want to record but would like to or need to reduce the impact of encoding on the CPU. It will automatically compensate for the preset at the cost of larger file size. 2.) It was suggested to just always use ultrafast, but ultrafast requires 2-4x as much disk space for the same CRF (most likely due to x264 compensating for the preset). Providing veryfast is important if you really want to reduce file size and/or reduce blocking at lower quality levels. - When a recording preset is used, a secondary audio encoder is also spawned at 192 bitrate to ensure high quality audio. I chose 192 because that's the limit of the media foundation aac encoder on windows, which I want to make sure is used if available due to its high performance. - The CRF calculation is based upon resolution, quality, and whether it's set to ultrafast. First, quality sets the base CRF, 23 for "good" quality, 16 for "very high" quality. If set to ultrafast, it'll subtract 2 points from the CRF value to help compensate. Lower resolutions will also lower the CRF value to help improve higher details with a smaller pixel ratio.
2015-09-18 22:29:36 -07:00
Basic.Settings.Output.Simple.Encoder.Software="Software (x264)"
Basic.Settings.Output.Simple.Encoder.Hardware.QSV="Hardware (QSV)"
Basic.Settings.Output.Simple.Encoder.Hardware.AMD="Hardware (AMD)"
2016-04-18 16:12:59 -07:00
Basic.Settings.Output.Simple.Encoder.Hardware.NVENC="Hardware (NVENC)"
UI: Add recording presets to simple output So certain high-profile individuals were complaining that it was difficult to configure recording settings for quality in OBS. So, I decided to add a very easy-to-use auto-configuration for high quality encoding -- including lossless encoding. This feature will automatically configure ideal recording settings based upon a specified quality level. Recording quality presets added to simple output: - Same as stream: Copies the encoded streaming data with no extra usage hit. - High quality: uses a higher CRF value (starting at 23) if using x264. - Indistinguishable quality: uses a low CRF value (starting at 16) if using x264. - Lossless will spawn an FFmpeg output that uses huffyuv encoding. If a user tries to select lossless, they will be warned both via a dialog prompt and a warning message in the settings window to ensure they understand that it requires tremendous amounts of free space. It will always use the AVI file format. Extra Notes: - When High/Indistinguishable quality is set, it will allow you to select the recording encoder. Currently, it just allows you to select x264 (at either veryfast or ultrafast). Later on, it'll be useful to be able to set up pre-configured presets for hardware encoders once more are implemented and tested. - I decided to allow the use of x264 at both veryfast or ultrafast presets. The reasoning is two-fold: 1.) ultrafast is perfectly viable even for near indistinguishable quality as long as it has the appropriate CRF value. It's nice if you want to record but would like to or need to reduce the impact of encoding on the CPU. It will automatically compensate for the preset at the cost of larger file size. 2.) It was suggested to just always use ultrafast, but ultrafast requires 2-4x as much disk space for the same CRF (most likely due to x264 compensating for the preset). Providing veryfast is important if you really want to reduce file size and/or reduce blocking at lower quality levels. - When a recording preset is used, a secondary audio encoder is also spawned at 192 bitrate to ensure high quality audio. I chose 192 because that's the limit of the media foundation aac encoder on windows, which I want to make sure is used if available due to its high performance. - The CRF calculation is based upon resolution, quality, and whether it's set to ultrafast. First, quality sets the base CRF, 23 for "good" quality, 16 for "very high" quality. If set to ultrafast, it'll subtract 2 points from the CRF value to help compensate. Lower resolutions will also lower the CRF value to help improve higher details with a smaller pixel ratio.
2015-09-18 22:29:36 -07:00
Basic.Settings.Output.Simple.Encoder.SoftwareLowCPU="Software (x264 low CPU usage preset, increases file size)"
2014-07-03 18:07:33 -07:00
Basic.Settings.Output.VideoBitrate="Video Bitrate"
Basic.Settings.Output.AudioBitrate="Audio Bitrate"
Basic.Settings.Output.Reconnect="Automatically Reconnect"
Basic.Settings.Output.RetryDelay="Retry Delay (seconds)"
Basic.Settings.Output.MaxRetries="Maximum Retries"
Basic.Settings.Output.Advanced="Enable Advanced Encoder Settings"
Basic.Settings.Output.EncoderPreset="Encoder Preset (higher = less CPU)"
Basic.Settings.Output.CustomEncoderSettings="Custom Encoder Settings"
Basic.Settings.Output.CustomMuxerSettings="Custom Muxer Settings"
Basic.Settings.Output.NoSpaceFileName="Generate File Name without Space"
# basic mode 'output' settings - advanced section
Basic.Settings.Output.Adv.Rescale="Rescale Output"
Basic.Settings.Output.Adv.AudioTrack="Audio Track"
Basic.Settings.Output.Adv.Streaming="Streaming"
Basic.Settings.Output.Adv.ApplyServiceSettings="Enforce streaming service encoder settings"
Basic.Settings.Output.Adv.Audio.Track1="Track 1"
Basic.Settings.Output.Adv.Audio.Track2="Track 2"
Basic.Settings.Output.Adv.Audio.Track3="Track 3"
Basic.Settings.Output.Adv.Audio.Track4="Track 4"
2016-12-21 17:41:59 -08:00
Basic.Settings.Output.Adv.Audio.Track5="Track 5"
Basic.Settings.Output.Adv.Audio.Track6="Track 6"
# basic mode 'output' settings - advanced section - recording subsection
Basic.Settings.Output.Adv.Recording="Recording"
Basic.Settings.Output.Adv.Recording.Type="Type"
Basic.Settings.Output.Adv.Recording.Type.Standard="Standard"
Basic.Settings.Output.Adv.Recording.Type.FFmpegOutput="Custom Output (FFmpeg)"
Basic.Settings.Output.Adv.Recording.UseStreamEncoder="(Use stream encoder)"
Basic.Settings.Output.Adv.Recording.Filename="Filename Formatting"
Basic.Settings.Output.Adv.Recording.OverwriteIfExists="Overwrite if file exists"
Basic.Settings.Output.Adv.FFmpeg.Type="FFmpeg Output Type"
Basic.Settings.Output.Adv.FFmpeg.Type.URL="Output to URL"
Basic.Settings.Output.Adv.FFmpeg.Type.RecordToFile="Output to File"
Basic.Settings.Output.Adv.FFmpeg.SaveFilter.Common="Common recording formats"
Basic.Settings.Output.Adv.FFmpeg.SaveFilter.All="All Files"
Basic.Settings.Output.Adv.FFmpeg.SavePathURL="File path or URL"
Basic.Settings.Output.Adv.FFmpeg.Format="Container Format"
Basic.Settings.Output.Adv.FFmpeg.FormatAudio="Audio"
Basic.Settings.Output.Adv.FFmpeg.FormatVideo="Video"
Basic.Settings.Output.Adv.FFmpeg.FormatDefault="Default Format"
Basic.Settings.Output.Adv.FFmpeg.FormatDesc="Container Format Description"
Basic.Settings.Output.Adv.FFmpeg.FormatDescDef="Audio/Video Codec guessed from File path or URL"
Basic.Settings.Output.Adv.FFmpeg.AVEncoderDefault="Default Encoder"
Basic.Settings.Output.Adv.FFmpeg.AVEncoderDisable="Disable Encoder"
Basic.Settings.Output.Adv.FFmpeg.VEncoder="Video Encoder"
Basic.Settings.Output.Adv.FFmpeg.VEncoderSettings="Video Encoder Settings (if any)"
Basic.Settings.Output.Adv.FFmpeg.AEncoder="Audio Encoder"
Basic.Settings.Output.Adv.FFmpeg.AEncoderSettings="Audio Encoder Settings (if any)"
Basic.Settings.Output.Adv.FFmpeg.MuxerSettings="Muxer Settings (if any)"
Basic.Settings.Output.Adv.FFmpeg.GOPSize="Keyframe interval (frames)"
Basic.Settings.Output.Adv.FFmpeg.IgnoreCodecCompat="Show all codecs (even if potentially incompatible)"
# basic mode 'output' settings - advanced section - recording subsection - completer
FilenameFormatting.completer="%CCYY-%MM-%DD %hh-%mm-%ss\n%YY-%MM-%DD %hh-%mm-%ss\n%Y-%m-%d %H-%M-%S\n%y-%m-%d %H-%M-%S\n%a %Y-%m-%d %H-%M-%S\n%A %Y-%m-%d %H-%M-%S\n%Y-%b-%d %H-%M-%S\n%Y-%B-%d %H-%M-%S\n%Y-%m-%d %I-%M-%S-%p\n%Y-%m-%d %H-%M-%S-%z\n%Y-%m-%d %H-%M-%S-%Z"
# basic mode 'output' settings - advanced section - recording subsection - TT
2017-02-05 16:39:44 -08:00
FilenameFormatting.TT="%CCYY Year, four digits\n%YY Year, last two digits (00-99)\n%MM Month as a decimal number (01-12)\n%DD Day of the month, zero-padded (01-31)\n%hh Hour in 24h format (00-23)\n%mm Minute (00-59)\n%ss Second (00-61)\n%% A % sign\n%a Abbreviated weekday name\n%A Full weekday name\n%b Abbreviated month name\n%B Full month name\n%d Day of the month, zero-padded (01-31)\n%H Hour in 24h format (00-23)\n%I Hour in 12h format (01-12)\n%m Month as a decimal number (01-12)\n%M Minute (00-59)\n%p AM or PM designation\n%S Second (00-61)\n%y Year, last two digits (00-99)\n%Y Year\n%z ISO 8601 offset from UTC or timezone\n name or abbreviation\n%Z Timezone name or abbreviation\n"
# basic mode 'video' settings
Basic.Settings.Video="Video"
Basic.Settings.Video.Adapter="Video Adapter"
Basic.Settings.Video.BaseResolution="Base (Canvas) Resolution"
Basic.Settings.Video.ScaledResolution="Output (Scaled) Resolution"
Basic.Settings.Video.DownscaleFilter="Downscale Filter"
Basic.Settings.Video.DisableAeroWindows="Disable Aero (Windows only)"
Basic.Settings.Video.FPS="FPS"
Basic.Settings.Video.FPSCommon="Common FPS Values"
Basic.Settings.Video.FPSInteger="Integer FPS Value"
Basic.Settings.Video.FPSFraction="Fractional FPS Value"
Basic.Settings.Video.Numerator="Numerator"
Basic.Settings.Video.Denominator="Denominator"
Basic.Settings.Video.Renderer="Renderer"
Basic.Settings.Video.InvalidResolution="Invalid resolution value. Must be [width]x[height] (i.e. 1920x1080)"
Basic.Settings.Video.CurrentlyActive="Video output is currently active. Please turn off any outputs to change video settings."
Basic.Settings.Video.DisableAero="Disable Aero"
# scale filters
Basic.Settings.Video.DownscaleFilter.Bilinear="Bilinear (Fastest, but blurry if scaling)"
Basic.Settings.Video.DownscaleFilter.Bicubic="Bicubic (Sharpened scaling, 16 samples)"
2014-12-15 03:00:55 -08:00
Basic.Settings.Video.DownscaleFilter.Lanczos="Lanczos (Sharpened scaling, 32 samples)"
# basic mode 'audio' settings
Basic.Settings.Audio="Audio"
Basic.Settings.Audio.SampleRate="Sample Rate"
Basic.Settings.Audio.Channels="Channels"
Basic.Settings.Audio.MeterDecayRate="Audio Meter Decay Rate"
Basic.Settings.Audio.MeterDecayRate.Fast="Fast"
Basic.Settings.Audio.MeterDecayRate.Medium="Medium (Type I PPM)"
Basic.Settings.Audio.MeterDecayRate.Slow="Slow (Type II PPM)"
Basic.Settings.Audio.PeakMeterType="Peak Meter Type"
Basic.Settings.Audio.PeakMeterType.SamplePeak="Sample Peak"
Basic.Settings.Audio.PeakMeterType.TruePeak="True Peak (Higher CPU usage)"
Basic.Settings.Audio.MultiChannelWarning.Enabled="WARNING: Surround sound audio is enabled."
Basic.Settings.Audio.MultichannelWarning="If streaming, check to see if your streaming service supports both surround sound ingest and surround sound playback. Twitch, Facebook 360 Live, Mixer RTMP, Smashcast are examples where surround sound is fully supported. Although Facebook Live and YouTube Live both accept surround ingest, Facebook Live downmixes to stereo, and YouTube Live plays only two channels.\n\nOBS audio filters are compatible with surround sound, though VST plugin support isn't guaranteed."
Basic.Settings.Audio.MultichannelWarning.Title="Enable surround sound audio?"
Basic.Settings.Audio.MultichannelWarning.Confirm="Are you sure you want to enable surround sound audio?"
Basic.Settings.Audio.DesktopDevice="Desktop Audio Device"
Basic.Settings.Audio.DesktopDevice2="Desktop Audio Device 2"
2014-05-23 20:00:58 -07:00
Basic.Settings.Audio.AuxDevice="Mic/Auxiliary Audio Device"
Basic.Settings.Audio.AuxDevice2="Mic/Auxiliary Audio Device 2"
Basic.Settings.Audio.AuxDevice3="Mic/Auxiliary Audio Device 3"
Basic.Settings.Audio.EnablePushToMute="Enable Push-to-mute"
Basic.Settings.Audio.PushToMuteDelay="Push-to-mute delay"
Basic.Settings.Audio.EnablePushToTalk="Enable Push-to-talk"
Basic.Settings.Audio.PushToTalkDelay="Push-to-talk delay"
Basic.Settings.Audio.UnknownAudioDevice="[Device not connected or not available]"
# basic mode 'advanced' settings
Basic.Settings.Advanced="Advanced"
Basic.Settings.Advanced.General.ProcessPriority="Process Priority"
Basic.Settings.Advanced.General.ProcessPriority.High="High"
Basic.Settings.Advanced.General.ProcessPriority.AboveNormal="Above Normal"
Basic.Settings.Advanced.General.ProcessPriority.Normal="Normal"
2017-07-26 14:44:58 -07:00
Basic.Settings.Advanced.General.ProcessPriority.BelowNormal="Below Normal"
Basic.Settings.Advanced.General.ProcessPriority.Idle="Idle"
Basic.Settings.Advanced.FormatWarning="Warning: Color formats other than NV12 are primarily intended for recording, and are not recommended when streaming. Streaming may incur increased CPU usage due to color format conversion."
Basic.Settings.Advanced.Audio.BufferingTime="Audio Buffering Time"
Basic.Settings.Advanced.Video.ColorFormat="Color Format"
Basic.Settings.Advanced.Video.ColorSpace="YUV Color Space"
Basic.Settings.Advanced.Video.ColorRange="YUV Color Range"
Basic.Settings.Advanced.Video.ColorRange.Partial="Partial"
Basic.Settings.Advanced.Video.ColorRange.Full="Full"
Basic.Settings.Advanced.Audio.MonitoringDevice="Audio Monitoring Device"
Basic.Settings.Advanced.Audio.MonitoringDevice.Default="Default"
Basic.Settings.Advanced.Audio.DisableAudioDucking="Disable Windows audio ducking"
Basic.Settings.Advanced.StreamDelay="Stream Delay"
Basic.Settings.Advanced.StreamDelay.Duration="Duration (seconds)"
Basic.Settings.Advanced.StreamDelay.Preserve="Preserve cutoff point (increase delay) when reconnecting"
Basic.Settings.Advanced.StreamDelay.MemoryUsage="Estimated Memory Usage: %1 MB"
Basic.Settings.Advanced.Network="Network"
Basic.Settings.Advanced.Network.BindToIP="Bind to IP"
2017-02-21 17:05:45 -08:00
Basic.Settings.Advanced.Network.EnableNewSocketLoop="Enable new networking code"
Basic.Settings.Advanced.Network.EnableLowLatencyMode="Low latency mode"
Basic.Settings.Advanced.Hotkeys.DisableHotkeysInFocus="Disable hotkeys when main window is in focus"
# advanced audio properties
Basic.AdvAudio="Advanced Audio Properties"
Basic.AdvAudio.Name="Name"
Basic.AdvAudio.Volume="Volume (%)"
Basic.AdvAudio.Mono="Downmix to Mono"
Basic.AdvAudio.Panning="Panning"
Basic.AdvAudio.SyncOffset="Sync Offset (ms)"
Basic.AdvAudio.Monitoring="Audio Monitoring"
Basic.AdvAudio.Monitoring.None="Monitor Off"
Basic.AdvAudio.Monitoring.MonitorOnly="Monitor Only (mute output)"
Basic.AdvAudio.Monitoring.Both="Monitor and Output"
Basic.AdvAudio.AudioTracks="Tracks"
2014-11-01 13:48:58 -07:00
# basic mode 'hotkeys' settings
Basic.Settings.Hotkeys="Hotkeys"
Basic.Settings.Hotkeys.Pair="Key combinations shared with '%1' act as toggles"
# basic mode hotkeys
Basic.Hotkeys.SelectScene="Switch to scene"
# system tray
Basic.SystemTray.Show="Show"
Basic.SystemTray.Hide="Hide"
# system tray messages
Basic.SystemTray.Message.Reconnecting="Disconnected. Reconnecting..."
2014-11-01 13:48:58 -07:00
# hotkeys that may lack translation on certain operating systems
Hotkeys.Insert="Insert"
Hotkeys.Delete="Delete"
Hotkeys.Home="Home"
Hotkeys.End="End"
Hotkeys.PageUp="Page Up"
Hotkeys.PageDown="Page Down"
Hotkeys.NumLock="Num Lock"
Hotkeys.ScrollLock="Scroll Lock"
Hotkeys.CapsLock="Caps Lock"
Hotkeys.Backspace="Backspace"
Hotkeys.Tab="Tab"
Hotkeys.Print="Print"
Hotkeys.Pause="Pause"
Hotkeys.Left="Left"
Hotkeys.Right="Right"
Hotkeys.Up="Up"
Hotkeys.Down="Down"
Hotkeys.Windows="Windows"
Hotkeys.Super="Super"
Hotkeys.Menu="Menu"
Hotkeys.Space="Space"
Hotkeys.NumpadNum="Numpad %1"
Hotkeys.NumpadMultiply="Numpad Multiply"
Hotkeys.NumpadDivide="Numpad Divide"
Hotkeys.NumpadAdd="Numpad Add"
Hotkeys.NumpadSubtract="Numpad Subtract"
Hotkeys.NumpadDecimal="Numpad Decimal"
Hotkeys.AppleKeypadNum="%1 (Keypad)"
Hotkeys.AppleKeypadMultiply="* (Keypad)"
Hotkeys.AppleKeypadDivide="/ (Keypad)"
Hotkeys.AppleKeypadAdd="+ (Keypad)"
Hotkeys.AppleKeypadSubtract="- (Keypad)"
Hotkeys.AppleKeypadDecimal=". (Keypad)"
Hotkeys.AppleKeypadEqual="= (Keypad)"
Hotkeys.MouseButton="Mouse %1"
# audio hotkeys
Mute="Mute"
Unmute="Unmute"
Push-to-mute="Push-to-mute"
2014-11-01 13:48:58 -07:00
Push-to-talk="Push-to-talk"
# scene item hotkeys
SceneItemShow="Show '%1'"
SceneItemHide="Hide '%1'"
# Output warnings
OutputWarnings.NoTracksSelected="You must select at least one track"
OutputWarnings.MultiTrackRecording="Warning: Certain formats (such as FLV) do not support multiple tracks per recording"
OutputWarnings.MP4Recording="Warning: Recordings saved to MP4 will be unrecoverable if the file cannot be finalized (e.g. as a result of BSODs, power losses, etc.). If you want to record multiple audio tracks consider using MKV and remux the recording to mp4 after it is finished (File->Remux Recordings)"
# deleting final scene
FinalScene.Title="Delete Scene"
FinalScene.Text="There needs to be at least one scene."
# no sources
NoSources.Title="No Sources"
NoSources.Text="It looks like you haven't added any video sources yet, so you will only be outputting a blank screen. Are you sure you want to do this?"
NoSources.Text.AddSource="You can add sources by clicking the + icon under the Sources box in the main window at any time."