Coder Social home page Coder Social logo

acherstyx / compressed-video-reader Goto Github PK

View Code? Open in Web Editor NEW
13.0 13.0 2.0 355 KB

A video reader for extracting motion vectors and residuals from encoded H.264 videos.

License: MIT License

CMake 3.10% C 71.94% Shell 3.53% Python 6.53% C++ 14.91%
h264 python-library

compressed-video-reader's Introduction

Hi! I'm Yaojie Shen 👋

I’m currently a Master’s student at Institute of Software, Chinese Academy of Sciences.
My recent research interest lie in the fields of:

  • Computer Vision
  • Multimodality
  • Large Language Models

Language & Tools

python logo pytorch logo git logo cmake logo ...

Knowledge Management Workflow

Obsidian, Zotero, Things, Notion, ...

Status

acherstyx's github stats 

compressed-video-reader's People

Contributors

acherstyx avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

compressed-video-reader's Issues

residual images are not residual

Thanks for putting this nice code together :) I am trying to read out motion vectors and residual images from mp4 as well.
Following your code I can get the motion vectors just fine, but the residual images end up being just the decoded images from the video. This is useful as well to me but I really would like the residual images.

Is there any trick to get those (you show them in your paper?). Do I need the ffmpeg patches to get them?

ImportError: /lib64/libc.so.6: version `GLIBC_2.28' not found

          Dear sir, I have solved the problem occured before using command 'conda install -c conda-forge ffmpeg';   But I met a new problem: when  I was running training procedure by "python3 mm_video/run_net.py --cfg configs/compressed_video/msrvtt_captioning.yaml" , I got error "ImportError: /lib64/libc.so.6: version `GLIBC_2.28' not found (required by /home/qysu/anaconda3/envs/cocap/lib/python3.9/site-packages/cv_reader/api.cpython-39-x86_64-linux-gnu.so)", what can I do to solve it? Thanks.
iShot_2024-01-28_21 17 00

Hello!
Here is a compiled wheel package: Google Drive This was built by running python3 setup.py bdist_wheel under the root folder of this project after preparing the ffmpeg. You can compile it yourself if your environment does not match mine.
To install it, run pip3 install cv_reader-1.1.0-cp39-cp39-linux_x86_64.whl.

Hello! Thanks for your reply, I have installed the package in the requriement.txt and then installed cv_reader-1.1.0-cp39-cp39-linux_x86_64.whl by pip3 install cv_reader-1.1.0-cp39-cp39-linux_x86_64.whl. Unfortunately, when I tap "cv_reader", I got the error in the picture 1 below : "ImportError: libbz2.so.1.0: cannot open shared object file: No such file or directory"; Second, when I was running code: "python3 tools/video_convert.py --codec=libx264 --keyint=60 --resize=240 -i dataset/msrvtt/videos -o dataset/msrvtt/videos_h264_keyint_60" according to the Cocap/dataset/README.md, I got the error: FileNotFoundError: [Errno 2] No such file or directory: '/usr/bin/ffmpeg', Any other problem with my environment? How to fix them? Thanks, sir. iShot_2024-01-24_17 09 45 iShot_2024-01-24_17 08 59

Originally posted by @Suqingyong in #2 (comment)

关于依赖的包的问题

您好,我想请问在之前已经安装过ffmpeg的前提下,Compressed-Video-Reader/ffmpeg/install_ffmpeg.sh中的
sudo apt -y install
libass-dev
libfreetype6-dev
libsdl2-dev
libtool
libva-dev
libvdpau-dev
libvorbis-dev
libxcb1-dev
libxcb-shm0-dev
libxcb-xfixes0-dev
texinfo
zlib1g-dev
nasm
yasm
libx264-dev
libx265-dev
libnuma-dev
libvpx-dev
libmp3lame-dev
libopus-dev
可以注释掉吗?毕竟这个命令需要root权限

Build wheels error

Could anyone help me to solve this issue? Many thanks.

