I'm not sure how well the VE in R40 is supported but I seem to have a problem with opening HEVC encoded files.
But hevc one prints a warning and just hangs without showing any video output (also no audio output on files with audio):
$ env VDPAU_TRACE=1 mpv --hwdec-codecs=all --vo=vdpau --hwdec=vdpau jellyfish-3-mbps-hd-hevc.mkv
Playing: jellyfish-3-mbps-hd-hevc.mkv
(+) Video --vid=1 (*) (hevc 1920x1080 29.970fps)
VDPAU capture: Enabled
vdp_imp_device_create_x11(0xad00dec0, 0, -, -)
[VDPAU SUNXI] VE version 0x1701 opened
[VDPAU SUNXI] OSD disabled!
-> 0, 1, 0xadb303c1
vdp_get_proc_address(1, 0, -)
-> 0, 0xadb56039
vdp_get_proc_address(1, 26, -)
-> 0, 0xadb57805
vdp_get_proc_address(1, 27, -)
-> 0, 0xadb55e69
vdp_get_proc_address(1, 29, -)
-> 0, 0xadb5b9c5
vdp_get_proc_address(1, 25, -)
-> 0, 0xadb578f9
vdp_get_proc_address(1, 37, -)
-> 0, 0xadb572b9
vdp_get_proc_address(1, 38, -)
-> 0, 0xadb55df1
vdp_get_proc_address(1, 40, -)
-> 0, 0xadb588dd
vdp_get_proc_address(1, 36, -)
-> 0, 0xadb573ad
vdp_get_proc_address(1, 5, -)
-> 0, 0xadb55fc5
vdp_get_proc_address(1, 4, -)
-> 0, 0xadb58755
vdp_get_proc_address(1, 6, -)
-> 0, 0xadb58605
vdp_get_proc_address(1, 18, -)
-> 0, 0xadb57c11
vdp_get_proc_address(1, 19, -)
-> 0, 0xadb55edd
vdp_get_proc_address(1, 21, -)
-> 0, 0xadb5b315
vdp_get_proc_address(1, 23, -)
-> 0, 0xadb5b5fd
vdp_get_proc_address(1, 22, -)
-> 0, 0xadb5b491
vdp_get_proc_address(1, 34, -)
-> 0, 0xadb5adb9
vdp_get_proc_address(1, 33, -)
-> 0, 0xadb5aeb9
vdp_get_proc_address(1, 66, -)
-> 0, 0xadb55b65
vdp_get_proc_address(1, 64, -)
-> 0, 0xadb56c1d
vdp_get_proc_address(1, 56, -)
-> 0, 0xadb56dd1
vdp_get_proc_address(1, 57, -)
-> 0, 0xadb55c89
vdp_get_proc_address(1, 63, -)
-> 0, 0xadb55bed
vdp_get_proc_address(1, 62, -)
-> 0, 0xadb56cf9
vdp_get_proc_address(1, 65, -)
-> 0, 0xadb56ae5
vdp_get_proc_address(1, 58, -)
-> 0, 0xadb5a579
vdp_get_proc_address(1, 59, -)
-> 0, 0xadb5a9c5
vdp_get_proc_address(1, 4096, -)
-> 0, 0xadb56a0d
vdp_get_proc_address(1, 55, -)
-> 0, 0xadb55d01
vdp_get_proc_address(1, 46, -)
-> 0, 0xadb5a2f5
vdp_get_proc_address(1, 53, -)
-> 0, 0xadb55d79
vdp_get_proc_address(1, 41, -)
-> 0, 0xadb57059
vdp_get_proc_address(1, 54, -)
-> 0, 0xadb5ab35
vdp_get_proc_address(1, 48, -)
-> 0, 0xadb5a911
vdp_get_proc_address(1, 47, -)
-> 0, 0xadb5a155
vdp_get_proc_address(1, 9, -)
-> 0, 0xadb582ad
vdp_get_proc_address(1, 10, -)
-> 0, 0xadb55f51
vdp_get_proc_address(1, 13, -)
-> 0, 0xadb5b19d
vdp_get_proc_address(1, 12, -)
-> 0, 0xadb5b041
vdp_get_proc_address(1, 11, -)
-> 0, 0xadb58125
vdp_get_proc_address(1, 7, -)
-> 0, 0xadb58475
vdp_get_proc_address(1, 14, -)
-> 0, 0xadb57f95
vdp_get_proc_address(1, 20, -)
-> 0, 0xadb57a89
vdp_output_surface_create(1, 0, 1, 1, -)
-> 0, 2
vdp_preemption_callback_register(1, 0xb5b541f1, 0xad035578)
-> 0
vdp_get_proc_address(1, 8, -)
-> 0, 0xadb58395
vdp_get_proc_address(1, 12, -)
-> 0, 0xadb5b041
vdp_get_proc_address(1, 13, -)
-> 0, 0xadb5b19d
vdp_get_proc_address(1, 9, -)
-> 0, 0xadb582ad
vdp_get_proc_address(1, 10, -)
-> 0, 0xadb55f51
vdp_video_surface_query_get_put_bits_y_cb_cr_capabilities(1, 0, 0, -)
-> 0, 1
vdp_video_surface_query_get_put_bits_y_cb_cr_capabilities(1, 0, 1, -)
-> 0, 1
vdp_video_surface_query_get_put_bits_y_cb_cr_capabilities(1, 1, 0, -)
-> 0, 0
vdp_video_surface_query_get_put_bits_y_cb_cr_capabilities(1, 1, 1, -)
-> 0, 0
vdp_video_surface_query_get_put_bits_y_cb_cr_capabilities(1, 1, 2, -)
-> 0, 0
vdp_video_surface_query_get_put_bits_y_cb_cr_capabilities(1, 1, 3, -)
-> 0, 0
vdp_video_surface_query_get_put_bits_y_cb_cr_capabilities(1, 2, 1, -)
-> 0, 0
vdp_output_surface_put_bits_native(2, {0xacdfbb40}, {4}, {0, 0, 0, 0})
-> 0
vdp_get_information_string(-)
-> 0, "sunxi VDPAU Driver"
vdp_output_surface_put_bits_native(2, {0xacdfbb50}, {4}, {0, 0, 0, 0})
-> 0
vdp_bitmap_surface_query_capabilities(1, 4, -, -, -)
-> 0, 0, 8192, 8192
vdp_output_surface_put_bits_native(2, {0xacdfbb28}, {4}, {0, 0, 0, 0})
-> 0
vdp_output_surface_put_bits_native(2, {0xacdfbaf0}, {4}, {0, 0, 0, 0})
-> 0
vdp_output_surface_put_bits_native(2, {0xacdfbab8}, {4}, {0, 0, 0, 0})
-> 0
vdp_output_surface_put_bits_native(2, {0xacdfbb28}, {4}, {0, 0, 0, 0})
-> 0
vdp_output_surface_put_bits_native(2, {0xbeac7da8}, {4}, {0, 0, 0, 0})
-> 0
vdp_output_surface_put_bits_native(2, {0xacdfbab8}, {4}, {0, 0, 0, 0})
-> 0
vdp_output_surface_put_bits_native(2, {0xacdfbb28}, {4}, {0, 0, 0, 0})
-> 0
vdp_output_surface_put_bits_native(2, {0xacdfbb28}, {4}, {0, 0, 0, 0})
-> 0
vdp_output_surface_put_bits_native(2, {0xacdfbb28}, {4}, {0, 0, 0, 0})
-> 0
vdp_output_surface_put_bits_native(2, {0xacdfbab8}, {4}, {0, 0, 0, 0})
-> 0
vdp_output_surface_put_bits_native(2, {0xacdfbab8}, {4}, {0, 0, 0, 0})
-> 0
vdp_output_surface_put_bits_native(2, {0xacdfbab8}, {4}, {0, 0, 0, 0})
-> 0
vdp_output_surface_put_bits_native(2, {0xacdfbb28}, {4}, {0, 0, 0, 0})
-> 0
HEVC video output may be broken due to nVidia bugs.
vdp_get_proc_address(1, 4, -)
-> 0, 0xadb58755
vdp_get_information_string(-)
-> 0, "sunxi VDPAU Driver"
vdp_get_proc_address(1, 7, -)
-> 0, 0xadb58475
vdp_video_surface_query_capabilities(1, 0, -, -, -)
-> 0, 1, 8192, 8192
vdp_get_proc_address(1, 36, -)
-> 0, 0xadb573ad
vdp_decoder_query_capabilities(1, 100, -, -, -, -, -)
-> 0, 1, 150, 32400, 3840, 2160
vdp_get_proc_address(1, 37, -)
-> 0, 0xadb572b9
vdp_get_proc_address(1, 40, -)
-> 0, 0xadb588dd
vdp_decoder_create(1, 100, 1920, 1080, 1, -)
-> 0, 3
vdp_video_surface_create(1, 0, 1920, 1080, -)
-> 0, 4
vdp_decoder_render(3, 4, {1, 0, 1920, 1080, 0, 0, 4, 5, 0, 3, 0, 3, 0, 0, 0, {{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}}, {{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}}, {{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}}, {{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}}, {0, 0, 0, 0, 0, 0}, {0, 0}, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, {4294967295, 4294967295, 4294967295, 4294967295, 4294967295, 4294967295, 4294967295, 4294967295, 4294967295, 4294967295, 4294967295, 4294967295, 4294967295, 4294967295, 4294967295, 4294967295}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, 0, 0, 0, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}}, 2, {{(ver 0) 3, ...}, {(ver 0) 45236, ...}})
vdp_output_surface_put_bits_native(2, {0xacdfbb28}, {4}, {0, 0, 0, 0})
-> 0
vdp_output_surface_put_bits_native(2, {0xacdfbb28}, {4}, {0, 0, 0, 0})
-> 0
vdp_output_surface_put_bits_native(2, {0xacdfbb28}, {4}, {0, 0, 0, 0})
-> 0
vdp_output_surface_put_bits_native(2, {0xacdfbb28}, {4}, {0, 0, 0, 0})
-> 0
^C
$
Last line is printed again every ~10 seconds.
Hi,
I'm not sure how well the VE in R40 is supported but I seem to have a problem with opening HEVC encoded files.
H264 works fine:
But hevc one prints a warning and just hangs without showing any video output (also no audio output on files with audio):
Mplayer just shows blank screen:
System details:
Linux bpi-iot-ros-ai 3.10.108-BPI-M2U-Kernel #1 SMP Wed Mar 28 16:57:21 +03 2018 armv7l armv7l armv7l GNU/LinuxHere is a VDPAU trace:
Last line is printed again every ~10 seconds.
Thanks