Commit Graph

1646 Commits (cf3ca1d5fccbddb1b13cbd451395a82fd78f6506)

Author SHA1 Message Date
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
jp9000 2e2b4a5e90 Log dropped frame count
This was sorely needed for debugging stream issues.
2014-10-12 19:22:04 -07:00
Palana c9ee436e1c Add UI for remuxing recordings via FFmpeg 2014-10-12 19:56:52 +02:00
Palana 4247a7b81e Add media remuxer to media-io 2014-10-12 06:27:33 +02:00
jp9000 e14f0fe56b win-dshow: Fix integer size conversion warnings 2014-10-11 21:18:34 -07:00
jp9000 964ee75ea0 Update to version 0.6.0 2014-10-11 20:29:17 -07: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
Jim 59e6c0c107 Merge pull request #278 from dodgepong/latest-crowdin-translations
Latest translations from Crowdin
2014-10-11 15:58:11 -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
Jim 8dead6a948 Merge pull request #272 from palana/syphon
Add mac-syphon plugin
2014-10-10 17:44:24 -07:00
Jim e7d5ad257b Merge pull request #276 from reboot/fix_pulse_audio_format_conversion
Fix pulse audio format conversion
2014-10-10 17:02:00 -07:00
Jim 9183c827c5 Merge pull request #277 from fryshorts/fixes
Fix small bug in timestamp smoothing for audio sources
2014-10-09 13:34:35 -07:00
fryshorts 5894054521 Fix small bug in timestamp smoothing for audio sources
Due to a small error in the timestamp smoothing code the timestamp of
audio packages that were too early was always set to the next expected
timestamp, even if the difference was bigger than the smoothing threshold.

This would cause obs to simply append all audio data to the buffer even if
the real timestamp was way smaller than the next that was expected.

This should reduce corruption problems with for example the pulseaudio
plugin, which resends data under certain conditions.
2014-10-09 22:25:29 +02:00
Christoph Hohmann ed1430622b Force PulseAudio sample format if the source format is not supported by OBS
If the sample format used by PulseAudio can not be converted into an
OBS audio format it will be handled as AUDIO_FORMAT_UNKNOWN which will
not result in a proper audio recording. So instead we request a format
that OBS supports from PulseAudio and let it do the format conversion.
2014-10-08 00:05:11 +02:00
Christoph Hohmann 8166932d00 Fix PulseAudio audio format to OBS audio format mapping
The format PA_SAMPLE_S24_32LE is a 24 bit audio format in 32 bit integers
and not a 32 bit audio format and so it should no be mapped to
AUDIO_FORMAT_32BIT.
2014-10-07 21:56:32 +02:00
jp9000 4e308c955d linux-pulseaudio: Use interpolated system timing
Before it was giving timestamps based upon system time for each new
segment of audio data.  Also, it was subtracting pulse latency from the
audio timestamp, which seems like it was really meant for use with the
pulse audio time rather than system time.

Now, it just uses system time for timestamps.  Still might not be
totally perfect, but seems to be much better than it was.

This also removes the latency calculation.  Latency is no longer used
because we're not using pulseaudio timing.
2014-10-06 18:49:53 -04:00
jp9000 164f9b4517 linux-pulseaudio: Use inline for small functions 2014-10-06 18:49:53 -04:00
jp9000 e78c54e8e5 libobs/media-io: Add more audio debug output 2014-10-06 18:49:53 -04:00
Jim 5af4000110 Merge pull request #274 from reboot/fix_crash_on_video_init_error
Fix crash in obs_get_video_info when video_output_get_info returns NULL
2014-10-05 14:18:04 -07:00
Christoph Hohmann 1abda41c20 Fix crash in obs_get_video_info when video_output_get_info returns NULL 2014-10-05 22:33:53 +02:00
Christoph Hohmann 3e74e96649 Fix calculation of physical memory on linux systems
As stated in the sysinfo manpage the totalram field in the sysinfo
structure is in mem_unit sizes since Linux 2.3.23. To get the actual
memory in the system the totalram value has to be multiplied with the
mem_unit size.
2014-10-05 13:01:19 -07:00
Palana 2edac33c58 libobs/util: Write 0 character when converting empty strings
Fixes log_windows_version logging garbage for build when running with
debug heap enabled (assuming osvi.szCSDVersion is an empty string)
2014-10-04 21:48:08 +02:00
Palana 019a70f0d4 Add mac-syphon plugin
Allows adding Syphon servers as sources, and provides game-capture if
used with SyphonInject (specifically the scripting additions have to be
installed for SyphonInject to work from within OBS)
2014-10-04 17:26:29 +02: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
jp9000 a1b46c0fa5 libobs-d3d11: Don't depend on specific D3DCompiler
I do not want the D3D11 library to depend on a specific compiler
version.  This way, I do not have to distribute D3D Compiler libraries
with the program (proprietary binary blobs).  Any particular version
works because the API for the D3DCompiler function appears to be the
same; the only things that change are other features and additions
mostly (at least as far as I can tell).  Using any version available on
the system should be more than sufficient rather than depending on some
specific D3D compiler version.

