gleasonk / android-webrtc-api Goto Github PK
View Code? Open in Web Editor NEWPubnub Android WebRTC Signaling Library
Home Page: http://kevingleason.me/android-webrtc-api/
License: MIT License
Pubnub Android WebRTC Signaling Library
Home Page: http://kevingleason.me/android-webrtc-api/
License: MIT License
Hi,
So I imported the project and did not get any errors, but somehow I am unable to run the project the run button is greyed out. I tried to clean and rebuilt the project, thus I invalidated and restarted the project, but the button is still greyed out.
In addition I get an error if I try to add this:
compile 'me.kevingleason:pnwebrtc:1.0.6@aar'
in my dependencies. The error is following: Failed to resolve: pnwebrtc
Any idea what could cause this.
My Android Studio Version is 3.0.1
Hi,
I purchased a sirsys basic plan and I struggle to change the server credentials in this android project.
Where exactly do I need to implement the new server credentials.
First I thought that I need to change the servers listed in this class PnSignalingParams.java
public static List<PeerConnection.IceServer> defaultIceServers(){
List<PeerConnection.IceServer> iceServers = new ArrayList<PeerConnection.IceServer>(25);
// Extra Defaults - 19 STUN servers + 4 initial = 23 severs (+2 padding) = Array cap 25
iceServers.add(new PeerConnection.IceServer("stun:stun1.l.google.com:19302"));
iceServers.add(new PeerConnection.IceServer("stun:stun2.l.google.com:19302"));
....
return iceServers;
}
But if I comment out the server the application still works. I thought that the server which are used in this app are implemented there. Where exactly is the location I need to fix?
Hi` @GleasonK,
I'm new at webrtc
I've read your source code and dont understand this snippet code in class PnPeerConnectionClient:
private class CreateAnswerAction implements PnAction{
public static final String TRIGGER = "offer";
public void execute(String peerId, JSONObject payload) throws JSONException {
Log.d("CAAction","CreateAnswerAction");
PnPeer peer = peers.get(peerId);
peer.setType(PnPeer.TYPE_OFFER);
peer.setStatus(PnPeer.STATUS_CONNECTED);
SessionDescription sdp = new SessionDescription(
SessionDescription.Type.fromCanonicalForm(payload.getString("type")),
payload.getString("sdp")
);
peer.pc.setRemoteDescription(peer, sdp);
peer.pc.createAnswer(peer, signalingParams.pcConstraints);
}
}
private class SetRemoteSDPAction implements PnAction{
public static final String TRIGGER = "answer";
public void execute(String peerId, JSONObject payload) throws JSONException {
Log.d("SRSAction","SetRemoteSDPAction");
PnPeer peer = peers.get(peerId);
SessionDescription sdp = new SessionDescription(
SessionDescription.Type.fromCanonicalForm(payload.getString("type")),
payload.getString("sdp")
);
peer.pc.setRemoteDescription(peer, sdp);
}
}`
It looks useless and isnt used anywhere else. As I understand, the recipient has to create an answer and call setRemoteDescription. So could you explain it please?
Thank in advance.
I am trying to get notified when a User Y rejects the call of User X. User Y publishes the Hangup package like mentioned here but there is no documentation on how to and where should we listen for the Hangup message on the Caller's app?
Hi,
Currently I'm working in the prototype of my own app for Android. I would like
use the PubNub services to do video streaming and calls, I just started to learn
how PubNub API and their services works.
I have been checking the example about AndroidRTC , and I noticed that on every activity where PubNub Services is required, a new instance is created therefore a new login everytime.
This is correct or this object should be in a singleton class?
and How I can do logout of PubNub?
In advance, Thanks!!!!
pnRTCClient.listenOn("Username");
if i pass username as Avani then olny avani can call to other user but other user not calling me
hi @GleasonK ,
I use demo androidRTC ! When i update libjingle to 11139@aar in gradle, in my class cant import org.webrtc! Can you help me, please!?
great app but i get problem with build video call application.
onAddRemoteStream ,onRemoveRemoteStream not called, "Connecting..." still visible.
i geted source code from : https://github.com/GleasonK/AndroidRTC/tree/master/app/src/main/java/me/kevingleason/androidrtc
can you help me to resolve?
Hi @GleasonK,
Currently I'm working on a Broadcasting app. I started from this post, I am using your libraries to do the broadcaster side, but now I'm working in the viewer side, so I would like to know how I should setup the connection to use one-way or how the user would only see and listen the broadcasting without use your own camera and mic.
Thanks!! :)
hi @GleasonK ,i had error Can you help me, please!?
at com.pubnub.api.PubnubCore.subscribe(Unknown Source)
at com.pubnub.api.Pubnub.subscribe(Unknown Source)
at com.pubnub.api.PubnubCore.subscribe(Unknown Source)
at com.pubnub.api.Pubnub.subscribe(Unknown Source)
at com.example.l.videocall.PnRt.PnPeerConnectionClient.subscribe(PnPeerConnectionClient.java:106)
at com.example.l.videocall.PnRt.PnPeerConnectionClient.listenOn(PnPeerConnectionClient.java:72)
at com.example.l.videocall.PnRt.PnRTCClient.listenOn(PnRTCClient.java:123)
at com.example.l.videocall.VideoChatActivity.onCreate(VideoChatActivity.java:103)
Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.
Illegal char <:> at index 2: \C:\Users\Gaurav Pandey.gradle\caches\transforms-1\files-1.1\libjingle-9694.aar\70d03a5cecbc95a438750f465b057ccc\jars\libs\libjingle_peerconnection.jar....\tmplMrzJR.empty
Callee is not able to get caller side A/V stream. The caller's SDP has audio and video constraints
reconly:
**a=mid:audio
.
.
a=recvonly
a=mid:video
.
.
a=recvonly**
How to enable both side stream?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.