Commit a9992298 authored by Jakub Adam's avatar Jakub Adam
Browse files

Add live videosink and RIST outputs

parent 1dc1e5e3
project('multistream-server', 'c')
dependency('libavfilter')
dependency('libavformat')
dependency('libavcodec')
dependency('libavutil')
run_command('meson', 'subprojects', 'download', 'gst-build')
run_command('meson', 'wrap', 'promote', 'subprojects/gst-build/subprojects/gstreamer.wrap')
run_command('meson', 'wrap', 'promote', 'subprojects/gst-build/subprojects/gst-plugins-base.wrap')
run_command('meson', 'wrap', 'promote', 'subprojects/gst-build/subprojects/gst-plugins-good.wrap')
run_command('meson', 'wrap', 'promote', 'subprojects/gst-build/subprojects/gst-plugins-bad.wrap')
run_command('meson', 'wrap', 'promote', 'subprojects/gst-build/subprojects/gst-plugins-ugly.wrap')
run_command('meson', 'wrap', 'promote', 'subprojects/gst-build/subprojects/gst-libav.wrap')
subproject('gst-build')
soup_dep = dependency('libsoup-2.4')
......
......@@ -51,9 +51,10 @@ int main (int argc, char *argv[])
http_server = mss_http_server_new ();
pipeline_str = g_strdup_printf ("srtsrc uri=%s ! tsdemux ! mpegtsmux ! "
"hlssink location=%s/segment%%05d.ts "
"playlist-location=%s/playlist.m3u8",
pipeline_str = g_strdup_printf ("srtsrc uri=%s ! tsparse ! tee name=t ! "
"queue ! decodebin ! videoconvert ! autovideosink "
"t. ! queue leaky=downstream ! tsdemux ! mpegtsmux ! hlssink location=%s/segment%%05d.ts playlist-location=%s/playlist.m3u8 "
"t. ! queue leaky=downstream max-size-buffers=400 ! rtpmp2tpay ! ristsink",
srt_uri,
mss_http_server_get_hls_dir (http_server),
mss_http_server_get_hls_dir (http_server));
......@@ -72,12 +73,16 @@ int main (int argc, char *argv[])
g_unix_signal_add (SIGINT, sigint_handler, loop);
g_print ("Input SRT URI is %s.\n"
"Open http://localhost:8080 in a browser to watch HLS stream.\n",
"\nOutput streams:\n"
"\tHLS: http://localhost:8080\n"
"\tRIST: localhost:5004\n",
srt_uri);
g_main_loop_run (loop);
g_main_loop_unref (loop);
gst_element_set_state (pipeline, GST_STATE_NULL);
gst_clear_object (&pipeline);
g_clear_object (&http_server);
g_clear_pointer(&srt_uri, g_free);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment