Need developer for Swift project using WebRTC audio streams with AVAudioEngine
$3000-5000 USD
Lukket
Slået op cirka 3 år siden
$3000-5000 USD
Betales ved levering
Seeking developer/consultant for work on a Swift project using WebRTC audio streams with AVAudioEngine. Please note this is not a typical WebRTC videoconferencing project, and not a conventional full stack app development situation.
For our native Swift project we're currently working with conventional WebRTC servers and the standard WebRTC framework on iOS, but ours is not a conventional iOS/WebRTC application. We need to be able to readily exchange live audio streams with a "room" on a WebRTC server, and then actually process the incoming audio tracks individually within Apple's AVAudioEngine on the client. We're looking for a developer intimately familiar with these technologies who can help build this part of our solution.
Deliverable: Code to more easily bridge WebRTC audio streams with Apple's AVAudioEngine, and manage WebRTC server interactions from within an iOS client.
Candidates must have very significant experience with WebRTC, Swift, and AVAudioEngine. Experience with apps that interact with open source WebRTC servers such as Jitsi and Janus is also very important. We'll be especially interested in people good at finding creative solutions to technical problems.
DELIVERABLE SPECIFICATION!
We're adding a deliverable definition to this job request. We'll very likely end up doing this as a fixed bid so please quote a total based on the following. Good results are likely to lead to additional work.
We're asking a developer to deliver an app of limited scope built using the following technologies...
• Swift 5
• Apple's UIKit, AVFoundation, and AVAudioEngine frameworks
• Google's standard WebRTC framework for iOS
• Jitsi WebRTC Server (unmodified, already operational)
Design goals
• A simple project with the minimum features and interface necessary to achieve the required functionality
• A project with minimal dependencies. A streaming library may be needed but please ask before incorporating anything other than the aforementioned frameworks.
• The app should be written using thoughtfully structured, easily readable code, possibly conforming to a standard style guide such as Google's [login to view URL]
• The app should be robust and reliable with consistent repeatable functionality
Required functionality. In the app...
• a button connects and disconnects with a pre-established "room" on a Jitsi WebRTC server
live audio is sent from the AVAudioInputNode receiving the device's microphone input to the connected WebRTC server room
• multiple live audio streams/tracks from other devices (at least 3) are received from the WebRTC server room
• the live audio from each incoming audio track appears at the output of its own AVAudioNode
• all the AVAudioNodes passing the incoming live audio are mixed and output through the AVAudioOutputNode on its ways to the device's speaker
• for each incoming live audio stream, display on the screen the WebRTC stream's embedded latency data updated as it changes (do not try to derive or compute latency in some other way)
• there's a way to direct the WebRTC server to stop and resume the sending of each live audio stream separately
Ideas for coding
(feel free to achieve the required functionality some other way)
• use a structure or class for the room on the WebRTC server with a connectedStatus property and functions for connect, disconnect
• use a class inheriting from AVAudioNode for the incoming audio streams with properties for a UUID, latency amount, possibly a name associated with the source, and functions to stop and resume the stream from the WebRTC server
Hello,
As per your project requirements, you want to develop Swift project using WebRTC audio streams with AVAudioEngine
I have some experienced iOS swift developers who has deep knowledge about mobile app development. IONIC /Async Redux / Firebase are all familiar for me . Ionic, Xamarin for Hybrid and Objective C, Swift, Java for Native are all my graduated programming language.
Inbox me so I can share some of my past work -
Kindly message me so that we can discuss the details of the project and provide you exact quote with timeline.
Regards