Added human readable name in info JSON output for sources

This commit is contained in:
Thulinma 2021-08-02 13:26:34 +02:00
parent 53698eaa49
commit a0eb42f1dd
18 changed files with 23 additions and 0 deletions

View file

@ -14,6 +14,7 @@ namespace Mist{
capa["codecs"][0u][0u].append("AAC"); capa["codecs"][0u][0u].append("AAC");
capa["methods"][0u]["handler"] = "http"; capa["methods"][0u]["handler"] = "http";
capa["methods"][0u]["type"] = "html5/audio/aac"; capa["methods"][0u]["type"] = "html5/audio/aac";
capa["methods"][0u]["hrn"] = "AAC progressive";
capa["methods"][0u]["priority"] = 8; capa["methods"][0u]["priority"] = 8;
JSON::Value opt; JSON::Value opt;

View file

@ -126,16 +126,19 @@ namespace Mist{
capa["methods"][0u]["handler"] = "http"; capa["methods"][0u]["handler"] = "http";
capa["methods"][0u]["type"] = "dash/video/mp4"; capa["methods"][0u]["type"] = "dash/video/mp4";
capa["methods"][0u]["hrn"] = "DASH";
capa["methods"][0u]["url_rel"] = "/cmaf/$/index.mpd"; capa["methods"][0u]["url_rel"] = "/cmaf/$/index.mpd";
capa["methods"][0u]["priority"] = 8; capa["methods"][0u]["priority"] = 8;
capa["methods"][1u]["handler"] = "http"; capa["methods"][1u]["handler"] = "http";
capa["methods"][1u]["type"] = "html5/application/vnd.apple.mpegurl;version=7"; capa["methods"][1u]["type"] = "html5/application/vnd.apple.mpegurl;version=7";
capa["methods"][1u]["hrn"] = "HLS (CMAF)";
capa["methods"][1u]["url_rel"] = "/cmaf/$/index.m3u8"; capa["methods"][1u]["url_rel"] = "/cmaf/$/index.m3u8";
capa["methods"][1u]["priority"] = 8; capa["methods"][1u]["priority"] = 8;
capa["methods"][2u]["handler"] = "http"; capa["methods"][2u]["handler"] = "http";
capa["methods"][2u]["type"] = "html5/application/vnd.ms-sstr+xml"; capa["methods"][2u]["type"] = "html5/application/vnd.ms-sstr+xml";
capa["methods"][2u]["hrn"] = "MS Smooth Streaming";
capa["methods"][2u]["url_rel"] = "/cmaf/$/Manifest"; capa["methods"][2u]["url_rel"] = "/cmaf/$/Manifest";
capa["methods"][2u]["priority"] = 8; capa["methods"][2u]["priority"] = 8;

View file

@ -74,6 +74,7 @@ namespace Mist{
capa["codecs"][0u][2u].append("+JSON"); capa["codecs"][0u][2u].append("+JSON");
capa["methods"][0u]["handler"] = "http"; capa["methods"][0u]["handler"] = "http";
capa["methods"][0u]["type"] = "html5/video/webm"; capa["methods"][0u]["type"] = "html5/video/webm";
capa["methods"][0u]["hrn"] = "MKV progressive";
capa["methods"][0u]["priority"] = 9; capa["methods"][0u]["priority"] = 9;
// Browsers only support VP8/VP9/Opus codecs, except Chrome which is more lenient. // Browsers only support VP8/VP9/Opus codecs, except Chrome which is more lenient.
JSON::Value blacklistNonChrome = JSON::fromString( JSON::Value blacklistNonChrome = JSON::fromString(

View file

@ -28,6 +28,7 @@ namespace Mist{
capa["codecs"][0u][1u].append("ULAW"); capa["codecs"][0u][1u].append("ULAW");
capa["methods"][0u]["handler"] = "http"; capa["methods"][0u]["handler"] = "http";
capa["methods"][0u]["type"] = "flash/7"; capa["methods"][0u]["type"] = "flash/7";
capa["methods"][0u]["hrn"] = "FLV progressive";
capa["methods"][0u]["priority"] = 5; capa["methods"][0u]["priority"] = 5;
capa["methods"][0u]["player_url"] = "/oldflashplayer.swf"; capa["methods"][0u]["player_url"] = "/oldflashplayer.swf";
capa["push_urls"].append("/*.flv"); capa["push_urls"].append("/*.flv");

View file

@ -175,6 +175,7 @@ namespace Mist{
capa["codecs"][0u][1u].append("ULAW"); capa["codecs"][0u][1u].append("ULAW");
capa["methods"][0u]["handler"] = "http"; capa["methods"][0u]["handler"] = "http";
capa["methods"][0u]["type"] = "flash/11"; capa["methods"][0u]["type"] = "flash/11";
capa["methods"][0u]["hrn"] = "Flash Dynamic (HDS)";
capa["methods"][0u]["priority"] = 6; capa["methods"][0u]["priority"] = 6;
capa["methods"][0u]["player_url"] = "/flashplayer.swf"; capa["methods"][0u]["player_url"] = "/flashplayer.swf";
} }

View file

@ -187,6 +187,7 @@ namespace Mist{
capa["codecs"][0u][6u].append("+subtitle"); capa["codecs"][0u][6u].append("+subtitle");
capa["methods"][0u]["handler"] = "http"; capa["methods"][0u]["handler"] = "http";
capa["methods"][0u]["type"] = "html5/application/vnd.apple.mpegurl"; capa["methods"][0u]["type"] = "html5/application/vnd.apple.mpegurl";
capa["methods"][0u]["hrn"] = "HLS (TS)";
capa["methods"][0u]["priority"] = 9; capa["methods"][0u]["priority"] = 9;
// MP3 only works on Edge/Apple // MP3 only works on Edge/Apple
capa["exceptions"]["codec:MP3"] = JSON::fromString( capa["exceptions"]["codec:MP3"] = JSON::fromString(

View file

@ -312,6 +312,7 @@ namespace Mist{
} }
JSON::Value tmp; JSON::Value tmp;
tmp["type"] = (*it)["type"]; tmp["type"] = (*it)["type"];
if (it->isMember("hrn")){tmp["hrn"] = (*it)["hrn"];}
tmp["relurl"] = relurl; tmp["relurl"] = relurl;
tmp["priority"] = (*it)["priority"]; tmp["priority"] = (*it)["priority"];
if ((*it).isMember("player_url")){ if ((*it).isMember("player_url")){

View file

@ -137,6 +137,7 @@ namespace Mist{
capa["codecs"][0u][1u].append("+opus"); capa["codecs"][0u][1u].append("+opus");
capa["methods"][0u]["handler"] = "http"; capa["methods"][0u]["handler"] = "http";
capa["methods"][0u]["type"] = "html5/video/mpeg"; capa["methods"][0u]["type"] = "html5/video/mpeg";
capa["methods"][0u]["hrn"] = "TS HTTP progressive";
capa["methods"][0u]["priority"] = 1; capa["methods"][0u]["priority"] = 1;
capa["push_urls"].append("/*.ts"); capa["push_urls"].append("/*.ts");
capa["push_urls"].append("ts-exec:*"); capa["push_urls"].append("ts-exec:*");

View file

@ -105,6 +105,7 @@ namespace Mist{
capa["codecs"][0u][0u].append("H264"); capa["codecs"][0u][0u].append("H264");
capa["methods"][0u]["handler"] = "http"; capa["methods"][0u]["handler"] = "http";
capa["methods"][0u]["type"] = "html5/image/jpeg"; capa["methods"][0u]["type"] = "html5/image/jpeg";
capa["methods"][0u]["hrn"] = "JPEG";
capa["methods"][0u]["priority"] = 0; capa["methods"][0u]["priority"] = 0;
capa["push_urls"].append("/*.jpg"); capa["push_urls"].append("/*.jpg");

View file

@ -22,10 +22,12 @@ namespace Mist{
capa["codecs"][0u][0u].append("@+meta"); capa["codecs"][0u][0u].append("@+meta");
capa["methods"][0u]["handler"] = "http"; capa["methods"][0u]["handler"] = "http";
capa["methods"][0u]["type"] = "html5/text/javascript"; capa["methods"][0u]["type"] = "html5/text/javascript";
capa["methods"][0u]["hrn"] = "JSON progressive";
capa["methods"][0u]["priority"] = 0; capa["methods"][0u]["priority"] = 0;
capa["methods"][0u]["url_rel"] = "/$.json"; capa["methods"][0u]["url_rel"] = "/$.json";
capa["methods"][1u]["handler"] = "ws"; capa["methods"][1u]["handler"] = "ws";
capa["methods"][1u]["type"] = "html5/text/javascript"; capa["methods"][1u]["type"] = "html5/text/javascript";
capa["methods"][1u]["hrn"] = "JSON WebSocket";
capa["methods"][1u]["priority"] = 0; capa["methods"][1u]["priority"] = 0;
capa["methods"][1u]["url_rel"] = "/$.json"; capa["methods"][1u]["url_rel"] = "/$.json";
} }

View file

@ -13,6 +13,7 @@ namespace Mist{
capa["codecs"][0u][0u].append("MP3"); capa["codecs"][0u][0u].append("MP3");
capa["methods"][0u]["handler"] = "http"; capa["methods"][0u]["handler"] = "http";
capa["methods"][0u]["type"] = "html5/audio/mp3"; capa["methods"][0u]["type"] = "html5/audio/mp3";
capa["methods"][0u]["hrn"] = "MP3 progressive";
capa["methods"][0u]["priority"] = 8; capa["methods"][0u]["priority"] = 8;
JSON::Value opt; JSON::Value opt;

View file

@ -134,10 +134,12 @@ namespace Mist{
jsonForEach(capa["codecs"][0u][1u], i){supportedAudio.insert(i->asStringRef());} jsonForEach(capa["codecs"][0u][1u], i){supportedAudio.insert(i->asStringRef());}
capa["methods"][0u]["handler"] = "http"; capa["methods"][0u]["handler"] = "http";
capa["methods"][0u]["type"] = "html5/video/mp4"; capa["methods"][0u]["type"] = "html5/video/mp4";
capa["methods"][0u]["hrn"] = "MP4 progressive";
capa["methods"][0u]["priority"] = 9; capa["methods"][0u]["priority"] = 9;
capa["methods"][0u]["url_rel"] = "/$.mp4"; capa["methods"][0u]["url_rel"] = "/$.mp4";
capa["methods"][1u]["handler"] = "ws"; capa["methods"][1u]["handler"] = "ws";
capa["methods"][1u]["type"] = "ws/video/mp4"; capa["methods"][1u]["type"] = "ws/video/mp4";
capa["methods"][1u]["hrn"] = "MP4 WebSocket";
capa["methods"][1u]["priority"] = 10; capa["methods"][1u]["priority"] = 10;
capa["methods"][1u]["url_rel"] = "/$.mp4"; capa["methods"][1u]["url_rel"] = "/$.mp4";
// MP4 live is broken on Apple // MP4 live is broken on Apple

View file

@ -22,6 +22,7 @@ namespace Mist{
capa["codecs"][0u][1u].append("opus"); capa["codecs"][0u][1u].append("opus");
capa["methods"][0u]["handler"] = "http"; capa["methods"][0u]["handler"] = "http";
capa["methods"][0u]["type"] = "html5/video/ogg"; capa["methods"][0u]["type"] = "html5/video/ogg";
capa["methods"][0u]["hrn"] = "OGG progressive";
capa["methods"][0u]["priority"] = 8u; capa["methods"][0u]["priority"] = 8u;
capa["methods"][0u]["nolive"] = 1; capa["methods"][0u]["nolive"] = 1;
} }

View file

@ -219,6 +219,7 @@ namespace Mist{
capa["codecs"][0u][1u].append("ULAW"); capa["codecs"][0u][1u].append("ULAW");
capa["methods"][0u]["handler"] = "rtmp"; capa["methods"][0u]["handler"] = "rtmp";
capa["methods"][0u]["type"] = "flash/10"; capa["methods"][0u]["type"] = "flash/10";
capa["methods"][0u]["hrn"] = "RTMP";
capa["methods"][0u]["priority"] = 7; capa["methods"][0u]["priority"] = 7;
capa["methods"][0u]["player_url"] = "/flashplayer.swf"; capa["methods"][0u]["player_url"] = "/flashplayer.swf";
capa["optional"]["acceptable"]["name"] = "Acceptable connection types"; capa["optional"]["acceptable"]["name"] = "Acceptable connection types";

View file

@ -104,6 +104,7 @@ namespace Mist{
capa["methods"][0u]["handler"] = "rtsp"; capa["methods"][0u]["handler"] = "rtsp";
capa["methods"][0u]["type"] = "rtsp"; capa["methods"][0u]["type"] = "rtsp";
capa["methods"][0u]["hrn"] = "RTSP";
capa["methods"][0u]["priority"] = 2; capa["methods"][0u]["priority"] = 2;
capa["optional"]["maxsend"]["name"] = "Max RTP packet size"; capa["optional"]["maxsend"]["name"] = "Max RTP packet size";

View file

@ -19,10 +19,12 @@ namespace Mist{
capa["codecs"][0u][0u].append("subtitle"); capa["codecs"][0u][0u].append("subtitle");
capa["methods"][0u]["handler"] = "http"; capa["methods"][0u]["handler"] = "http";
capa["methods"][0u]["type"] = "html5/text/plain"; capa["methods"][0u]["type"] = "html5/text/plain";
capa["methods"][0u]["hrn"] = "SRT subtitle progressive";
capa["methods"][0u]["priority"] = 8; capa["methods"][0u]["priority"] = 8;
capa["methods"][0u]["url_rel"] = "/$.srt"; capa["methods"][0u]["url_rel"] = "/$.srt";
capa["methods"][1u]["handler"] = "http"; capa["methods"][1u]["handler"] = "http";
capa["methods"][1u]["type"] = "html5/text/vtt"; capa["methods"][1u]["type"] = "html5/text/vtt";
capa["methods"][1u]["hrn"] = "WebVTT subtitle progressive";
capa["methods"][1u]["priority"] = 9; capa["methods"][1u]["priority"] = 9;
capa["methods"][1u]["url_rel"] = "/$.webvtt"; capa["methods"][1u]["url_rel"] = "/$.webvtt";
} }

View file

@ -19,6 +19,7 @@ namespace Mist{
capa["codecs"][0u][0u].append("FLOAT"); capa["codecs"][0u][0u].append("FLOAT");
capa["methods"][0u]["handler"] = "http"; capa["methods"][0u]["handler"] = "http";
capa["methods"][0u]["type"] = "html5/audio/wav"; capa["methods"][0u]["type"] = "html5/audio/wav";
capa["methods"][0u]["hrn"] = "WAV progressive";
capa["methods"][0u]["priority"] = 1; capa["methods"][0u]["priority"] = 1;
capa["push_urls"].append("/*.wav"); capa["push_urls"].append("/*.wav");

View file

@ -174,6 +174,7 @@ namespace Mist{
capa["codecs"][0u][1u].append("ULAW"); capa["codecs"][0u][1u].append("ULAW");
capa["methods"][0u]["handler"] = "ws"; capa["methods"][0u]["handler"] = "ws";
capa["methods"][0u]["type"] = "webrtc"; capa["methods"][0u]["type"] = "webrtc";
capa["methods"][0u]["hrn"] = "WebRTC";
capa["methods"][0u]["priority"] = 2; capa["methods"][0u]["priority"] = 2;
capa["methods"][0u]["nobframes"] = 1; capa["methods"][0u]["nobframes"] = 1;