Я хотел бы записать аудиопоток из моего Angular Web App в мой Asp.net Core Api.
Я думаю, использование SignalR и его веб-сокетов - хороший способ сделать это.
С помощью этого машинописного кода я могу получить MediaStream:
import { HubConnection } from '@aspnet/signalr';
[...]
private stream: MediaStream;
private connection: webkitRTCPeerConnection;
@ViewChild('video') video;
[...]
navigator.mediaDevices.getUserMedia({ audio: true })
.then(stream => {
console.trace('Received local stream');
this.video.srcObject = stream;
this.stream = stream;
var _hubConnection = new HubConnection('[MY_API_URL]/webrtc');
this._hubConnection.send("SendStream", stream);
})
.catch(function (e) {
console.error('getUserMedia() error: ' + e.message);
});
И я обрабатываю поток в .NetCore API с помощью
public class MyHub: Hub{
public void SendStream(object o)
{
}
}
Но когда я бросил o в System.IO.Stream, я получил ноль.
Когда я прочитал документацию WebRTC, я увидел информацию о RTCPeerConnection. IceConnection ... Мне это нужно?
Как я могу транслировать аудио с WebClient на Asp.netCore API, используя SignalR? Документация? GitHub?
Спасибо за вашу помощь