New upstream version 22.0.3+dfsg1

This commit is contained in:
Sebastian Ramacher 2018-12-16 17:14:58 +01:00
parent 665f64a933
commit cdc9a9fc87
334 changed files with 14525 additions and 2639 deletions

View file

@ -2,6 +2,7 @@ StreamingServices="Υπηρεσίες Μετάδοσης"
CustomStreamingServer="Προσαρμοσμένος Διακομιστής Μετάδοσης"
Service="Υπηρεσία"
Server="Διακομιστής"
Server.Auto="Αυτόματη (συνιστάται)"
StreamKey="Κλειδί μετάδοσης"
UseAuth="Χρήση πιστοποίησης"
Username="Όνομα χρήστη"

View file

@ -0,0 +1,11 @@
StreamingServices="Seirbheisean sruthaidh"
CustomStreamingServer="Frithealaiche sruthaidh gnàthaichte"
Service="Seirbheis"
Server="Frithealaiche"
Server.Auto="Fèin-obrachail (mholamaid seo)"
StreamKey="Iuchair an t-sruthaidh"
UseAuth="Cleachd dearbh-aithneachadh"
Username="Ainm-cleachdaiche"
Password="Facal-faire"
ShowAll="Seall a h-uile seirbheis"

View file

@ -0,0 +1,11 @@
StreamingServices="ნაკადის გაშვების მომსახურებები"
CustomStreamingServer="ნაკადის გასაშვები საკუთარი სერვერი"
Service="მომსახურება"
Server="სერვერი"
Server.Auto="ავტომატური (სასურველია)"
StreamKey="ნაკადის გასაღები"
UseAuth="ანგარიშზე შესვლის გამოყენება"
Username="მომხმარებლის სახელი"
Password="პაროლი"
ShowAll="ყველა მომსახურების ჩვენება"

View file

@ -1,10 +1,10 @@
{
"url": "https://obsproject.com/obs2_update/rtmp-services",
"version": 80,
"version": 88,
"files": [
{
"name": "services.json",
"version": 80
"version": 88
}
]
}

View file

@ -537,9 +537,27 @@
"servers": [
{
"name": "Primary",
"url": "rtmp://www.gameplank.tv/live"
"url": "rtmp://live.gameplank.tv/app"
},
{
"name": "US: Oregon",
"url": "rtmp://live-or.gameplank.tv/app"
},
{
"name": "US: Virginia",
"url": "rtmp://live-va.gameplank.tv/app"
},
{
"name": "UK: London",
"url": "rtmp://live-ldn.gameplank.tv/app"
}
]
],
"recommended": {
"keyint": 1,
"max video bitrate": 1500,
"max audio bitrate": 160,
"x264opts": "scenecut=0"
}
},
{
"name": "Vaughn Live / iNSTAGIB",
@ -635,7 +653,7 @@
"servers": [
{
"name": "Default",
"url": "rtmp://rtmp-api.facebook.com:80/rtmp/"
"url": "rtmps://rtmp-api.facebook.com:443/rtmp/"
}
],
"recommended": {
@ -649,6 +667,10 @@
"name": "Restream.io",
"common": true,
"servers": [
{
"name": "Autodetect",
"url": "rtmp://live.restream.io/live"
},
{
"name": "EU-West (London, GB)",
"url": "rtmp://eu-london.restream.io/live"
@ -661,6 +683,10 @@
"name": "EU-West (Luxembourg)",
"url": "rtmp://eu-luxembourg.restream.io/live"
},
{
"name": "EU-West (Paris, FR)",
"url": "rtmp://eu-paris.restream.io/live"
},
{
"name": "EU-Central (Frankfurt, DE)",
"url": "rtmp://eu-central.restream.io/live"
@ -797,7 +823,48 @@
"recommended": {
"keyint": 2,
"max video bitrate": 25000,
"max audio bitrate": 192
"max audio bitrate": 192,
"x264opts": "scenecut=0"
}
},
{
"name": "Castr.io",
"servers": [
{
"name": "Chicago US",
"url": "rtmp://cg.castr.io"
},
{
"name": "Los Angeles US",
"url": "rtmp://la.castr.io"
},
{
"name": "Montreal CA",
"url": "rtmp://qc.castr.io"
},
{
"name": "London UK",
"url": "rtmp://uk.castr.io"
},
{
"name": "Frankfurt DE",
"url": "rtmp://de.castr.io"
},
{
"name": "Moscow RU",
"url": "rtmp://ru.castr.io"
},
{
"name": "Singapore",
"url": "rtmp://sg.castr.io"
},
{
"name": "Sydney AU",
"url": "rtmp://au.castr.io"
}
],
"recommended": {
"keyint": 2
}
},
{
@ -1073,9 +1140,9 @@
}
],
"recommended": {
"keyint": 2,
"max video bitrate": 800,
"max audio bitrate": 96
"keyint": 3,
"max video bitrate": 4000,
"max audio bitrate": 128
}
},
{
@ -1232,6 +1299,40 @@
"url": "rtmp://rtmp.cdn.asset.aparat.com:443/event"
}
]
},
{
"name": "KakaoTV",
"servers": [
{
"name": "Default",
"url": "rtmp://rtmp.play.kakao.com/kakaotv"
}
],
"recommended": {
"max video bitrate": 8000,
"max audio bitrate": 192
}
},
{
"name": "Piczel.tv",
"servers": [
{
"name": "Default",
"url": "rtmp://piczel.tv:1935/live"
}
],
"recommended": {
"max video bitrate": 5000
}
},
{
"name": "DTube",
"servers": [
{
"name": "Default",
"url": "rtmp://stream.dtube.top/live/"
}
]
}
]
}

View file

@ -26,6 +26,39 @@ static inline const char *get_string_val(json_t *service, const char *key);
extern void twitch_ingests_refresh(int seconds);
static void ensure_valid_url(struct rtmp_common *service, json_t *json,
obs_data_t *settings)
{
json_t *servers = json_object_get(json, "servers");
const char *top_url = NULL;
json_t *server;
size_t index;
if (!service->server || !servers || !json_is_array(servers))
return;
if (astrstri(service->service, "Facebook") == NULL)
return;
json_array_foreach (servers, index, server) {
const char *url = get_string_val(server, "url");
if (!url)
continue;
if (!top_url)
top_url = url;
if (astrcmpi(service->server, url) == 0)
return;
}
/* server was not found in server list, use first server instead */
if (top_url) {
bfree(service->server);
service->server = bstrdup(top_url);
obs_data_set_string(settings, "server", top_url);
}
}
static void rtmp_common_update(void *data, obs_data_t *settings)
{
struct rtmp_common *service = data;
@ -50,6 +83,8 @@ static void rtmp_common_update(void *data, obs_data_t *settings)
if (out)
service->output = bstrdup(out);
}
ensure_valid_url(service, serv, settings);
}
}
json_decref(root);
@ -295,7 +330,7 @@ static void fill_servers(obs_property_t *servers_prop, json_t *service,
obs_property_list_add_string(servers_prop,
obs_module_text("Server.Auto"), "auto");
}
if (name && strcmp(name, "Twitch") == 0) {
if (strcmp(name, "Twitch") == 0) {
if (fill_twitch_servers(servers_prop))
return;
}