From 8b0a2ce8b4689e18458fb04793eff91e44e91ce9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jeremy=20Lain=C3=A9?= Date: Wed, 6 Apr 2022 08:58:21 +0200 Subject: [PATCH] [h264] do not use deprecated Packet.to_bytes method --- src/aiortc/codecs/h264.py | 2 +- stubs/av/__init__.pyi | 2 +- tests/test_h264.py | 15 +++++---------- 3 files changed, 7 insertions(+), 12 deletions(-) diff --git a/src/aiortc/codecs/h264.py b/src/aiortc/codecs/h264.py index 86fb82957..0060ca384 100644 --- a/src/aiortc/codecs/h264.py +++ b/src/aiortc/codecs/h264.py @@ -295,7 +295,7 @@ def _encode_frame( data_to_send = b"" for package in self.codec.encode(frame): - package_bytes = package.to_bytes() + package_bytes = bytes(package) if self.codec_buffering: # delay sending to ensure we accumulate all packages # for a given PTS diff --git a/stubs/av/__init__.pyi b/stubs/av/__init__.pyi index 6bd543c5f..074a0e6c9 100644 --- a/stubs/av/__init__.pyi +++ b/stubs/av/__init__.pyi @@ -23,7 +23,7 @@ class Packet: pts: int time_base: Fraction def __init__(self, data: bytes) -> None: ... - def to_bytes(self) -> bytes: ... + def __bytes__(self) -> bytes: ... class AudioFormat: @property diff --git a/tests/test_h264.py b/tests/test_h264.py index 7d39b79d5..3b9091b03 100644 --- a/tests/test_h264.py +++ b/tests/test_h264.py @@ -3,6 +3,8 @@ from contextlib import redirect_stderr from unittest import TestCase +from av import Packet + from aiortc.codecs import get_decoder, get_encoder, h264 from aiortc.codecs.h264 import H264Decoder, H264Encoder, H264PayloadDescriptor from aiortc.jitterbuffer import JitterFrame @@ -16,22 +18,15 @@ ) -class DummyPacket: - def __init__(self, dts, pts): - self.dts = dts - self.pts = pts - - def to_bytes(self): - return b"" - - class FragmentedCodecContext: def __init__(self, orig): self.__orig = orig def encode(self, frame): packages = self.__orig.encode(frame) - packages.append(DummyPacket(packages[0].dts, packages[0].pts)) + dummy = Packet() + dummy.pts = packages[0].pts + packages.append(dummy) return packages def __getattr__(self, name):