Changeset 223172 in webkit
- Timestamp:
- Oct 11, 2017 2:33:46 AM (6 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r223169 r223172 1 2017-10-11 Alicia Boya García <aboya@igalia.com> 2 3 [MSE][GStreamer] Add dump of append pipeline 4 https://bugs.webkit.org/show_bug.cgi?id=178074 5 6 Reviewed by Xabier Rodriguez-Calvar. 7 8 Enable dump of AppendPipeline. 9 10 * platform/graphics/gstreamer/mse/AppendPipeline.cpp: 11 (WebCore::appendPipelineStateChangeMessageCallback): 12 (WebCore::AppendPipeline::AppendPipeline): 13 (WebCore::AppendPipeline::handleStateChangeMessage): 14 * platform/graphics/gstreamer/mse/AppendPipeline.h: 15 1 16 2017-09-27 Frederic Wang <fwang@igalia.com> 2 17 -
trunk/Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp
r222649 r223172 101 101 #endif 102 102 103 static void appendPipelineStateChangeMessageCallback(GstBus*, GstMessage* message, AppendPipeline* appendPipeline) 104 { 105 appendPipeline->handleStateChangeMessage(message); 106 } 107 103 108 AppendPipeline::AppendPipeline(Ref<MediaSourceClientGStreamerMSE> mediaSourceClient, Ref<SourceBufferPrivateGStreamer> sourceBufferPrivate, MediaPlayerPrivateGStreamerMSE& playerPrivate) 104 109 : m_mediaSourceClient(mediaSourceClient.get()) … … 130 135 g_signal_connect(m_bus.get(), "message::element", G_CALLBACK(appendPipelineElementMessageCallback), this); 131 136 #endif 137 g_signal_connect(m_bus.get(), "message::state-changed", G_CALLBACK(appendPipelineStateChangeMessageCallback), this); 132 138 133 139 // We assign the created instances here instead of adoptRef() because gst_bin_add_many() … … 342 348 } 343 349 #endif 350 351 void AppendPipeline::handleStateChangeMessage(GstMessage* message) 352 { 353 ASSERT(WTF::isMainThread()); 354 355 if (GST_MESSAGE_SRC(message) == reinterpret_cast<GstObject*>(m_pipeline.get())) { 356 GstState currentState, newState; 357 gst_message_parse_state_changed(message, ¤tState, &newState, nullptr); 358 CString sourceBufferType = String(m_sourceBufferPrivate->type().raw()) 359 .replace("/", "_").replace(" ", "_") 360 .replace("\"", "").replace("\'", "").utf8(); 361 CString dotFileName = String::format("webkit-append-%s-%s_%s", 362 sourceBufferType.data(), 363 gst_element_state_get_name(currentState), 364 gst_element_state_get_name(newState)).utf8(); 365 GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(GST_BIN(m_pipeline.get()), GST_DEBUG_GRAPH_SHOW_ALL, dotFileName.data()); 366 } 367 } 344 368 345 369 void AppendPipeline::handleAppsrcNeedDataReceived() -
trunk/Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.h
r222388 r223172 51 51 void handleNeedContextSyncMessage(GstMessage*); 52 52 void handleApplicationMessage(GstMessage*); 53 void handleStateChangeMessage(GstMessage*); 53 54 #if ENABLE(ENCRYPTED_MEDIA) 54 55 void handleElementMessage(GstMessage*);
Note: See TracChangeset
for help on using the changeset viewer.