zhang9302002 / xv6-riscv-image-video-player

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

xv6-riscv JPEG/WAV/MP4 player

This project contains multimedia players:

  • viewer *.jpeg
  • playwav *.wav
  • playmp4 *.rgb

This project is based on:

Environment Setup

User Guideline

  • to start xv6-riscv64 make qemu
  • to display jpeg
    make qemu 
    viewer hutao.jpeg
  • to move the picture
    ctrl+z, W/A/S/D
  • to zoom in / out
    ctrl+z, O/P
  • to play wav:
    make qemu
    playwav test.wav
  • to play mp4:
    ffmpeg -i a.mp4 -r 10.5 -s 320x200 -pix_fmt rgb565le a.rgb
    ffmpeg -i a.mp4 -acodec pcm_s161e -ac 2 -ar 22050 a.wav
    make qemu
    playmp4 a.rgb

Note

  • The RAM of xv6 is limited to 128MB, so mp4 video larger than 30s is not supported.

  • When you add new files(jpeg, wav or rgb) to xv6, you must change Makefile, L180-181 like this:

    fs.img: mkfs/mkfs *.jpeg *.wav *.rgb user/xargstest.sh <newfile> $(UPROGS)

    mkfs/mkfs fs.img *.jpeg *.wav *.rgb user/xargstest.sh <newfile> $(UPROGS)

About

License:Other


Languages

Language:C 96.7%Language:Assembly 1.6%Language:Makefile 1.0%Language:CMake 0.4%Language:Perl 0.2%Language:C++ 0.0%Language:Shell 0.0%