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

Realtime Audio Streaming #45

Merged
merged 72 commits into from
May 23, 2023
Merged

Realtime Audio Streaming #45

merged 72 commits into from
May 23, 2023

Conversation

shushantsharan
Copy link
Collaborator

@shushantsharan shushantsharan commented Mar 1, 2021

@shushantsharan shushantsharan requested a review from kingster March 1, 2021 14:42
Copy link
Member

@kingster kingster left a comment

Choose a reason for hiding this comment

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

Few comments

  • Please fix code indentation
  • Remove non required code flows that do nothing
  • Refactor to make this more like a Plugin that can be optionally loaded. No core features should be affected if the plugin is not loaded.
  • Other comments are inline.
  • Also share sample responses of the API's

orkaudio/audiocaptureplugins/voip/VoIpSession.cpp Outdated Show resolved Hide resolved
orkaudio/filters/LiveStream/LiveStream.cpp Outdated Show resolved Hide resolved
orkaudio/filters/LiveStream/LiveStream.cpp Outdated Show resolved Hide resolved
orkaudio/audiocaptureplugins/voip/VoIpSession.h Outdated Show resolved Hide resolved
orkaudio/filters/LiveStream/StreamMsg.h Outdated Show resolved Hide resolved
orkaudio/filters/LiveStream/LiveStream.cpp Outdated Show resolved Hide resolved
orkaudio/audiocaptureplugins/voip/VoIpSession.cpp Outdated Show resolved Hide resolved
orkaudio/filters/LiveStream/LiveStream.h Outdated Show resolved Hide resolved
orkaudio/audiocaptureplugins/voip/VoIp.cpp Outdated Show resolved Hide resolved
orkaudio/audiocaptureplugins/voip/VoIp.cpp Outdated Show resolved Hide resolved
@kingster kingster added the enhancement New feature or request label Mar 29, 2021
Copy link
Member

@kingster kingster left a comment

Choose a reason for hiding this comment

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

Looks much better now :)

Please look at the comments.

orkaudio/audiocaptureplugins/voip/VoIpSession.cpp Outdated Show resolved Hide resolved
orkaudio/filters/LiveStream/LiveStreamFilter.cpp Outdated Show resolved Hide resolved
orkaudio/filters/LiveStream/LiveStreamServerProxy.cpp Outdated Show resolved Hide resolved
orkaudio/Makefile.am Outdated Show resolved Hide resolved
orkaudio/filters/LiveStream/LiveStreamFilter.cpp Outdated Show resolved Hide resolved
orkaudio/filters/LiveStream/LiveStreamFilter.cpp Outdated Show resolved Hide resolved
orkaudio/filters/LiveStream/LiveStreamFilter.cpp Outdated Show resolved Hide resolved
orkaudio/filters/LiveStream/LiveStreamFilter.cpp Outdated Show resolved Hide resolved
orkaudio/filters/LiveStream/LiveStreamSession.cpp Outdated Show resolved Hide resolved
orkaudio/filters/LiveStream/LiveStreamSession.cpp Outdated Show resolved Hide resolved
orkaudio/filters/LiveStream/LiveStreamSession.cpp Outdated Show resolved Hide resolved
orkaudio/filters/LiveStream/LiveStreamSession.cpp Outdated Show resolved Hide resolved
orkaudio/filters/LiveStream/LiveStreamSession.cpp Outdated Show resolved Hide resolved
orkaudio/filters/LiveStream/LiveStreamFilter.h Outdated Show resolved Hide resolved
@shushantsharan
Copy link
Collaborator Author

shushantsharan commented Apr 19, 2021

@kingster Latest Structure:
Files added :

  • srs_librtmp.cpp, srs_librtmp.h --> RTMP client Library
  • LiveStreamFilter.cpp, LiveStreamFilter.h --> Rtp packets flow through this filter and are ingested to rtmp server from here ondemand
  • LiveStreamSession.cpp, LiveStreamSession.h --> finds session for a nativeCallId and pushed start/stop event to the session
  • LiveStreamServer.cpp, LiveStreamServer.h --> HTTP server
  • json.h --> support for json

POP based refactoring key updates :

  • All code changes added to orkaudio.cpp are removed now.
  • LiveStreamServer is started when OrkInitialize() is invoked for LiveStreamFilter . This helps in eliminating almost all the code changes from the rest of the project

orkaudio/OrkAudio.cpp Outdated Show resolved Hide resolved
@kingster kingster changed the title On demand Streaming Realtime Audio Streaming May 28, 2021
kingster
kingster previously approved these changes Jun 13, 2021
@kingster kingster dismissed their stale review June 13, 2021 18:08

Still pending improve channel zipping logic

@kingster kingster changed the title Realtime Audio Streaming Realtime Audio Streaming [WIP] Jun 13, 2021
@vcidst
Copy link

vcidst commented Apr 22, 2022

Hey, this seems interesting. Did you folks make any headway into this? I've been looking for ways to connect SIP calls to Dialogflow framework.

@kingster kingster changed the title Realtime Audio Streaming [WIP] Realtime Audio Streaming Apr 22, 2022
@kingster
Copy link
Member

kingster commented Apr 22, 2022

Hi @vcidst

These changes are stable right now, and we have been using this feature in our production for quite some time, with the only caveat being that only G711 (PCMA/PCMU) is supported.

You can try out with the builds from this pr, and the wiki for setup instructions. Please open a fresh issue in case you face any problems while running the builds.

@kingster kingster merged commit 6bae9a8 into master May 23, 2023
@kingster kingster deleted the onDemand branch May 23, 2023 12:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants