Skip to content

Sync with SendBirdWebRTC 1.1.1 #1

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Aug 26, 2020
Merged

Sync with SendBirdWebRTC 1.1.1 #1

merged 4 commits into from
Aug 26, 2020

Conversation

mininny
Copy link
Contributor

@mininny mininny commented May 25, 2020

No description provided.

@mininny mininny requested review from famous90, ipagong and x-0o0 May 25, 2020 04:22
@@ -33,8 +33,8 @@
SDK_FRAMEWORK_NAME = 'WebRTC.framework'

DEFAULT_ARCHS = ENABLED_ARCHS = ['arm64', 'arm', 'x64', 'x86']
IOS_DEPLOYMENT_TARGET = '10.0'
LIBVPX_BUILD_VP9 = False
IOS_DEPLOYMENT_TARGET = '9.0'
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Target 은 왜 10에서 9로 변경되었나요?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

저희 sdk 미니멈 버전이 9.0이라서 이것도 같이 맞췄습니당

IOS_DEPLOYMENT_TARGET = '10.0'
LIBVPX_BUILD_VP9 = False
IOS_DEPLOYMENT_TARGET = '9.0'
LIBVPX_BUILD_VP9 = True
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

엇 이제 VP9도 지원하나요?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

앗 vp9은 전부터 지원했었습니다

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

앗 vp9은 전부터 지원했었습니다

저희 iOS VP8이랑 H.264는 지원하는데 VP9 지원안하고 있지 않았었나요?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

전에도 키고 빌드했었는데, 없었나요....? 😨

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

음 그러면 LIBVPX_BUILD_VP9 이거는 무엇인가요?? false 여도 VP9이 켜져있는건가요..???

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LIBVPX_BUILD_VP9 를 키면 VP9을 사용가능하게 하는거에용...뭐지..

Copy link

@x-0o0 x-0o0 May 25, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

그렇군요. VP9가 이전엔 False였는데 지원했다구 해서 이해차 다시 여쭤보았습니다. 감사합니다. + Approve

