mirror of
https://github.com/jwetzell/osc-go.git
synced 2026-09-04 21:19:02 +00:00
add osc timetag
This commit is contained in:
@@ -79,6 +79,13 @@ func byteArrayToOSCBytes(bytes []byte) []byte {
|
|||||||
return oscBytes
|
return oscBytes
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func timeTagToOSCBytes(timeTag OSCTimeTag) []byte {
|
||||||
|
timeTagBytes := int32ToOSCBytes(timeTag.seconds)
|
||||||
|
timeTagBytes = append(timeTagBytes, int32ToOSCBytes(timeTag.fractionalSeconds)...)
|
||||||
|
|
||||||
|
return timeTagBytes
|
||||||
|
}
|
||||||
|
|
||||||
func argsToBuffer(args []OSCArg) []byte {
|
func argsToBuffer(args []OSCArg) []byte {
|
||||||
//TODO(jwetzell): add error handling
|
//TODO(jwetzell): add error handling
|
||||||
var argBuffers = []byte{}
|
var argBuffers = []byte{}
|
||||||
@@ -256,6 +263,23 @@ func readOSCColor(bytes []byte) (OSCColor, []byte, error) {
|
|||||||
}
|
}
|
||||||
return oscColor, bytes[4:], nil
|
return oscColor, bytes[4:], nil
|
||||||
}
|
}
|
||||||
|
func readOSCTimeTag(bytes []byte) (OSCTimeTag, []byte, error) {
|
||||||
|
seconds, bytesAfterSeconds, err := readOSCInt32(bytes)
|
||||||
|
if err != nil {
|
||||||
|
return OSCTimeTag{}, bytes, err
|
||||||
|
}
|
||||||
|
fractionalSeconds, remainingBytes, err := readOSCInt32(bytesAfterSeconds)
|
||||||
|
if err != nil {
|
||||||
|
return OSCTimeTag{}, bytes, err
|
||||||
|
}
|
||||||
|
|
||||||
|
return OSCTimeTag{
|
||||||
|
seconds: seconds,
|
||||||
|
fractionalSeconds: fractionalSeconds,
|
||||||
|
},
|
||||||
|
remainingBytes,
|
||||||
|
nil
|
||||||
|
}
|
||||||
|
|
||||||
func readOSCArg(bytes []byte, oscType string) (OSCArg, []byte, error) {
|
func readOSCArg(bytes []byte, oscType string) (OSCArg, []byte, error) {
|
||||||
var readArgError error
|
var readArgError error
|
||||||
|
|||||||
+6
-1
@@ -5,7 +5,7 @@ type OSCPacket interface {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type OSCBundle struct {
|
type OSCBundle struct {
|
||||||
TimeTag uint64
|
TimeTag OSCTimeTag
|
||||||
Contents []OSCPacket
|
Contents []OSCPacket
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -25,3 +25,8 @@ type OSCColor struct {
|
|||||||
b uint8
|
b uint8
|
||||||
a uint8
|
a uint8
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type OSCTimeTag struct {
|
||||||
|
seconds int32
|
||||||
|
fractionalSeconds int32
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user