Commit Graph

3216 Commits (f05f0592e07a8434d438e66e8eac4697c3561223)

Author SHA1 Message Date
jp9000 b373f82c9e rtmp-services: Add WatchPeopleCode to services 2015-08-16 08:08:13 -07:00
jp9000 a61758c701 rtmp-services: Add restream.io to service list 2015-08-16 08:08:13 -07:00
jp9000 4c724485ae rtmp-services: Rearrange services 2015-08-16 08:08:13 -07:00
jp9000 1f31fa803b rtmp-services: Remove gaminglive.tv
Apparently the site has been dissolved and/or bought out.  It seems it
will reform as something else later on in the future.
2015-08-16 08:08:13 -07:00
jp9000 9499ffc1d2 rtmp-services: Add rtmp URL lookup config file
This URL is set via cmake instead of being baked in to the actual source
code.
2015-08-16 08:08:13 -07:00
jp9000 1c5a071eb8 rtmp-services: Add "Show all services" option
I made the rather tough call of not showing all services by default; I
didn't want to have to do this, but too many services are asking to be
put in to the program, and any time I add a service in to the list, I
feel uncomfortable because I feel like I'm potentially advertising them,
and/or they're using our program to advertise as well.  Some of these
services are particularly bad at policing illegal/copyrighted content,
host content that I personally find distasteful or incredibly stupid
(what the heck is up with these "vaping" streams?), or are just fairly
terrible websites in general that I just feel uncomfortable with showing
by default.

However, I do not really want to reject anyone either, I want to let
their users be able to use our program with relative ease, but more than
anything I just simple don't want to be seen as "endorsing" some of
these websites (more than others in particular).  I know that a "show
all services" checkbox is probably pretty pointless/superfluous thing to
do, but I feel like it's at the very least a means of saying "hey, I
don't really endorse these guys," or "use at your own risk," or
"warning: this website is incredibly terrible."

Honestly, I couldn't really think of any better solution that would
 a.) still list all services without outright censoring them, and
 b.) prevent us from being seen as "endorsing" all services.

(Although maybe this whole thing feels a bit.. passive aggressive.  I
feel like I'm tipping over someone's garden gnome in the middle of the
night while they're sleeping.  Still, it's something.)

NOTE: This code is backward compatible; i.e., if you previously had a
service selected that's not common but don't have the "show all"
checkbox checked, it'll still show that service for convenience.
2015-08-16 08:08:13 -07:00
jp9000 61d86d938a rtmp-services: Always use CBR for all services
Services almost always recommend this be enabled, and I generally want
to make configuration easier for users; with CBR they don't have to set
things like the CRF value.
2015-08-16 06:43:43 -07:00
jp9000 d53cef47ac libobs: Add obs_data_create_from_json_file func
Just a little helper function that allows you to create an obs_data_t
object from a json file (rather than having to manually open it each
time and then call obs_data_create_from_json on the file data)
2015-08-16 06:43:43 -07:00
jp9000 1ca065b0f2 obs-outputs: Use name and version for encoder
My fault; should have realized that this would be better to do.  Uses
"obs-studio" as the name, and includes the version (same format as the
others)
2015-08-14 17:49:21 -07:00
Marc Chambers db6d9bb042 obs-outputs: Include encoder name in RTMP flashVer
This will help ensure the receiving end knows that OBS is being used.

Closes jp9000/obs-studio#464
2015-08-14 15:58:55 -07:00
kc5nra 34b95eff8a obs-ffmpeg: Sychronize logging on log context
Different logging can occur from different contexts.
This adds isolation for each context passed to the
AV log.
2015-08-14 07:53:52 -07:00
John Bradley 6e69b0f4f0 obs-ffmpeg: Move log callback up to plugin scope 2015-08-14 07:53:51 -07:00
John Bradley d04fbd7549 obs-ffmpeg: Log source info on update/create
Adds a log message whenever the source is created or updated
containing all the properties set to help debugging remote
users' problems.
2015-08-14 07:53:50 -07:00
John Bradley 78d5240e18 obs-ffmpeg: Add more informative logging to source 2015-08-14 07:53:48 -07:00
John Bradley 207203d104 obs-ffmpeg: Normalize ffmpeg source argument name 2015-08-14 07:53:47 -07:00
John Bradley 59482ec29b obs-ffmpeg: Normalize video frame method arguments 2015-08-14 07:53:46 -07:00
kc5nra 34cc2438c1 obs-ffmpeg: Output ffmpeg messages line by line 2015-08-14 07:53:45 -07:00
Jim 4aef24a431 Merge pull request #463 from GoaLitiuM/test-windowless
test: Update Windows test application for windowless contexts
2015-08-14 01:44:35 -07:00
Palana bf2df49d71 libobs: Prevent registering (potentially) unsupported plugins
The rationale for rejecting these register calls is that these functions
may be required for the plugin to work properly, which can't be
guaranteed when libobs doesn't know about them.

