[vlc-devel] [PATCH 00/33] Move the Chromecast communication in a separate class
Steve Lhomme
robux4 at videolabs.io
Wed Dec 23 13:05:59 CET 2015
On Wed, Dec 23, 2015 at 12:58 PM, Steve Lhomme <robux4 at videolabs.io> wrote:
> This batch of patches moves the non-stream output part of the Chromecast code
> in a separate class.
> There also some functional changes and cleaning.
This code moving will allow more flexible handling of the Chromecast.
It will be part of
a control interface that redirects the played items to the connected
Chromecast (patches not included yet).
> Steve Lhomme (33):
> input: remove unused second parameter of DEMUX_SET_POSITION and
> DEMUX_SET_TIME
> input: remove unused variable "input-fast-seek"
This sneaked in but shouldn't be here. It can safely be ignored.
> chromecast: move the message sending in a separate class
> chromecast: rename msg methods according to the receiver
> chromecast: reuse the same objects for namespaces
> chromecast: pass the destination namespace by reference
> chromecast: move processMessage() in the communication handler
> chromecast: processMessage() doesn't need to return a value
> chromecast: use the enum to handle the connection status
> chromecast: make conn_status private and use getter/setter
> chromecast: move the message sending in the communication handler
> chromecast: move buildMessage() in the class
> chromecast: pass const references to buildMessage()
> chromecast: factorize the code to push a message to send
> chromecast: the default payload type we send is STRING
> chromecast: simplify the auth payload sending
> chromecast: no need to share some constants anymore
> chromecast: GET_STATUS and LAUNCH require a request ID
> chromecast: move the packet receiver in the communication handler
> chromecast: differentiate error logs
> chromecast: make sure we send all the message data
> chromecast: use U32_AT instead of memcpy() + hton32()
> chromecast: use a reference to the received namespace
> chromecast: only lock once when checking the current app
> chromecast: when another app is running on the receiver, start the
> media player
> chromecast: log when the Chromecast reports a launch error
> chromecast: better and less logs
> chromecast: make sure we send the load when the data are flowing
> chromecast: use vlc_mutex_locker
> chromecast: move connect/disconnectChromecast in the communication
> handler
> chromecast: remove unused headers
> chromecast: the stream cannot work if the communication handler is
> NULL
> stream_out: only enable Chromecast if SOUT is enabled
>
> include/vlc_demux.h | 4 +-
> modules/stream_out/Makefile.am | 3 +
> modules/stream_out/chromecast/cast.cpp | 726 ++--------------------
> modules/stream_out/chromecast/chromecast.h | 83 ++-
> modules/stream_out/chromecast/chromecast_ctrl.cpp | 635 +++++++++++++++++++
> src/input/input.c | 13 +-
> src/input/input_internal.h | 1 -
> src/input/var.c | 1 -
> src/libvlc-module.c | 7 -
> 9 files changed, 767 insertions(+), 706 deletions(-)
> create mode 100644 modules/stream_out/chromecast/chromecast_ctrl.cpp
>
> --
> 2.6.3
>
More information about the vlc-devel
mailing list