diff --git a/av/_core.pyx b/av/_core.py similarity index 75% rename from av/_core.pyx rename to av/_core.py index edca772f5..2384fa457 100644 --- a/av/_core.pyx +++ b/av/_core.py @@ -1,23 +1,23 @@ -cimport libav as lib +import cython +import cython.cimports.libav as lib -# Initialise libraries. -lib.avformat_network_init() lib.avdevice_register_all() # Exports. time_base = lib.AV_TIME_BASE -cdef decode_version(v): +@cython.cfunc +def decode_version(v): if v < 0: return (-1, -1, -1) - cdef int major = (v >> 16) & 0xff - cdef int minor = (v >> 8) & 0xff - cdef int micro = (v) & 0xff - + major: cython.int = (v >> 16) & 0xFF + minor: cython.int = (v >> 8) & 0xFF + micro: cython.int = (v) & 0xFF return (major, minor, micro) + # Return an informative version string. # This usually is the actual release version number or a git commit # description. This string has no fixed format and can change any time. It @@ -28,37 +28,37 @@ "libavutil": dict( version=decode_version(lib.avutil_version()), configuration=lib.avutil_configuration(), - license=lib.avutil_license() + license=lib.avutil_license(), ), "libavcodec": dict( version=decode_version(lib.avcodec_version()), configuration=lib.avcodec_configuration(), - license=lib.avcodec_license() + license=lib.avcodec_license(), ), "libavformat": dict( version=decode_version(lib.avformat_version()), configuration=lib.avformat_configuration(), - license=lib.avformat_license() + license=lib.avformat_license(), ), "libavdevice": dict( version=decode_version(lib.avdevice_version()), configuration=lib.avdevice_configuration(), - license=lib.avdevice_license() + license=lib.avdevice_license(), ), "libavfilter": dict( version=decode_version(lib.avfilter_version()), configuration=lib.avfilter_configuration(), - license=lib.avfilter_license() + license=lib.avfilter_license(), ), "libswscale": dict( version=decode_version(lib.swscale_version()), configuration=lib.swscale_configuration(), - license=lib.swscale_license() + license=lib.swscale_license(), ), "libswresample": dict( version=decode_version(lib.swresample_version()), configuration=lib.swresample_configuration(), - license=lib.swresample_license() + license=lib.swresample_license(), ), } diff --git a/include/libavformat/avformat.pxd b/include/libavformat/avformat.pxd index 3816b46fa..3a2218f06 100644 --- a/include/libavformat/avformat.pxd +++ b/include/libavformat/avformat.pxd @@ -6,7 +6,6 @@ cdef extern from "libavformat/avformat.h" nogil: cdef int avformat_version() cdef char* avformat_configuration() cdef char* avformat_license() - cdef void avformat_network_init() cdef int64_t INT64_MIN