Jump to content

Gustavo A. Díaz

Members
  • Posts

    11
  • Joined

  • Last visited

Posts posted by Gustavo A. Díaz

  1. Hi,

     

    Does repo https://github.com/jernejsk/FFmpeg compiles against kernel 5.14.13 (5.14.13-rockchip64)? I am testing unstable Armbian for Rock64 (Armbian 21.11.0-trunk.38 Hirsute) and gives me:

     

    Quote

    libavcodec/v4l2_request_mpeg2.c:24:37: error: field ‘sequence’ has incomplete type
      24 |     struct v4l2_ctrl_mpeg2_sequence sequence;
         |                                     ^~~~~~~~
    libavcodec/v4l2_request_mpeg2.c:25:36: error: field ‘picture’ has incomplete type
      25 |     struct v4l2_ctrl_mpeg2_picture picture;
         |                                    ^~~~~~~
    libavcodec/v4l2_request_mpeg2.c:26:41: error: field ‘quantisation’ has incomplete type
      26 |     struct v4l2_ctrl_mpeg2_quantisation quantisation;
         |                                         ^~~~~~~~~~~~
    libavcodec/v4l2_request_mpeg2.c: In function ‘v4l2_request_mpeg2_start_frame’:
    libavcodec/v4l2_request_mpeg2.c:39:10: error: ‘struct v4l2_ctrl_mpeg2_sequence’ has no member named ‘horizontal_size’
      39 |         .horizontal_size = s->width,
         |          ^~~~~~~~~~~~~~~
    libavcodec/v4l2_request_mpeg2.c:39:28: warning: excess elements in struct initializer
      39 |         .horizontal_size = s->width,
         |                            ^
    libavcodec/v4l2_request_mpeg2.c:39:28: note: (near initialization for ‘(anonymous)’)
    libavcodec/v4l2_request_mpeg2.c:40:10: error: ‘struct v4l2_ctrl_mpeg2_sequence’ has no member named ‘vertical_size’
      40 |         .vertical_size = s->height,
         |          ^~~~~~~~~~~~~
    libavcodec/v4l2_request_mpeg2.c:40:26: warning: excess elements in struct initializer
      40 |         .vertical_size = s->height,
         |                          ^
    libavcodec/v4l2_request_mpeg2.c:40:26: note: (near initialization for ‘(anonymous)’)
    libavcodec/v4l2_request_mpeg2.c:41:10: error: ‘struct v4l2_ctrl_mpeg2_sequence’ has no member named ‘vbv_buffer_size’
      41 |         .vbv_buffer_size = req->output.size,
         |          ^~~~~~~~~~~~~~~
    libavcodec/v4l2_request_mpeg2.c:41:28: warning: excess elements in struct initializer
      41 |         .vbv_buffer_size = req->output.size,
         |                            ^~~
    libavcodec/v4l2_request_mpeg2.c:41:28: note: (near initialization for ‘(anonymous)’)
    libavcodec/v4l2_request_mpeg2.c:44:10: error: ‘struct v4l2_ctrl_mpeg2_sequence’ has no member named ‘profile_and_level_indication’
      44 |         .profile_and_level_indication = 0,
         |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    libavcodec/v4l2_request_mpeg2.c:44:41: warning: excess elements in struct initializer
      44 |         .profile_and_level_indication = 0,
         |                                         ^
    libavcodec/v4l2_request_mpeg2.c:44:41: note: (near initialization for ‘(anonymous)’)
    libavcodec/v4l2_request_mpeg2.c:45:10: error: ‘struct v4l2_ctrl_mpeg2_sequence’ has no member named ‘chroma_format’
      45 |         .chroma_format = s->chroma_format,
         |          ^~~~~~~~~~~~~
    libavcodec/v4l2_request_mpeg2.c:45:26: warning: excess elements in struct initializer
      45 |         .chroma_format = s->chroma_format,
         |                          ^
    libavcodec/v4l2_request_mpeg2.c:45:26: note: (near initialization for ‘(anonymous)’)
    libavcodec/v4l2_request_mpeg2.c:37:60: error: invalid use of undefined type ‘struct v4l2_ctrl_mpeg2_sequence’
      37 |     controls->sequence = (struct v4l2_ctrl_mpeg2_sequence) {
         |                                                            ^
    libavcodec/v4l2_request_mpeg2.c:49:37: error: ‘V4L2_MPEG2_SEQ_FLAG_PROGRESSIVE’ undeclared (first use in this function); did you mean ‘V4L2_DV_BT_CAP_PROGRESSIVE’?
      49 |         controls->sequence.flags |= V4L2_MPEG2_SEQ_FLAG_PROGRESSIVE;
         |                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         |                                     V4L2_DV_BT_CAP_PROGRESSIVE
    libavcodec/v4l2_request_mpeg2.c:49:37: note: each undeclared identifier is reported only once for each function it appears in
    libavcodec/v4l2_request_mpeg2.c:53:10: error: ‘struct v4l2_ctrl_mpeg2_picture’ has no member named ‘picture_coding_type’
      53 |         .picture_coding_type = s->pict_type,
         |          ^~~~~~~~~~~~~~~~~~~
    libavcodec/v4l2_request_mpeg2.c:53:32: warning: excess elements in struct initializer
      53 |         .picture_coding_type = s->pict_type,
         |                                ^
    libavcodec/v4l2_request_mpeg2.c:53:32: note: (near initialization for ‘(anonymous)’)
    libavcodec/v4l2_request_mpeg2.c:56:10: error: ‘struct v4l2_ctrl_mpeg2_picture’ has no member named ‘f_code’
      56 |         .f_code[0][0] = s->mpeg_f_code[0][0],
         |          ^~~~~~
    libavcodec/v4l2_request_mpeg2.c:56:25: warning: excess elements in struct initializer
      56 |         .f_code[0][0] = s->mpeg_f_code[0][0],
         |                         ^
    libavcodec/v4l2_request_mpeg2.c:56:25: note: (near initialization for ‘(anonymous)’)
    libavcodec/v4l2_request_mpeg2.c:57:10: error: ‘struct v4l2_ctrl_mpeg2_picture’ has no member named ‘f_code’
      57 |         .f_code[0][1] = s->mpeg_f_code[0][1],
         |          ^~~~~~
    libavcodec/v4l2_request_mpeg2.c:57:25: warning: excess elements in struct initializer
      57 |         .f_code[0][1] = s->mpeg_f_code[0][1],
         |                         ^
    libavcodec/v4l2_request_mpeg2.c:57:25: note: (near initialization for ‘(anonymous)’)
    libavcodec/v4l2_request_mpeg2.c:58:10: error: ‘struct v4l2_ctrl_mpeg2_picture’ has no member named ‘f_code’
      58 |         .f_code[1][0] = s->mpeg_f_code[1][0],
         |          ^~~~~~
    libavcodec/v4l2_request_mpeg2.c:58:25: warning: excess elements in struct initializer
      58 |         .f_code[1][0] = s->mpeg_f_code[1][0],
         |                         ^
    libavcodec/v4l2_request_mpeg2.c:58:25: note: (near initialization for ‘(anonymous)’)
    libavcodec/v4l2_request_mpeg2.c:59:10: error: ‘struct v4l2_ctrl_mpeg2_picture’ has no member named ‘f_code’
      59 |         .f_code[1][1] = s->mpeg_f_code[1][1],
         |          ^~~~~~
    libavcodec/v4l2_request_mpeg2.c:59:25: warning: excess elements in struct initializer
      59 |         .f_code[1][1] = s->mpeg_f_code[1][1],
         |                         ^
    libavcodec/v4l2_request_mpeg2.c:59:25: note: (near initialization for ‘(anonymous)’)
    libavcodec/v4l2_request_mpeg2.c:60:10: error: ‘struct v4l2_ctrl_mpeg2_picture’ has no member named ‘picture_structure’
      60 |         .picture_structure = s->picture_structure,
         |          ^~~~~~~~~~~~~~~~~
    libavcodec/v4l2_request_mpeg2.c:60:30: warning: excess elements in struct initializer
      60 |         .picture_structure = s->picture_structure,
         |                              ^
    libavcodec/v4l2_request_mpeg2.c:60:30: note: (near initialization for ‘(anonymous)’)
    libavcodec/v4l2_request_mpeg2.c:61:10: error: ‘struct v4l2_ctrl_mpeg2_picture’ has no member named ‘intra_dc_precision’
      61 |         .intra_dc_precision = s->intra_dc_precision,
         |          ^~~~~~~~~~~~~~~~~~
    libavcodec/v4l2_request_mpeg2.c:61:31: warning: excess elements in struct initializer
      61 |         .intra_dc_precision = s->intra_dc_precision,
         |                               ^
    libavcodec/v4l2_request_mpeg2.c:61:31: note: (near initialization for ‘(anonymous)’)
    libavcodec/v4l2_request_mpeg2.c:51:58: error: invalid use of undefined type ‘struct v4l2_ctrl_mpeg2_picture’
      51 |     controls->picture = (struct v4l2_ctrl_mpeg2_picture) {
         |                                                          ^
    libavcodec/v4l2_request_mpeg2.c:65:36: error: ‘V4L2_MPEG2_PIC_FLAG_TOP_FIELD_FIRST’ undeclared (first use in this function)
      65 |         controls->picture.flags |= V4L2_MPEG2_PIC_FLAG_TOP_FIELD_FIRST;
         |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    libavcodec/v4l2_request_mpeg2.c:68:36: error: ‘V4L2_MPEG2_PIC_FLAG_FRAME_PRED_DCT’ undeclared (first use in this function)
      68 |         controls->picture.flags |= V4L2_MPEG2_PIC_FLAG_FRAME_PRED_DCT;
         |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    libavcodec/v4l2_request_mpeg2.c:71:36: error: ‘V4L2_MPEG2_PIC_FLAG_CONCEALMENT_MV’ undeclared (first use in this function)
      71 |         controls->picture.flags |= V4L2_MPEG2_PIC_FLAG_CONCEALMENT_MV;
         |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    libavcodec/v4l2_request_mpeg2.c:74:36: error: ‘V4L2_MPEG2_PIC_FLAG_INTRA_VLC’ undeclared (first use in this function)
      74 |         controls->picture.flags |= V4L2_MPEG2_PIC_FLAG_INTRA_VLC;
         |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    libavcodec/v4l2_request_mpeg2.c:77:36: error: ‘V4L2_MPEG2_PIC_FLAG_Q_SCALE_TYPE’ undeclared (first use in this function)
      77 |         controls->picture.flags |= V4L2_MPEG2_PIC_FLAG_Q_SCALE_TYPE;
         |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    libavcodec/v4l2_request_mpeg2.c:80:36: error: ‘V4L2_MPEG2_PIC_FLAG_ALT_SCAN’ undeclared (first use in this function)
      80 |         controls->picture.flags |= V4L2_MPEG2_PIC_FLAG_ALT_SCAN;
         |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    CC      libavcodec/vble.o
    libavcodec/v4l2_request_mpeg2.c:83:36: error: ‘V4L2_MPEG2_PIC_FLAG_REPEAT_FIRST’ undeclared (first use in this function)
      83 |         controls->picture.flags |= V4L2_MPEG2_PIC_FLAG_REPEAT_FIRST;
         |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    libavcodec/v4l2_request_mpeg2.c:86:36: error: ‘V4L2_MPEG2_PIC_FLAG_PROGRESSIVE’ undeclared (first use in this function); did you mean ‘V4L2_DV_BT_CAP_PROGRESSIVE’?
      86 |         controls->picture.flags |= V4L2_MPEG2_PIC_FLAG_PROGRESSIVE;
         |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         |                                    V4L2_DV_BT_CAP_PROGRESSIVE
    libavcodec/v4l2_request_mpeg2.c: In function ‘v4l2_request_mpeg2_end_frame’:
    libavcodec/v4l2_request_mpeg2.c:121:19: error: ‘V4L2_CID_STATELESS_MPEG2_SEQUENCE’ undeclared (first use in this function); did you mean ‘V4L2_CID_STATELESS_VP8_FRAME’?
     121 |             .id = V4L2_CID_STATELESS_MPEG2_SEQUENCE,
         |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         |                   V4L2_CID_STATELESS_VP8_FRAME
    libavcodec/v4l2_request_mpeg2.c:126:19: error: ‘V4L2_CID_STATELESS_MPEG2_PICTURE’ undeclared (first use in this function); did you mean ‘V4L2_CID_STATELESS_VP8_FRAME’?
     126 |             .id = V4L2_CID_STATELESS_MPEG2_PICTURE,
         |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         |                   V4L2_CID_STATELESS_VP8_FRAME
    libavcodec/v4l2_request_mpeg2.c:131:19: error: ‘V4L2_CID_STATELESS_MPEG2_QUANTISATION’ undeclared (first use in this function)
     131 |             .id = V4L2_CID_STATELESS_MPEG2_QUANTISATION,
         |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    make: *** [ffbuild/common.mak:59: libavcodec/v4l2_request_mpeg2.o] Error 1
    make: *** Waiting for unfinished jobs....


    Configured with:
     

    Quote

    ./configure --prefix=/usr --libdir=/usr/lib/aarch64-linux-gnu --incdir=/usr/include/aarch64-linux-gnu --enable-libdrm --enable-v4l2-request --enable-libudev --di
    sable-debug --disable-doc --disable-ffplay --enable-shared --enable-libfreetype --enable-gpl --enable-libmp3lame --enable-libvorbis --enable-libwebp --enable-libx265 --enable-libx264 --enable-nonfree --enable-ope
    nssl --enable-libfdk_aac --enable-postproc --extra-libs=-ldl --enable-libopenjpeg --extra-libs=-lpthread --enable-neon


    Thanks in advance.

  2. Hi, I am trying again to back this board, since I can't afford to buy another one...

     

    Legaly kernel is impossible to use; keep unstable. Once it crash for the first time, no matter if I reboot, it will keep crashing.

    Now, with current kernel this does not happen.

     

    The problem is that i need legacy kernel so I can use hwaccel needed for decoding and encoding.

     

    :(

    rock64_legacy_kernel_crash.txt

  3. Hi,

     

    I have a Pine Rock64 v2.0 SBC and with the image Buster xfce desktop (I guess this is the right one that mentions here), the board has random freezes and impossible to use. So far the board does work good with Ayufan Debian buster image.

     

    Anyone had and idea why? I post here since I need to implement hwaccel so I can use this board as RTSP server using a UVC USB camera (Arducam).

     

    Thanks.

  4. Hi, in my case the test is on a Rock64 (4GB, v2 edition) using latest current Buster or Focal.

     

    The problem is in the first init configuration assistant. When selecting the "User language based on your location", after selecting es_AR.UTF-8 (I am from Argentina) it "auto-detects" my keyboard layout as AR which belongs to Arabic iirc (which is wrong). After this of course I can't type anything right on terminal. I had to fix it over ssh by issuing the command: sudo dpkg-reconfigure keyboard-configuration.

     

     

    IMG_20210317_115456.jpg

  5. Hi,

     

    I wanted to try this build so I cant test HW (using the legacy kernel). But, is impossible to make Rock64 boot correctly, having random kernel crashes,

     

    It does boot with the 5.10.x kernel version and work just fine, but I need the Legacy one so I can test HW.

    I can only attach a photo since there is nothing I can do since the OS is halt.

     

    Any ideas? Thanks.

    IMG_20210314_163428.jpg

  6. @JMCC Hi! Thanks for the tips.

     

    Quote

    you will probably also need to sort out the permissions for the VPU kernel nodes

     

    How I can do that?

     

    Actually I would to prefer to compile all by hand, so what I need is:

    - libmali

    - rockchip-vcodec (https://github.com/Miouyouyou/rockchip-vcodec -> this is the right repository? )

    - mpp (https://github.com/rockchip-linux/mpp)
    - gstreamer-rockchip (https://github.com/rockchip-linux/gstreamer-rockchip)
    - gstreamer-rockchip-extras (https://github.com/rockchip-linux/gstreamer-rockchip-extra)

    - ffmpeg (compiled with --enable-rkmpp and what else?)
     

    Anything else I am missing (or not necessary from this list)?

     

    BTW, last time I've compiled gstreamer-rockchip, I don't know why the compiled version does not include mpph264enc.

    Thanks in advance.

  7. Armbianmonitor:

    Hi,

     

    I need some guide and steps required (and if possible) to enable hardware acceleration using FFmpeg. Is the only thing I need since the idea is to use this SBC as Surveillance platform (for example, with Motion+Motioneye or Shinobi). Currencly without hardware accel, using 3 rtsp cams uses each 100% of a core (which translate to 300%).

     

    I've searching a lot, but I saw hwaccel with others apps, but not in particular with ffmpeg. I already managed to compile it with --enable-rkmpp (h264_rkmpp hevc_rkmpp vp8_rkmpp vp9_rkmpp) and available hwaccels: vdpau cuda vaapi drm opencl.

    Any help will be much appreciated.

     

    Currently fresh installed OS: Armbian Focal

     

    Thanks in advance.

×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines