diff --git a/airplayServer.cpp b/airplayServer.cpp index 8795d9d..e331960 100755 --- a/airplayServer.cpp +++ b/airplayServer.cpp @@ -119,6 +119,11 @@ std::string find_mac() { } if (!iface_stream) { printf("No wlp2s0 \n"); + iface_stream.open("/sys/class/net/enp8s0/address"); + } + if (!iface_stream) { + printf("No enp8s0 \n"); + printf("No Device found! \n"); return ""; } @@ -167,6 +172,7 @@ gboolean draw_callback (GtkWidget *widget, cairo_t *cr, gpointer data) { cairo_fill (cr); } + return FALSE; } diff --git a/renderers/video_renderer.h b/renderers/video_renderer.h index 25e3c6a..37fc067 100644 --- a/renderers/video_renderer.h +++ b/renderers/video_renderer.h @@ -67,7 +67,7 @@ void set_video_overlay2(video_renderer_t *renderer, gulong embed_xid); * 1: a new connection come * -1: a connection lost */ -void video_renderer_update_background(video_renderer_t *renderer, int type, int width, int height); +void video_renderer_update_background(video_renderer_t *renderer, int type); #ifdef __cplusplus } diff --git a/renderers/video_renderer_gstreamer.c b/renderers/video_renderer_gstreamer.c index aa4b3a1..dcb3ae3 100644 --- a/renderers/video_renderer_gstreamer.c +++ b/renderers/video_renderer_gstreamer.c @@ -33,6 +33,8 @@ struct video_renderer_s { logger_t *logger; GstElement *appsrc, *pipeline, *sink, *decodebin, *videoconvert, *queue; + int data_lengh; + uint64_t pts; }; @@ -88,7 +90,8 @@ void video_renderer_render_buffer(video_renderer_t *renderer, raop_ntp_t *ntp, u GstBuffer *buffer; assert(data_len != 0); - + renderer->data_lengh = data_len; + renderer->pts = pts; buffer = gst_buffer_new_and_alloc(data_len); assert(buffer != NULL); GST_BUFFER_DTS(buffer) = (GstClockTime)pts; @@ -111,11 +114,18 @@ void video_renderer_destroy(video_renderer_t *renderer) { } } -void video_renderer_update_background(video_renderer_t *renderer, int type, int width, int height) { - +void video_renderer_update_background(video_renderer_t *renderer, int type) { + /* if(type==-1) { - - gst_app_src_end_of_stream (GST_APP_SRC(renderer->appsrc)); + GstBuffer *buffer; + buffer = gst_buffer_new_and_alloc(renderer->data_lengh); + assert(buffer != NULL); + GST_BUFFER_DTS(buffer) = (GstClockTime)renderer->pts; + memset (buffer, 0xff, renderer->data_lengh); + GST_BUFFER_FLAG_SET(buffer, GST_BUFFER_FLAG_CORRUPTED); + gst_app_src_push_buffer (GST_APP_SRC(renderer->appsrc), buffer); + //gst_app_src_end_of_stream (GST_APP_SRC(renderer->appsrc)); } + */ } \ No newline at end of file