Closed TomaszAIR closed 1 year ago
@EasyIP2023 looks like you did majority of work for VLC support in meta-raspberrypi. Maybe you will be able to support here?
@TomaszAIR Does running it like it shows in Usage example:
not produce output? https://meta-raspberrypi.readthedocs.io/en/latest/extra-build-config.html#raspberry-pi-distro-vlc.
Also, may you add some of the vlc
flags you are testing with? My main concern was the use of mmal_vout plugin.
@EasyIP2023 thanks for quick response.
The problem is that I am not able to compile VLC for rpi0w2 without x11. The revision used of meta-raspberrypi is fc5f80a47ed7761509ac0700c81581c97dfe135a
. I will test from dropping off our custom layer and test rpi0w2 build just with meta-raspberrypi, x11 removed from DISTRO_FEATURES and DISABLE_VC4GRAPHICS set to 1
.
Will post the results.
@TomaszAIR Thanks for helping on finding this. Appears the issue is with https://github.com/RPi-Distro/ffmpeg/blob/pios/bullseye/configure#L6455. ./configure
is looking for <recipe-sysroot>/usr/include/ES2/gl.h
which doesn't exists. It does however exists in <recipe-sysroot>/usr/include/GLES/gl.h
.
Also appears I didn't include virtual/libgles2
in PACKAGECONFIG[opengl] = "--enable-opengl,--disable-opengl,virtual/libgl"
.
Will try to add patch soon that fixes ffmpeg configure bugs.
Hey @TomaszAIR when you get the chance can you try out https://github.com/EasyIP2023/meta-raspberrypi/tree/testing. Contains relevent open MR's + rpidistro-vlc version update.
The VLC recipe update is still a WIP running into a pretty nasty bug when testing. It has the mmal_vout plugin like we all want. You should be able to at least compile both ffmpeg and vlc without x11 or wayland distro features enabled on branch. Just my update will have more time next week on vlc upgrade.
root@raspberrypi4:~# ffmpeg -i 210329_06B_Bali_1080p_013.mp4 -c:v h264_v4l2m2m -b:v 8M -c:a copy encoded_video.mp4
ffmpeg version 4.3.2 Copyright (c) 2000-2021 the FFmpeg developers
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '210329_06B_Bali_1080p_013.mp4':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: mp42mp41
creation_time : 2021-04-22T22:58:58.000000Z
Duration: 00:00:30.00, start: 0.000000, bitrate: 59933 kb/s
Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080, 59927 kb/s, 25 fps, 25 tbr, 25k tbn, 50 tbc (default)
Metadata:
creation_time : 2021-04-22T22:58:58.000000Z
handler_name : ?Mainconcept Video Media Handler
encoder : AVC Coding
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> h264 (h264_v4l2m2m))
Press [q] to stop, [?] for help
[h264_v4l2m2m @ 0xe42ca0] Using device /dev/video11
[h264_v4l2m2m @ 0xe42ca0] driver 'bcm2835-codec' on card 'bcm2835-codec-encode' in mplane mode
[h264_v4l2m2m @ 0xe42ca0] requesting formats: output=YU12 capture=H264
[h264_v4l2m2m @ 0xe42ca0] Failed to set gop size: Invalid argument
Output #0, mp4, to 'encoded_video.mp4':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: mp42mp41
encoder : Lavf58.45.100
Stream #0:0(eng): Video: h264 (h264_v4l2m2m) (avc1 / 0x31637661), yuv420p, 1920x1080, q=-1--1, 8000 kb/s, 25 fps, 12800 tbn, 25 tbc (default)
Metadata:
creation_time : 2021-04-22T22:58:58.000000Z
handler_name : ?Mainconcept Video Media Handler
encoder : Lavc58.91.100 h264_v4l2m2m
[h264_v4l2m2m @ 0xe42ca0] ff_v4l2_buffer_buf_to_avpkt00.00 bitrate=N/A speed= 0x
[mp4 @ 0xe50bc0] Timestamps are unset in a packet for stream 0. This is deprecated and will stop working in the future. Fix your code to set the timestamps properly
[mp4 @ 0xe50bc0] Encoder did not produce proper pts, making some up.
[h264_v4l2m2m @ 0xe42ca0] ff_v4l2_buffer_buf_to_avpkt:00.00 bitrate=4923.1kbits/s speed=5.8e-05x
Last message repeated 5 times
[h264_v4l2m2m @ 0xe42ca0] ff_v4l2_buffer_buf_to_avpkt:00.20 bitrate= 1.9kbits/s speed=0.0935x
Last message repeated 6 times
[h264_v4l2m2m @ 0xe42ca0] ff_v4l2_buffer_buf_to_avpkt:00.48 bitrate=4369.2kbits/s speed=0.16x
Last message repeated 4 times
[h264_v4l2m2m @ 0xe42ca0] ff_v4l2_buffer_buf_to_avpkt:00.68 bitrate=3084.3kbits/s speed=0.184x
Last message repeated 6 times
root@raspberrypi4:~# ffmpeg -decoders | grep mmal
ffmpeg version 4.3.2 Copyright (c) 2000-2021 the FFmpeg developers
built with gcc 12.2.0 (GCC)
libavutil 56. 51.100 / 56. 51.100
libavcodec 58. 91.100 / 58. 91.100
libavformat 58. 45.100 / 58. 45.100
libavdevice 58. 10.100 / 58. 10.100
libavfilter 7. 85.100 / 7. 85.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 7.100 / 5. 7.100
libswresample 3. 7.100 / 3. 7.100
libpostproc 55. 7.100 / 55. 7.100
V..... h264_mmal h264 (mmal) (codec h264)
V..... mpeg2_mmal mpeg2 (mmal) (codec mpeg2video)
V..... mpeg4_mmal mpeg4 (mmal) (codec mpeg4)
V..... vc1_mmal vc1 (mmal) (codec vc1)
root@raspberrypi4:~# cvlc -H | grep mmal
VLC media player 3.0.17.4 Vetinari (revision 1.0.6-1687-gb6a28bbbe)
--glconv {any,mmal_converter,drm_gl_conv,none}
MMAL-based deinterlace filter plugin (mmal_deinterlace)
--mmal-deinterlace-no-qpu, --no-mmal-deinterlace-no-qpu
--mmal-deinterlace-adv, --no-mmal-deinterlace-adv
--mmal-deinterlace-fast, --no-mmal-deinterlace-fast
--mmal-deinterlace-none, --no-mmal-deinterlace-none
--mmal-deinterlace-half-rate, --no-mmal-deinterlace-half-rate
--mmal-deinterlace-full-rate, --no-mmal-deinterlace-full-rate
MMAL-based decoder plugin for Raspberry Pi (mmal_codec)
--mmal-opaque, --no-mmal-opaque
--mmal-decode-enable, --no-mmal-decode-enable
Enable mmal decode even if normally disabled
Enable mmal decode even if normally disabled. MMAL decode is normally
--mmal-resize, --no-mmal-resize
Use mmal resizer rather than hvs.
Use mmal resizer rather than isp. This uses less gpu memory than the
--mmal-isp, --no-mmal-isp Use mmal isp rather than hvs.
Use mmal isp rather than hvs. This may be faster but has no blend.
mmal_vout (mmal_vout)
--mmal-layer <integer> VideoCore layer where the video is displayed.
--mmal-adjust-refreshrate, --no-mmal-adjust-refreshrate
--mmal-native-interlaced, --no-mmal-native-interlaced
--mmal-display <string> Output device for Rpi fullscreen.
--mmal-vout-transform <string>
--mmal-vout-window <string>
--mmal-vout-transparent, --no-mmal-vout-transparent
MMAL buffered avcodec (mmal_avcodec)
--mmal-avcodec-buffers <integer>
-V, --vout {any,mmal_xsplitter,gles2,fb,mmal_vout,drm_vout,vdummy,vdummy,vmem,flaschen,yuv,omxil_vout,none}
root@raspberrypi4:~# DISPLAYNUM=$(tvservice -l | tail -c 2)
root@raspberrypi4:~# MMAL_DISPLAY=$(expr $DISPLAYNUM + 1)
root@raspberrypi4:~# VLC_SETTINGS="-I dummy --vout=mmal_vout --mmal-resize --mmal-display hdmi-$MMAL_DISPLAY --no-dbus"
root@raspberrypi4:~# cvlc $VLC_SETTINGS 210329_06B_Bali_1080p_013.mp4
VLC media player 3.0.17.4 Vetinari (revision 1.0.6-1687-gb6a28bbbe)
[01da14f0] main interface error: no suitable interface module
[01c69260] main libvlc error: interface "globalhotkeys,none" initialization failed
[01da14f0] dummy interface: using the dummy interface module...
TagLib: MP4: No audio tracks
[a9d2a0c8] freetype spu text error: LoadFace: Error creating face for /usr/share/fonts/truetype/freefont/FreeSerifBold.ttf - 0 - 2 - 2
[a9d2a0c8] freetype spu text error: Error loading default face
[af0024c8] main vout display error: option qt-fullscreen-screennumber does not exist
[a9d2a0c8] freetype s[ 111.748055] 8<--- cut here ---
pu text [ 111.751406] Unable to handle kernel NULL pointer dereference at virtual address 00000007
error: pgd = 20101200
[31;1mLo[ 111.763743] [00000007] *pgd=03a6f003, *pmd=00000000
adFace: [ 111.769391] Internal error: Oops: 206 [#1] SMP ARM
Error cr[ 111.774932] Modules linked in: cmac algif_hash aes_arm_bs crypto_simd cryptd algif_skcipher af_alg bnep hci_uart btbcm bluetooth ecdh_generic ecc bcm2835_v4l2(C) rpivid_hevc(C) bcm2835_isp(C) bcm2835_codec(C) brcmfmac videobuf2_vmalloc bcm2835_mmal_vchiq(C) v4l2_mem2mem videobuf2_dma_contig videobuf2_memops videobuf2_v4l2 videobuf2_common videodev brcmutil mc cfg80211 vc_sm_cma(C) raspberrypi_hwmon nvmem_rmem rfkill uio_pdrv_genirq uio sch_fq_codel drm fuse drm_panel_orientation_quirks backlight ipv6
eating f[ 111.820589] CPU: 3 PID: 332 Comm: vlc Tainted: G C 5.15.56-v7l #1
ace for [ 111.828791] Hardware name: BCM2711
/usr/sha[ 111.832939] PC is at dma_buf_dynamic_attach+0x70/0x250
re/fonts[ 111.838855] LR is at 0x0
/truetyp[ 111.842124] pc : [<c08e7434>] lr : [<00000000>] psr: a80f0013
e/freefo[ 111.849181] sp : c3bb1d98 ip : c36ed780 fp : c3bb1dbc
nt/FreeS[ 111.855179] r10: 00000004 r9 : c2a366c0 r8 : 00000000
erifBold[ 111.861181] r7 : c2727c10 r6 : 00000000 r5 : fffffff7 r4 : c36ed740
.ttf - 0[ 111.868502] r3 : 00000000 r2 : 00000000 r1 : 00000000 r0 : c36ed740
- 2 - 2[ 111.875825] Flags: NzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
[ Control: 30c5383d Table: 03a661c0 DAC: 55555555
[32;1ma9[ 111.890295] Register r0 information: slab kmalloc-64 start c36ed740 pointer offset 0 size 64
d2a0c8 111.899556] Register r1 information: NULL pointer
0m] free[ 111.905032] Register r2 information: NULL pointer
type spu[ 111.910503] Register r3 information: NULL pointer
text er[ 111.915974] Register r4 information: slab kmalloc-64 start c36ed740 pointer offset 0 size 64
ror: 111.925233] Register r5 information: non-paged memory
1;1mErro[ 111.931059] Register r6 information: NULL pointer
r loadin[ 111.936530] Register r7 information: slab kmalloc-1k start c2727c00 pointer offset 16 size 1024
g defaul[ 111.946054] Register r8 information: NULL pointer
t face 111.951527] Register r9 information: slab filp start c2a366c0 pointer offset 0
0m
[ 111.959555] Register r10 information: non-paged memory
[ 111.965124] Register r11 information: non-slab/vmalloc memory
[ 111.970963] Register r12 information: slab kmalloc-64 start c36ed780 pointer offset 0 size 64
[ 111.979648] Process vlc (pid: 332, stack limit = 0xc12647dc)
[ 111.985395] Stack: (0xc3bb1d98 to 0xc3bb2000)
[ 111.989820] 1d80: fffffff7 00000000
[ 111.998126] 1da0: 76767676 c3bb0000 bf1612c0 c2a366c0 c3bb1dcc c3bb1dc0 c08e7634 c08e73d0
[ 112.006430] 1dc0: c3bb1e74 c3bb1dd0 bf15d35c c08e7620 c3bb1e94 c36ed9c0 00000000 00000000
[ 112.014733] 1de0: c020d0fc 00000000 00000000 c3bb1e6c c1295cd0 bf1608e8 bf161080 00000000
[ 112.023036] 1e00: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 112.031340] 1e20: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 112.039644] 1e40: 00000000 2415a519 c36ed9c0 c3bb0000 aeffe720 c36ed9c0 c3bb0000 bf000000
[ 112.047947] 1e60: c2a366c0 00000004 c3bb1f0c c3bb1e78 bf15dcc4 bf15d2a0 c3a7a080 c3bb1fb0
[ 112.056252] 1e80: 00000000 c3bb1ec0 00000008 00000000 00000008 00000000 76767676 00000000
[ 112.064556] 1ea0: 2d636c76 706d7264 656d6972 00000000 2d2d2d2d 00000000 7273752f 6372732f
[ 112.072859] 1ec0: 00000000 00000000 00000000 00000000 00000000 00000000 76767676 2415a519
[ 112.081162] 1ee0: c3bb0000 80404a5b 00000000 c2a366c1 c3bb0000 aeffe720 c2a366c0 00000004
[ 112.089466] 1f00: c3bb1fa4 c3bb1f10 c048a8ec bf15dbcc 636a6375 00000000 24f46edb 00000000
[ 112.097769] 1f20: 636a6375 00000000 24f46edb 00000000 c2984c00 00000036 00000004 80404a5b
[ 112.106073] 1f40: c3bb1f74 c3bb1f50 c030c7dc c02c77a4 c3bb1fb0 00000036 00000004 00000036
[ 112.114376] 1f60: c0200264 c3bb0000 c3bb1fa4 c3bb1f78 c020a5ac 2415a519 aeffe700 b4c61178
[ 112.122679] 1f80: 76767676 00000004 00000036 c0200264 c3bb0000 00000036 00000000 c3bb1fa8
[ 112.130983] 1fa0: c0200244 c048a7dc b4c61178 76767676 00000004 80404a5b aeffe720 aeffe700
[ 112.139288] 1fc0: b4c61178 76767676 00000004 00000036 00000000 0000001b af0024c8 0000001a
[ 112.147593] 1fe0: 00000036 aeffe6e8 b6ee6fa5 b6e5e576 280f0030 00000004 00000000 00000000
[ 112.155892] Backtrace:
[ 112.158379] [<c08e73c4>] (dma_buf_dynamic_attach) from [<c08e7634>] (dma_buf_attach+0x20/0x24)
[ 112.167150] r9:c2a366c0 r8:bf1612c0 r7:c3bb0000 r6:76767676 r5:00000000 r4:fffffff7
[ 112.175009] [<c08e7614>] (dma_buf_attach) from [<bf15d35c>] (vc_sm_cma_import_dmabuf_internal+0xc8/0x400 [vc_sm_cma])
[ 112.185825] [<bf15d294>] (vc_sm_cma_import_dmabuf_internal [vc_sm_cma]) from [<bf15dcc4>] (vc_sm_cma_ioctl+0x104/0x52c [vc_sm_cma])
[ 112.197880] r10:00000004 r9:c2a366c0 r8:bf000000 r7:c3bb0000 r6:c36ed9c0 r5:aeffe720
[ 112.205828] r4:c3bb0000
[ 112.208398] [<bf15dbc0>] (vc_sm_cma_ioctl [vc_sm_cma]) from [<c048a8ec>] (sys_ioctl+0x11c/0xb44)
[ 112.217354] r10:00000004 r9:c2a366c0 r8:aeffe720 r7:c3bb0000 r6:c2a366c1 r5:00000000
[ 112.225300] r4:80404a5b
[ 112.227869] [<c048a7d0>] (sys_ioctl) from [<c0200244>] (__sys_trace_return+0x0/0x1c)
[ 112.235746] Exception stack(0xc3bb1fa8 to 0xc3bb1ff0)
[ 112.240877] 1fa0: b4c61178 76767676 00000004 80404a5b aeffe720 aeffe700
[ 112.249181] 1fc0: b4c61178 76767676 00000004 00000036 00000000 0000001b af0024c8 0000001a
[ 112.257482] 1fe0: 00000036 aeffe6e8 b6ee6fa5 b6e5e576
[ 112.262615] r10:00000036 r9:c3bb0000 r8:c0200264 r7:00000036 r6:00000004 r5:76767676
[ 112.270563] r4:b4c61178
[ 112.273137] Code: 0a00004f e5d63000 e88400a0 e5c43018 (e5953010)
[ 112.279438] ---[ end trace 8ed776ff1e5f5bf7 ]---
Hey @EasyIP2023, thanks for your effort. I was able to compile and check VLC on rpi0w2 without x11 in distro.
# cvlc -H | grep mmal
VLC media player 3.0.17.4 Vetinari (revision 1.0.6-1687-gb6a28bbbe)
MMAL-based decoder plugin for Raspberry Pi (mmal_codec)
--mmal-opaque, --no-mmal-opaque
--mmal-decode-enable, --no-mmal-decode-enable
Enable mmal decode even if normally disabled
Enable mmal decode even if normally disabled. MMAL decode is normally
--mmal-resize, --no-mmal-resize
Use mmal resizer rather than hvs.
Use mmal resizer rather than isp. This uses less gpu memory than the
--mmal-isp, --no-mmal-isp Use mmal isp rather than hvs.
Use mmal isp rather than hvs. This may be faster but has no blend.
mmal_vout (mmal_vout)
--mmal-layer <integer> VideoCore layer where the video is displayed.
--mmal-adjust-refreshrate, --no-mmal-adjust-refreshrate
--mmal-native-interlaced, --no-mmal-native-interlaced
--mmal-display <string> Output device for Rpi fullscreen.
--mmal-vout-transform <string>
--mmal-vout-window <string>
--mmal-vout-transparent, --no-mmal-vout-transparent
MMAL buffered avcodec (mmal_avcodec)
--mmal-avcodec-buffers <integer>
MMAL-based deinterlace filter plugin (mmal_deinterlace)
--mmal-deinterlace-no-qpu, --no-mmal-deinterlace-no-qpu
--mmal-deinterlace-adv, --no-mmal-deinterlace-adv
--mmal-deinterlace-fast, --no-mmal-deinterlace-fast
--mmal-deinterlace-none, --no-mmal-deinterlace-none
--mmal-deinterlace-half-rate, --no-mmal-deinterlace-half-rate
--mmal-deinterlace-full-rate, --no-mmal-deinterlace-full-rate
--glconv {any,drm_gl_conv,mmal_converter,none}
-V, --vout {any,mmal_xsplitter,gles2,fb,drm_vout,mmal_vout,vmem,yuv,flaschen,vdummy,vdummy,omxil_vout,none}
Running vlc ends with similar effect
# DISPLAYNUM=$(tvservice -l | tail -c 2)
# MMAL_DISPLAY=$(expr $DISPLAYNUM + 1)
# VLC_SETTINGS="-I dummy --vout=mmal_vout --mmal-resize --mmal-display hdmi-$MMAL_DISPLAY --no-dbus"
# vlc $VLC_SETTINGS video.mp4 [226/1149]
VLC media player 3.0.17.4 Vetinari (revision 1.0.6-1687-gb6a28bbbe)
[01dd3aa0] main interface error: no suitable interface module
[01cbb260] main libvlc error: interface "globalhotkeys,none" initialization failed
[01dd3aa0] dummy interface: using the dummy interface module...
[6b833ea0] freetype spu text error: LoadFace: Error creating face for /usr/share/fonts/truetype/freefont/FreeSerifBold.ttf - 0 - 2 - 2
[6b833ea0] freetype spu text error: Error loading default face
[6ce36098] main vout display error: option qt-fullscreen-screennumber does not exist
[6b833ea0] freetype spu text error: LoadFace: Error creating f[ 1213.300976] 8<--- cut here ---
ace for [ 1213.304870] Unable to handle kernel NULL pointer dereference at virtual address 00000007
/usr/sha[ 1213.313906] pgd = 9bc9a421
re/fonts[ 1213.317223] [00000007] *pgd=00000000
/truetyp[ 1213.321665] Internal error: Oops: 5 [#2] SMP ARM
e/freefo[ 1213.326950] Modules linked in: brcmfmac bcm2835_codec(C) bcm2835_v4l2(C) brcmutil raspberrypi_hwmon snd_bcm2835(C) videobuf2_vmalloc sha256_generic bcm2835_isp(C) v4l2_mem2mem snd_pcm cfg80211 bcm2836
nt/FreeS[ 1213.369875] CPU: 2 PID: 351 Comm: vlc Tainted: G D C 5.15.56-v7 #1
erifBold[ 1213.377979] Hardware name: BCM2835
.ttf - 0[ 1213.382132] PC is at dma_buf_dynamic_attach+0x70/0x258
- 2 - 2[ 1213.388046] LR is at 0x0
[1213.391315] pc : [<80794168>] lr : [<00000000>] psr: a80f0013
[32;1m6b[ 1213.398373] sp : 851b9db0 ip : 85bd4f00 fp : 851b9dd4
833ea0 1213.404373] r10: 00000004 r9 : 859a6cc0 r8 : 00000000
0m] free[ 1213.410372] r7 : 82187810 r6 : 00000000 r5 : fffffff7 r4 : 85bd4ec0
type spu[ 1213.417690] r3 : 00000000 r2 : 00000000 r1 : 00000000 r0 : 85bd4ec0
text er[ 1213.425008] Flags: NzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
ror: 1213.432941] Control: 10c5383d Table: 0586806a DAC: 00000055
1;1mErro[ 1213.439463] Register r0 information: slab kmalloc-64 start 85bd4ec0 pointer offset 0 size 64
r loadin[ 1213.448718] Register r1 information: NULL pointer
g defaul[ 1213.454183] Register r2 information: NULL pointer
t face 1213.459650] Register r3 information: NULL pointer
0m
[ 1213.465114] Register r4 information: slab kmalloc-64 start 85bd4ec0 pointer offset 0 size 64
Broadcas[ 1213.474368] Register r5 information: non-paged memory
t messag[ 1213.480187] Register r6 information: NULL pointer
e from s[ 1213.485654] Register r7 information: slab kmalloc-1k start 82187800 pointer offset 16 size 1024
ystemd-j[ 1213.495172] Register r8 information: NULL pointer
ournald@[ 1213.500637] Register r9 information: slab filp start 859a6cc0 pointer offset 0
projecto[ 1213.508657] Register r10 information: non-paged memory
st (Thu [ 1213.514563] Register r11 information: non-slab/vmalloc memory
2022-04-[ 1213.521088] Register r12 information: slab kmalloc-64 start 85bd4f00 pointer offset 0 size 64
28 18:02[ 1213.530430] Process vlc (pid: 351, stack limit = 0x153995e8)
:34 UTC)[ 1213.536866] Stack: (0x851b9db0 to 0x851ba000)
:
k[ 1213.541984] 9da0: fffffff7 00000000 43464b4f 851b8000
ernel[22[ 1213.550976] 9dc0: 7f1cb2c0 859a6cc0 851b9de4 851b9dd8 80794370 80794104 851b9e84 851b9de8
8]: [ 12[ 1213.559965] 9de0: 7f1c7368 8079435c 851b9e9c 85bd4540 801a4c84 00000000 00000000 851b9e08
13.32166[ 1213.568954] 9e00: 00000400 7f1ca8f8 7f1cb080 00000000 00000000 00000000 00000000 00000000
5] Inter[ 1213.577942] 9e20: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
nal erro[ 1213.586932] 9e40: 00000000 00000000 00000000 00000000 00000000 260ff8b2 7f000000 6b3ce5f8
r: Oops:[ 1213.595920] 9e60: 85bd4540 7f000000 851b8000 6b3ce5f8 859a6cc0 00000004 851b9f14 851b9e88
5 [#2] [ 1213.604911] 9e80: 7f1c7cb0 7f1c72b8 00000008 8065db38 851b8000 851b9ea0 802cfc60 8065db24
[ 1213.613899] 9ea0: 43464b4f 00000000 2d636c76 706d7264 656d6972 00000000 2d2d2d2d 00000000
[ 1213.622888] 9ec0: 2e2f2e2e 2e2e2f2e 00000000 00000000 00000000 00000000 00000000 00000000
[ 1213.631613] 9ee0: 00000004 260ff8b2 851b8000 80404a5b 00000000 859a6cc1 851b8000 6b3ce5f8
[ 1213.639914] 9f00: 859a6cc0 00000004 851b9fa4 851b9f18 80379c10 7f1c7bc4 851b9f4c 851b9f28
[ 1213.648215] 9f20: 8010ba5c 8010cbc0 851b8000 00000000 ffffffff 80203e30 82327c00 00000036
[ 1213.656515] 9f40: 851b9f74 851b9f50 80203e30 801be7c0 851b9fb0 00000036 43464b4f 00000036
[ 1213.664816] 9f60: 80100264 851b8000 851b9fa4 851b9f78 8010a1a4 260ff8b2 6b3ce5d8 718a1160
[ 1213.673119] 9f80: 00000004 43464b4f 00000036 80100264 851b8000 00000036 00000000 851b9fa8
[ 1213.681421] 9fa0: 80100244 80379b08 718a1160 00000004 00000004 80404a5b 6b3ce5f8 6b3ce5d8
[ 1213.689721] 9fc0: 718a1160 00000004 43464b4f 00000036 00000000 0000001b 6ce36098 0000001a
[ 1213.698023] 9fe0: 00000036 6b3ce5c0 76f07ba9 76e81ae6 280f0030 00000004 00000000 00000000
[ 1213.706316] Backtrace:
[ 1213.708798] [<807940f8>] (dma_buf_dynamic_attach) from [<80794370>] (dma_buf_attach+0x20/0x24)
[ 1213.717563] r9:859a6cc0 r8:7f1cb2c0 r7:851b8000 r6:43464b4f r5:00000000 r4:fffffff7
[ 1213.725417] [<80794350>] (dma_buf_attach) from [<7f1c7368>] (vc_sm_cma_import_dmabuf_internal+0xbc/0x3f8 [vc_sm_cma])
[ 1213.736224] [<7f1c72ac>] (vc_sm_cma_import_dmabuf_internal [vc_sm_cma]) from [<7f1c7cb0>] (vc_sm_cma_ioctl+0xf8/0x4c8 [vc_sm_cma])
[ 1213.748203] r10:00000004 r9:859a6cc0 r8:6b3ce5f8 r7:851b8000 r6:7f000000 r5:85bd4540
[ 1213.756148] r4:6b3ce5f8
[ 1213.758714] [<7f1c7bb8>] (vc_sm_cma_ioctl [vc_sm_cma]) from [<80379c10>] (sys_ioctl+0x114/0xa94)
[ 1213.767676] r10:00000004 r9:859a6cc0 r8:6b3ce5f8 r7:851b8000 r6:859a6cc1 r5:00000000
[ 1213.775618] r4:80404a5b
[ 1213.778183] [<80379afc>] (sys_ioctl) from [<80100244>] (__sys_trace_return+0x0/0x1c)
[ 1213.786056] Exception stack(0x851b9fa8 to 0x851b9ff0)
[ 1213.791186] 9fa0: 718a1160 00000004 00000004 80404a5b 6b3ce5f8 6b3ce5d8
[ 1213.799490] 9fc0: 718a1160 00000004 43464b4f 00000036 00000000 0000001b 6ce36098 0000001a
[ 1213.807789] 9fe0: 00000036 6b3ce5c0 76f07ba9 76e81ae6
[ 1213.812919] r10:00000036 r9:851b8000 r8:80100264 r7:00000036 r6:43464b4f r5:00000004
[ 1213.820863] r4:718a1160
[ 1213.823435] Code: 0a00004f e5d63000 e88400a0 e5c43018 (e5953010)
[ 1213.829693] ---[ end trace 619244702d2e1552 ]---
@TomaszAIR Thanks again for identifying this whenever you have time may you try https://github.com/EasyIP2023/meta-raspberrypi/tree/testing-two.
I'm able to build and see output without both x11 and opengl being defined in DISTRO_FEATURES
@EasyIP2023 First of all, sorry that it took so long for me to check this out. Second of all.. Thank you! It is working now. I can confirm that using vlc compiled from https://github.com/EasyIP2023/meta-raspberrypi/tree/testing-two on my rpi0w2 with framebuffer only allow me to start video on screen connected via HDMI.
Are those changes already merged into master of meta-raspberrypi?
Also, got one minor issue. In my build I do not use libcamera so I cannot build if I do not remove libcamera_%.bbappend
from dynamic-layers as it does not have recipe to use with. Can it be handled in some way?
@TomaszAIR. The updates to the rpidistro-{vlc,ffmpeg} are merge into master.
BBMASK
is your friend. https://docs.yoctoproject.org/ref-manual/variables.html?highlight=bbmask#term-BBMASK
Thanks. I am not used to to use BBMASK
. Will try that. Looks like vlc works so I think we can close that issue
Description
Want to use vlc without X11 and run it on fb only.
Steps to reproduce the issue:
vlc
to IMAGE_INSTALLraspberrypi0-2w
vc4graphics
from MACHINE_FEATURES and use userlandDescribe the results you received:
We are using custom layer which uses meta-raspberrypi. Previously our project used omxplayer but we were told to try and switch to VLC as it gets more support https://github.com/agherzan/meta-raspberrypi/issues/1102.
rpidistro-vlc got some switches on x11 https://github.com/agherzan/meta-raspberrypi/blob/master/dynamic-layers/multimedia-layer/recipes-multimedia/rpidistro-vlc/rpidistro-vlc_3.0.12.bb#L53 so we try build it to run on fb. What we got are following build errors:
bitbake ffmpeg
start ffmpeg from poky/metaWhen force to build rpidistro-ffmpeg in return we get
This is probably because of https://github.com/agherzan/meta-raspberrypi/blob/master/recipes-multimedia/rpidistro-ffmpeg/rpidistro-ffmpeg_4.3.2.bb#L193, should not be there just
COMPATIBLE_HOST:rpi = "(.*)"
- so the same for https://github.com/agherzan/meta-raspberrypi/blob/master/dynamic-layers/multimedia-layer/recipes-multimedia/rpidistro-vlc/rpidistro-vlc_3.0.12.bb#L157 - after thatrpidistro-ffmpeg
starts build but fails on opengl check (mesa-gl successfully build with this fix https://github.com/agherzan/meta-raspberrypi/issues/987#issuecomment-1020306027)Describe the results you expected:
VLC and ffmpeg distro compiled correctly, able to run vlc on rpi0w2 (at least help command)
Additional information you deem important (e.g. issue happens only occasionally):
Additional details (revisions used, host distro, etc.):