Comments (7)
I am interested on solving this issue. May I be the assignee?
Welcome. Please proceed. Keep in mind that the target verification scenarios might involve games like Doom and Quake, where we can make minimal changes to enable audio for these classic video games. Consequently, we could introduce high-level system calls based on SDL to meet the aforementioned expectations.
from rv32emu.
we can use fewer system call via checking the type of request using register value. I think
setup_sound
andshutdown_sound
can be a pair,play_music
andplay_sfx
can be a pair. Is it necessary to combine them?
Please take a moment to review the principles outlined in Basics of the Unix Philosophy, particularly the concept of designing for simplicity and introducing complexity only when necessary.
In the context of our system, there are a single system call related to display management, along with an additional two system calls associated with event handling. Furthermore, I anticipate approximately 2 system calls for audio/sound manipulation. This means that we should aim to consolidate the existing APIs into a minimalist-style list of available system calls, rather than providing ruch-featured function prototypes. Your attention to maintaining simplicity while ensuring functionality is appreciated.
from rv32emu.
I already named them as sound_manage and sound_control. Is it OK?
I suggest adhering to the terminologies employed in SDL and its related libraries. It is important to provide clear explanations of the terms you intend to modify.
from rv32emu.
I am interested on solving this issue. May I be the assignee?
from rv32emu.
You prosed 6 system calls for audio/sound. i.e.,
- play_sfx
- play_music
- stop_music
- set_music_volume
- setup_sound
- shutdown_sound
Can you use fewer ones?
Sure, we can use fewer system call via checking the type of request using register value.
I think setup_sound
and shutdown_sound
can be a pair, play_music
and play_sfx
can be a pair.
Is it necessary to combine them?
from rv32emu.
In the context of our system, there are a single system call related to display management, along with an additional two system calls associated with event handling. Furthermore, I anticipate approximately 2 system calls for audio/sound manipulation.
Inspired by Simple-SDL2-Audio, my preliminary concept for enhancing the sound/music system calls is to maintain two distinct system calls: audio_setup
and audio_control
.
- The
audio_setup
call would define the audio type, whether it's for sound or music. Only one music track can play concurrently, and it would loop. Multiple sound effects can be played concurrently, though an excessive number might lead to distortion. - The
audio_control
call would then manage operations like play, pause, stop, and end.
from rv32emu.
In the context of our system, there are a single system call related to display management, along with an additional two system calls associated with event handling. Furthermore, I anticipate approximately 2 system calls for audio/sound manipulation.
Inspired by Simple-SDL2-Audio, my preliminary concept for enhancing the sound/music system calls is to maintain two distinct system calls:
audio_setup
andaudio_control
.
- The
audio_setup
call would define the audio type, whether it's for sound or music. Only one music track can play concurrently, and it would loop. Multiple sound effects can be played concurrently, though an excessive number might lead to distortion.- The
audio_control
call would then manage operations like play, pause, stop, and end.
I already named them as sound_manage
and sound_control
. Is it OK?
from rv32emu.
Related Issues (20)
- jit: Fail to execute Doom HOT 1
- `do_nop` is not negligible
- macro operation fusion: sequential shift instructions HOT 1
- jit: Implement runtime instruction profiling HOT 4
- rv_histogram static analysis tool behaves weired on build/hello.elf HOT 1
- rv_histogram behaves weird on build/hello.elf HOT 3
- Fail to pass the latest riscv-arch-test HOT 1
- Evaluate block replacement algorithms which receive attention on improvement of hit ratio HOT 21
- Get rid of `rv->X[rv_reg_zero] = 0` completely HOT 1
- Assertion failed: (total_read == rv_get_reg(rv, rv_reg_a2)), function syscall_read HOT 2
- macro operation fusion: addi + sw / lw + addi HOT 1
- Study "A tale of binary translation" HOT 2
- Link register jump
- Incorrect timestamp rendered on benchmark page HOT 2
- Constant propagation and constant folding
- Attempt to add new fusion instruction leads to error
- jit: Transition from Linear to Graph-Based IR HOT 2
- jit: Background compilation thread
- Interpreter should manipulate pc in registers when possible HOT 11
- Build with Profile-Guided Optimization HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rv32emu.