M2-PT-DRP/source/packets/AudioPacket.py

30 lines
629 B
Python

import msgpack
from source.packets import base
class AudioPacket(base.BasePacket):
"""
Represent a packet of audio data
"""
def __init__(self, data: bytes, rate: int, channels: int, encoding: int):
super().__init__()
self.data = data
self.rate = rate
self.channels = channels
self.encoding = encoding
def pack(self) -> bytes:
return msgpack.packb((
self.data,
self.rate,
self.channels,
self.encoding
))
@classmethod
def unpack(cls, data: bytes):
return cls(*msgpack.unpackb(data))