mirror of https://bitbucket.org/ausocean/av.git
Ported AMF_DecodeInt32 to C_AMF_DecodeInt32 - tested and working
This commit is contained in:
parent
1fcb91dcef
commit
74735feb63
|
@ -125,14 +125,14 @@ static int SendUsherToken(RTMP *r, AVal *usherToken);
|
||||||
static int SendBGHasStream(RTMP *r, double dId, AVal *playpath);
|
static int SendBGHasStream(RTMP *r, double dId, AVal *playpath);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static int HandleInvoke(RTMP *r, const char *body, unsigned int nBodySize);
|
int HandleInvoke(RTMP *r, const char *body, unsigned int nBodySize);
|
||||||
static int HandleMetadata(RTMP *r, char *body, unsigned int len);
|
int HandleMetadata(RTMP *r, char *body, unsigned int len);
|
||||||
static void HandleChangeChunkSize(RTMP *r, const RTMPPacket *packet);
|
void HandleChangeChunkSize(RTMP *r, const RTMPPacket *packet);
|
||||||
static void HandleAudio(RTMP *r, const RTMPPacket *packet);
|
void HandleAudio(RTMP *r, const RTMPPacket *packet);
|
||||||
static void HandleVideo(RTMP *r, const RTMPPacket *packet);
|
void HandleVideo(RTMP *r, const RTMPPacket *packet);
|
||||||
static void HandleCtrl(RTMP *r, const RTMPPacket *packet);
|
void HandleCtrl(RTMP *r, const RTMPPacket *packet);
|
||||||
static void HandleServerBW(RTMP *r, const RTMPPacket *packet);
|
void HandleServerBW(RTMP *r, const RTMPPacket *packet);
|
||||||
static void HandleClientBW(RTMP *r, const RTMPPacket *packet);
|
void HandleClientBW(RTMP *r, const RTMPPacket *packet);
|
||||||
|
|
||||||
int ReadN(RTMP *r, char *buffer, int n);
|
int ReadN(RTMP *r, char *buffer, int n);
|
||||||
int WriteN(RTMP *r, const char *buffer, int n);
|
int WriteN(RTMP *r, const char *buffer, int n);
|
||||||
|
@ -2908,7 +2908,7 @@ static const AVal av_NetConnection_Connect_Rejected =
|
||||||
AVC("NetConnection.Connect.Rejected");
|
AVC("NetConnection.Connect.Rejected");
|
||||||
|
|
||||||
/* Returns 0 for OK/Failed/error, 1 for 'Stop or Complete' */
|
/* Returns 0 for OK/Failed/error, 1 for 'Stop or Complete' */
|
||||||
static int
|
int
|
||||||
HandleInvoke(RTMP *r, const char *body, unsigned int nBodySize)
|
HandleInvoke(RTMP *r, const char *body, unsigned int nBodySize)
|
||||||
{
|
{
|
||||||
AMFObject obj;
|
AMFObject obj;
|
||||||
|
@ -3299,7 +3299,7 @@ SAVC(duration);
|
||||||
SAVC(video);
|
SAVC(video);
|
||||||
SAVC(audio);
|
SAVC(audio);
|
||||||
|
|
||||||
static int
|
int
|
||||||
HandleMetadata(RTMP *r, char *body, unsigned int len)
|
HandleMetadata(RTMP *r, char *body, unsigned int len)
|
||||||
{
|
{
|
||||||
/* allright we get some info here, so parse it and print it */
|
/* allright we get some info here, so parse it and print it */
|
||||||
|
@ -3341,7 +3341,7 @@ HandleMetadata(RTMP *r, char *body, unsigned int len)
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
void
|
||||||
HandleChangeChunkSize(RTMP *r, const RTMPPacket *packet)
|
HandleChangeChunkSize(RTMP *r, const RTMPPacket *packet)
|
||||||
{
|
{
|
||||||
if (packet->m_nBodySize >= 4)
|
if (packet->m_nBodySize >= 4)
|
||||||
|
@ -3352,17 +3352,17 @@ HandleChangeChunkSize(RTMP *r, const RTMPPacket *packet)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
void
|
||||||
HandleAudio(RTMP *r, const RTMPPacket *packet)
|
HandleAudio(RTMP *r, const RTMPPacket *packet)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
void
|
||||||
HandleVideo(RTMP *r, const RTMPPacket *packet)
|
HandleVideo(RTMP *r, const RTMPPacket *packet)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
void
|
||||||
HandleCtrl(RTMP *r, const RTMPPacket *packet)
|
HandleCtrl(RTMP *r, const RTMPPacket *packet)
|
||||||
{
|
{
|
||||||
short nType = -1;
|
short nType = -1;
|
||||||
|
@ -3504,14 +3504,14 @@ HandleCtrl(RTMP *r, const RTMPPacket *packet)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
void
|
||||||
HandleServerBW(RTMP *r, const RTMPPacket *packet)
|
HandleServerBW(RTMP *r, const RTMPPacket *packet)
|
||||||
{
|
{
|
||||||
r->m_nServerBW = AMF_DecodeInt32(packet->m_body);
|
r->m_nServerBW = AMF_DecodeInt32(packet->m_body);
|
||||||
RTMP_Log(RTMP_LOGDEBUG, "%s: server BW = %d", __FUNCTION__, r->m_nServerBW);
|
RTMP_Log(RTMP_LOGDEBUG, "%s: server BW = %d", __FUNCTION__, r->m_nServerBW);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
void
|
||||||
HandleClientBW(RTMP *r, const RTMPPacket *packet)
|
HandleClientBW(RTMP *r, const RTMPPacket *packet)
|
||||||
{
|
{
|
||||||
r->m_nClientBW = AMF_DecodeInt32(packet->m_body);
|
r->m_nClientBW = AMF_DecodeInt32(packet->m_body);
|
||||||
|
|
|
@ -309,6 +309,16 @@ extern "C"
|
||||||
|
|
||||||
int ReadN(RTMP *r, char *buffer, int n);
|
int ReadN(RTMP *r, char *buffer, int n);
|
||||||
|
|
||||||
|
int HandleInvoke(RTMP *r, const char *body, unsigned int nBodySize);
|
||||||
|
int HandleMetadata(RTMP *r, char *body, unsigned int len);
|
||||||
|
void HandleChangeChunkSize(RTMP *r, const RTMPPacket *packet);
|
||||||
|
void HandleAudio(RTMP *r, const RTMPPacket *packet);
|
||||||
|
void HandleVideo(RTMP *r, const RTMPPacket *packet);
|
||||||
|
void HandleCtrl(RTMP *r, const RTMPPacket *packet);
|
||||||
|
void HandleServerBW(RTMP *r, const RTMPPacket *packet);
|
||||||
|
void HandleClientBW(RTMP *r, const RTMPPacket *packet);
|
||||||
|
|
||||||
|
|
||||||
int RTMP_SetOpt(RTMP *r, const AVal *opt, AVal *arg);
|
int RTMP_SetOpt(RTMP *r, const AVal *opt, AVal *arg);
|
||||||
int RTMP_SetupURL(RTMP *r, char *url);
|
int RTMP_SetupURL(RTMP *r, char *url);
|
||||||
void RTMP_SetupStream(RTMP *r, int protocol,
|
void RTMP_SetupStream(RTMP *r, int protocol,
|
||||||
|
|
|
@ -40,6 +40,12 @@ const (
|
||||||
dec = 3
|
dec = 3
|
||||||
)
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
byteSize = 1
|
||||||
|
int32Size = 4
|
||||||
|
int64Size = 8
|
||||||
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
byteArr = [arrSize]byte{0x01, 0x02, 0x03, 0x04, 0x05, 0x06}
|
byteArr = [arrSize]byte{0x01, 0x02, 0x03, 0x04, 0x05, 0x06}
|
||||||
int32Arr = [arrSize]int32{1, 2, 3, 4, 5, 6}
|
int32Arr = [arrSize]int32{1, 2, 3, 4, 5, 6}
|
||||||
|
@ -70,7 +76,7 @@ func TestMemset(t *testing.T) {
|
||||||
setNum := 5
|
setNum := 5
|
||||||
testVal := byte('A')
|
testVal := byte('A')
|
||||||
mem := allocate(uintptr(size))
|
mem := allocate(uintptr(size))
|
||||||
memset((*byte)(mem), testVal, setNum)
|
memset((*byte)(mem), int(testVal), setNum)
|
||||||
for i := 0; i < size; i++ {
|
for i := 0; i < size; i++ {
|
||||||
if i > setNum-1 {
|
if i > setNum-1 {
|
||||||
testVal = byte(0)
|
testVal = byte(0)
|
||||||
|
|
Loading…
Reference in New Issue