Hello everyone,
I try to get the Audio-out test implementation running. When I start the test implementation, I get the following output:
... [init -> test-audio_out] C++ runtime: Genode::Parent::Service_denied ...
To me it looks as if the build/bin/config file was misconfigured. It looks like
<config> <parent-provides> <service name="CAP"/> <service name="LOG"/> <service name="RM"/> <service name="SIGNAL"/> </parent-provides> <default-route> <any-service><parent/><any-child/></any-service> </default-route> <start name="audio_out_drv"> <resource name="RAM" quantum="8M"/> <provides><service name="Audio_out"/></provides> </start> <start name="test-audio_out"> <resource name="RAM" quantum="1M"/> <config> <filename>audio1.raw</filename> <filename>audio2.raw</filename> </config> </start> </config>
Do you have any idea for what I need to correct ?
Moreover, there is another issue. The audio files needed to run the audio-out test are missing and the README file provided simply states 'The raw data must comply the Audio_out standard format.'
Has anyone got the audio files ?
Where can I get information regarding the aforementioned Audio_out standard format and are there any tools for converting audio files such as WAVs into Genode?s raw format ?
Best regards Markus
Hi Markus,
... [init -> test-audio_out] C++ runtime: Genode::Parent::Service_denied ...
To me it looks as if the build/bin/config file was misconfigured. It looks like
<config> <parent-provides> <service name="CAP"/> <service name="LOG"/> <service name="RM"/> <service name="SIGNAL"/> </parent-provides> <default-route> <any-service><parent/><any-child/></any-service> </default-route> <start name="audio_out_drv">name> <resource
name="RAM" quantum="8M"/>
<provides><service name="Audio_out"/></provides> </start> <start name="test-audio_out">test> <resource
name="RAM" quantum="1M"/>
<config> <filename>audio1.raw</filename> <filename>audio2.raw</filename> </config> </start>start> </config>
Do you have any idea for what I need to correct ?
I'm afraid you are missing a few essential services (which ones exactly depends on the platform you are running Genode on).
Moreover, there is another issue. The audio files needed to run the audio-out test are missing and the README file provided simply states 'The raw data must comply the Audio_out standard format.'
Where can I get information regarding the aforementioned Audio_out standard format and are there any tools for converting audio files such as WAVs into Genode?s raw format ?
The currently used raw format is simply stereo float32 with a sample rate of 44.1kHz. Amongst others, this information can be obtained by looking at the 'os/include/audio_out_session/audio_out_session.h' header file.
As mentioned in 'dde_oss/README' you can create a usable raw audio file from a given audio file by yourself by execuing 'sox(1)':
'sox -c 2 -r 44100 foo.mp3 foo.f32'
I have attached a working runscript that can be used to play such a file on Linux as well as on e.g. NOVA by using dde_oss. (Note, that Using Qemu's ICH driver results in some what disorted sound which is a known issue.)
Cheers Josef
I have attached a working runscript that can be used to play such a file on Linux as well as on e.g. NOVA by using dde_oss. (Note, that Using Qemu's ICH driver results in some what disorted sound which is a known issue.)
Talking about essential services… the script lacks <service name="CPU"/> in the <parent-provides> node — sorry about that :-)
Hello Josef,
thank you very much for your help! Now the audio-out test implementation works.
Best regards Markus