Closed Bug 1121804 Opened 10 years ago Closed 10 years ago

[LayerScope] Add an option to enable/disable the copying and transmitting of texture data.

Categories

(Core :: Graphics, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla38
Tracking Status
firefox38 --- fixed

People

(Reporter: boris, Assigned: boris)

References

Details

(Whiteboard: [gfx-noted])

Attachments

(2 files, 2 obsolete files)

The performance of generating and transmitting packets of texture data is not good enough. (because the size of texture data is too large, and we should read pixels from GPU. It costs much time.), and I think we want to show the texture data only on some specific frames. Therefore, adding an option to control this part could let us use Layerscope more efficiently. Maybe we could use Websocket to send the message from the viewer and gecko can dynamically turn on/off the reading/sending of texture data.
Summary: [LayerScope] Add an option to enable/disable the generation and transmission of texture data. → [LayerScope] Add an option to enable/disable the copying and transmitting of texture data.
Blocks: LayerScope
Whiteboard: [gfx-noted]
Assignee: nobody → boris.chiou
A explanation about websocket packet format (for sending and receiving on the server side): http://stackoverflow.com/questions/8125507/how-can-i-send-and-receive-websocket-messages-on-the-server-side
(In reply to Boris Chiou [:boris] from comment #1) > A explanation about websocket packet format (for sending and receiving on > the server side): > http://stackoverflow.com/questions/8125507/how-can-i-send-and-receive- > websocket-messages-on-the-server-side another reference document: https://developer.mozilla.org/en-US/docs/WebSockets/Writing_WebSocket_servers
(In reply to Boris Chiou [:boris] from comment #2) > (In reply to Boris Chiou [:boris] from comment #1) > > A explanation about websocket packet format (for sending and receiving on > > the server side): > > http://stackoverflow.com/questions/8125507/how-can-i-send-and-receive- > > websocket-messages-on-the-server-side > > another reference document: > https://developer.mozilla.org/en-US/docs/WebSockets/Writing_WebSocket_servers In this bug, I will implement a light-weight websocket frame parser to handle specific packets from layerscope client side. Reference: https://dxr.mozilla.org/mozilla-central/source/netwerk/protocol/websocket/WebSocketChannel.cpp#1421
Status: NEW → ASSIGNED
Summary: [LayerScope] Add an option to enable/disable the copying and transmitting of texture data. → (LayerScope) Add an option to enable/disable the copying and transmitting of texture data.
Summary: (LayerScope) Add an option to enable/disable the copying and transmitting of texture data. → [LayerScope] Add an option to enable/disable the copying and transmitting of texture data.
Attached patch Add websocket message listener (v1) (obsolete) (deleted) — Splinter Review
1. Fix websocket listener, and implement a light-wight parser. 1. Handle the messages from clients by protobuf 2. Handle disconnection while receiving the close message.
Attachment #8555627 - Attachment is obsolete: true
Comment on attachment 8556382 [details] [diff] [review] Add websocket message listener (v1) Review of attachment 8556382 [details] [diff] [review]: ----------------------------------------------------------------- ::: gfx/layers/LayerScope.cpp @@ -189,2 @@ > > - bool WebSocketHandshake(nsTArray<nsCString>& aProtocolString) ReadInputStreamData, WebSocketHandshake, OpenStream, WriteToStream are just moved to the bottom. @@ +981,5 @@ > + return true; > +} > + > +nsresult > +LayerScopeWebSocketHandler::HandleSocketMessage(nsIAsyncInputStream *aStream) HandleSocketMessage, ProcessInput, ApplyMask, HandleDataFrame, and CloseConnection are newly added.
1. Fix websocket listener, and implement a light-wight parser. 2. Handle the messages from clients by protobuf 3. Handle disconnection while receiving the close message.
Attachment #8556382 - Attachment is obsolete: true
Attached image viewer chage (deleted) —
1. We can handle disconnection now because we can receive and parse the "close connection" message from clients properly. 2. Send command messages from clients. Add two checkboxs to enable/disable the dumping the content (layer tree or layer buffer).
Attachment #8556851 - Flags: review?(dglastonbury)
(In reply to Boris Chiou [:boris] from comment #7) > Created attachment 8556851 [details] [diff] [review] > Add websocket message listener (v2) > > 1. Fix websocket listener, and implement a light-wight parser. > 2. Handle the messages from clients by protobuf > 3. Handle disconnection while receiving the close message. try: https://treeherder.mozilla.org/#/jobs?repo=try&revision=cd69e3c38364
Attachment #8556851 - Flags: review?(dglastonbury) → review+
Keywords: checkin-needed
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla38
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: