Adobe Cirrus error on direct connection "Property startTransmit not found on flash.net.NetStream"

Mistake:

ReferenceError: Error #1069: Property startTransmit not found on flash.net.NetStream and there is no default value.

      

I've played with penis many times and still haven't seen this error. But now I can't get him to leave.

My p2p Direct connect works great. But every time I see this error a popup appears. This excludes. I can't figure out where this is going.

Has anyone encountered this before? Any ideas where I should be looking at?

+3


source to share


5 answers


Each client object must have the following functionality.

client.stopTransmit=function($p1:*,$p2:*):void{
    trace("stopTransmit called",$p1,$p2);
}
client.startTransmit=function():void{
    trace("startTransmit called");
}

      

For example, set them in a function onPeerConnect

:

sendStream.client = new Object();
sendStreamClient.onPeerConnect = function(subscriber:NetStream): Boolean{
    var client:Object=new Object();
    client.stopTransmit=function($p1:*,$p2:*):void{
        trace("stopTransmit called",$p1,$p2);
    }
    client.startTransmit=function():void{
        trace("startTransmit called");
    }
    subscriber.client=farStreamClient;
}

      



In addition, they must be set in the sendStreamClient property client

:

sendStreamClient.client.stopTransmit=function($p1:*,$p2:*):void{
    trace("stopTransmit called",$p1,$p2);
}
sendStreamClient.client.startTransmit=function():void{
    trace("startTransmit called");
}

      

And they must be set in the recieveStreamClient property client

.

+3


source


On the server side script, you've probably (or someone else) configured your application to call a function - this time it's startTransmit- and it's not handled on the client side. Remove the code from the server or add a default or add a function to your code.

In my similar program, I had to add a function to my code (in my case it was not "startTransmit"):

if ("NetConnection.Connect.Success" == e.info.code) {
netConnection.client=new Object();
netConnection.client.startTransmit=startTransmit; //no columns!
}

      



where startTransmit

private function startTransmit():Boolean{
    return true;
}

      

+1


source


Are you sending h264 video? I think it has something to do with this ...

If you add

public function startTransmit($p1:*,$p2:*):void{

}

public function stopTransmit():void{

}

      

where you have your media server connection, it should work fine, at least for me :)

0


source


There is another network stream other than the receive method and stream. You must set the function startTransmit

and stopTransmit

in the network stream callerns , something like this:

sendStreamClient.onPeerConnect = function(callerns:NetStream): Boolean{
    var farStreamClient:Object=new Object();
    farStreamClient.stopTransmit=function($p1:*,$p2:*):void{
        trace("-------------farStream stopTransmit called!",$p1,$p2);
    }
    farStreamClient.startTransmit=function():void{
        trace("-------------farStream startTransmit called!");
    }
    callerns.client=farStreamClient;
}

      

0


source


The problem is not with AMS or Red5. Even transferring video to P2P from Android device causes the same error. The solution worked. In fact, stopTransmit () sends boolean and integer. It would be great to know what they mean. I opened a bug on adobe bugbat to document or remove. Vote: https://bugbase.adobe.com/index.cfm?event=bug&id=3844856

0


source







All Articles