Skip to content
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

merge changes #6

Open
wants to merge 331 commits into
base: newnet20support
Choose a base branch
from
Open

Conversation

Terricide
Copy link
Owner

No description provided.

henlil and others added 30 commits December 31, 2022 19:12
…using reregistration synchronisation problems. Fix issue where uninitialized contactURI (0.0.0.0:0) was used to compare against the contact uri of the response. Instead use the Request.Header.Contact.ContactURI to compare with. (#878)

Co-authored-by: Henrik Liljedahl <[email protected]>
* Remove state check

* Revert

* Remove only the condition
…#897)

Bumps [System.Drawing.Common](https://github.com/dotnet/runtime) from 5.0.2 to 5.0.3.
- [Release notes](https://github.com/dotnet/runtime/releases)
- [Commits](dotnet/runtime@v5.0.2...v5.0.3)

---
updated-dependencies:
- dependency-name: System.Drawing.Common
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
GetMediaStream(uint) works with multiple streams
* Add workaround for the following issue: #889

* Fix SIP/TLS RINGING not sent after TRYING (#889)
* implement rfc4960 7.2.4

implement fast recovery, resend timing

* cleanup update tests, fix first data chunk drop.
* Fix dead code in SendRequestAsync and SendResponseAsync

* Upgrade DnsClient from 1.6.1 to 1.7.0

* Fix SIPEndPoint.Equals Convert Exception
* implement rfc4960 7.2.4

implement fast recovery, resend timing

* cleanup update tests, fix first data chunk drop.

* fix test
* Allow custom SIPTransport receive message queue length

* Allow unlimited number of SIP in message enqueue messages

* Fix the problem of incorrectly passing createControlSocket to requireEvenPort

* Enhance the parsing robustness of RTCPSdesReport

* Exposes RTCPSession.GetRtcpReport to support RTCP handling in custom scenarios

* Refactor the parsing logic in RTCPCompoundPacket
so that it can work under the tcp protocol

* Added requireEvenPort and useDualMode parameters
to the CreateRtpSocket function

* Improve the parsing logic of RTPPacket and RTCPoundPacket

* Allow update of SSRC field

## Motivation

When we negotiate SDP with a third party, the other party may not use the SSRC we carry when RTP streaming, so when we receive the SDP sent by the other party, we need to parse its real SSRC and update our local data to ensure consistency

* RTSP allows URL to be null, and fixes the bug that UnknownHeaders is not considered in ToString.
* CRLF should not be added when RTSPRequest.Body is null

* Expose the NonceCount field

* Enhanced RTPPacket parsing

* Make StartPort and EndPort public on PortRange.

Motivation:
These values need to be logged in the debug log.

* Improve CreateRtpSocket exception message
* Reuse SRTP negotiation on ReINVITE (hold/retrieve)

* Reuse SRTP negotiation on inbound ReINVITE

* fix reuse of SDP crypto negotiation on inbound Re-INVCITE

* cosmetics
* Replace null coalescing operator with simple if

* Fix test for C# 7.3(net461)
…estamp when ReceptionReportSample packet is being parsed as Big Endian.
Fixing DelaySinceLastSenderReport being overriden
…as hardcoded.

Not sure that all ChannelType are really supported
ispysoftware and others added 30 commits February 10, 2025 20:36
* fix stream retrieval bug
RTC updates

* add translations for tray app and installer

* fix for ptz serialization
use wyze camera name from url

* fix bug in g722 codec

* Only get stream format once
Add timeout to ice gathering
Add prefer H264 flag for compatible formats

* revert

* Optimise SendVideo and SendAudio (only get SendingFormat once)
Add sanity check for ICE Gathering timeout

* Optimise SendVideo and SendAudio (only get SendingFormat once)
Add sanity check for ICE Gathering timeout
Fix bug in g722 codec

* remove turn folder

* Remove turn folder

* Move gather timeout to config

* Fix rounding bug in SendAudioFrame
Fix bug where duplicate durations were being added to local track timestamp in SendAudioFrame
Ignore H264 formats that use unsupported packetization modes
Clean up logic in AreMatch

* remove comment marker

* Check for null

* Fix bug with HasVideo and HasAudio

* Fix locking issue

* fix lock

* Fix stuttering on connect
* fix stream retrieval bug
RTC updates

* add translations for tray app and installer

* fix for ptz serialization
use wyze camera name from url

* fix bug in g722 codec

* Only get stream format once
Add timeout to ice gathering
Add prefer H264 flag for compatible formats

* revert

* Optimise SendVideo and SendAudio (only get SendingFormat once)
Add sanity check for ICE Gathering timeout

* Optimise SendVideo and SendAudio (only get SendingFormat once)
Add sanity check for ICE Gathering timeout
Fix bug in g722 codec

* remove turn folder

* Remove turn folder

* Move gather timeout to config

* Fix rounding bug in SendAudioFrame
Fix bug where duplicate durations were being added to local track timestamp in SendAudioFrame
Ignore H264 formats that use unsupported packetization modes
Clean up logic in AreMatch

* remove comment marker

* Check for null

* Fix bug with HasVideo and HasAudio

* Fix locking issue

* fix lock

* Fix stuttering on connect

* Fix DtlsSrtpTransport bug
)

* To parse enums, use TryParse() instead of Parse() in a try block.

* Fix indentation.
* Use a more idiomatic approach to convert a DateTime to Unix time.

* Rename the function GetEpoch() to ToUnixTime(), as is this function doesn't
return the epoch, but the number of seconds since the epoch.
Also add a unit test to make sure this implementation is not subject to the year
2038 problem.
…tion() (#1324)

when parameter "find" is an empty string.

If we don't check for the length of parameter "find", then the first indexing
of "findArray" raises an IndexOutOfRangeException.
* fix stream retrieval bug
RTC updates

* add translations for tray app and installer

* fix for ptz serialization
use wyze camera name from url

* fix bug in g722 codec

* Only get stream format once
Add timeout to ice gathering
Add prefer H264 flag for compatible formats

* revert

* Optimise SendVideo and SendAudio (only get SendingFormat once)
Add sanity check for ICE Gathering timeout

* Optimise SendVideo and SendAudio (only get SendingFormat once)
Add sanity check for ICE Gathering timeout
Fix bug in g722 codec

* remove turn folder

* Remove turn folder

* Move gather timeout to config

* Fix rounding bug in SendAudioFrame
Fix bug where duplicate durations were being added to local track timestamp in SendAudioFrame
Ignore H264 formats that use unsupported packetization modes
Clean up logic in AreMatch

* Remove comment marker

* remove comment marker

* Check for null

* Fix bug with HasVideo and HasAudio

* Fix audio parsing with multiple ports

* Add unit test
… bug fixes (#1331)

* fix stream retrieval bug
RTC updates

* add translations for tray app and installer

* fix for ptz serialization
use wyze camera name from url

* fix bug in g722 codec

* Only get stream format once
Add timeout to ice gathering
Add prefer H264 flag for compatible formats

* revert

* Optimise SendVideo and SendAudio (only get SendingFormat once)
Add sanity check for ICE Gathering timeout

* Optimise SendVideo and SendAudio (only get SendingFormat once)
Add sanity check for ICE Gathering timeout
Fix bug in g722 codec

* remove turn folder

* Remove turn folder

* Move gather timeout to config

* Fix rounding bug in SendAudioFrame
Fix bug where duplicate durations were being added to local track timestamp in SendAudioFrame
Ignore H264 formats that use unsupported packetization modes
Clean up logic in AreMatch

* remove comment marker

* Check for null

* Fix bug with HasVideo and HasAudio

* Fix locking issue

* fix lock

* Fix stuttering on connect

* Fix DtlsSrtpTransport bug

* Fix issues with buffer over-runs

* Add TWCC header extension support

* Add support for TWCC
Fix SDP parsing of audio m fields with ports
Return null if stream not matched (was causing issues with RTP processing)
Use PrimaryStream to unprotect incoming RTP packets
Fix logic bug in SendRtpRaw
Prevent some buffer over-reads

var videoExtensions = new Dictionary<int, RTPHeaderExtension>();
videoExtensions.Add(extensionId, RTPHeaderExtension.GetRTPHeaderExtension(extensionId++, TransportWideCCExtension.RTP_HEADER_EXTENSION_URI, SDPMediaTypesEnum.video));

MediaStreamTrack videoTrack = new MediaStreamTrack(SDPMediaTypesEnum.video, false, formats.Select(x => new SDPAudioVideoMediaFormat(x)).ToList(), MediaStreamStatusEnum.SendOnly, null,  videoExtensions );

in
OnReceiveReport access rr.TWCCFeedback

* Use feedback type parser

* Add notes

* Fix limit check

* Fix issues with parsing TWCC packet parsing

* ignore invalid chunkType

* remove console.writeline

* Update src/net/RTCP/RTCPCompoundPacket.cs

Co-authored-by: Paulo Morgado <[email protected]>

* Update src/net/RTCP/RTCPCompoundPacket.cs

Co-authored-by: Paulo Morgado <[email protected]>

* Update for code review

* remove announcement portcount  (move to new PR)

* Add SRTP fallback

* bug fix

---------

Co-authored-by: Paulo Morgado <[email protected]>
* Added MJPEGDepacketiser and included JPEG in receive packets

* Removed unused variables from MJPEGDepacketiser. Added MJPEGPacketiser and updated VideoStream to use it when MJPEG is selected.
Missing option for MJPEG protocol in SPDAudioVideoMediaFormat

* Added MJPEG as accepted format.
Fixed minor errors in MJPEGDepacketiser

* Adding H265Depaktizer

* Modification to examples, should be rolled back

* Packetiser for H265 added. Added H265 to supported formats.

* Update src/net/RTP/Packetisation/H265Packetiser.cs

Co-authored-by: Henrik Hein <[email protected]>

* Fragmented unit working in H265

* Cleanup of H265Depacketizer and rollback/upgrade of samples

* Added aggregation of nal units in H.265

* Update examples/WebRTCExamples/FfmpegToWebRTC/Program.cs

* Removed unused usings and added block headers to added classes

---------

Co-authored-by: Henrik Hein <[email protected]>
* fix stream retrieval bug
RTC updates

* add translations for tray app and installer

* fix for ptz serialization
use wyze camera name from url

* fix bug in g722 codec

* Only get stream format once
Add timeout to ice gathering
Add prefer H264 flag for compatible formats

* revert

* Optimise SendVideo and SendAudio (only get SendingFormat once)
Add sanity check for ICE Gathering timeout

* Optimise SendVideo and SendAudio (only get SendingFormat once)
Add sanity check for ICE Gathering timeout
Fix bug in g722 codec

* remove turn folder

* Remove turn folder

* Move gather timeout to config

* Fix rounding bug in SendAudioFrame
Fix bug where duplicate durations were being added to local track timestamp in SendAudioFrame
Ignore H264 formats that use unsupported packetization modes
Clean up logic in AreMatch

* remove comment marker

* Check for null

* Fix bug with HasVideo and HasAudio

* Fix locking issue

* fix lock

* Fix stuttering on connect

* Fix DtlsSrtpTransport bug

* Fix issues with buffer over-runs

* Add TWCC header extension support

* Add support for TWCC
Fix SDP parsing of audio m fields with ports
Return null if stream not matched (was causing issues with RTP processing)
Use PrimaryStream to unprotect incoming RTP packets
Fix logic bug in SendRtpRaw
Prevent some buffer over-reads

var videoExtensions = new Dictionary<int, RTPHeaderExtension>();
videoExtensions.Add(extensionId, RTPHeaderExtension.GetRTPHeaderExtension(extensionId++, TransportWideCCExtension.RTP_HEADER_EXTENSION_URI, SDPMediaTypesEnum.video));

MediaStreamTrack videoTrack = new MediaStreamTrack(SDPMediaTypesEnum.video, false, formats.Select(x => new SDPAudioVideoMediaFormat(x)).ToList(), MediaStreamStatusEnum.SendOnly, null,  videoExtensions );

in
OnReceiveReport access rr.TWCCFeedback

* Use feedback type parser

* Add notes

* Fix limit check

* Fix issues with parsing TWCC packet parsing

* ignore invalid chunkType

* remove console.writeline

* Update src/net/RTCP/RTCPCompoundPacket.cs

Co-authored-by: Paulo Morgado <[email protected]>

* Update src/net/RTCP/RTCPCompoundPacket.cs

Co-authored-by: Paulo Morgado <[email protected]>

* Update for code review

* remove announcement portcount  (move to new PR)

* Add SRTP fallback

* bug fix

* add controller class

* add comments

* move file

---------

Co-authored-by: Paulo Morgado <[email protected]>
* Added readme.

* wip.

* Added asp.net web app to lightning get started example.

* wip.

* VideoBitmapSource working.

* Added qr code generation.

* Small refactor.

* Pay controller wired up.

* wip: add lightning services.

* Lnd invoice listener and generator wired up.

* Fixed mutliple qr code generation.

* Refactor to deal with multi-threaded bitmap access problems.

* Lightning payment working to swtich bitmap source.

* Improving the payment mechanism.

* Lightning payments wired up.

* Updated nuget packages.

* wip: adding state machine.

* wip: good progress on statemachine.

* Additional refactoring.

* Refactor and added invoice expiry timer.

* Refactor and added invoice expiry timer.

* Added QR code caching.

* Added readme.
…elopment. (#1356)

* temp rtt commit.

* Remove the hacky logic from GetMediaStream(). (#1314)
Fix GetRTPChannel exception. Implement adding media (video) stream to an existing audio call ,and removing media (video) stream from an existing video call. ( #1307)

* Real-time-text implementation (text-stream).

* Implement adding media (text) stream to an existing audio call ,and removing media (text) stream from an existing RTT call. ( #1307)

* Summary, comment fixes.
Update Abstractions NuGet to latest version.

* Final merge duplication fixes.

* Implement requested logging changes.
…dy. (#1359)

* Added WebRTC demo that will use the VP8.Net encoder if/when it is ready.

* Remvoed some unused options.
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.