mirror of
https://github.com/brunoherbelin/vimix.git
synced 2025-12-12 02:40:00 +01:00
Minor GUI improvement connection
This commit is contained in:
@@ -64,10 +64,10 @@
|
|||||||
|
|
||||||
const char* NetworkToolkit::protocol_name[NetworkToolkit::DEFAULT] = {
|
const char* NetworkToolkit::protocol_name[NetworkToolkit::DEFAULT] = {
|
||||||
"Shared Memory",
|
"Shared Memory",
|
||||||
"UDP RTP Stream JPEG",
|
"RTP JPEG Stream",
|
||||||
"UDP RTP Stream H264",
|
"RTP H264 Stream",
|
||||||
"TCP Broadcast JPEG",
|
"RTP JPEG Broadcast",
|
||||||
"TCP Broadcast H264"
|
"RTP H264 Broadcast"
|
||||||
};
|
};
|
||||||
|
|
||||||
const std::vector<std::string> NetworkToolkit::protocol_send_pipeline {
|
const std::vector<std::string> NetworkToolkit::protocol_send_pipeline {
|
||||||
@@ -75,8 +75,8 @@ const std::vector<std::string> NetworkToolkit::protocol_send_pipeline {
|
|||||||
"video/x-raw, format=RGB, framerate=30/1 ! queue max-size-buffers=10 ! shmsink buffer-time=100000 wait-for-connection=true name=sink",
|
"video/x-raw, format=RGB, framerate=30/1 ! queue max-size-buffers=10 ! shmsink buffer-time=100000 wait-for-connection=true name=sink",
|
||||||
"video/x-raw, format=I420, framerate=30/1 ! queue max-size-buffers=10 ! jpegenc ! rtpjpegpay ! udpsink name=sink",
|
"video/x-raw, format=I420, framerate=30/1 ! queue max-size-buffers=10 ! jpegenc ! rtpjpegpay ! udpsink name=sink",
|
||||||
"video/x-raw, format=I420, framerate=30/1 ! queue max-size-buffers=10 ! x264enc tune=\"zerolatency\" threads=2 ! rtph264pay ! udpsink name=sink",
|
"video/x-raw, format=I420, framerate=30/1 ! queue max-size-buffers=10 ! x264enc tune=\"zerolatency\" threads=2 ! rtph264pay ! udpsink name=sink",
|
||||||
"video/x-raw, format=I420 ! queue max-size-buffers=3 ! jpegenc ! rtpjpegpay ! rtpstreampay ! tcpserversink name=sink",
|
"video/x-raw, format=I420, framerate=30/1 ! queue max-size-buffers=3 ! jpegenc ! rtpjpegpay ! rtpstreampay ! tcpserversink name=sink",
|
||||||
"video/x-raw, format=I420 ! queue max-size-buffers=3 ! x264enc tune=\"zerolatency\" threads=2 ! rtph264pay ! rtpstreampay ! tcpserversink name=sink"
|
"video/x-raw, format=I420, framerate=30/1 ! queue max-size-buffers=3 ! x264enc tune=\"zerolatency\" threads=2 ! rtph264pay ! rtpstreampay ! tcpserversink name=sink"
|
||||||
};
|
};
|
||||||
|
|
||||||
const std::vector<std::string> NetworkToolkit::protocol_receive_pipeline {
|
const std::vector<std::string> NetworkToolkit::protocol_receive_pipeline {
|
||||||
@@ -84,7 +84,7 @@ const std::vector<std::string> NetworkToolkit::protocol_receive_pipeline {
|
|||||||
"shmsrc socket-path=XXXX ! video/x-raw, format=RGB, framerate=30/1 ! queue max-size-buffers=10",
|
"shmsrc socket-path=XXXX ! video/x-raw, format=RGB, framerate=30/1 ! queue max-size-buffers=10",
|
||||||
"udpsrc buffer-size=200000 port=XXXX ! application/x-rtp,encoding-name=JPEG,payload=26,clock-rate=90000 ! queue max-size-buffers=10 ! rtpjpegdepay ! jpegdec",
|
"udpsrc buffer-size=200000 port=XXXX ! application/x-rtp,encoding-name=JPEG,payload=26,clock-rate=90000 ! queue max-size-buffers=10 ! rtpjpegdepay ! jpegdec",
|
||||||
"udpsrc buffer-size=200000 port=XXXX ! application/x-rtp,encoding-name=H264,payload=96,clock-rate=90000 ! queue ! rtph264depay ! avdec_h264",
|
"udpsrc buffer-size=200000 port=XXXX ! application/x-rtp,encoding-name=H264,payload=96,clock-rate=90000 ! queue ! rtph264depay ! avdec_h264",
|
||||||
"tcpclientsrc timeout=1 port=XXXX ! queue max-size-buffers=30 ! application/x-rtp-stream,media=video,encoding-name=JPEG,payload=26 ! rtpstreamdepay ! rtpjpegdepay ! jpegdec",
|
"tcpclientsrc timeout=1 port=XXXX ! queue max-size-buffers=30 ! application/x-rtp-stream,media=video,encoding-name=JPEG,payload=26,clock-rate=90000 ! rtpstreamdepay ! rtpjpegdepay ! jpegdec",
|
||||||
"tcpclientsrc timeout=1 port=XXXX ! queue max-size-buffers=30 ! application/x-rtp-stream,media=video,encoding-name=H264,payload=96,clock-rate=90000 ! rtpstreamdepay ! rtph264depay ! avdec_h264"
|
"tcpclientsrc timeout=1 port=XXXX ! queue max-size-buffers=30 ! application/x-rtp-stream,media=video,encoding-name=H264,payload=96,clock-rate=90000 ! rtpstreamdepay ! rtph264depay ! avdec_h264"
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
14
Streamer.cpp
14
Streamer.cpp
@@ -217,9 +217,8 @@ void Streaming::refuseStream(const std::string &sender, int reply_to)
|
|||||||
p << osc::EndMessage;
|
p << osc::EndMessage;
|
||||||
// send OSC message to client
|
// send OSC message to client
|
||||||
socket.Send( p.Data(), p.Size() );
|
socket.Send( p.Data(), p.Size() );
|
||||||
#ifdef STREAMER_DEBUG
|
// inform user
|
||||||
Log::Info("Refusing streaming to %s", sender_ip.c_str());
|
Log::Warning("A connection request for streaming came and was rejected.\nYou can Accept connections from the Output window.");
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Streaming::addStream(const std::string &sender, int reply_to, const std::string &clientname)
|
void Streaming::addStream(const std::string &sender, int reply_to, const std::string &clientname)
|
||||||
@@ -241,14 +240,11 @@ void Streaming::addStream(const std::string &sender, int reply_to, const std::st
|
|||||||
conf.width = width_;
|
conf.width = width_;
|
||||||
conf.height = height_;
|
conf.height = height_;
|
||||||
// offer SHM if same IP that our host IP (i.e. on the same machine)
|
// offer SHM if same IP that our host IP (i.e. on the same machine)
|
||||||
if( NetworkToolkit::is_host_ip(conf.client_address) ) {
|
if( NetworkToolkit::is_host_ip(conf.client_address) )
|
||||||
conf.protocol = NetworkToolkit::SHM_RAW;
|
conf.protocol = NetworkToolkit::SHM_RAW;
|
||||||
}
|
// any other IP : offer network streaming
|
||||||
// any other IP : offer UDP streaming
|
else
|
||||||
else {
|
|
||||||
conf.protocol = NetworkToolkit::UDP_JPEG;
|
conf.protocol = NetworkToolkit::UDP_JPEG;
|
||||||
}
|
|
||||||
// conf.protocol = NetworkToolkit::UDP_JPEG; // force udp for testing
|
|
||||||
|
|
||||||
// build OSC message
|
// build OSC message
|
||||||
char buffer[IP_MTU_SIZE];
|
char buffer[IP_MTU_SIZE];
|
||||||
|
|||||||
@@ -1219,6 +1219,7 @@ void UserInterface::RenderPreview()
|
|||||||
std::vector<std::string> ls = Streaming::manager().listStreams();
|
std::vector<std::string> ls = Streaming::manager().listStreams();
|
||||||
if (ls.size()>0) {
|
if (ls.size()>0) {
|
||||||
ImGui::Separator();
|
ImGui::Separator();
|
||||||
|
ImGui::MenuItem("Active connections", nullptr, false, false);
|
||||||
for (auto it = ls.begin(); it != ls.end(); it++)
|
for (auto it = ls.begin(); it != ls.end(); it++)
|
||||||
ImGui::Text(" %s", (*it).c_str() );
|
ImGui::Text(" %s", (*it).c_str() );
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user