Add property list callbacks

- Add property list callbacks to sources/outputs/encoders so that if
  necessary user interface can be automatically generated or perhaps a
  property list widget can be used for them.

- Change some of the property API names.  obs_property_list_t felt a bit
  awkward when actually using it, so I just renamed it to
  obs_properties_t.

- Removed the getdata/setdata nad getparam/setparam functions from
  sources/services, they will be superseded by the dynamic procedure
  call API.
This commit is contained in:
jp9000
2014-02-01 22:46:13 -07:00
parent 0d17d13116
commit 458325fc6f
11 changed files with 85 additions and 72 deletions

View File

@@ -42,6 +42,7 @@
* + myencoder_getheader
*
* [and optionally]
* + myencoder_properties
* + myencoder_setbitrate
* + myencoder_request_keyframe
*
@@ -105,6 +106,10 @@
* ===========================================
* Optional Encoder Exports
* ===========================================
* obs_properties_t [name]_properties(const char *locale);
* Returns the properties of this particular encoder type, if any.
*
* ---------------------------------------------------------
* bool [name]_setbitrate(void *data, uint32_t bitrate, uint32_t buffersize);
* Sets the bitrate of the encoder
*
@@ -138,6 +143,8 @@ struct encoder_info {
int (*getheader)(void *data, struct encoder_packet **packets);
/* optional */
obs_properties_t (*properties)(const char *locale);
bool (*setbitrate)(void *data, uint32_t bitrate, uint32_t buffersize);
bool (*request_keyframe)(void *data);
};