This behavior may be revisited once the plugin manager is implemented,
to e.g. make it configurable (potentially per plugin) to allow loading
newer plugins in case they are known to work with the older libobs
2015-08-13 16:31:03 +02:00
Palana a26afbb9ae libobs: Prevent out of bound reads in obs_register_*
Previously adding new required functions would cause libobs to read out
of bounds in plugins not built with the new additions
2015-08-13 16:12:56 +02:00
Palana 5eb330276c libobs: Reformat required function error message 2015-08-13 15:24:41 +02:00
GoaLitiuM 517827875a test: Update Windows test application for windowless contexts 2015-08-13 13:38:04 +03:00
Palana 13b2469d61 libobs/util: Extend profiler csv export data
The id and parent_id fields should now allow better recovery of the
actual call trees, though they aren't compatible between different data
dumps in a single profiler session anymore; for that reason the new
fields name_id and parent_name_id are introduced, they hold the old id
and parent_id values respectively
2015-08-13 11:57:42 +02:00
Palana 5727dc2a3b coreaudio-encoder: Add explicit initialization
Microsoft's C++ compiler doesn't initialize all members properly without
this
2015-08-12 19:15:21 +02:00
Palana 7ad7142bd3 coreaudio-encoder: Replace darray with std::vector
The single darray solution was potentially unsafe since you're not
allowed to modify the (encode) buffer between calls to
complex_input_data_proc which is potentially violated if the darray
had to be resized due to capacity being < 2 * in_bytes_required
2015-08-12 19:03:41 +02:00
Palana 13681e9b1c coreaudio-encoder: Fix registering non-existing functions 2015-08-12 15:47:38 +02:00
Palana b07b742fd3 UI: Save profiler data on exit 2015-08-12 15:30:30 +02:00
Palana 91ea844333 libobs/util: Add compressed profiler snapshot saving 2015-08-12 15:30:30 +02:00
Palana 5dd030882d cmake: Add zlib support 2015-08-12 15:30:30 +02:00
Palana c6140b4756 libobs/media-io: Profile audio/video_thread 2015-08-12 15:30:29 +02:00
Palana cf6b75e067 libobs: Add profiler calls 2015-08-12 15:30:29 +02:00
Palana 44b5afbd07 (API Change) libobs: Add profile_name_store_t parameter to obs_startup
Due to all the threads in libobs it wouldn't be safe to make that
parameter reconfigurable after libobs is initialized without adding
even more synchronization. On the other hand, adding a function to set
the name store before calling obs_startup would solve the problem of
passing a name store into libobs, but it can lead to more complicated
semantics for obs_get_profiler_name_store (e.g., should it always return
the current name store even if libobs isn't initialized until someone
calls set_name_store(NULL)? should obs_shutdown call
set_name_store(NULL)? Passing it as obs_startup parameter avoids
these (and hopefully other) potential misunderstandings
2015-08-12 15:30:29 +02:00
Palana 8d3db084e8 UI: Profile initialization 2015-08-12 15:30:28 +02:00
Palana 7c5d93b92a UI: Add basic profiler integration 2015-08-12 15:30:28 +02:00
Palana d9cf5c668b libobs/util: Add profiler 2015-08-12 15:30:28 +02:00
Palana 2de89bee8c UI: Refactor OBSInit call 2015-08-12 15:30:28 +02:00
Palana 7187c1b6d4 libobs: Move video_sleep call 2015-08-12 15:30:27 +02:00
jp9000 81649eab0d cmake: Add FFmpeg/x264 include header path suffix
This allows people to use the base directory of cross-compiled
dependencies (typically our dependencies.zip file), rather than always
having to specify the actual include directory.
2015-08-12 04:21:26 -07:00
Palana a56109b6e6 test: Make OSX test application compatible w/ windowless contexts 2015-08-11 15:43:53 +02:00
Haden F a14d242369 rtmp-services: Fix YouTube name capitalization
Closes jp9000/obs-studio#462
2015-08-10 18:20:41 -07:00
Palana 40b7a4c918 UI: Make bitrate map sample rate aware 2015-08-10 16:35:05 +02:00
Palana 979f00fd2d UI: Ignore disabled audio encoder bitrates 2015-08-10 16:35:04 +02:00
Palana fcfe891dcf coreaudio-encoder: Update bitrate property on sample rate modification 2015-08-10 16:35:04 +02:00
Palana eb5745a363 coreaudio-encoder: Add output sample rate setting/property 2015-08-10 16:35:04 +02:00
Palana 5172328ad9 coreaudio-encoder: Add AudioFormat property enumeration helpers 2015-08-10 16:35:04 +02:00
Palana 966b4d97e0 coreaudio-encoder: Make bitrate enumeration samplerate-aware 2015-08-10 16:35:04 +02:00
Palana 15a32530f0 coreaudio-encoder: Undef 'local' macro 2015-08-10 16:27:53 +02:00
Palana f786f89e35 coreaudio-encoder: Remove unused (obsolete) functions 2015-08-10 16:27:53 +02:00
Palana 6ad48ddb20 coreaudio-encoder: Update default bitrate matching/logging 2015-08-10 16:27:53 +02:00
Palana 27761f9b7a coreaudio-encoder: Update bitrate property enumeration/logging 2015-08-10 16:27:53 +02:00