In the past, new mini PCs were released as a result of new processors coming to market. However, with the pandemic and its consequences on the supply chain, some Chinese manufacturers’ survival response has been to source old processors in order to continue presenting new devices. It could be argued that for this approach to be successful these alternative older processors should at least be comparable in performance terms to the latest processors that are currently, or theoretically potentially, now available. In terms of low-end Intel mini PC processor chronology which started with Bay Trail and then Cherry Trail followed by the Lakes of Apollo and Gemini, the current benchmark is Jasper Lake. A good example of this adaptation to market circumstances is Beelink’s release of their latest additions to their SEi and SER product lines which feature the older Intel Core i3-8109U (Coffee Lake) and AMD 3200U processors respectively. […]
Linux hardware video encoding on Amlogic A311D2 processor
I’ve spent a bit more time with Ubuntu 22.04 on Khadas VIM4 Amogic A311D2 SBC, and while the performance is generally good features like 3D graphics acceleration and hardware video decoding are missing. But I was pleased to see a Linux hardware video encoding section in the Wiki, as it’s not something we often see supported early on. So I’ve given it a try… First, we need to make a video in NV12 pixel format that’s commonly outputted from cameras. I downloaded a 45-second 1080p H.264 sample video from Linaro, and converted it with ffmpeg:
1 |
ffmpeg -i big_buck_bunny_1080p_H264_AAC_25fps_7200K.MP4 -pix_fmt nv12 big_buck_bunny_1080p_H264_AAC_25fps_7200K-nv12.yuv |
I did this on my laptop. As a raw video, it’s pretty big with 3.3GB of storage used for a 45-second video:
1 2 3 4 |
ls -lh total 3.3G -rw-rw-r-- 1 jaufranc jaufranc 40M Aug 5 2011 big_buck_bunny_1080p_H264_AAC_25fps_7200K.MP4 -rw-rw-r-- 1 jaufranc jaufranc 3.3G May 21 15:03 big_buck_bunny_1080p_H264_AAC_25fps_7200K-nv12.yuv |
Now let’s try to encode the video to H.264 on Khadas VIM4 board using aml_enc_test hardware video encoding sample:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
khadas@Khadas:~$ time aml_enc_test 1080p.nv12 dump.h264 1920 1080 30 25 6000000 1125 1 0 2 4 src_url is : 1080p.nv12 ; out_url is : dump.h264 ; width is : 1920 ; height is : 1080 ; gop is : 30 ; frmrate is : 25 ; bitrate is : 6000000 ; frm_num is : 1125 ; fmt is : 1 ; buf_type is : 0 ; num_planes is : 2 ; codec is : 4 ; codec is H264 Set log level to 4 [initEncParams:177] enc_feature_opts is 0x0 , GopPresetis 0x0 [SetupEncoderOpenParam:513] GopPreset GOP format (2) period 30 LongTermRef 0 [vdi_sys_sync_inst_param:618] [VDI] fail to deliver sync instance param inst_idx=0 [AML_MultiEncInitialize:1378] VPU instance param sync with open param failed [SetSequenceInfo:979] Required buffer fb_num=3, src_num=1, actual src=3 1920x1080 Encode End!width:1920 real 0m26.074s user 0m1.832s sys 0m4.883s |
The output explains the parameters used. There are some error messages, […]
Trying out Edge Impulse machine learning platform on XIAO BLE Sense board
I had seen the Edge Impulse development platform for machine learning on edge devices being used by several boards, but I hadn’t had an opportunity to try it out so far. So when Seeed Studio asked me whether I’d be interested to test the nRF52840-powered XIAO BLE Sense board, I thought it might be a good idea to review it with Edge Impulse as I had seen a motion/gesture recognition demo on the board. It was quite a challenge as it took me four months to complete the review from the time Seeed Studio first contacted me, mostly due to poor communications from DHL causing the first boards to go to customs’ heaven, then wasting time with some of the worse instructions I had seen in a long time (now fixed), and other reviews getting in the way. But I finally managed to get it working (sort of), so let’s […]
Khadas VIM4 Review – Part 2: Android 11 preview and benchmarks
In the first part of Khadas VIM4 review, I showed off the Amlogic A311D2 SBC and some accessories such as the DIY case and M2X expansion board to add M.2 SSD and modem and tried out OOWOW cloud services to install Ubuntu 20.04 server. I’ve now just gotten Fiber Internet at home, so it’s much more practical to test the system, and in the second part of the review, I’ve installed Android 11 on the VIM4 board, checked out settings and system info, and ran some benchmarks. It will be more like a preview since Android 11 is not a consumer-friendly system at this time, and is more designed for people wanting to build their own applications. Installing Android 11 on Khadas VIM4 with OOWOW system Last time around, I used OOWOW system install in the SPI flash on the board to download and install Ubuntu 20.04 server to the […]
Ultenic T10 review – A self-emptying 2-in-1 smart vacuum robot with mopping function
Ultenic T10 is a 2-in-1 smart vacuum cleaner and mopping system with a self-emptying base that’s quite similar to the Cybovac S31 robot I reviewed a little over a year ago. The Cybovac vacuum cleaner still works fine, but it has some shortcomings, so when Ultenic asked me whether I would be interested in reviewing their T10 unit, I accepted, and here I am with a new smart robot vacuum cleaner that I’ll review with the Android app in a larger house. Ultenic T10 unboxing The package and hardware are very similar to what I got with the Cybovac model. The robot comes with a charging base that’s pretty large since it includes its own dust bag for the self-emptying function. Key features listed for the T10 vacuum cleaner: Navigation Type – LDS laser for visual SLAM function Suction power Carpet pressurization – 2700 Pa Fixed-point cleaning – 2700 Pa […]
Khadas VIM4 Review – Part 1: Unboxing, kit assembly, and first boot with OOWOW
Khadas VIM4 is a compact Amlogic A311D2 octa-core Cortex-A73/A53 SBC with 8GB RAM, HDMI input and output, WiFI 6 connectivity, and more. You can check our earlier post for the full specifications. The good news is that it will officially launch on May 10. I’ve also just received a Khadas VIM4 review sample today together with accessories. Today, I’ll start by checking out the board, assembling the kit, and trying out OOWOW services to boot OS from the cloud, before testing available operating systems in more detail in the second part of Khadas VIM4 review a little later. Khadas VIM4 kit unboxing I received everything in a blank cardboard package with several small packages inside. Besides Khadas VIM4 SBC, we’ve got a plastic + metal enclosure with screws and screwdriver, two antennas for WiFi and Bluetooth, a USB Type-C power supply, a USB-C cable, an M.2 expansion board, a short […]
Morefine S500+ Review – An AMD Ryzen 7 5700U mini PC tested with Windows 11, Ubuntu 20.04
Morefine has recently released their S500+ series of mini PC series which features models with either a Zen 2 or Zen 3 AMD mobile processor. Morefine kindly sent one for review and I’ve looked at performance running both Windows and Ubuntu. Morefine S500+ Hardware Overview The S500+ physically consists of a 149 x 145 x 40mm (5.87 x 5.71 x 1.57 inches) square metal case with a plastic top. As an actively cooled mini PC, it is available with either an AMD Zen 2 or Zen 3 mobile processor. The review model came with AMD’s 7 nm Zen 2 Ryzen 7 5700U Lucienne processor which is an eight-core 16-thread 1.8 GHz mobile processor boosting to 4.3 GHz with Radeon Graphics. The front panel has a power button, a light to indicate power, two USB 3.1 ports, and a Type-C USB 3.1 port with Alternate Mode. The rear panel includes a […]
Getting started with Maker Nano RP2040 using CircuitPython: Blinky, RGB LED, and Piezo Buzzer
CNXSoft: This getting started guide was initially posted in Thai language by Suthinee Kerdkaew, and I’ve just translated her work into English with some minor edits. As discussed in an earlier article, Maker Nano RP2040 is a board following the Arduino Nano form factor, but with a more powerful Raspberry Pi RP2040 microcontroller. The board also comes with plenty of LEDs, as well as two RGB LEDs, and a piezo buzzer for audio output. Mr. Jean-Luc Aufranc has just given me a Maker Nano RP2040 board received from Cytron for review. I’ve never used a board before, so it’s my first experience, and in this article, I’ll try to program Maker Nano RP2040 with CircuitPython with three demos: a blinky sample, changing the color of the RGB LEDs, and playing a melody through the piezo buzzer. Let’s see if I can do it. Let’s get started. I first downloaded the […]