Commit Graph

1768 Commits (328bebb2cb8db0f27d5cb97b20d338d67839d34d)

Author SHA1 Message Date
jp9000 54b1d7532b Update to version 0.6.2 2014-10-18 14:13:32 -07:00
jp9000 9898060223 win-capture: Separate window finding source code
Because other capture methods may end up needing to share this code,
separate the window finding source code to window-helpers.c and
window-helpers.h.

This include a function to fill out a property list with windows, a
function to find a window based upon priority/title/class/exe, and a
function to decode the window title/class/exe strings from a window
setting string.
2014-10-17 04:15:57 -07:00
Jim 291b88e237 Merge pull request #284 from fryshorts/v4l2-input
Add udev support to v4l2 plugin.
2014-10-15 01:38:34 -07:00
Jim 6c08155b1c Merge pull request #282 from BtbN/cmake_mac_fix
Fix cmake policy warning
2014-10-14 22:27:26 -07:00
Palana a88700540e Ignore source deselection until multiple selection is implemented 2014-10-15 02:00:39 +02:00
fryshorts 8a51431fdb Fix left open file descriptor in v4l2 plugin. 2014-10-15 00:13:43 +02:00
fryshorts 9a37b2ce9c Use udev events in the v4l2 plugin.
This adds code to set up the udev monitoring library and use the events
to detect connects/disconnects of devices.
When the currently used device is disconnected the plugin will stop
recording and clean up, so that the device node is freed up.
On reconnection of the device the plugin will use the event to
automatically start the capture again.
2014-10-15 00:13:43 +02:00
fryshorts 1bae57668c Add udev helper library to v4l2 plugin.
This adds a small helper library to the v4l2 plugin that uses udev to
get events for v4l2 devices.
2014-10-15 00:13:43 +02:00
fryshorts 43184d1775 Add cmake module for finding udev.
This adds a cmake module to find udev/libudev for linux.
2014-10-14 23:57:15 +02:00
Jim db9204de82 Merge pull request #283 from ElectronicWar/monitor-capture-upd
Add monitor selection and properties to Monitor Capture (Win)
2014-10-14 12:21:01 -07:00
Manuel Kroeber a7af7ccbfe Add monitor selection and basic properties 2014-10-14 20:45:16 +02:00
Manuel Kroeber ff2c7bd9de Fix for enum_monitors
Function enum_monitors would always stop after first found monitor due to wrong return value.
2014-10-14 20:41:56 +02:00
Manuel Kroeber fa1b9a9048 Use of text macros instead of direct obs_module_text calls 2014-10-14 20:41:05 +02:00
Palana 1df9bcfa49 Log warning when falling back to OpenGL on windows 2014-10-14 18:08:30 +02:00
Palana 8b93ba1c53 Disable blending for colorspace conversion and subsampling only
This should fix blending issues on stream/recording that weren't visible
in the preview
2014-10-14 17:40:48 +02:00
jp9000 76d538611a Initialize default_rect_effect only with OpenGL
Instead of limiting this to an apple-specific define, just limit it to
OpenGL -- because this particular effect file cannot be used with
Direct3D.
2014-10-14 06:47:25 -07:00
jp9000 69fc9fb7fc Free graphics subsystem if graphics fails to load
The graphics subsystem was not being freed here, for example if a
required effect failed to compile it would still successfully have the
graphics subsystem sans required effect.  The graphics subsystem should
be completely shut down if required libobs effects fail to compile.
2014-10-14 01:44:59 -07:00
jp9000 9eab73ea85 Do not init default_rect effect if not on mac 2014-10-14 01:44:20 -07:00
jp9000 caa32cb6d1 Add support for shared textures to graphics API 2014-10-13 21:56:42 -07: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
BtbN f105c93764 Fix cmake policy warning
test is a reserved name.
2014-10-13 19:52:29 +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