Building wheels for collected packages: cv-reader
  Building wheel for cv-reader (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for cv-reader (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [277 lines of output]
      running bdist_wheel
      running build
      running build_py
      copying src/cv_reader/__init__.py -> build/lib.linux-x86_64-cpython-312/cv_reader
      copying src/cv_reader/__main__.py -> build/lib.linux-x86_64-cpython-312/cv_reader
      copying src/cv_reader/reader.py -> build/lib.linux-x86_64-cpython-312/cv_reader
      running build_ext
      building 'cv_reader.api' extension
      gcc -pthread -B /home/hanwen/miniconda3/envs/cvreader/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/hanwen/miniconda3/envs/cvreader/include -fPIC -O2 -isystem /home/hanwen/miniconda3/envs/cvreader/include -fPIC -I/home/hanwen/Compressed-Video-Reader/ffmpeg/ffmpeg_install/include -I/tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include -I/home/hanwen/miniconda3/envs/cvreader/include/python3.12 -c src/cv_reader/api.cpp -o build/temp.linux-x86_64-cpython-312/src/cv_reader/api.o -std=c++11
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1909,
                       from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
                       from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/npy_1_7_deprecated_api.h:17:2: warning: #warning "Using deprecated NumPy API, disable it with " "#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp]
         17 | #warning "Using deprecated NumPy API, disable it with " \
            |  ^~~~~~~
      src/cv_reader/api.cpp: In function ‘int decode_h264_packet(AVPacket*, AVCodecContext*, AVFrame*, int*, PyObject*, bool)’:
      src/cv_reader/api.cpp:82:31: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
         82 |                 for (i = 0; i < sd->size / sizeof(*mvs); i++) {
            |                             ~~^~~~~~~~~~~~~~~~~~~~~~~~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      src/cv_reader/api.cpp:92:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
         92 |                             *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 0)) = mvx; // L0_x
            |                                                           ^~~~~~
            |                                                           |
            |                                                           _object*
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:145:63: note: in definition of macro ‘PyArray_GETPTR3’
        145 | #define PyArray_GETPTR3(obj, i, j, k) ((void *)(PyArray_BYTES(obj) + \
            |                                                               ^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
                       from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1514:36: note:   initializing argument 1 of ‘char* PyArray_BYTES(const PyArrayObject*)’
       1514 | PyArray_BYTES(const PyArrayObject *arr)
            |               ~~~~~~~~~~~~~~~~~~~~~^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      src/cv_reader/api.cpp:92:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
         92 |                             *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 0)) = mvx; // L0_x
            |                                                           ^~~~~~
            |                                                           |
            |                                                           _object*
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:146:65: note: in definition of macro ‘PyArray_GETPTR3’
        146 |                                             (i)*PyArray_STRIDES(obj)[0] + \
            |                                                                 ^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
                       from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note:   initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
       1526 | PyArray_STRIDES(const PyArrayObject *arr)
            |                 ~~~~~~~~~~~~~~~~~~~~~^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      src/cv_reader/api.cpp:92:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
         92 |                             *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 0)) = mvx; // L0_x
            |                                                           ^~~~~~
            |                                                           |
            |                                                           _object*
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:147:65: note: in definition of macro ‘PyArray_GETPTR3’
        147 |                                             (j)*PyArray_STRIDES(obj)[1] + \
            |                                                                 ^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
                       from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note:   initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
       1526 | PyArray_STRIDES(const PyArrayObject *arr)
            |                 ~~~~~~~~~~~~~~~~~~~~~^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      src/cv_reader/api.cpp:92:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
         92 |                             *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 0)) = mvx; // L0_x
            |                                                           ^~~~~~
            |                                                           |
            |                                                           _object*
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:148:65: note: in definition of macro ‘PyArray_GETPTR3’
        148 |                                             (k)*PyArray_STRIDES(obj)[2]))
            |                                                                 ^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
                       from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note:   initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
       1526 | PyArray_STRIDES(const PyArrayObject *arr)
            |                 ~~~~~~~~~~~~~~~~~~~~~^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      src/cv_reader/api.cpp:93:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
         93 |                             *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 1)) = mvy; // L0_y
            |                                                           ^~~~~~
            |                                                           |
            |                                                           _object*
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:145:63: note: in definition of macro ‘PyArray_GETPTR3’
        145 | #define PyArray_GETPTR3(obj, i, j, k) ((void *)(PyArray_BYTES(obj) + \
            |                                                               ^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
                       from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1514:36: note:   initializing argument 1 of ‘char* PyArray_BYTES(const PyArrayObject*)’
       1514 | PyArray_BYTES(const PyArrayObject *arr)
            |               ~~~~~~~~~~~~~~~~~~~~~^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      src/cv_reader/api.cpp:93:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
         93 |                             *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 1)) = mvy; // L0_y
            |                                                           ^~~~~~
            |                                                           |
            |                                                           _object*
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:146:65: note: in definition of macro ‘PyArray_GETPTR3’
        146 |                                             (i)*PyArray_STRIDES(obj)[0] + \
            |                                                                 ^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
                       from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note:   initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
       1526 | PyArray_STRIDES(const PyArrayObject *arr)
            |                 ~~~~~~~~~~~~~~~~~~~~~^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      src/cv_reader/api.cpp:93:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
         93 |                             *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 1)) = mvy; // L0_y
            |                                                           ^~~~~~
            |                                                           |
            |                                                           _object*
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:147:65: note: in definition of macro ‘PyArray_GETPTR3’
        147 |                                             (j)*PyArray_STRIDES(obj)[1] + \
            |                                                                 ^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
                       from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note:   initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
       1526 | PyArray_STRIDES(const PyArrayObject *arr)
            |                 ~~~~~~~~~~~~~~~~~~~~~^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      src/cv_reader/api.cpp:93:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
         93 |                             *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 1)) = mvy; // L0_y
            |                                                           ^~~~~~
            |                                                           |
            |                                                           _object*
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:148:65: note: in definition of macro ‘PyArray_GETPTR3’
        148 |                                             (k)*PyArray_STRIDES(obj)[2]))
            |                                                                 ^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
                       from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note:   initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
       1526 | PyArray_STRIDES(const PyArrayObject *arr)
            |                 ~~~~~~~~~~~~~~~~~~~~~^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      src/cv_reader/api.cpp:95:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
         95 |                             *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 2)) = mvx; // L1_x
            |                                                           ^~~~~~
            |                                                           |
            |                                                           _object*
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:145:63: note: in definition of macro ‘PyArray_GETPTR3’
        145 | #define PyArray_GETPTR3(obj, i, j, k) ((void *)(PyArray_BYTES(obj) + \
            |                                                               ^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
                       from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1514:36: note:   initializing argument 1 of ‘char* PyArray_BYTES(const PyArrayObject*)’
       1514 | PyArray_BYTES(const PyArrayObject *arr)
            |               ~~~~~~~~~~~~~~~~~~~~~^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      src/cv_reader/api.cpp:95:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
         95 |                             *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 2)) = mvx; // L1_x
            |                                                           ^~~~~~
            |                                                           |
            |                                                           _object*
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:146:65: note: in definition of macro ‘PyArray_GETPTR3’
        146 |                                             (i)*PyArray_STRIDES(obj)[0] + \
            |                                                                 ^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
                       from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note:   initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
       1526 | PyArray_STRIDES(const PyArrayObject *arr)
            |                 ~~~~~~~~~~~~~~~~~~~~~^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      src/cv_reader/api.cpp:95:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
         95 |                             *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 2)) = mvx; // L1_x
            |                                                           ^~~~~~
            |                                                           |
            |                                                           _object*
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:147:65: note: in definition of macro ‘PyArray_GETPTR3’
        147 |                                             (j)*PyArray_STRIDES(obj)[1] + \
            |                                                                 ^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
                       from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note:   initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
       1526 | PyArray_STRIDES(const PyArrayObject *arr)
            |                 ~~~~~~~~~~~~~~~~~~~~~^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      src/cv_reader/api.cpp:95:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
         95 |                             *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 2)) = mvx; // L1_x
            |                                                           ^~~~~~
            |                                                           |
            |                                                           _object*
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:148:65: note: in definition of macro ‘PyArray_GETPTR3’
        148 |                                             (k)*PyArray_STRIDES(obj)[2]))
            |                                                                 ^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
                       from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note:   initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
       1526 | PyArray_STRIDES(const PyArrayObject *arr)
            |                 ~~~~~~~~~~~~~~~~~~~~~^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      src/cv_reader/api.cpp:96:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
         96 |                             *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 3)) = mvy; // L1_y
            |                                                           ^~~~~~
            |                                                           |
            |                                                           _object*
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:145:63: note: in definition of macro ‘PyArray_GETPTR3’
        145 | #define PyArray_GETPTR3(obj, i, j, k) ((void *)(PyArray_BYTES(obj) + \
            |                                                               ^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
                       from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1514:36: note:   initializing argument 1 of ‘char* PyArray_BYTES(const PyArrayObject*)’
       1514 | PyArray_BYTES(const PyArrayObject *arr)
            |               ~~~~~~~~~~~~~~~~~~~~~^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      src/cv_reader/api.cpp:96:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
         96 |                             *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 3)) = mvy; // L1_y
            |                                                           ^~~~~~
            |                                                           |
            |                                                           _object*
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:146:65: note: in definition of macro ‘PyArray_GETPTR3’
        146 |                                             (i)*PyArray_STRIDES(obj)[0] + \
            |                                                                 ^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
                       from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note:   initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
       1526 | PyArray_STRIDES(const PyArrayObject *arr)
            |                 ~~~~~~~~~~~~~~~~~~~~~^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      src/cv_reader/api.cpp:96:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
         96 |                             *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 3)) = mvy; // L1_y
            |                                                           ^~~~~~
            |                                                           |
            |                                                           _object*
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:147:65: note: in definition of macro ‘PyArray_GETPTR3’
        147 |                                             (j)*PyArray_STRIDES(obj)[1] + \
            |                                                                 ^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
                       from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note:   initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
       1526 | PyArray_STRIDES(const PyArrayObject *arr)
            |                 ~~~~~~~~~~~~~~~~~~~~~^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      src/cv_reader/api.cpp:96:59: error: cannot convert ‘_object*’ to ‘const PyArrayObject*’ {aka ‘const tagPyArrayObject_fields*’}
         96 |                             *((int32_t *) PyArray_GETPTR3(mv_arr, p_dst_y, p_dst_x, 3)) = mvy; // L1_y
            |                                                           ^~~~~~
            |                                                           |
            |                                                           _object*
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:148:65: note: in definition of macro ‘PyArray_GETPTR3’
        148 |                                             (k)*PyArray_STRIDES(obj)[2]))
            |                                                                 ^~~
      In file included from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
                       from /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                       from src/cv_reader/api.cpp:14:
      /tmp/pip-build-env-coisvjx0/overlay/lib/python3.12/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1526:38: note:   initializing argument 1 of ‘npy_intp* PyArray_STRIDES(const PyArrayObject*)’
       1526 | PyArray_STRIDES(const PyArrayObject *arr)
            |                 ~~~~~~~~~~~~~~~~~~~~~^~~
      error: command '/usr/bin/gcc' failed with exit code 1
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for cv-reader
Failed to build cv-reader
ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (cv-reader)

docker image?

Dear sir, I have trouble installing cv_reader, for the sake of I have not the sudo permission and my linux server cannot connect to the external network. So is there a suitable docker image or some other way to do this (cv_reader) ? Thank you, sir!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.