@@ -59,7 +59,7 @@ def _ParseArgs():
'If specified together with -c, deletes the dir.')
parser.add_argument('-r', '--revision', type=int, default=0,
help='Specifies a revision number to embed if building the framework.')
parser.add_argument('-e', '--bitcode', action='store_true', default=False,
parser.add_argument('-e', '--bitcode', action='store_true', default=True,
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

default 값의 false와 true 차이가 무엇인가요??

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

저 플래그가 빌드할때 --bitcode를 입력하면 bitcode가 켜지고 입력안하면 디폴트로 bitcode를 키지 않는건데, 귀찮아서 --bitcode를 입력 안해도 비트코드가 켜지도록 바꿔놨습니다..ㅎ

@@ -343,6 +343,7 @@ RTC_OBJC_EXPORT

typedef void (^RTCStatisticsCompletionHandler)(RTC_OBJC_TYPE(RTCStatisticsReport) *);

RTC_OBJC_EXPORT
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

예전에 이 flag 가 없어서 stat interface 사용을 못했던 건가 보군요 👍

@mininny mininny merged commit 31754f6 into master Aug 26, 2020
mininny pushed a commit that referenced this pull request Aug 26, 2020
…ors on key-frames

[email protected]
(cherry picked from commit 35fc153)

Bug: webrtc:11575, chromium:1084963
Change-Id: I09be17ab5155e9f610c8f7c451ca52d7d65e24d1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/175222
Commit-Queue: Ilya Nikolaevskiy <[email protected]>
Reviewed-by: Rasmus Brandt <[email protected]>
Cr-Original-Commit-Position: refs/heads/master@{#31295}
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/175902
Reviewed-by: Ilya Nikolaevskiy <[email protected]>
Cr-Commit-Position: refs/branch-heads/4147@{#1}
Cr-Branched-From: 2b7d969-refs/heads/master@{#31262}
mininny pushed a commit that referenced this pull request Feb 24, 2021
This reverts commit 76d3e7a.

Reason for revert: Causes multiple Chromium WPT tests to crash, preventing rolls.

Sample failed run:
https://ci.chromium.org/p/chromium/builders/try/win10_chromium_x64_rel_ng/685757?

Sample stack trace:
#0 0x7ff8623fbde9 base::debug::CollectStackTrace()
STDERR: #1 0x7ff862311ca3 [2665012:17:1009/162250.249660:WARNING:timestamp_aligner.cc(131)] too short translated timestamp interval: system time (us) = 3042652370324, interval (us) = 834
STDERR: base::debug::StackTrace::StackTrace()
STDERR: #2 0x7ff8623fb93b base::debug::(anonymous namespace)::StackDumpSignalHandler()
STDERR: #3 0x7ff857a70140 [2665012:17:1009/162250.249947:WARNING:timestamp_aligner.cc(131)] too short translated timestamp interval: system time (us) = 3042652370634, interval (us) = 742
STDERR: (/lib/x86_64-linux-gnu/libpthread-2.31.so+0x1413f)
STDERR: #4 0x7ff85778edb1 gsignal
STDERR: #5 0x7ff857778537 abort
STDERR: #6 0x7ff855d5eee2 [2665012:17:1009/162250.250342:WARNING:timestamp_aligner.cc(131)] too short translated timestamp interval: system time (us) = 3042652371030, interval (us) = 706
STDERR: [2665012:17:1009/162250.250514:WARNING:timestamp_aligner.cc(131)] too short translated timestamp interval: system time (us) = 3042652371204, interval (us) = 963
STDERR: rtc::webrtc_checks_impl::FatalLog()
STDERR: #7 0x7ff855f14e62 webrtc::LibvpxVp8Encoder::PrepareRawImagesForEncoding()
STDERR: #8 0x7ff855f14412 webrtc::LibvpxVp8Encoder::Encode()
STDERR: #9 0x7ff855bae765 webrtc::SimulcastEncoderAdapter::Encode()
STDERR: #10 0x7ff85607d598 webrtc::VideoStreamEncoder::EncodeVideoFrame()
STDERR: #11 0x7ff85607c60d webrtc::VideoStreamEncoder::MaybeEncodeVideoFrame()
STDERR: #12 0x7ff8560816f5 webrtc::webrtc_new_closure_impl::ClosureTask<>::Run()
STDERR: #13 0x7ff855b352b5 (anonymous namespace)::WebrtcTaskQueue::RunTask()
STDERR: #14 0x7ff855b3531e base::internal::Invoker<>::RunOnce()
STDERR: #15 0x7ff86239785b base::TaskAnnotator::RunTask()
STDERR: #16 0x7ff8623c8557 base::internal::TaskTracker::RunSkipOnShutdown()
STDERR: #17 0x7ff8623c7d92 base::internal::TaskTracker::RunTask()
STDERR: #18 0x7ff862415a06 base::internal::TaskTrackerPosix::RunTask()
STDERR: #19 0x7ff8623c75e6 base::internal::TaskTracker::RunAndPopNextTask()
STDERR: #20 0x7ff8623d3a8d base::internal::WorkerThread::RunWorker()
STDERR: #21 0x7ff8623d368d base::internal::WorkerThread::RunPooledWorker()
STDERR: #22 0x7ff862416509 base::(anonymous namespace)::ThreadFunc()
STDERR: #23 0x7ff857a64ea7 start_thread 

Original change's description:
> NV12 support for VP8 simulcast
>
> Tested using video_loopback with generated NV12 frames.
>
> Bug: webrtc:11635, webrtc:11975
> Change-Id: I14b2d663c55a83d80e48e226fcf706cb18903193
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/186722
> Commit-Queue: Evan Shrubsole <[email protected]>
> Reviewed-by: Ilya Nikolaevskiy <[email protected]>
> Cr-Commit-Position: refs/heads/master@{#32325}

[email protected],[email protected]

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: webrtc:11635
Bug: webrtc:11975
Change-Id: I61c8aed1270bc9c2f7f0577fa5ca717a325f548a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/187484
Reviewed-by: Guido Urdaneta <[email protected]>
Reviewed-by: Ilya Nikolaevskiy <[email protected]>
Commit-Queue: Guido Urdaneta <[email protected]>
Cr-Commit-Position: refs/heads/master@{#32369}
mininny pushed a commit that referenced this pull request Feb 24, 2021
This reverts commit c5f7108.

Reason for revert: Causes Chromium WPT Tests to fail, preventing rolls.

Sample failed run:
https://ci.chromium.org/p/chromium/builders/try/linux-rel/511995?

Sample logs:

STDERR: # Fatal error in: ../../third_party/webrtc/pc/peer_connection.cc, line 575
STDERR: # last system error: 0
STDERR: # Check failed: (signaling_thread())->IsCurrent()
STDERR: # Received signal 6
STDERR: #0 0x7f81d39e3de9 base::debug::CollectStackTrace()
STDERR: #1 0x7f81d38f9ca3 base::debug::StackTrace::StackTrace()
STDERR: #2 0x7f81d39e393b base::debug::(anonymous namespace)::StackDumpSignalHandler()
STDERR: #3 0x7f81c9054140 (/lib/x86_64-linux-gnu/libpthread-2.31.so+0x1413f)
STDERR: #4 0x7f81c8d72db1 gsignal
STDERR: #5 0x7f81c8d5c537 abort
STDERR: #6 0x7f81c7344032 rtc::webrtc_checks_impl::FatalLog()
STDERR: #7 0x7f81c722e5c0 webrtc::webrtc_function_impl::CallHelpers<>::CallInlineStorage<>()
STDERR: #8 0x7f81c7348d99 webrtc::robo_caller_impl::RoboCallerReceivers::Foreach()
STDERR: #9 0x7f81c72d6e8e webrtc::webrtc_function_impl::CallHelpers<>::CallInlineStorage<>()
STDERR: #10 0x7f81c7348d99 webrtc::robo_caller_impl::RoboCallerReceivers::Foreach()
STDERR: #11 0x7f81c71c6df3 webrtc::webrtc_function_impl::CallHelpers<>::CallInlineStorage<>()
STDERR: #12 0x7f81c7348d99 webrtc::robo_caller_impl::RoboCallerReceivers::Foreach()
STDERR: #13 0x7f81c73135bc rtc::OpenSSLStreamAdapter::ContinueSSL()
STDERR: #14 0x7f81c7312fd4 rtc::OpenSSLStreamAdapter::OnEvent()
STDERR: #15 0x7f81c71c30d9 cricket::StreamInterfaceChannel::OnPacketReceived()
STDERR: #16 0x7f81c71c640a cricket::DtlsTransport::OnReadPacket()
STDERR: #17 0x7f81c71cad61 cricket::P2PTransportChannel::OnReadPacket()
STDERR: #18 0x7f81c71bc90f cricket::Connection::OnReadPacket()
STDERR: #19 0x7f81c71e6255 cricket::UDPPort::HandleIncomingPacket()
STDERR: #20 0x7f81cd1f1bff blink::(anonymous namespace)::IpcPacketSocket::OnDataReceived()
STDERR: #21 0x7f81cd1f645d blink::P2PSocketClientImpl::DataReceived()
STDERR: #22 0x7f81cd50a16b network::mojom::blink::P2PSocketClientStubDispatch::Accept()
STDERR: #23 0x7f81d2b4f642 mojo::InterfaceEndpointClient::HandleValidatedMessage()
STDERR: #24 0x7f81d2b5304b mojo::MessageDispatcher::Accept()
STDERR: #25 0x7f81d2b50bb1 mojo::InterfaceEndpointClient::HandleIncomingMessage()
STDERR: #26 0x7f81d2b58a3a mojo::internal::MultiplexRouter::ProcessIncomingMessage()
STDERR: #27 0x7f81d2b57f7f mojo::internal::MultiplexRouter::Accept()
STDERR: #28 0x7f81d2b5304b mojo::MessageDispatcher::Accept()
STDERR: #29 0x7f81d2b48851 mojo::Connector::DispatchMessage()
STDERR: #30 0x7f81d2b492e7 mojo::Connector::ReadAllAvailableMessages()
STDERR: #31 0x7f81d2b490a3 mojo::Connector::OnHandleReadyInternal()
STDERR: #32 0x7f81d2b498f0 mojo::SimpleWatcher::DiscardReadyState()
STDERR: #33 0x7f81d2d0e67a mojo::SimpleWatcher::OnHandleReady()
STDERR: #34 0x7f81d2d0eb2b base::internal::Invoker<>::RunOnce()
STDERR: #35 0x7f81d397f85b base::TaskAnnotator::RunTask()
STDERR: #36 0x7f81d399a04c base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWorkImpl()
STDERR: #37 0x7f81d3999c78 base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWork()
STDERR: #38 0x7f81d391fe64 base::MessagePumpDefault::Run()
STDERR: #39 0x7f81d399a8dc base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run()
STDERR: #40 0x7f81d395ae55 base::RunLoop::Run()
STDERR: #41 0x7f81d39c87f2 base::Thread::Run()




Original change's description:
> Reland "Replace sigslot usages with robocaller library."
>
> This is a reland of 40261c3
>
> Note: Instead of changing the type of JsepTransportController->SignalSSLHandshakeError
> added a new member with a different name and used it in webrtc code.
> After this change do two more follow up CLs to completely remove the old code
> from google3.
>
> Original change's description:
> > Replace sigslot usages with robocaller library.
> >
> > - Replace all the top level signals from jsep_transport_controller.
> > - There are still sigslot usages in this file so keep the inheritance
> >   and that is the reason for not having a binary size gain in this CL.
> >
> > Bug: webrtc:11943
> > Change-Id: I249d3b9710783aef70ba273e082ceeafe3056898
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/185540
> > Commit-Queue: Lahiru Ginnaliya Gamathige <[email protected]>
> > Reviewed-by: Mirko Bonadei <[email protected]>
> > Reviewed-by: Karl Wiberg <[email protected]>
> > Cr-Commit-Position: refs/heads/master@{#32321}
>
> Bug: webrtc:11943
> Change-Id: Ia07394ee395f94836f6b576c3a97d119a7678e1a
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/186946
> Commit-Queue: Lahiru Ginnaliya Gamathige <[email protected]>
> Reviewed-by: Karl Wiberg <[email protected]>
> Cr-Commit-Position: refs/heads/master@{#32359}

[email protected],[email protected],[email protected]

Change-Id: I6bce1775d10758ac4a9d05b855f473dd70bd9815
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:11943
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/187487
Reviewed-by: Guido Urdaneta <[email protected]>
Commit-Queue: Guido Urdaneta <[email protected]>
Cr-Commit-Position: refs/heads/master@{#32372}
mininny pushed a commit that referenced this pull request Feb 24, 2021
by updating flag that T1 frame can be referenced when it is encoded
rather than when it is sent for encoding.
Otherwise when encoder drops T1 frame, configuration for following T2 frame would
still try to reference that absent T1 frame leading to invalid references.

(cherry picked from commit ba91dbc)

Bug: chromium:1168068
Change-Id: I6398275971596b0618bcf9c926f0282f74120976
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/202030
Reviewed-by: Philip Eliasson <[email protected]>
Commit-Queue: Danil Chapovalov <[email protected]>
Cr-Original-Commit-Position: refs/heads/master@{#33002}
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/202763
Cr-Commit-Position: refs/branch-heads/4389@{#1}
Cr-Branched-From: 7acc2d9-refs/heads/master@{#32986}
mininny pushed a commit that referenced this pull request Sep 3, 2021
When layers are activated/deactivated via UpdateActiveSimulcastLayers,
the flag wasn't being updated. This resulted in calls to Stop() getting
ignored after an implicit start via activating layers.

(cherry picked from commit 35b1cb4)

Bug: chromium:1234779
Change-Id: I4a72e624874526d27d3e97d6903112367c5e77fb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227700
Reviewed-by: Magnus Flodman <[email protected]>
Commit-Queue: Tommi <[email protected]>
Cr-Original-Commit-Position: refs/heads/master@{#34654}
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227965
Reviewed-by: Tommi <[email protected]>
Cr-Commit-Position: refs/branch-heads/4577@{#1}
Cr-Branched-From: 5196931-refs/heads/master@{#34463}
mininny pushed a commit that referenced this pull request Apr 18, 2022
To disable dcSCTP and fallback to usrsctp, you can use the field trial
WebRTC-DataChannel-Dcsctp/Disabled/

Also remove a hidden no-break space in dcSCTP logging causing issues in
some log parsing.

(cherry picked from commit 29ff3ef)

Bug: chromium:1243702
Change-Id: I46136a8913a6d803a3c63c710f3ed29523e4d773
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/251867
Auto-Submit: Florent Castelli <[email protected]>
Reviewed-by: Victor Boivie <[email protected]>
Reviewed-by: Harald Alvestrand <[email protected]>
Commit-Queue: Harald Alvestrand <[email protected]>
Cr-Original-Commit-Position: refs/heads/main@{#36027}
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/252481
Reviewed-by: Victor Boivie <[email protected]>
Commit-Queue: Florent Castelli <[email protected]>
Cr-Commit-Position: refs/branch-heads/4896@{#1}
Cr-Branched-From: 962bf18-refs/heads/main@{#36026}
mininny pushed a commit that referenced this pull request Jul 28, 2022
This will be used as a fall-back when the encoder adapter doesn't
provide any dependency structure. This ensures we can always generate a
dependency descriptor RTP header extension for VP8.

Before, when switching between encoder adapters where the old one
generated a dependency structure but the new one didn't we had to make
sure the structure was cleared so that packets weren't sent with the
dependency structure from the previous adapter. This will not be a
problem anymore since the new adapter will use the simulated dependency
structure.

(cherry picked from commit 6c81a42)

Bug: b/227749056, chromium:1328026
Change-Id: I8463c48a9dcde4b8d32c519819dd8a92acd8e43b
No-Presubmit: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/262765
Commit-Queue: Emil Lundmark <[email protected]>
Reviewed-by: Erik Språng <[email protected]>
Reviewed-by: Danil Chapovalov <[email protected]>
Cr-Original-Commit-Position: refs/heads/main@{#36930}
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/264547
Reviewed-by: Philip Eliasson <[email protected]>
Reviewed-by: Björn Terelius <[email protected]>
Cr-Commit-Position: refs/branch-heads/5060@{#1}
Cr-Branched-From: 1389c76-refs/heads/main@{#36868}
mininny pushed a commit that referenced this pull request May 9, 2023
…back

Since AddTrack now has an implicit init_encodings value, it will also
have a StableState saved when associating a transceiver.
That state may not have a saved mid and mline_index, and so on a
rollback, it could blindly reset the mid and mline_index of an
associated transceiver.

This is wrong, the mid and mline_index of associated transceivers
should only be updated when the StableState objects actually
have one saved.

(cherry picked from commit b3d424c)

Bug: chromium:1424238
Change-Id: I8e80a04cd072d90200ca7643de892c0ef29b1f1a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/297920
Commit-Queue: Florent Castelli <[email protected]>
Reviewed-by: Henrik Boström <[email protected]>
Cr-Original-Commit-Position: refs/heads/main@{#39577}
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/297983
Reviewed-by: Per Kjellander <[email protected]>
Commit-Queue: Henrik Boström <[email protected]>
Cr-Commit-Position: refs/branch-heads/5615@{#1}
Cr-Branched-From: cdfeb4f-refs/heads/main@{#39376}
mininny pushed a commit that referenced this pull request Nov 17, 2023
The FrameCadenceAdapter starts a delayed task to request a
new refresh frame on receiving frame drop. However, the
resulting RepeatingTaskHandle was not Stop()ed on destruction,
leading to UAF.

(cherry picked from commit fb98b01)

Fixed: chromium:1478944
Change-Id: Iba441420953e989cfc7fcfd2f358b5b30f375786
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/320200
Reviewed-by: Ilya Nikolaevskiy <[email protected]>
Commit-Queue: Ilya Nikolaevskiy <[email protected]>
Cr-Original-Commit-Position: refs/heads/main@{#40747}
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/320420
Reviewed-by: Henrik Andreassson <[email protected]>
Cr-Commit-Position: refs/branch-heads/5993@{#1}
Cr-Branched-From: 5afcec0-refs/heads/main@{#40703}
sf-jed-kyung pushed a commit that referenced this pull request Jul 7, 2025
Gated behind the default-empty list of restricted addresses tracked by
the field trial WebRTC-NoSdpMangleUfragRestrictedAddresses.

(cherry picked from commit 84e40071f96f198867d4dfba827d23d9a15eb5a0)

Bug: chromium:415261325, b/409713509
Fixed: chromium:415267017
Change-Id: Iabb5c8b5307c66215635336bee55f7bfbd040f3b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/388340
Auto-Submit: Tom Van Goethem <[email protected]>
Reviewed-by: Harald Alvestrand <[email protected]>
Commit-Queue: Tomas Gunnarsson <[email protected]>
Reviewed-by: Tomas Gunnarsson <[email protected]>
Cr-Original-Commit-Position: refs/heads/main@{#44477}
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/389980
Commit-Queue: Harald Alvestrand <[email protected]>
Cr-Commit-Position: refs/branch-heads/7151@{#1}
Cr-Branched-From: dc428bd-refs/heads/main@{#44472}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants