File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -51,6 +51,8 @@ class Codec:
5151 def is_encoder (self ) -> bool : ...
5252 @property
5353 def is_decoder (self ) -> bool : ...
54+ @property
55+ def mode (self ) -> Literal ["r" , "w" ]: ...
5456 descriptor : Descriptor
5557 @property
5658 def name (self ) -> str : ...
Original file line number Diff line number Diff line change @@ -119,7 +119,7 @@ cdef class Codec:
119119 raise RuntimeError (" %s is both encoder and decoder." )
120120
121121 def __repr__ (self ):
122- mode = " w " if self .is_encoder else " r "
122+ mode = self .mode
123123 return f" <av.{self.__class__.__name__} {self.name} {mode=}>"
124124
125125 def create (self , kind = None ):
@@ -130,6 +130,10 @@ cdef class Codec:
130130 from .context import CodecContext
131131 return CodecContext.create(self )
132132
133+ @property
134+ def mode (self ):
135+ return " w" if self .is_encoder else " r"
136+
133137 @property
134138 def is_decoder (self ):
135139 return not self .is_encoder
Original file line number Diff line number Diff line change @@ -324,7 +324,7 @@ cdef class CodecContext:
324324 cdef int res
325325 with nogil:
326326 res = lib.avcodec_send_frame(self .ptr, frame.ptr if frame is not None else NULL )
327- err_check(res)
327+ err_check(res, " avcodec_send_frame() " )
328328
329329 packet = self ._recv_packet()
330330 while packet:
@@ -337,7 +337,7 @@ cdef class CodecContext:
337337 cdef int res
338338 with nogil:
339339 res = lib.avcodec_send_packet(self .ptr, packet.ptr if packet is not None else NULL )
340- err_check(res)
340+ err_check(res, " avcodec_send_packet() " )
341341
342342 out = []
343343 while True :
@@ -365,7 +365,7 @@ cdef class CodecContext:
365365
366366 if res == - EAGAIN or res == lib.AVERROR_EOF:
367367 return
368- err_check(res)
368+ err_check(res, " avcodec_receive_frame() " )
369369
370370 frame = self ._transfer_hwframe(frame)
371371
@@ -384,7 +384,7 @@ cdef class CodecContext:
384384 res = lib.avcodec_receive_packet(self .ptr, packet.ptr)
385385 if res == - EAGAIN or res == lib.AVERROR_EOF:
386386 return
387- err_check(res)
387+ err_check(res, " avcodec_receive_packet() " )
388388
389389 if not res:
390390 return packet
You can’t perform that action at this time.
0 commit comments