mirror of https://bitbucket.org/ausocean/av.git
rtmp: make C_EncodeInt32LE take a []byte dst
This commit is contained in:
parent
4f2beed32f
commit
a2620e003b
14
rtmp/rtmp.go
14
rtmp/rtmp.go
|
@ -47,6 +47,7 @@ import "C"
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes"
|
"bytes"
|
||||||
|
"encoding/binary"
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"log"
|
"log"
|
||||||
|
@ -1242,14 +1243,8 @@ func C_DecodeInt32LE(data []byte) int32 {
|
||||||
|
|
||||||
// int EncodeInt32LE(char* output, int nVal);
|
// int EncodeInt32LE(char* output, int nVal);
|
||||||
// rtmp.c +3537
|
// rtmp.c +3537
|
||||||
func C_EncodeInt32LE(output *byte, nVal int32) int32 {
|
func C_EncodeInt32LE(dst []byte, v int32) int32 {
|
||||||
*output = byte(nVal)
|
binary.LittleEndian.PutUint32(dst, uint32(v))
|
||||||
nVal >>= 8
|
|
||||||
(*[_Gi]byte)(unsafe.Pointer(output))[1] = byte(nVal)
|
|
||||||
nVal >>= 8
|
|
||||||
(*[_Gi]byte)(unsafe.Pointer(output))[2] = byte(nVal)
|
|
||||||
nVal >>= 8
|
|
||||||
(*[_Gi]byte)(unsafe.Pointer(output))[3] = byte(nVal)
|
|
||||||
return 4
|
return 4
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1613,8 +1608,7 @@ func C_RTMP_SendPacket(r *C_RTMP, packet *C_RTMPPacket, queue int) (ok bool) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if nSize > 8 {
|
if nSize > 8 {
|
||||||
// TODO: port this
|
hptr = incBytePtr(hptr, int(C_EncodeInt32LE((*[_Gi]byte)(hptr)[:4], packet.m_nInfoField2)))
|
||||||
hptr = incBytePtr(hptr, int(C_EncodeInt32LE((*byte)(hptr), packet.m_nInfoField2)))
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if t >= 0xffffff {
|
if t >= 0xffffff {
|
||||||
|
|
Loading…
Reference in New Issue