0
0
mirror of https://github.com/obsproject/obs-studio.git synced 2024-09-20 21:13:04 +02:00
Commit Graph

137 Commits

Author SHA1 Message Date
jp9000
4e7f076c68 Add basic update checking 2014-07-14 03:19:24 -07:00
Palana
57736d308b Add OSX native shortcut for scene/source deletion 2014-07-13 21:46:44 +02:00
jp9000
dbe166178f Save last version to global.ini on exit 2014-07-13 12:38:58 -07:00
jp9000
e61cb07a94 Change names of default outputs/encoders/service 2014-07-13 05:05:29 -07:00
jp9000
f3285e2cfa Fix bug where x264 buffer size was always 1000 2014-07-13 02:59:34 -07:00
jp9000
a1073b8c1d Remove loading of test-input module 2014-07-12 12:06:26 -07:00
jp9000
0bf0266b2a Use the "Stop Streaming" translated text 2014-07-12 05:34:23 -07:00
jp9000
5585ae0eff Rename volume control if audio source renamed 2014-07-08 11:58:48 -07:00
jp9000
f0cc386499 Implement status bar
The status bar now displays:
 - Auto-reconnect information (reconnecting and reconnect success)
 - Dropped frames (as well as percentage of total video frames)
 - Duration of session
 - CPU usage of the program
 - Kbp/s

The OBSBasic class is getting a bit big, so I separated out the
status bar code to its own class derived from QStatusBar.
2014-07-06 17:36:46 -07:00
jp9000
a9b3da010d Add function to main window to query CPU usage 2014-07-06 17:36:45 -07:00
jp9000
118e3edd18 Remove unnecessary tests to delete
The delete operator can be called on a null pointer, so there's no
reason for these tests.
2014-07-06 17:35:17 -07:00
jp9000
df3623b478 Swap reconnect parameters
Fixes a bug where it would use the max retries for the delay time and
vise-versa.
2014-07-04 13:21:11 -07:00
jp9000
07b2fd5972 Do not visually select audio-only sources 2014-07-04 10:58:03 -07:00
jp9000
d3e6148ae7 Add auto-reconnect settings 2014-07-03 18:07:33 -07:00
jp9000
18966a9ca0 Implement 'Order' menu
Contains Move Up, Move Down, Move to Top, Move to Bottom.  Also assigns
Ctrl-Up, Ctrl-Down, Ctrl-Home, Ctrl-End to each action.

This was also added to the right-click context menu popup for sources.
2014-06-30 19:47:06 -07:00
jp9000
0b52828086 Remove 'remove item' action, clean up code
The removeItemAction just for a keyboard shortcut was unnecessary.
Instead, use the toolbar button to associate a shortcut with, and remove
the removeItemAction object.
2014-06-30 18:21:40 -07:00
jp9000
c48ec48765 Implement 'scenes' list context menu 2014-06-30 16:03:12 -07:00
jp9000
66c3c862e4 Make 'remove' toolbar buttons query for removal 2014-06-30 13:47:51 -07:00
jp9000
ff2a2cceb3 Implement context menu on 'sources' box 2014-06-30 01:13:32 -07:00
jp9000
67440b92b5 Fix renaming bugs, deny if empty, and simplify
I screwed it up a bit originally, using && instead of ||.

Use 'trimmed' function to prevent sources with leading or trailing
whitespace.

