Age | Commit message (Collapse) | Author |
|
This patch cleans up some documentation around PRESUBMIT and external
library support.
Change-Id: Id09981eab4ddc7bd3fb3e1ffc56e25c5b720af44
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2920640
Commit-Queue: Jordan Bayles <jophba@chromium.org>
Reviewed-by: mark a. foltz <mfoltz@chromium.org>
|
|
This patch does some updates to how we do validity checking for offer
messages, based on a TODO.
Change-Id: I09f7c530fb4b1b9cba8759e081577a92420a5364
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2896253
Commit-Queue: Jordan Bayles <jophba@chromium.org>
Reviewed-by: Ryan Keane <rwkeane@google.com>
|
|
This class defines a base class for the //cast/streaming/receiver class.
It is necessary to allow for unit testing of classes which require a
Receiver type.
Change-Id: I7a462ec64d83b41beb6e4a6d31098dc85f521fa2
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2876289
Reviewed-by: Jordan Bayles <jophba@chromium.org>
Commit-Queue: Ryan Keane <rwkeane@google.com>
|
|
In some cases, the full set of platform/api code will not be needed.
Instead, just logging can suffice. This CL updates BUILD rules to allow
for that smaller subset of dependencies.
Bug: internal b/186668530
Change-Id: I0df802871610c5839ac2000fc25e4eba028be930
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2860519
Reviewed-by: Jordan Bayles <jophba@chromium.org>
Commit-Queue: Ryan Keane <rwkeane@google.com>
|
|
This patch is the first in a series for finishing support for
remoting in the ReceiverSession. In this patch, the public API
for the session adds explicit remoting opt-in, and the session can now
respond to capabilities.
Bug: b/184186390
Change-Id: Ic1abcd32d240d9c64dec4b56fb01d6b3c74e9ddb
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2815610
Reviewed-by: mark a. foltz <mfoltz@chromium.org>
Reviewed-by: Ryan Keane <rwkeane@google.com>
Commit-Queue: Jordan Bayles <jophba@chromium.org>
|
|
This patch removes all remaining TODOs from the now-departed @miu,
either reassigning them to jophba, or for the majority, just
implementing the fix directly.
Change-Id: I73c21f577bf115cf37ec880fac54eef1555de7c5
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2831302
Commit-Queue: Jordan Bayles <jophba@chromium.org>
Reviewed-by: Brandon Tolsch <btolsch@chromium.org>
|
|
The WiFi status logs have been turned down in Chrome, and no longer need
to be supported in libcast. This patch removes all references to the
GET_STATUS and STATUS_RESPONSE messages.
Bug: 1197178
Change-Id: Id48844c0e3dd921ec95d1cb803603161ddcdcbfe
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2815609
Reviewed-by: Brandon Tolsch <btolsch@chromium.org>
Reviewed-by: Takumi Fujimoto <takumif@chromium.org>
Commit-Queue: Jordan Bayles <jophba@chromium.org>
|
|
Chrome build is complaining about a missing constructor as well as a
bunch of static initialized stuff due to const declarations. This patch
should put Chrome in a good state by making things constexpr and adding
constructors where expected.
TBR=rwkeane@chromium.org
Change-Id: I6b98e04a8a103092bdeb02cd78a4799b7115c498
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2815613
Reviewed-by: Jordan Bayles <jophba@chromium.org>
Reviewed-by: Ryan Keane <rwkeane@google.com>
Commit-Queue: Jordan Bayles <jophba@chromium.org>
|
|
This patch changes the way Dimensions and Resolution objects are
used in Open Screen--consolidating them into just one set
of Dimensions and Resolution objects that can be used throughout
the library, and updates the mirroring control protocol specification to be
crisper about the difference between Resolution objects and Dimensions
objects--and removing frame rates where they don't really make sense.
As part of this cleanup, it also refactors the
ReceiverSession to not expose the Answer messaging system at all,
instead using new publicly exposed types. Finally, the capture
recommendations are removed from the Receiver side, in favor of shared
constants.
Bug: b/184186374
Change-Id: I5e6a1c6798d07cb7f388ff5179c0bfa325d89229
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2808336
Reviewed-by: Ryan Keane <rwkeane@google.com>
Commit-Queue: Jordan Bayles <jophba@chromium.org>
|
|
This patch changes RpcBroker from providing a const RpcMessage& to
providing a std::unique_ptr<RpcMessage> instead for subscribers.
The //media/remoting component uses this extensively and makes
assumptions about the RpcBroker returning a std::unique_ptr that are, in
my opinion, not worth modifying--especially considering that
RPC messages are frequently passed across threads.
Bug: b/184683535
Change-Id: Id1521cd885f0964b65f4ab4f45d88b126faffc30
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2809203
Reviewed-by: Brandon Tolsch <btolsch@chromium.org>
Commit-Queue: Jordan Bayles <jophba@chromium.org>
|
|
This patch exposes remoting functionality on the SenderSession class,
allowing embedders to request starting remoting.
Bug: b/184186374
Change-Id: If82cffab9eda78e8b7d83d3f46a657e45267e8d6
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2626352
Commit-Queue: Jordan Bayles <jophba@chromium.org>
Reviewed-by: Brandon Tolsch <btolsch@chromium.org>
|
|
PiperOrigin-RevId: 366868587
Change-Id: Ib4b471f04f99a479e7e1d28ee40569e81e491b5b
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2806230
Reviewed-by: Ryan Keane <rwkeane@google.com>
Commit-Queue: Ryan Keane <rwkeane@google.com>
|
|
This reverts commit 21f04aefd1b06a959576202fc3a7616bc4de0b1d.
Reason for revert: Rename breaks Fuchsia build.
Original change's description:
> [Cast] Rename Negotiate/OnNegotiated methods
>
> This patch renames SenderSession Negotiate to NegotiateMirroring and
> OnNegotiated to OnMirroringNegotiated, in advance of a larger patch that
> exposes remoting on the SenderSession.
>
> Bug: b/184186374
> Change-Id: Ibfa38a822d6fdf5a39ebb83ef493442451fcc91e
> Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2798518
> Reviewed-by: Ryan Keane <rwkeane@google.com>
> Commit-Queue: Jordan Bayles <jophba@chromium.org>
Bug: b/184186374
Change-Id: I8ac2534d47e27a3fa151b72aa0098688a771a410
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2801912
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
As part of deprecating Chrome's media_remoting_rpc.proto, this patch
takes changes made after our port was complete in patch:
https://chromium-review.googlesource.com/c/chromium/src/+/2582999
Bug: b/184051346
Change-Id: I59a7580b6c569c5e84c8904bc915972587807cd0
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2801211
Reviewed-by: Takumi Fujimoto <takumif@chromium.org>
Commit-Queue: Jordan Bayles <jophba@chromium.org>
|
|
This change removes OperationLoop because it's only used in one place
and is arguably confusing. OperationLoop mixes sleep() and select()
usage, with separate timeouts, which has resulted in some "tuning" bugs
in the past. Since there's no benefit to the sleep portion and it is
also what causes the confusion, this change removes it and thing
directly uses SocketHandleWaiter in PlatformClientPosix.
Bug: None
Change-Id: I9f62c9253bee7d29b26d1838d34c1399f4d472b5
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2798852
Commit-Queue: Jordan Bayles <jophba@chromium.org>
Reviewed-by: Jordan Bayles <jophba@chromium.org>
|
|
This change resets needs_key_frame to false after the encoding loop sees
it once to pass it to the vp8 encoder. Previously, once a key frame is
needed, every frame thereafter would become a key frame.
Bug: None
Change-Id: Ia64ab56fd800892462cf8d103c4a9e454d1c850f
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2798115
Commit-Queue: Jordan Bayles <jophba@chromium.org>
Reviewed-by: Jordan Bayles <jophba@chromium.org>
|
|
This patch makes the maxDelay and maxPixelsPerSecond fields optional.
Bug: 1154956
Change-Id: I0afc8b31a657a5a6224a74a7c168273fb86ac59b
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2794863
Commit-Queue: Jordan Bayles <jophba@chromium.org>
Reviewed-by: Brandon Tolsch <btolsch@chromium.org>
|
|
This patch renames SenderSession Negotiate to NegotiateMirroring and
OnNegotiated to OnMirroringNegotiated, in advance of a larger patch that
exposes remoting on the SenderSession.
Bug: b/184186374
Change-Id: Ibfa38a822d6fdf5a39ebb83ef493442451fcc91e
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2798518
Reviewed-by: Ryan Keane <rwkeane@google.com>
Commit-Queue: Jordan Bayles <jophba@chromium.org>
|
|
Over the last year, the standalone sender and receiver applications have
gone through some major changes, and unfortunately a few regressions
have been introduced.
This patch fixes the poor performance. This was actually caused by a "fix" to the
PlatformClientPosix implementation, where we were using inappropriate
values for network looping (50ms, which is an eternity).
Bug: b/182937147
Change-Id: I39af927401ce940b81829e5b2992e06bc544ef01
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2792912
Reviewed-by: Brandon Tolsch <btolsch@chromium.org>
Commit-Queue: Jordan Bayles <jophba@chromium.org>
|
|
Currently, the bandwidth estimator always reports 0kbps, even though we
are successfully sending packets.
Turns out, the LoopingFileSender is erroneously using a second
SenderPacketRouter that is separate from the SenderSession's instance,
so it has no packets to report. This feature is now exposed on the
SenderSession, since bandwidth estimation is a helpful signal for
embedders to throttle capture.
Bug: b/183996401
Change-Id: I932085dfe00df29d8ae79a184ee10b1d3fe5594d
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2792913
Reviewed-by: Brandon Tolsch <btolsch@chromium.org>
Commit-Queue: Jordan Bayles <jophba@chromium.org>
|
|
This patch improves offer message error handling, adding a specific case
for unencrypted offers--meaning that either the aesKey or aesIvMask is
missing or not properly set.
Bug: b/183070430
Change-Id: Iec27f254dfd4d379318cbdbc4855955c24d49db1
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2771244
Reviewed-by: Brandon Tolsch <btolsch@chromium.org>
Commit-Queue: Jordan Bayles <jophba@chromium.org>
|
|
This change makes the IP address record the standalone receiver
publishes consistent with the one on which it's listening. It still
prioritizes listening on IPv4 addresses, but previously it might also
advertise an IPv6 address via mDNS.
Bug: None
Change-Id: Ic9496d63e7c075b2e2dab708042dfeec963e5337
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2765985
Reviewed-by: Ryan Keane <rwkeane@google.com>
Commit-Queue: Brandon Tolsch <btolsch@chromium.org>
|
|
This change adds audio/video out device capabilities to the standalone
receiver's mDNS advertisement.
Bug: b/182937156
Change-Id: I7ef402960df6f88a1a9c1c20dd3c138123725f06
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2765986
Commit-Queue: Jordan Bayles <jophba@chromium.org>
Reviewed-by: Jordan Bayles <jophba@chromium.org>
|
|
This change moves the log that reports the endpoint to which the
standalone sender is connected. The current log point has an incorrect
port because the answer message hasn't been received yet.
Bug: None
Change-Id: I34e8ba39e99202513cb65c909832eaa3409b1cf7
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2765987
Commit-Queue: Jordan Bayles <jophba@chromium.org>
Reviewed-by: Jordan Bayles <jophba@chromium.org>
|
|
PiperOrigin-RevId: 355200754
Change-Id: Ic9f1e51d5b6df49074b777a3b7261493c55125a4
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2750548
Reviewed-by: Ryan Keane <rwkeane@google.com>
Commit-Queue: Ryan Keane <rwkeane@google.com>
|
|
I missed these earlier.
Change-Id: I53873874f850193839003c8cb812a0bf68074453
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2740099
Reviewed-by: Brandon Tolsch <btolsch@chromium.org>
Commit-Queue: Brandon Tolsch <btolsch@chromium.org>
|
|
This avoids repurposing BoringSSL's internal fields, which would break
if the X509 objects were ever passed into BoringSSL functions that used
those fields.
Change-Id: I84b11dba5dfda5483da00b71e0c4a9f672c20174
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2737735
Reviewed-by: Brandon Tolsch <btolsch@chromium.org>
Commit-Queue: Brandon Tolsch <btolsch@chromium.org>
|
|
EXFLAG_SI is recomputed in each loop anyway, so there is no point
storing it with the certificate in the first place. It is also, in this
code, not *entirely* path-independent due to the is_root check. This
fixes a potential bug where checking one path impacts the behavior of
another path.
Change-Id: If9b0d157dd49c44723c1a8e2f83eebfc3fc2779c
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2737756
Reviewed-by: Brandon Tolsch <btolsch@chromium.org>
Commit-Queue: Brandon Tolsch <btolsch@chromium.org>
|
|
This CL is needed to compile with the latest revision of BoringSSL.
We're in the process of aligning with OpenSSL upstream and switching
the X509 structure from direct struct access to accessors. This CL fixes
most instances leaves the mutation of x509->nc and x509->ex_flags
(which, even before the struct became opaque, was unsupported), since
they're a little more subtle.
This also switches from X509V3_EXT_d2i to X509_get_ext_d2i, which saves
some code. Note, however, both the old and new version of the CL do not
correctly handle encoding errors in the extensions. For this CL, I've
preserved the original bugs and have focused on resolving the direct
struct accesses, rather than doing a thorough review for correctness.
Change-Id: Ib7c535b726684719baa15c76a84e95a18e0d8114
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2737755
Reviewed-by: Brandon Tolsch <btolsch@chromium.org>
Commit-Queue: Brandon Tolsch <btolsch@chromium.org>
|
|
This fixes an incorrect usage of ErrorOr in Environment that was
triggering an assert in debug mode. The code was not properly
checking that the result was a value before using it.
Change-Id: I2f1c5cc18a66c3293d33e0c758f7b5f51848e688
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2698270
Reviewed-by: Jordan Bayles <jophba@chromium.org>
Commit-Queue: Jordan Bayles <jophba@chromium.org>
|
|
Bug: 1159043, 1159044, 1159045, 1159046, 1159047
Bug: 1159048, 1159049, 1159050, 1159051
Change-Id: I4c01784608057662fc432f4ac35ced7c0be9b601
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2678725
Commit-Queue: Brandon Tolsch <btolsch@chromium.org>
Reviewed-by: mark a. foltz <mfoltz@chromium.org>
|
|
This is a followup patch to:
https://chromium-review.googlesource.com/c/openscreen/+/2643397
To make it RFC compliant, we now send to the multicast
group address, not to ANY. We also bind to ANY address instead of the
local address of the interface, since binding filters multicast traffic
to only bound addresses. Joining the multicast group is what filters
the traffic instead.
Bug: b/178102949
Change-Id: I1d7e44b5e90d2f1f1d395cb9a8a689edf16bfafb
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2665304
Reviewed-by: Ryan Keane <rwkeane@google.com>
Commit-Queue: Jordan Bayles <jophba@chromium.org>
|
|
mktime return localized timezone result.
Certification uses UTC time zone,
so call timegm/_mkgmtime to match with certification.
Change-Id: I338ca14bb75e75d45c1de1ab976a61ec2e51eeca
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2658656
Reviewed-by: Brandon Tolsch <btolsch@chromium.org>
Commit-Queue: Brandon Tolsch <btolsch@chromium.org>
|
|
This patch fixes a potential timing issue where we attempt to send an
Answer message before the UDP socket is bound.
The current behavior is
that we construct an Answer with a UDP port value of 0, which results in
the Answer failing validation and an error Answer message being sent
back to the sender.
The new behavior is that the Answer message is not sent until the
environment is notified that the UDP socket has been bound. This is
accomplished by an addition to the UDPSocket::Client abstract class, a
new OnBound event.
Bug: b/174501332
Change-Id: I4bcebe78d8d41c29bb4b4698c5565f0dd9ef2c17
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2645893
Commit-Queue: Jordan Bayles <jophba@chromium.org>
Reviewed-by: mark a. foltz <mfoltz@chromium.org>
Reviewed-by: Jordan Bayles <jophba@chromium.org>
|
|
This change makes openscreen ready to be compiled with -std=c++17. In
particular, c++17 demands the consistent use of the noexcept keyword
accross declaration and definition.
Bug: chromium:752720
Change-Id: I4715cbc7ccc9576e33ad7dec0ce6c1f6ebd9935b
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2643286
Commit-Queue: mark a. foltz <mfoltz@chromium.org>
Reviewed-by: mark a. foltz <mfoltz@chromium.org>
|
|
This patch updates the Sender and Receiver classes to be usable for
remoting.
Bug: b/175606988
Change-Id: Ia515f211ab26362933746c660848bfd6474c959f
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2611785
Reviewed-by: Yuri Wiitala <miu@chromium.org>
Commit-Queue: Jordan Bayles <jophba@chromium.org>
|
|
Merges the source_set("standalone_sender") target with the
executable("cast_sender") target, to become a single executable target.
This fixes the cast_sender build on Mac (not sure why it was working on
Linux???).
Change-Id: Ifef996c56892079bfb692be756d3e2e6ea9ffe85
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2619025
Reviewed-by: Jordan Bayles <jophba@chromium.org>
Commit-Queue: Jordan Bayles <jophba@chromium.org>
|
|
PiperOrigin-RevId: 347889652
Change-Id: I99bfa2a3de0f2d4555ce5a40f0dc1b109be40722
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2595341
Reviewed-by: Ryan Keane <rwkeane@google.com>
Commit-Queue: Ryan Keane <rwkeane@google.com>
|
|
PiperOrigin-RevId: 346876868
Change-Id: Ibdc1bb192bab2ef00519bf8e28bb95eb46d8819a
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2596076
Reviewed-by: Ryan Keane <rwkeane@google.com>
Commit-Queue: Ryan Keane <rwkeane@google.com>
|
|
PiperOrigin-RevId: 346675711
Change-Id: I3bdab2b11f9cf5ceb757ffe761e0878acd8b2046
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2596075
Reviewed-by: Ryan Keane <rwkeane@google.com>
Commit-Queue: Ryan Keane <rwkeane@google.com>
|
|
PiperOrigin-RevId: 345051013
Change-Id: Ie78ef1ad3bf0a09bd2dd12023abb83c3ad0436ab
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2596074
Reviewed-by: Ryan Keane <rwkeane@google.com>
Commit-Queue: Ryan Keane <rwkeane@google.com>
|
|
PiperOrigin-RevId: 343389838
Change-Id: I91336772932e7323b18f177d280d38a6e7c65802
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2595722
Reviewed-by: Ryan Keane <rwkeane@google.com>
Commit-Queue: Ryan Keane <rwkeane@google.com>
|
|
PiperOrigin-RevId: 343365350
Change-Id: If6d9f95b1407f88100f2a394d3ba2535579e147c
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2597836
Reviewed-by: Ryan Keane <rwkeane@google.com>
Commit-Queue: Ryan Keane <rwkeane@google.com>
|
|
Change-Id: If9531c66df28cfd86728d7a5ece42753037c0509
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2596321
Commit-Queue: Jordan Bayles <jophba@chromium.org>
Commit-Queue: mark a. foltz <mfoltz@chromium.org>
Reviewed-by: mark a. foltz <mfoltz@chromium.org>
|
|
PiperOrigin-RevId: 342737330
Change-Id: I50662c13ed675fb04e054dac432d4fcdf1baa0f4
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2594568
Reviewed-by: Ryan Keane <rwkeane@google.com>
Commit-Queue: Ryan Keane <rwkeane@google.com>
|
|
This patch includes a port of Chrome's RPCBroker and related unit tests,
rewritten using Open Screen types and modern C++ design standards.
For the original RPCBroker, see:
https://source.chromium.org/chromium/chromium/src/+/master:/media/remoting/rpc_broker.h
Bug: b/175606986
Change-Id: I93893c355ec11f66376a2113e512e00308fc7594
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2590549
Commit-Queue: Jordan Bayles <jophba@chromium.org>
Reviewed-by: Yuri Wiitala <miu@chromium.org>
|
|
The refactoring in commit c9201dd611b0aa8d66fe7ef2749c7ce0c157f0a1
accidentally replaced some time conversions/definitions that were
milliseconds with microseconds.
Change-Id: Ie7f329060b77064ce41acf72696a99c4f88b2104
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2594219
Commit-Queue: Jordan Bayles <jophba@chromium.org>
Reviewed-by: Jordan Bayles <jophba@chromium.org>
|
|
This patch updates the libcast receiver to accept 0 as a valid sequence
number.
TBR=miu@chromium.org
Bug: b/175720188
Change-Id: I17ff6f8390b76d22ed39d756ffc2143ac7a039e8
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2594152
Reviewed-by: Jordan Bayles <jophba@chromium.org>
Reviewed-by: Yuri Wiitala <miu@chromium.org>
Commit-Queue: Jordan Bayles <jophba@chromium.org>
|
|
PiperOrigin-RevId: 342117974
Change-Id: I9e15d3dfae41a06f5d06cd130e23bf9736676417
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2586158
Reviewed-by: Ryan Keane <rwkeane@google.com>
Commit-Queue: Ryan Keane <rwkeane@google.com>
|
|
This patch adds all the necessary sender-side logic for talking to the
agent on a Cast Receiver, to LAUNCH the Mirroring App, and to estabilsh
a VirtualConnection for Mirroring App message routing.
It heavily modifies the role of LoopingFileCastAgent: This class now
becomes a "single-use workflow" that walks through all the steps needed
for establishing streaming and tearing it down.
With this patch, the Standalone Sender can now be used with the
Standalone Receiver once again.
Bug: b/162542369
Change-Id: Ib7d990995b5a036bd0299806a42d4a92f89d9209
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/2586061
Commit-Queue: Yuri Wiitala <miu@chromium.org>
Reviewed-by: Jordan Bayles <jophba@chromium.org>
|