| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- #include <obs-module.h>
- struct rtmp_custom {
- char *server, *key;
- };
- static const char *rtmp_custom_name(void)
- {
- /* TODO: locale */
- return "Custom Streaming Server";
- }
- static void rtmp_custom_update(void *data, obs_data_t settings)
- {
- struct rtmp_custom *service = data;
- bfree(service->server);
- bfree(service->key);
- service->server = bstrdup(obs_data_getstring(settings, "server"));
- service->key = bstrdup(obs_data_getstring(settings, "key"));
- }
- static void rtmp_custom_destroy(void *data)
- {
- struct rtmp_custom *service = data;
- bfree(service->server);
- bfree(service->key);
- bfree(service);
- }
- static void *rtmp_custom_create(obs_data_t settings, obs_service_t service)
- {
- struct rtmp_custom *data = bzalloc(sizeof(struct rtmp_custom));
- rtmp_custom_update(data, settings);
- UNUSED_PARAMETER(service);
- return data;
- }
- static obs_properties_t rtmp_custom_properties(void)
- {
- obs_properties_t ppts = obs_properties_create();
- /* TODO: locale */
- obs_properties_add_text(ppts, "server", "URL", OBS_TEXT_DEFAULT);
- obs_properties_add_text(ppts, "key", "Stream Key", OBS_TEXT_PASSWORD);
- return ppts;
- }
- static const char *rtmp_custom_url(void *data)
- {
- struct rtmp_custom *service = data;
- return service->server;
- }
- static const char *rtmp_custom_key(void *data)
- {
- struct rtmp_custom *service = data;
- return service->key;
- }
- struct obs_service_info rtmp_custom_service = {
- .id = "rtmp_custom",
- .getname = rtmp_custom_name,
- .create = rtmp_custom_create,
- .destroy = rtmp_custom_destroy,
- .update = rtmp_custom_update,
- .properties = rtmp_custom_properties,
- .get_url = rtmp_custom_url,
- .get_key = rtmp_custom_key
- };
|