Commit Graph

529 Commits (5fa4889c9caa94f1811484164f5867a95f80d8f8)

Author SHA1 Message Date
jp9000 0a481d5bcc UI: Use VScrollArea for properties view 2015-01-03 03:03:04 -08:00
jp9000 4993f2fa22 UI: Use VScrollArea for volume control area 2015-01-03 03:02:23 -08:00
jp9000 2c796e4b7b UI: Add vertical scroll area subclass
The regular scroll area can expand horizontally, but the problem with
this is that sometimes there are controls within it that expand way too
big.

For example, the properties window for window capture can have a list of
windows where the titles of the windows are really really long, and it
causes the properties to extend way too far to the right, making the
window look really unusual.

Another example are the volume controls in the main window that can
expand way to the right if the name of a source is really long, causing
the volume control to stretch way too far to the right, making the
volume controls difficult to use when that happens.

So this just makes it so it sets the maximum width of a scroll area's
internal widget to the actual width of the scroll area, preventing it
from going off the side of the scroll area.
2015-01-03 02:42:57 -08:00
jp9000 824c7b02c9 UI: Add crash report dialog
This crash report dialog is mostly just for the windows crash handling
code.  If a crash occurs, the user will be able to view the crash report
and post it on the forums or give it to a developer for debugging
purposes.
2015-01-03 02:37:21 -08:00
fryshorts 10a0b08ec9 obs: Fix signal in advanced volume controls
Suppress signals of the volume input when setting a value. This stops
the volume control from setting the source volume when it receives the
volume changed event from the source.
2015-01-02 20:11:40 +01:00
fryshorts 89792865a1 obs: Fix signal in volume control
Suppress signals of the volume slider when setting a value. This stops
the volume control from setting the source volume when it receives the
volume changed event from the source.
2015-01-02 20:11:28 +01:00
fryshorts 0f8b2faed4 obs: Fix label in volume control
Use a dedicated method for setting the dB label in the volume control
and make sure to call it regardless if the volume was changed through
the slider or from somewhere else.
2015-01-02 19:31:09 +01:00
jp9000 6fc52dfb16 UI: Add advanced audio properties dialog
This dialog gives options such as increasing audio past 100%, forcing
the audio of a source to mono, and setting the audio sync offset of a
source (which was an oft-requested feature)
2014-12-28 01:51:56 -08:00
fryshorts ca8ac4e809 obs: Refactor network requests.
Remove unneeded class members for request and buffer handling.
Let Qt do all the hard work here, keeping track of requests and
associated data.
2014-12-25 14:53:09 +01:00
Jim d710726e6e Merge pull request #313 from fryshorts/xinerama-fix
UI: Fix bug with xinerama on linux
2014-12-22 15:48:13 -08:00
fryshorts 20863c5ed3 UI: Fix bug with xinerama on linux
Refactor the screen enumeration code a little to make sure xinerama is present
and active before using it. If the extension is present but not active it will
no longer fail.
2014-12-22 01:12:58 +01:00
Jim 9f3ab85d2b Merge pull request #311 from fryshorts/audio-analyzer-move
libobs: Move audio level calculations
2014-12-21 11:56:02 -08:00
jp9000 1d9440c6a7 Basic UI: Raise bitrate limit to 1000000
I don't know why on earth I set the limit to 16000.  There's no reason
why there should really be a low hard limit.
2014-12-21 10:14:20 -08:00
Jake Probst cc2d3b2d1c linux x11: get monitors: use xcb and add fallback if xinerama not found 2014-12-19 21:51:37 -08:00
jp9000 793d7b51b2 UI: Fix locale typo 2014-12-15 03:00:55 -08:00
jp9000 640967b997 UI: Add video scale filters to basic settings 2014-12-15 01:55:19 -08:00
fryshorts 43552478fc obs: Remove update time from volume meter
Remove the update time check from the volume meter since it is no longer
nescessary. The update interval can now be set with the volmeter which has
the added benefit of not loosing data where previously updates had been
skipped.
2014-12-14 18:39:54 +01:00
jp9000 b07862286a (API Change) Add colorspace info to obs_video_info
This was an important change because we were originally using an
hard-coded 709/partial range color matrix for the output, which was
causing problems for people wanting to use different formats or color
spaces.  This will now automatically generate the color matrix depending
on the format, color space, and range, or use an identity matrix if the
video format is RGB instead of YUV.
2014-12-11 19:51:30 -08:00
fryshorts 014a333807 obs/libobs: Use new volume meter api
This replaces the old code for the audio meter that was using
calculations in two different places with the new audio meter api.
The source signal will now emit simple levels instead of dB values,
in order to avoid dB conversion and calculation in the source.
The GUI on the other hand now expects simple position values from
the volume meter api with no knowledge about dB calculus either.
That way all code that handles those conversions is in one place,
with the option to easily add new mappings that can be used
everywhere.
2014-12-04 21:58:35 +01:00
fryshorts 3fea6997a7 obs: Use new fader from libobs for volume control
This replaces the code for volume control with a newer version that
uses the new fader implementation in order to control the fader/slider
position and source volume.
The volume label will now indicate the gain in dB instead of percent,
mainly because it looks cool and is easy to do.
Due to libobs saving the multiplier option for the source instead of
the slider/fader positon, existing volume levels will (mostly) stay
the same with only the slider beeing at a different position.
This is of course within the resolution of the slider (100 steps).
2014-11-26 20:07:26 +01:00
Palana afa172feea sparkle-updater: Enable delta update failure fallback
Refer to 53cad36953
for further details
2014-11-01 03:06:26 +01:00
dodgepong 17804ec12f Add latest translations from CrowdIn 2014-10-31 21:02:47 -04:00
Palana ce782b44b7 Fix Qt unregistered datatype messages 2014-10-29 16:06:18 +01:00
Palana 6dcdaab2be Register OBSSource as Qt metatype 2014-10-29 16:06:18 +01:00
Palana e2f9d62a3b Sparkle-Updater: Select delta update if available 2014-10-19 19:16:04 +02:00
Palana 1e41dab7b5 Open source properties on double click 2014-10-19 19:16:04 +02:00
Palana eadea9a7e5 Disable double click renaming for both scenes and sources 2014-10-19 19:16:04 +02:00
Palana 9465a8c437 Add "Rename" entry to scenes context menu 2014-10-19 19:16:04 +02:00
Palana 55d2af0e60 Fix "Remove" shortcut (Del) to work for both scenes and sources 2014-10-19 19:16:04 +02:00
Palana 523baef7f5 Add "Remove" shortcut to scenes context menu 2014-10-19 19:16:04 +02:00
Palana 2e290b8493 Fix sources context menu "Remove" shortcut for OSX 2014-10-19 19:16:04 +02:00
Palana a88700540e Ignore source deselection until multiple selection is implemented 2014-10-15 02:00:39 +02:00
Palana 1df9bcfa49 Log warning when falling back to OpenGL on windows 2014-10-14 18:08:30 +02:00
Palana dc82e8d788 Do not draw selected item outline if selected item is invisible
This should probably be revisited if the preview can be rotated in 3D,
or someone comes up with a good 3D manipulation idea for the preview
2014-10-14 02:42:30 +02:00
Palana 5bbe620188 Fix wrong selection of items near origin in the preview window
If you have an item with width = 0 and height = 0 close to (0, 0)
clicking anywhere in the preview window would select them
2014-10-14 01:52:26 +02:00
Palana cf3ca1d5fc Propagate preview window selection to sources list 2014-10-13 22:16:32 +02:00
Palana 3dc1b7f3d5 Fix memory leak when opening and closing remux window without remuxing
The remuxer thread was only started if there was an actual remux job,
which resulted in the remuxer thread not being able to call the worker's
destructor (because it wasn't running)
2014-10-13 20:09:44 +02:00
Palana 0619977549 Resolve shortcut key conflict for "Show/Remux Recordings" 2014-10-13 18:38:06 +02:00
Palana 444a080218 Do not display name exists dialog if source name does not change 2014-10-13 18:36:30 +02:00
Palana c9ee436e1c Add UI for remuxing recordings via FFmpeg 2014-10-12 19:56:52 +02:00
Jim daf2b02c73 Merge pull request #279 from palana/sparkle-update
Add option to use Sparkle for updates
2014-10-11 18:50:22 -07:00
Ben Torell 958b5c12de Latest translations from Crowdin 2014-10-11 18:47:35 -04:00
Palana e7cfd58e9e Add option to use Sparkle for updates
OBS Sparkle feeds have two extensions to vanilla Sparkle feeds:
- There can be two kinds of items per feed: (zipped) .app and .mpkg
  via <ce:packageType>app|mpkg</ce:packageType> (default is mpkg)
- Feed items can be disabled via <ce:deployed>false</ce:deployed>; these
  items will not be considered for updates unless
  "[General] UpdateToUndeployed=1" is set the global config

Unlike other Sparkle implementations the FeedURL cannot be updated via user
preferences because we support multiple app packages with the same package
identifier but different FeedURL settings on the same machine
2014-10-11 22:17:18 +02:00
Palana 59f2a6ac5a Handle 'update_properties' signal in window-basic-properties 2014-10-01 15:39:58 +02:00
Palana 088a05db8f Move properties loading to OBSPropertiesView 2014-10-01 15:39:57 +02:00
Palana 7c0018d4bc Remove destructor from OBSPropertiesView 2014-10-01 15:39:57 +02:00
jp9000 c9df41c1e2 (API Change) Remove pointers from all typedefs
Typedef pointers are unsafe.  If you do:
typedef struct bla *bla_t;
then you cannot use it as a constant, such as: const bla_t, because
that constant will be to the pointer itself rather than to the
underlying data.  I admit this was a fundamental mistake that must
be corrected.

All typedefs that were pointer types will now have their pointers
removed from the type itself, and the pointers will be used when they
are actually used as variables/parameters/returns instead.

This does not break ABI though, which is pretty nice.
2014-09-25 21:48:11 -07:00
jp9000 4a06960188 Basic UI: Add "Use Constant Bitrate" advanced option.
It's better to use VBR for local recordings, so this option should be
nice for people who want to do that.
2014-09-24 21:22:50 -07:00
jp9000 fd64fbb2f4 Basic UI: Remove "CPU" from "x264 CPU Preset" text
I feel like people keep mistaking how x264 preset functions.  They often
associate it with their own CPU speed, and I feel the name does not help
with that issue.  I think it may be for the best to just take it out.
At best, it will keep people away from using it unless they know what
they're doing, and at worst, people at least won't be able to associate
it with their CPU as easily anymore.
2014-09-24 21:20:41 -07:00
jp9000 ecc102fc51 Basic UI: Clarify "advanced encoder settings" text
Change checkbox with text "Advanced Encoder Settings" to "Use Advanced
Encoder Settings".  This way it will hint that the settings will be
disabled when unchecked.
2014-09-24 21:13:28 -07:00
John Bradley 6ff5a3ab2c Fix APPLE -> __APPLE__ def in interaction gui 2014-09-17 12:09:26 -05:00
John Bradley c62a0059ed Set proper source relative X,Y coords on wheel interaction 2014-09-17 12:05:49 -05:00
John Bradley 3b0fa22f8a Move raw pointer usage/delete to RAII in interaction 2014-09-17 11:01:54 -05:00
John Bradley 688af46664 Remove interaction event filter in destructor
QT fakes a mouse move when destructing which is
caught by our filter
2014-09-17 10:02:53 -05:00
Jim 8bfa7398b0 Merge pull request #265 from kc5nra/interaction
Add interaction support to libobs and support for pumping the events/interaction in gui
2014-09-15 16:42:19 -07:00
John Bradley 4221134748 Add interaction gui 2014-09-15 18:29:26 -05:00
John Bradley 3f993e40df Add helper function to get specific scene item 2014-09-15 18:19:39 -05:00
jp9000 b4052f81ef Add cmake option to disable user interface
Adds:
ENABLE_UI (on by default) which makes it so that the UI is required, and
will fail if a dependency is not found.  This is on by default because
most people are building it with the user interface, and we'll probably
get a lot of issue reports stating "why is there no executable?" if we
don't have this on by default.

DISABLE_UI which forces the UI off.

If neither are set, then the UI will only be built if the dependencies
for it are found, otherwise the UI will be be ignored.
2014-09-15 14:42:18 -07:00
BtbN 34134bfbf6 Fix AppKit find module 2014-09-15 14:42:18 -07:00
jp9000 efc589653f Remove processEvents
This doesn't really have a purpose, and appears to cause issues for
faruton's plugin, so removing it for the time being.
2014-09-04 15:19:01 -07:00
BtbN 05af461282 Fix path to modules in AppData 2014-09-04 14:03:46 -07:00
Palana c5fdaef450 Fix crash when closing the properties window on OSX
Followup to d56432304e, it apparently
still crashed (on slower machines?) when closing the properties window
via mouse (by clicking the X button)
2014-09-04 06:31:55 +02:00
jp9000 513eaa5f36 Basic UI: Reduce audio meter mute timing threshold
Some devices burst their audio (such as when querying audio from
directshow), and the 250 millisecond threshold that sets the audio meter
back to muted status would erroneously cause the meter to appear bounce
back between muted and unmuted.  Instead, a one second test should be
sufficient time to prevent that from happening.
2014-08-28 18:39:41 -07:00
jp9000 354614a7e8 Basic UI: Signal resize of properties view
If the properties view changed in the properties window, the viewport of
the properties would not trigger a resize because the size of the window
itself does not change.  This creates a signal that allows the parent to
know whether or not to update a viewport, if any.
2014-08-27 18:18:26 -07:00
jp9000 ed2354716f Use more appropriate error message
Sometimes certain drivers do not have the capability required to
initialize the graphics subsystem (mesa currently, for example).
Instead of saying "your hardware is too old", state that the drivers may
also be at fault.
2014-08-25 15:52:54 -07:00
dodgepong 3ceb103129 Add corrections to German 2014-08-25 14:55:06 -07:00
dodgepong a221fee3d2 Add latest translations from CrowdIn 2014-08-25 14:41:52 -07:00
fryshorts 52e7200400 Fix typo in log upload 2014-08-25 22:22:57 +02:00
jp9000 5fa6dbe2d1 Basic UI: Remove debug logging of update reply 2014-08-25 10:18:50 -07:00
jp9000 2a75f519ba Basic UI: Fix formatting 2014-08-25 10:10:58 -07:00
jp9000 76c6f36488 Basic UI: Clear http return data
If the data isn't manually cleared it will accumulate, and cause json
errors if update check/log return is queried more than once
2014-08-25 10:09:57 -07:00
jp9000 ded272e777 Basic UI: Add advanced encoder settings 2014-08-25 08:46:47 -07:00
Palana 083b5d693b Update statusbar when recording 2014-08-25 03:18:05 +02:00
jp9000 3f3a587f48 Basic UI: Make properties window remember size 2014-08-24 16:40:01 -07:00
jp9000 e3ddfec818 Don't use informative text for message box
The informative text is meant to be additional information, not the main
information.  If you use informative text without using regular text, it
causes the message box to get all squishy.
2014-08-24 08:56:50 -07:00
jp9000 97543def13 Fix 'possible loss of data' warning
Qt doesn't like to use size_t anywhere.
2014-08-24 08:27:27 -07:00
Palana 448c3670a0 Refactor log upload to create JSON via obs_data 2014-08-24 02:05:46 +02:00
jp9000 db3614b585 Always create new object when setting a sub-object
Do not use the object returned from obs_data_get_obj to set new
settings.  It could be the default object, which means you'd just end up
modifying the default data, which won't get saved.  Always create a new
object when setting sub-object data.  It doesn't particularly hurt
anything.
2014-08-22 15:48:19 -07:00
Palana ca8aba0bf4 Add Help -> "Show Log Files" menu entry 2014-08-22 19:10:44 +02:00
Palana a64707a4f5 Add File -> "Show Recordings" menu entry 2014-08-22 19:10:44 +02:00
jp9000 5291760cf8 Fix gs_matrix_* issues
Multiplication of the matricies was being done in the wrong direction.
This caused source transformations to come out looking incorrect, for
example the linux-xshm source's cursor would not be drawn correctly or
in the right position if the source was moved/scaled/rotated.  The
problem just turned out to be that the gs_matrix_* functions were
multiplying in the wrong direction.  Reverse the direction of
multiplication, and the problem is solved.
2014-08-20 13:04:13 -07:00
Jim a0897b0adf Merge pull request #243 from jp9000/font-test-mac
Merge freetype text plugin
2014-08-19 03:01:10 -07:00
jp9000 1a5eca34db Add font property to properties widget
Displays the full name of the font in the font's designated settings,
with a "Select Font" button which brings up a font chooser dialog.
2014-08-18 00:14:02 -07:00
Jkoan cc5884c136 Fix Remove Dialog
Remove failed test and add other Messagebox to correct Text with Language support

Add Title again -,-
2014-08-17 14:40:03 +02:00
Gol-D-Ace 9078ee72df Update crowdin url for translator instructions
crowdin moved from .net to .com
2014-08-16 06:52:18 +02:00
Socapex 6597206d93 Alert user when using existing source name. 2014-08-12 17:07:59 -04:00
jp9000 7608f77e8b (API Change) Rename autoselect/default functions
For the sake of consistency, renamed these two functions to include
_value at the end so they are consistent.

Renamed:                         To:
-------------------------------------------------------
obs_data_has_default             obs_data_has_default_value
obs_data_has_autoselect          obs_data_has_autoselect_value
obs_data_item_has_default        obs_data_item_has_default_value
obs_data_item_has_autoselect     obs_data_item_has_autoselect_value
2014-08-09 14:36:38 -07:00
jp9000 5780f3f177 (API Change) Improve graphics API consistency
Summary:
- Prefix all graphics subsystem names with gs_ or GS_
- Unsquish funciton names (for example _setfloat to _set_float)
- Changed create functions to be more consistent with the rest of the
  API elsewhere.  For exmaple, instead of
  gs_create_texture/gs_texture_destroy, it's now
  gs_texture_create/gs_texture_destroy
- Renamed gs_stencil_op enum to gs_stencil_op_type

From:                            To:
-----------------------------------------------------------
tvertarray                       gs_tvertarray
vb_data                          gs_vb_data
vbdata_create                    gs_vbdata_create
vbdata_destroy                   gs_vbdata_destroy
shader_param                     gs_shader_param
gs_effect                        gs_effect
effect_technique                 gs_effect_technique
effect_pass                      gs_effect_pass
effect_param                     gs_effect_param
texture_t                        gs_texture_t
stagesurf_t                      gs_stagesurf_t
zstencil_t                       gs_zstencil_t
vertbuffer_t                     gs_vertbuffer_t
indexbuffer_t                    gs_indexbuffer_t
samplerstate_t                   gs_samplerstate_t
swapchain_t                      gs_swapchain_t
texrender_t                      gs_texrender_t
shader_t                         gs_shader_t
sparam_t                         gs_sparam_t
effect_t                         gs_effect_t
technique_t                      gs_technique_t
eparam_t                         gs_eparam_t
device_t                         gs_device_t
graphics_t                       graphics_t
shader_param_type                gs_shader_param_type
SHADER_PARAM_UNKNOWN             GS_SHADER_PARAM_UNKNOWN
SHADER_PARAM_BOOL                GS_SHADER_PARAM_BOOL
SHADER_PARAM_FLOAT               GS_SHADER_PARAM_FLOAT
SHADER_PARAM_INT                 GS_SHADER_PARAM_INT
SHADER_PARAM_STRING              GS_SHADER_PARAM_STRING
SHADER_PARAM_VEC2                GS_SHADER_PARAM_VEC2
SHADER_PARAM_VEC3                GS_SHADER_PARAM_VEC3
SHADER_PARAM_VEC4                GS_SHADER_PARAM_VEC4
SHADER_PARAM_MATRIX4X4           GS_SHADER_PARAM_MATRIX4X4
SHADER_PARAM_TEXTURE             GS_SHADER_PARAM_TEXTURE
shader_param_info                gs_shader_param_info
shader_type                      gs_shader_type
SHADER_VERTEX                    GS_SHADER_VERTEX
SHADER_PIXEL                     GS_SHADER_PIXEL
shader_destroy                   gs_shader_destroy
shader_numparams                 gs_shader_get_num_params
shader_getparambyidx             gs_shader_get_param_by_idx
shader_getparambyname            gs_shader_get_param_by_name
shader_getviewprojmatrix         gs_shader_get_viewproj_matrix
shader_getworldmatrix            gs_shader_get_world_matrix
shader_getparaminfo              gs_shader_get_param_info
shader_setbool                   gs_shader_set_bool
shader_setfloat                  gs_shader_set_float
shader_setint                    gs_shader_set_int
shader_setmatrix3                gs_shader_setmatrix3
shader_setmatrix4                gs_shader_set_matrix4
shader_setvec2                   gs_shader_set_vec2
shader_setvec3                   gs_shader_set_vec3
shader_setvec4                   gs_shader_set_vec4
shader_settexture                gs_shader_set_texture
shader_setval                    gs_shader_set_val
shader_setdefault                gs_shader_set_default
effect_property_type             gs_effect_property_type
EFFECT_NONE                      GS_EFFECT_NONE
EFFECT_BOOL                      GS_EFFECT_BOOL
EFFECT_FLOAT                     GS_EFFECT_FLOAT
EFFECT_COLOR                     GS_EFFECT_COLOR
EFFECT_TEXTURE                   GS_EFFECT_TEXTURE
effect_param_info                gs_effect_param_info
effect_destroy                   gs_effect_destroy
effect_gettechnique              gs_effect_get_technique
technique_begin                  gs_technique_begin
technique_end                    gs_technique_end
technique_beginpass              gs_technique_begin_pass
technique_beginpassbyname        gs_technique_begin_pass_by_name
technique_endpass                gs_technique_end_pass
effect_numparams                 gs_effect_get_num_params
effect_getparambyidx             gs_effect_get_param_by_idx
effect_getparambyname            gs_effect_get_param_by_name
effect_updateparams              gs_effect_update_params
effect_getviewprojmatrix         gs_effect_get_viewproj_matrix
effect_getworldmatrix            gs_effect_get_world_matrix
effect_getparaminfo              gs_effect_get_param_info
effect_setbool                   gs_effect_set_bool
effect_setfloat                  gs_effect_set_float
effect_setint                    gs_effect_set_int
effect_setmatrix4                gs_effect_set_matrix4
effect_setvec2                   gs_effect_set_vec2
effect_setvec3                   gs_effect_set_vec3
effect_setvec4                   gs_effect_set_vec4
effect_settexture                gs_effect_set_texture
effect_setval                    gs_effect_set_val
effect_setdefault                gs_effect_set_default
texrender_create                 gs_texrender_create
texrender_destroy                gs_texrender_destroy
texrender_begin                  gs_texrender_begin
texrender_end                    gs_texrender_end
texrender_reset                  gs_texrender_reset
texrender_gettexture             gs_texrender_get_texture
GS_BUILDMIPMAPS                  GS_BUILD_MIPMAPS
GS_RENDERTARGET                  GS_RENDER_TARGET
gs_device_name                   gs_get_device_name
gs_device_type                   gs_get_device_type
gs_entercontext                  gs_enter_context
gs_leavecontext                  gs_leave_context
gs_getcontext                    gs_get_context
gs_renderstart                   gs_render_start
gs_renderstop                    gs_render_stop
gs_rendersave                    gs_render_save
gs_getinput                      gs_get_input
gs_geteffect                     gs_get_effect
gs_create_effect_from_file       gs_effect_create_from_file
gs_create_effect                 gs_effect_create
gs_create_vertexshader_from_file gs_vertexshader_create_from_file
gs_create_pixelshader_from_file  gs_pixelshader_create_from_file
gs_create_texture_from_file      gs_texture_create_from_file
gs_resetviewport                 gs_reset_viewport
gs_set2dmode                     gs_set_2d_mode
gs_set3dmode                     gs_set_3d_mode
gs_create_swapchain              gs_swapchain_create
gs_getsize                       gs_get_size
gs_getwidth                      gs_get_width
gs_getheight                     gs_get_height
gs_create_texture                gs_texture_create
gs_create_cubetexture            gs_cubetexture_create
gs_create_volumetexture          gs_voltexture_create
gs_create_zstencil               gs_zstencil_create
gs_create_stagesurface           gs_stagesurface_create
gs_create_samplerstate           gs_samplerstate_create
gs_create_vertexshader           gs_vertexshader_create
gs_create_pixelshader            gs_pixelshader_create
gs_create_vertexbuffer           gs_vertexbuffer_create
gs_create_indexbuffer            gs_indexbuffer_create
gs_gettexturetype                gs_get_texture_type
gs_load_defaultsamplerstate      gs_load_default_samplerstate
gs_getvertexshader               gs_get_vertex_shader
gs_getpixelshader                gs_get_pixel_shader
gs_getrendertarget               gs_get_render_target
gs_getzstenciltarget             gs_get_zstencil_target
gs_setrendertarget               gs_set_render_target
gs_setcuberendertarget           gs_set_cube_render_target
gs_beginscene                    gs_begin_scene
gs_draw                          gs_draw
gs_endscene                      gs_end_scene
gs_setcullmode                   gs_set_cull_mode
gs_getcullmode                   gs_get_cull_mode
gs_enable_depthtest              gs_enable_depth_test
gs_enable_stenciltest            gs_enable_stencil_test
gs_enable_stencilwrite           gs_enable_stencil_write
gs_blendfunction                 gs_blend_function
gs_depthfunction                 gs_depth_function
gs_stencilfunction               gs_stencil_function
gs_stencilop                     gs_stencil_op
gs_setviewport                   gs_set_viewport
gs_getviewport                   gs_get_viewport
gs_setscissorrect                gs_set_scissor_rect
gs_create_texture_from_iosurface gs_texture_create_from_iosurface
gs_create_gdi_texture            gs_texture_create_gdi
gs_is_compressed_format          gs_is_compressed_format
gs_num_total_levels              gs_get_total_levels
texture_setimage                 gs_texture_set_image
cubetexture_setimage             gs_cubetexture_set_image
swapchain_destroy                gs_swapchain_destroy
texture_destroy                  gs_texture_destroy
texture_getwidth                 gs_texture_get_width
texture_getheight                gs_texture_get_height
texture_getcolorformat           gs_texture_get_color_format
texture_map                      gs_texture_map
texture_unmap                    gs_texture_unmap
texture_isrect                   gs_texture_is_rect
texture_getobj                   gs_texture_get_obj
cubetexture_destroy              gs_cubetexture_destroy
cubetexture_getsize              gs_cubetexture_get_size
cubetexture_getcolorformat       gs_cubetexture_get_color_format
volumetexture_destroy            gs_voltexture_destroy
volumetexture_getwidth           gs_voltexture_get_width
volumetexture_getheight          gs_voltexture_get_height
volumetexture_getdepth           gs_voltexture_getdepth
volumetexture_getcolorformat     gs_voltexture_get_color_format
stagesurface_destroy             gs_stagesurface_destroy
stagesurface_getwidth            gs_stagesurface_get_width
stagesurface_getheight           gs_stagesurface_get_height
stagesurface_getcolorformat      gs_stagesurface_get_color_format
stagesurface_map                 gs_stagesurface_map
stagesurface_unmap               gs_stagesurface_unmap
zstencil_destroy                 gs_zstencil_destroy
samplerstate_destroy             gs_samplerstate_destroy
vertexbuffer_destroy             gs_vertexbuffer_destroy
vertexbuffer_flush               gs_vertexbuffer_flush
vertexbuffer_getdata             gs_vertexbuffer_get_data
indexbuffer_destroy              gs_indexbuffer_destroy
indexbuffer_flush                gs_indexbuffer_flush
indexbuffer_getdata              gs_indexbuffer_get_data
indexbuffer_numindices           gs_indexbuffer_get_num_indices
indexbuffer_gettype              gs_indexbuffer_get_type
texture_rebind_iosurface         gs_texture_rebind_iosurface
texture_get_dc                   gs_texture_get_dc
texture_release_dc               gs_texture_release_dc
2014-08-09 11:57:38 -07:00
jp9000 04712b5fe9 (API Change) Unsquish obs_data_* names
Changed:                 To:
-----------------------------------------------
obs_data_getjson         obs_data_get_json
obs_data_getstring       obs_data_get_string
obs_data_getint          obs_data_get_int
obs_data_getdouble       obs_data_get_double
obs_data_getbool         obs_data_get_bool
obs_data_getobj          obs_data_get_obj
obs_data_getarray        obs_data_get_array
obs_data_setstring       obs_data_set_string
obs_data_setint          obs_data_set_int
obs_data_setdouble       obs_data_set_double
obs_data_setbool         obs_data_set_bool
obs_data_setobj          obs_data_set_obj
obs_data_setarray        obs_data_set_array
obs_data_item_getstring  obs_data_item_get_string
obs_data_item_getint     obs_data_item_get_int
obs_data_item_getdouble  obs_data_item_get_double
obs_data_item_getbool    obs_data_item_get_bool
obs_data_item_getobj     obs_data_item_get_obj
obs_data_item_getarray   obs_data_item_get_array
obs_data_item_setstring  obs_data_item_set_string
obs_data_item_setint     obs_data_item_set_int
obs_data_item_setdouble  obs_data_item_set_double
obs_data_item_setbool    obs_data_item_set_bool
obs_data_item_setobj     obs_data_item_set_obj
obs_data_item_setarray   obs_data_item_set_array
2014-08-09 11:57:36 -07:00
jp9000 a3682fc8fb (API Change) Use 'get' convention in libobs (base)
Instead of having functions like obs_signal_handler() that can fail to
properly specify their actual intent in the name (does it signal a
handler, or does it return a signal handler?), always prefix functions
that are meant to get information with 'get' to make its functionality
more explicit.

Previous names:             New names:
-----------------------------------------------------------
obs_audio                   obs_get_audio
obs_video                   obs_get_video
obs_signalhandler           obs_get_signal_handler
obs_prochandler             obs_get_proc_handler
obs_source_signalhandler    obs_source_get_signal_handler
obs_source_prochandler      obs_source_get_proc_handler
obs_output_signalhandler    obs_output_get_signal_handler
obs_output_prochandler      obs_output_get_proc_handler
obs_service_signalhandler   obs_service_get_signal_handler
obs_service_prochandler     obs_service_get_proc_handler
2014-08-08 11:04:46 -07:00
jp9000 73baaa59e9 (API Change) Unsquish libobs (base) names
Previous names:             New names:
-----------------------------------------------------------
obs_view_setsource          obs_view_set_source
obs_view_getsource          obs_view_get_source
obs_source_getdisplayname   obs_source_get_display_name
obs_source_getwidth         obs_source_get_width
obs_source_getheight        obs_source_get_height
obs_filter_getparent        obs_filter_get_parent
obs_filter_gettarget        obs_filter_get_target
obs_source_filter_setorder  obs_source_filter_set_order
obs_source_getsettings      obs_source_get_settings
obs_source_getname          obs_source_get_name
obs_source_setname          obs_source_set_name
obs_source_setvolume        obs_source_set_volume
obs_source_getvolume        obs_source_get_volume
obs_scene_getsource         obs_scene_get_source
obs_scene_fromsource        obs_scene_from_source
obs_scene_findsource        obs_scene_find_source
obs_output_getdisplayname   obs_output_get_display_name
obs_output_getname          obs_output_get_name
obs_encoder_getname         obs_encoder_get_name
obs_service_getdisplayname  obs_service_get_display_name
obs_service_getname         obs_service_get_name
2014-08-08 11:04:46 -07:00
jp9000 41176eef27 (API Change) Remove obs_graphics()
API Removed:
- graphics_t obs_graphics();
Replaced With:
- void obs_enter_graphics();
- void obs_leave_graphics();

Description:
  obs_graphics() was somewhat of a pointless function.  The only time
that it was ever necessary was to pass it as a parameter to
gs_entercontext() followed by a subsequent gs_leavecontext() call after
that.  So, I felt that it made a bit more sense just to implement
obs_enter_graphics() and obs_leave_graphics() functions to do the exact
same thing without having to repeat that code.  There's really no need
to ever "hold" the graphics pointer, though I suppose that could change
in the future so having a similar function come back isn't out of the
question.

Still, this at least reduces the amount of unnecessary repeated code for
the time being.
2014-08-08 11:04:45 -07:00
jp9000 b007c6b139 (API Change) Un-squish obs_sceneitem_*
Renamed:                         To:
-----------------------------------------------------------
obs_sceneitem_getscene           obs_sceneitem_get_scene
obs_sceneitem_getsource          obs_sceneitem_get_source
obs_sceneitem_setpos             obs_sceneitem_set_pos
obs_sceneitem_setrot             obs_sceneitem_set_rot
obs_sceneitem_setscale           obs_sceneitem_set_scale
obs_sceneitem_setalignment       obs_sceneitem_set_alignment
obs_sceneitem_setorder           obs_sceneitem_set_order
obs_sceneitem_getpos             obs_sceneitem_get_pos
obs_sceneitem_getrot             obs_sceneitem_get_rot
obs_sceneitem_getscale           obs_sceneitem_get_scale
obs_sceneitem_getalignment       obs_sceneitem_get_alignment
2014-08-08 11:04:45 -07:00
jp9000 e42af67128 (API Change) Split obs_source_gettype
Changed:
- obs_source_gettype
To:
- enum obs_source_type obs_source_get_type(obs_source_t source);
- const char *obs_source_get_id(obs_source_t source);

This function was inconsistent for a number of reasons.  First, it
returns both the ID and the type of source (input/transition/filter),
which is inconsistent with the name of "get type".  Secondly, the
'squishy' naming convention which has just turned out to be bad
practice and causes inconsistencies.  So it's now replaced with two
functions that just return the type and the ID.
2014-08-08 11:04:44 -07:00
jp9000 d2b4f82637 (API Change) Rename order_movement
Prefix with obs_ for the sake of consistency

Renamed enums:
- order_movement (now obs_order_movement)

Affected functions:
- obs_source_filter_setorder
- obs_sceneitem_setorder
2014-08-08 11:04:43 -07:00
jp9000 24bd82a09c (API Change) Rename obs_sceneitem_info structure
Change obs_sceneitem_info structure to obs_transform_info - this
structure will not just be used with scene items in the future.
2014-08-08 11:04:42 -07:00
jp9000 e63ebdce91 Don't use "type" of source, use "id" of source
The naming here is a poor choice, a source type determines if a source
is either a regular input, a filter, or a transition.  The ID is the
actual unique identifier of a source.
2014-08-08 10:50:24 -07:00
fryshorts d8d0ae46ba Install desktop file and application icon on linux 2014-08-05 21:15:45 +02:00
fryshorts 3cbabc6b55 Add .desktop file for obs on linux 2014-08-05 21:15:31 +02:00
fryshorts 7ef85a4028 Add obs icon and set it as window icon. 2014-07-31 22:29:33 +02:00