Gol-D-Ace
8d8c2e5a22
Update translations from Crowdin
2017-08-10 16:07:40 +02:00
Gol-D-Ace
3d2cacd782
Update translations from Crowdin
2017-05-20 10:18:41 +02:00
Shaolin
e006d961a4
audio-monitoring: Add ability to monitor Outputs
...
(Note: This commits also modifies the linux-pulseaudio, mac-capture, and
win-wasapi plugins)
Do not prevent the targeted output device from being monitored if the
selected monitor output device is a different one.
Closes jp9000/obs-studio#872
2017-04-05 18:58:08 -07:00
Gol-D-Ace
dbf95bdc15
Update translations from Crowdin
2017-03-05 23:40:11 +01:00
jp9000
39d76cc76f
win-wasapi: Mark audio outputs as unmonitorable
...
(Note: This commit also modifies mac-capture and linux-pulseaudio)
This prevents outputs from being monitored, preventing a potential
feedback loop.
2017-02-06 11:44:03 -08:00
Gol-D-Ace
e4f32aa54a
Update translations from Crowdin
2017-01-16 12:44:07 +01:00
Gol-D-Ace
69f0bc244a
Update translations from Crowdin
2016-12-23 20:46:47 +01:00
Gol-D-Ace
aadc7263c0
Update translations from Crowdin
2016-09-28 01:17:24 +02:00
Gol-D-Ace
cb036b2713
Update translations from Crowdin
2016-08-08 16:21:48 +02:00
Gol-D-Ace
81adb13f59
Update translations from Crowdin
2016-07-06 01:18:27 +02:00
Gol-D-Ace
5ed7081213
Update translations from Crowdin
2016-04-23 10:29:21 +02:00
jp9000
69da1151e0
Update translations from Crowdin
2016-03-19 12:08:48 -07:00
dodgepong
ea9db8249b
Add latest translations from CrowdIn
2016-01-31 18:28:35 -05:00
jp9000
cd97ce2a17
libobs: Add source output flag OBS_SOURCE_DO_NOT_DUPLICATE
...
Certain types of sources (display captures, game captures, audio
device captures, video device captures) should not be duplicated. This
capability flag hints that the source prefers references over full
duplication.
2016-01-26 11:49:50 -08:00
Gol-D-Ace
2ee1d82860
Add latest translations from Crowdin
2015-11-16 21:04:55 +01:00
jp9000
6ad8df8adb
(API Change) libobs: Use single func for base effects
...
API removed:
--------------------
gs_effect_t *obs_get_default_effect(void);
gs_effect_t *obs_get_default_rect_effect(void);
gs_effect_t *obs_get_opaque_effect(void);
gs_effect_t *obs_get_solid_effect(void);
gs_effect_t *obs_get_bicubic_effect(void);
gs_effect_t *obs_get_lanczos_effect(void);
gs_effect_t *obs_get_bilinear_lowres_effect(void);
API added:
--------------------
gs_effect_t *obs_get_base_effect(enum obs_base_effect effect);
Summary:
--------------------
Combines multiple near-identical functions into a single function with
an enum parameter.
2015-10-19 00:52:45 -07:00
dodgepong
76c18b079b
Latest translations from CrowdIn
2015-09-22 23:33:29 -04:00
jp9000
6285a47726
(API Change) libobs: Pass type data to get_name callbacks
...
API changed from:
obs_source_info::get_name(void)
obs_output_info::get_name(void)
obs_encoder_info::get_name(void)
obs_service_info::get_name(void)
API changed to:
obs_source_info::get_name(void *type_data)
obs_output_info::get_name(void *type_data)
obs_encoder_info::get_name(void *type_data)
obs_service_info::get_name(void *type_data)
This allows the type data to be used when getting the name of the
object (useful for plugin wrappers primarily).
NOTE: Though a parameter was added, this is backward-compatible with
older plugins due to calling convention. The new parameter will simply
be ignored by older plugins, and the stack (if used) will be cleaned up
by the caller.
2015-09-16 09:21:12 -07:00
jp9000
05eef74891
mac-capture: Don't call CFRelease on null vars
...
CFRelease is not meant to be used with null variables. Check the
variables before calling CFRelease.
2015-08-03 00:08:03 -07:00
jp9000
35a4acede0
mac-capture: Get cursor visible setting on create
...
When display capture is created, the hide_cursor variable is not
initialized, so just initialize it to the setting in the create
function.
2015-04-02 17:48:22 -07:00
jp9000
a892fa9e33
mac-capture: Fix display capture cursor bug
...
The kCGDisplayStreamShowCursor option used with the dictionary does not
work if you assign @true or @false to it. After some testing, it needs
to point to the id cast of either kCFBooleanTrue or kCFBooleanFalse in
order for it to work properly.
If it doesn't use either of those values, the display stream seems to
use its internal default, which on 10.8 and 10.9 is visible, and 10.10+
is invisible, which would explain why people on 10.10 couldn't get the
cursor to capture.
2015-04-02 17:47:53 -07:00
dodgepong
a04548070c
UI: Add latest translations from CrowdIn
2015-03-25 20:51:25 -04:00
jp9000
f3104d92d5
mac-capture: If channels above 8, force to stereo
...
Certain devices (particularly certain mixers and soundflower 64ch) would
have an arbitrary number of channels, and wouldn't really be mappable to
a specific speaker layout supported by libobs.
So to fix this issue, if the channel count is above 8, force the data to
stereo to ensure playback can still occur, rather than cause it to just
fail.
2015-03-22 19:18:08 -07:00
jp9000
3c8a3d7866
mac-capture: Add update callbacks for coreaudio
...
Somehow managed to forget to add this function at an earlier point.
Allows the audio device to be changed via a simple update.
2015-02-20 21:53:00 -08:00
jp9000
8bc2288dfe
mac-capture: Separate audio shudown code
...
This allows the code to be used elsewhere as needed.
2015-02-20 21:49:51 -08:00
dodgepong
187f5181c7
Add latest translations from crowdin
2015-02-11 16:27:24 -05:00
dodgepong
eb918d01b4
Add latest translations from CrowdIn
2015-02-09 19:26:17 -05:00
Luke Yelavich
8dbb0cff6b
mac-capture: Add Sound Siphon as a supported audio routing device
...
Add support for Static Z Software's Sound Siphon audio routing software
(http://staticz.com/soundsiphon/ ) which provides more advanced audio routing
possibilities.
2015-01-09 08:12:51 +11:00
jp9000
6b8b5e5f64
mac-capture: Fix potential crash querying devices
...
I didn't check to see if the size of the string was 0, when it's 0 it
won't create the converted string and it'll send a null pointer to
CFStringGetCString, causing it to crash.
2015-01-05 14:11:33 -08:00
jp9000
b277f2b737
Don't update video of sources if not displaying
...
This is a bit of an optimization to reduce load a little bit if any of
the video capture sources are not currently being displayed on the
screen. They will simply not capture or update their texture data if
they are not currently being shown anywhere.
The mac and window game capture sources don't really apply due to the
fact that their textures aren't updated on the source's end (they update
inside of the hooks).
2015-01-05 02:10:32 -08:00
dodgepong
17804ec12f
Add latest translations from CrowdIn
2014-10-31 21:02:47 -04:00
jp9000
db81c59b5e
Revert "Add flag to obs_source_frame for unbuffered video"
...
This reverts commit c3f4b0f018
.
The obs_source_frame should not need to take flags to do this. This
shouldn't be a setting associated with the frame, but rather a setting
associated with the source itself. This was the wrong approach to
solving this particular problem.
2014-10-23 10:15:26 -07:00
jp9000
c3f4b0f018
Add flag to obs_source_frame for unbuffered video
...
Add 'flags' member variable to obs_source_frame structure.
The OBS_VIDEO_UNBUFFERED flags causes the video to play back as soon as
it's received (in the next frame playback), causing it to disregard the
timestamp value for the sake of video playback (however, note that the
video timestamp is still used for audio synchronization if audio is
present on the source as well).
This is partly a convenience feature, and partly a necessity for certain
plugins (such as the linux v4l plugin) where timestamp information for
the video frames can sometimes be unreliable.
2014-10-22 20:32:47 -07:00
Ben Torell
958b5c12de
Latest translations from Crowdin
2014-10-11 18:47:35 -04:00
Palana
802ae79601
mac-capture: Use obs_get_default_rect_effect
2014-10-03 23:53:37 +02:00
Palana
abb95781dd
mac-capture: Rename display_capture::draw_effect to …::effect
2014-10-03 23:53:37 +02:00
Palana
94a93abb2b
(API Change) Pass data to get_properties when possible
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
dodgepong
a221fee3d2
Add latest translations from CrowdIn
2014-08-25 14:41:52 -07:00
Palana
f8ed37dec4
Add Window Capture to mac-capture plugin
2014-08-20 00:50:18 +02:00
Palana
7b6c4a130a
Add Display Capture crop modes
2014-08-20 00:50:17 +02:00
Palana
bc64fa97a0
Add CoreGraphics window utilities
2014-08-20 00:42:56 +02:00
BtbN
02725acdd4
Fix double invocation of install_obs_plugin in every single plugin
2014-08-19 14:24:59 +02: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
2d606dd8d8
(API Change) Use 'get' convention: API callbacks
...
Renamed: To:
-------------------------------------------------------
obs_source_info::defaults obs_source_info::get_defaults
obs_source_info::properties obs_source_info::get_properties
obs_output_info::defaults obs_output_info::get_defaults
obs_output_info::properties obs_output_info::get_properties
obs_output_info::total_bytes obs_output_info::get_total_bytes
obs_output_info::dropped_frames obs_output_info::get_dropped_frames
obs_encoder_info::defaults obs_encoder_info::get_defaults
obs_encoder_info::properties obs_encoder_info::get_properties
obs_encoder_info::extra_data obs_encoder_info::get_extra_data
obs_encoder_info::sei_data obs_encoder_info::get_sei_data
obs_encoder_info::audio_info obs_encoder_info::get_audio_info
obs_encoder_info::video_info obs_encoder_info::get_video_fino
obs_service_info::defaults obs_service_info::get_defaults
obs_service_info::properties obs_service_info::get_properties
2014-08-09 11:57:30 -07:00
jp9000
c83d05117f
(API Change) Unsquish libobs API callback names
...
Renamed: To:
-------------------------------------------------------
obs_source_info::getname obs_source_info::get_name
obs_source_info::getwidth obs_source_info::get_width
obs_source_info::getheight obs_source_info::get_height
obs_output_info::getname obs_output_info::get_name
obs_encoder_info::getname obs_encoder_info::get_name
obs_service_info::getname obs_service_info::get_name
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
0961af6e66
(API Change) Rename source_audio structure
...
Rename source_audio to obs_source_audio to make it more consistent with
the rest of the API
2014-08-08 11:04:44 -07:00