本文來源電子發燒友社區,作者:jf_06445065, 帖子地址:https://bbs.elecfans.com/jishu_2291062_1_1.html
背景
因為我本人是做音視頻處理基礎技術的,所以通常拿到一塊板子后首先想到的是嘗試把視頻能力用起來,例如視頻的編碼,視頻的解碼,看一看編碼的畫質如何,解碼性能如何,然后再進行下一步。
既然要嘗試使用,那么首先就考慮裝一個操作系統吧,第一件事是參考說明文檔,去下載一個Fedora,然后刷到sd卡里面。
嘗試使用
根據說明文檔看,我下載的Fedora不可以直接刷到sd里面,因為他的格式是這樣的:
Fedora-riscv64-jh7100-developer-xfce-Rawhide-20211226-214100.n.0-sda.raw.zst
要先安裝一下zstd,然后
zstd Fedora-riscv64-jh7100-developer-xfce-Rawhide-20211226-214100.n.0-sda.raw.zst -o Fedora-riscv64-jh7100-developer-xfce-Rawhide-20211226-214100.n.0-sda.raw
然后用dd將Fedora-riscv64-jh7100-developer-xfce-Rawhide-20211226-214100.n.0-sda.raw寫到SD卡即可
插入sd卡以后,用USB type-c接口的電源線插到板子上上電,插入HDMI鏈接到顯示器,稍等一會就能夠看到Fedora的啟動界面,登錄提示頁面,按照手冊中寫的用戶名密碼輸入后即可進入系統。
[riscv@fedora-starfive ~]$ cat //proc/cpuinfo
processor : 0
hart : 1
isa : rv64imafdc
mmu : sv39
uarch : sifive,u74-mc
processor : 1
hart : 0
isa : rv64imafdc
mmu : sv39
uarch : sifive,u74-mc```
還是個雙核??窗遄拥慕榻B是支持視頻編碼的
嘗試使用FFmpeg自動識別環境
但是手冊里面并未說明該如何跑起來,于是我嘗試用ffmpeg來跑一下。
[riscv@fedora-starfive ~]$ git clone git://source.ffmpeg.org/ffmpeg.git
正克隆到 'ffmpeg'...
remote: Enumerating objects: 666444, done.
remote: Counting objects: 100% (666444/666444), done.
remote: Compressing objects: 100% (130415/130415), done.
remote: Total 666444 (delta 539474), reused 661607 (delta 534726)
接收對象中: 100% (666444/666444), 131.55 MiB | 58.00 KiB/s, 完成.
處理 delta 中: 100% (539474/539474), 完成.
正在更新文件: 100% (7781/7781), 完成.
[riscv@fedora-starfive ~]$ cd ffmpeg/
[riscv@fedora-starfive ffmpeg]$ ls
Changelog CONTRIBUTING.md COPYING.LGPLv2.1 doc INSTALL.md libavfilter libpostproc LICENSE.md presets tests
compat COPYING.GPLv2 COPYING.LGPLv3 ffbuild libavcodec libavformat libswresample MAINTAINERS README.md tools
configure COPYING.GPLv3 CREDITS fftools libavdevice libavutil libswscale Makefile RELEASE
[riscv@fedora-starfive ffmpeg]$ cd ..
[riscv@fedora-starfive ~]$ mkdir build_ffmpeg
[riscv@fedora-starfive ~]$ cd build_ffmpeg/
[riscv@fedora-starfive build_ffmpeg]$ ../ffmpeg/configure --disable-everything --enable-ffmpeg --enable-decoder=h264,mpeg4 --enable-hwaccels
install prefix /usr/local
source path src
C compiler gcc
C library glibc
ARCH riscv (generic)
big-endian no
runtime cpu detection yes
debug symbols yes
strip symbols yes
optimize for size no
optimizations yes
static yes
shared no
postprocessing support no
network support yes
threading support pthreads
safe bitstream reader yes
texi2html enabled no
perl enabled yes
pod2man enabled yes
makeinfo enabled yes
makeinfo supports HTML yes
xmllint enabled yes
External libraries:
alsa iconv libxcb_shape libxcb_xfixes zlib
bzlib libxcb libxcb_shm lzma
External libraries providing hardware acceleration:
cuda_llvm v4l2_m2m
Libraries:
avcodec avdevice avfilter avformat avutil swresample swscale
Programs:
ffmpeg ffprobe
Enabled decoders:
h263 h264 mpeg4
Enabled encoders:
Enabled hwaccels:
Enabled parsers:
h263 mpeg4video
Enabled demuxers:
Enabled muxers:
Enabled protocols:
Enabled filters:
aformat atrim hflip transpose vflip
anull format null trim
Enabled bsfs:
Enabled indevs:
Enabled outdevs:
License: LGPL version 2.1 or later
config_components.h is unchanged
libavutil/avconfig.h is unchanged
libavfilter/filter_list.c is unchanged
libavcodec/codec_list.c is unchanged
libavcodec/parser_list.c is unchanged
libavcodec/bsf_list.c is unchanged
libavformat/demuxer_list.c is unchanged
libavformat/muxer_list.c is unchanged
libavdevice/indev_list.c is unchanged
libavdevice/outdev_list.c is unchanged
libavformat/protocol_list.c is unchanged
ffbuild/config.sh is unchanged
后來經過咨詢技術支持老師,給的反饋是需要自己重新buildroot,需要加載OMX相應的模塊才能開啟硬件codec模塊。也就是說文檔里面提到的支持的音視頻處理相關的功能默認是不支持的,需要自己重新DIY一下,starfive官方提供的Fedora默認是用不起來的。
思考與總結:
**既然文檔里面說支持了,至少BSP應該是需要直接提供出來的,而不是讓用戶DIY
既然starfive的提供的開發板里面元器件都是固定的,提供的基礎能力都是固定的,擴展接口也是固定的,完全可以提供一個開箱即用的操作系統而不是讓用戶拿到板子后再去琢磨怎么build一下支持上**
參考一下樹莓派的做法,最起碼的開箱即用
-
RISC-V
+關注
關注
45文章
2292瀏覽量
46210 -
賽昉科技
+關注
關注
3文章
154瀏覽量
14305
發布評論請先 登錄
相關推薦
評論