Also, do not allow an empty value.
2014-06-30 01:08:12 -07:00
jp9000
68c8fa3e17 Do not rename items if the name is the same 2014-06-30 00:40:51 -07:00
jp9000
11a7b57cd8 Implement renaming of scenes/sources 2014-06-30 00:18:44 -07:00
jp9000
269a91f522 Give the 'add source' popup the 'Add' title
This allows the popup to be appended directly as an item for other
popups.
2014-06-29 18:43:54 -07:00
jp9000
3f262b8a4a Use signal/slot when creating a source via popup
I realized that there's no other way to share the menu if I want to add
it as a sub-menu somewhere else.
2014-06-29 17:33:40 -07:00
jp9000
dfb7ff4139 Add image source module to obs-studio basic UI
...We really need to make this search for modules and automatically load
them.
2014-06-28 10:35:40 -07:00
jp9000
dbb9124bf6 Remove 'effect' param from effect param funcs
Similar to the shader functions, the effect parameter functions take
the effect as a parameter.  However, the effect parameter is pretty
pointless, because the effect parameter.. parameter stores the effect
pointer interally.
2014-06-25 22:24:27 -07:00
Jim
2ea50cab36 Merge pull request #124 from jp9000/new-locale-handling
Update to new module locale API
2014-06-25 12:58:05 -07:00
jp9000
0b4a259e56 Remove 'locale' parameter from all callbacks
The locale parameter was a mistake, because it puts extra needless
burden upon the module developer to have to handle this variable for
each and every single callback function.  The parameter is being removed
in favor of a single centralized module callback function that
specifically updates locale information for a module only when needed.
2014-06-25 12:36:26 -07:00
jp9000
899f053034 Add API for setting/getting current locale
This API is used to set the current locale for libobs, which it will set
for all modules when a module is loaded or specifically when the locale
is manually changed.
2014-06-25 12:36:17 -07:00
jp9000
2e6063ce79 Fix 'potentially uninitialized variable' warnings 2014-06-25 02:03:29 -07:00
jp9000
11514d36ea Mark unused lambda parameter 2014-06-25 01:54:33 -07:00
jp9000
aef8c218c0 Make 'center to screen' just center the source
Instead of using bounds to force the source to be centered (and
unrotated), just center the source positionally on the screen.  Will
also preserve rotation.
2014-06-22 23:49:57 -07:00
fryshorts
5f8a6db816 Add initial implementation of a v4l2 capture plugin
This patch adds a plugin to capture video data from v4l2 devices under linux.
2014-06-18 21:31:23 +02:00
jp9000
85ee5d591b UI: Open properties on user source creation
Every time I created a source I found myself in need to actually open up
the properties.  It was getting somewhat on my nerves, so I decided to
just make it automatically pop up when the source is created.
2014-06-16 19:45:47 -07:00
jp9000
ed5b4f590c Fix a number of warnings
Structures with anonymous unions would a warning when you do a brace
assignment on them.

Also fixed some unused parameters and removed some unused variables.
2014-06-16 17:55:48 -07:00
jp9000
98ddb846dc UI: Add padding to scene edges for editing
Add a 10 pixel padding to the sides and remove viewport cutting to
ensure that the editing rectangles are visible even when in the upper
corners.

Also, add a black background for the actual 'scene' in the preview
window so that the scene boundries are actually visible in relation to
the rest of the preview space.
2014-06-15 20:33:13 -07:00
jp9000
452e0695f4 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 20:33:13 -07:00
jp9000
d2ff9d5bf4 UI: Add 'win-dshow' plugin initialization
I really need to make this thing automatically search for plugins some
time.  I've got to admit it's kind of annoying.
2014-05-30 03:31:49 -07:00
BtbN
ca7ba2e234 Add libfdk encoder 2014-05-23 00:06:28 +02:00
jp9000
68d40f13be Fix a few warnings on windows 2014-05-22 03:59:51 -07:00
jp9000
00086f0890 UI: Add FLV file output (sharing encoders)
Implement the 'file path' in output settings, and implement the 'start
recording' button, though for the time being I'm just going to make it
use a directory rather than allow custom file names.

This file output will actually share the video and audio encoder with
the stream.

I don't really know what to do about MP4 -- I don't really like the idea
of saving directly in the program, if you do and the program crashes,
that MP4 file is lost.  I'm contemplating making some sort of mp4 output
process stub.  So no MP4 file output for the time being.

If you need MP4, just remux it with FFmpeg:

ffmpeg -i flv_file.flv -acodec copy -vcodec copy mp4_file.mp4
2014-05-20 23:31:04 -07:00
jp9000
5ba8b09c9c Add help menu with log file uploading
Added github gist API uploading to the help menu to help make problems a
bit easier to debug in the future.  It's somewhat vital that this
functionality be implemented before any release in order to analyze any
given problem a user may be experiencing.
2014-05-18 17:44:10 -07:00
jp9000
999d8ee916 Add ability to move source up/down/etc 2014-05-15 17:40:53 -07:00
jp9000
cfaf0d32af UI: Add name/version to window title
Also, make the 'start stream' button say 'connecting...' when it's
initially trying to connect.
2014-05-15 14:04:18 -07:00
Jim
f5e85e167b Merge pull request #74 from BtbN/linux_new_plugins
Add xcomposite capture
2014-05-15 02:24:26 -07:00
Palana
d3463e0772 Release sources after name check 2014-05-14 22:20:08 +02:00
Palana
4b2170a725 Handle scene name generation collisions 2014-05-14 20:58:15 +02:00
jp9000
03ca5919ce UI: Add popup warnings for connection failure
Also, check for null stream path/key in the RTMP output module.
2014-05-12 15:34:46 -07:00
Socapex
6dc84ad8fe Auto suggest scene and source names.
NameDialog can have placeholder text.
Localize scene number.
Pre-select scene and source text.
2014-05-12 15:01:51 -04:00
Socapex
978de126b3 Advise user he needs a scene before adding a source. 2014-05-12 13:41:50 -04:00