If the user doesn't have it, a download of the latest D3D distributables
should be fine, though it should work with the ones that come with
windows 7+ as well.
2014-10-03 14:33:56 -07:00
Palana 0f15cc143e Add obs_get_default_rect_effect
This provides a default effect for users of GL_TEXTURE_RECTANGLE/textures
that return true for gs_texture_is_rect
2014-10-03 20:18:01 +02:00
Palana 9c4024f5b3 Implement 'update_properties' for mac-avcapture 2014-10-01 15:48:16 +02:00
Palana 59f2a6ac5a Handle 'update_properties' signal in window-basic-properties 2014-10-01 15:39:58 +02:00
Palana b99c378e33 Add 'update_properties' signal and obs_source_update_properties call
obs_source_update_properties should be called by sources when property
values change, e.g. a capture device source would use this when it
detects a new capture device (in case its properties contain a list of
available capture devices or similar)
2014-10-01 15:39:57 +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
Palana 94a93abb2b (API Change) Pass data to get_properties when possible 2014-10-01 15:39:57 +02:00
Palana 74c4932184 Sort obs_data_items by name
This allows for easier comparison between two obs_data_t and it will make

const char *json1 = obs_data_get_json(data);
obs_data_t *data_ = obs_data_create_from_json(json1);
const char *json2 = obs_data_get_json(data_);

produce the same string in json1 and json2
2014-10-01 15:32:49 +02:00
BtbN 8841ea8a6f cmake: Export plugin data destination 2014-09-27 09:41:32 -07:00
BtbN f24f53ea27 cmake: Add helper function to install plain files 2014-09-27 09:41:32 -07:00
BtbN 73d3dbf947 cmake: Change obs helper macros to functions 2014-09-27 09:41:31 -07:00
BtbN 599febcb54 cmake: Replace FFMpeg modules with single module
Now using components instead of one find_package call per module
2014-09-27 09:41:13 -07:00
BtbN c9d3c6c8c1 cmake: Refactor growing list of library locations 2014-09-27 09:40:45 -07:00
BtbN 9dd341a3ed cmake: Properly check for Threading support 2014-09-26 22:52:30 -07:00
jp9000 41fad2d1a4 (API Change) Use const params where applicable
This Fixes a minor flaw with the API where data had to always be mutable
to be usable by the API.

Functions that do not modify the fundamental underlying data of a
structure should be marked as constant, both for safety and to signify
that the parameter is input only and will not be modified by the
function using it.
2014-09-26 17:23:07 -07:00
jp9000 05ac1aea2c Do not modify gs_init_data parameter in gs_create 2014-09-26 16:31:20 -07:00
jp9000 05f89f48ea Ensure num_backbuffers > 0 in gs_swapchain_create 2014-09-26 16:31:20 -07:00
Jim 3b91247f4b Merge pull request #271 from GoaLitiuM/master
Fixed NULL pointer dereferencing in linked lists
2014-09-26 15:45:22 -07:00
GoaLitiuM 10f5d7f3aa Fixed NULL pointer dereferencing in linked lists 2014-09-27 01:35:36 +03:00
Jim d17565afc8 Merge pull request #270 from jp9000/remove-type-pointers
Remove type pointers
2014-09-26 07:22:23 -07:00