Hello
I have vmix_loopdevs=1
/dev/dsp7 -> /dev/oss/oss_hdaudio0/loop0
If I record from this device like this:
ossrecord -O -s44100 -c2 -g400 -d7 a.wav
The first recording is fine, if I stop the recording and re-run the command above a second time, the recorded file only contains garbage (VU meter peaks and a loud noise is recorded).
OSS 4.2 (b 2002/200911060720)TRIAL (C) 4Front Technologies 1996-2009
Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 03)
This OSS version will expire after: May 2010
Audio devices:
0: HD Audio play pcm1 (OUTPUT)
1: HD Audio play pcm2 (OUTPUT)
2: HD Audio play pcm3 (OUTPUT)
3: HD Audio play spdifout (OUTPUT)
4: HD Audio rec rec1 (INPUT)
5: HD Audio rec mic (INPUT)
6: HD Audio rec pcm3 (INPUT)
MIDI devices:
Mixers:
0: High Definition Audio 0x80862802
Linux dejsi 2.6.31-17-generic #54-Ubuntu SMP Thu Dec 10 17:01:44 UTC 2009 x86_64 GNU/Linux
Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 03)
second run of ossrec from vmix loop records garbage
Moderators: hannu, dev, cesium
Re: second run of ossrec from vmix loop records garbage
vmix_loopdevs are not sugar.
Perhaps, you have to reload OSS4:
sudo soundoff
sudo soundon
With many cards, you do not need "vmix_loopdevs", for you can record from "vol".
There might be a better method for your card than "vmix_loopdevs".
Perhaps, you have to reload OSS4:
sudo soundoff
sudo soundon
With many cards, you do not need "vmix_loopdevs", for you can record from "vol".
There might be a better method for your card than "vmix_loopdevs".
Re: second run of ossrec from vmix loop records garbage
soundoff/soundon helps. How do I record from vol? Which device is this? I have:
$ ossinfo
Version info: OSS 4.2 (b 2002/200911060720) (0x00040100) TRIAL
Platform: Linux/x86_64 2.6.32-02063203-generic #02063203 SMP Thu Jan 7 10:09:47 UTC 2010 (dejsi)
Number of audio devices: 8
Number of audio engines: 13
Number of MIDI devices: 0
Number of mixer devices: 1
Device objects
0: osscore0 OSS core services
1: oss_hdaudio0 Intel HD Audio interrupts=4173 (4173)
HD Audio controller Intel HD Audio
Vendor ID 0x8086293e
Subvendor ID 0x17aa3a0d
Codec 0: Unknown (0x80862802/0x80860101)
Codec 2: CX20561 (0x14f15051/0x17aa3c2b)
2: oss_usb0 USB audio core services
MIDI devices (/dev/midi*)
Mixer devices
0: High Definition Audio 0x8086280 (Mixer 0 of device object 1)
Audio devices
HD Audio play pcm1 /dev/oss/oss_hdaudio0/pcm0 (device index 0)
HD Audio play pcm2 /dev/oss/oss_hdaudio0/pcm1 (device index 1)
HD Audio play pcm3 /dev/oss/oss_hdaudio0/pcm2 (device index 2)
HD Audio play spdifout /dev/oss/oss_hdaudio0/spdout0 (device index 3)
HD Audio rec rec1 /dev/oss/oss_hdaudio0/pcmin0 (device index 4)
HD Audio rec mic /dev/oss/oss_hdaudio0/pcmin1 (device index 5)
HD Audio rec pcm3 /dev/oss/oss_hdaudio0/pcmin2 (device index 6)
HD Audio play pcm1 (vmix) loopback record /dev/oss/oss_hdaudio0/loop0 (device index 7)
Nodes
/dev/dsp -> /dev/oss/oss_hdaudio0/pcm0
/dev/dsp_in -> /dev/oss/oss_hdaudio0/pcm0
/dev/dsp_out -> /dev/oss/oss_hdaudio0/pcm0
/dev/dsp_ac3 -> /dev/oss/oss_hdaudio0/spdout0
/dev/dsp_mmap -> /dev/oss/oss_hdaudio0/pcm0
/dev/dsp_multich -> /dev/oss/oss_hdaudio0/pcm0
$ ossinfo
Version info: OSS 4.2 (b 2002/200911060720) (0x00040100) TRIAL
Platform: Linux/x86_64 2.6.32-02063203-generic #02063203 SMP Thu Jan 7 10:09:47 UTC 2010 (dejsi)
Number of audio devices: 8
Number of audio engines: 13
Number of MIDI devices: 0
Number of mixer devices: 1
Device objects
0: osscore0 OSS core services
1: oss_hdaudio0 Intel HD Audio interrupts=4173 (4173)
HD Audio controller Intel HD Audio
Vendor ID 0x8086293e
Subvendor ID 0x17aa3a0d
Codec 0: Unknown (0x80862802/0x80860101)
Codec 2: CX20561 (0x14f15051/0x17aa3c2b)
2: oss_usb0 USB audio core services
MIDI devices (/dev/midi*)
Mixer devices
0: High Definition Audio 0x8086280 (Mixer 0 of device object 1)
Audio devices
HD Audio play pcm1 /dev/oss/oss_hdaudio0/pcm0 (device index 0)
HD Audio play pcm2 /dev/oss/oss_hdaudio0/pcm1 (device index 1)
HD Audio play pcm3 /dev/oss/oss_hdaudio0/pcm2 (device index 2)
HD Audio play spdifout /dev/oss/oss_hdaudio0/spdout0 (device index 3)
HD Audio rec rec1 /dev/oss/oss_hdaudio0/pcmin0 (device index 4)
HD Audio rec mic /dev/oss/oss_hdaudio0/pcmin1 (device index 5)
HD Audio rec pcm3 /dev/oss/oss_hdaudio0/pcmin2 (device index 6)
HD Audio play pcm1 (vmix) loopback record /dev/oss/oss_hdaudio0/loop0 (device index 7)
Nodes
/dev/dsp -> /dev/oss/oss_hdaudio0/pcm0
/dev/dsp_in -> /dev/oss/oss_hdaudio0/pcm0
/dev/dsp_out -> /dev/oss/oss_hdaudio0/pcm0
/dev/dsp_ac3 -> /dev/oss/oss_hdaudio0/spdout0
/dev/dsp_mmap -> /dev/oss/oss_hdaudio0/pcm0
/dev/dsp_multich -> /dev/oss/oss_hdaudio0/pcm0
Re: second run of ossrec from vmix loop records garbage
rrva wrote: How do I record from vol? Which device is this?
It is very simple with ancient soundcards.
Just select it in the mixer. This will make it a "default recscr", that is "/dev/dsp"
$ ossmix
Selected mixer 0/ICH AC97 Mixer (AD1981B)
Known controls are:
vol [<leftvol>:<rightvol>] (currently 56:56)
vol.rec ON|OFF (currently ON)
pcm [<leftvol>:<rightvol>] (currently 57:57)
speaker <monovol> (currently 0)
line [<leftvol>:<rightvol>] (currently 0:0)
line.rec ON|OFF (currently OFF)
mic <monovol> (currently 38)
mic.rec ON|OFF (currently OFF)
cd [<leftvol>:<rightvol>] (currently 0:0)
cd.rec ON|OFF (currently OFF)
igain [<leftvol>:<rightvol>] (currently 31:31)
aux1 [<leftvol>:<rightvol>] (currently 0:0)
aux1.rec ON|OFF (currently OFF)
phone [<leftvol>:<rightvol>] (currently 0:0)
phone.rec ON|OFF (currently OFF)
mono <monovol> (currently 0)
mono.rec ON|OFF (currently OFF)
video [<leftvol>:<rightvol>] (currently 0:0)
video.rec ON|OFF (currently OFF)
spdout.enable ON|OFF (currently OFF)
spdout.adc/dac ON|OFF (currently OFF)
spdout.pro <Consumer|Professional> (currently Consumer)
spdout.audio <AUDIO|DATA> (currently AUDIO)
spdout.copy ON|OFF (currently OFF)
spdout.pre-emph ON|OFF (currently OFF)
spdout.rate <48000|44100|32000> (currently 48000)
spdout.vbit ON|OFF (currently OFF)
vmix0-enable ON|OFF (currently ON)
vmix0-rate <decimal value> (currently 48000) (Read-only)
vmix0-channels <Stereo|Multich> (currently Stereo)
vmix0-src <Fast|High|High+|Production|OFF> (currently Production)
vmix0-outvol <monovol> (currently 23.4 dB)
vmix0-invol <monovol> (currently 25.0 dB)
vmix0.pcm1 [<leftvol>:<rightvol>] (currently 25.0:25.0 dB)
vmix0.pcm2 [<leftvol>:<rightvol>] (currently 25.0:25.0 dB)
vmix0.pcm3 [<leftvol>:<rightvol>] (currently 25.0:25.0 dB)
vmix0.pcm4 [<leftvol>:<rightvol>] (currently 25.0:25.0 dB)
-----------------------------------
EDIT:
Some more details, if you like.
1. I select "vol" as recording source in the mixer
2. then I start Audacity and press "record" button (/dev/dsp)
3. then I launch Skype and call to a friend
4. then I run a player and play music
We listen to music and discuss it.
And Audacity records all these.
Last edited by igorzwx on Wed Jan 20, 2010 7:29 pm, edited 1 time in total.
Re: second run of ossrec from vmix loop records garbage
oss_hdaudio driver doesn't have "vol" etc. for hardware loopback recording. You're stuck with vmix loopback (or oss_audioloop for a "pipe") to use for recording...
Re: second run of ossrec from vmix loop records garbage
cesium wrote:oss_hdaudio driver doesn't have "vol" etc. for hardware loopback recording. You're stuck with vmix loopback (or oss_audioloop for a "pipe") to use for recording...
It might be difficult to believe that such a sophisticated soundcard as Intel HDA cannot make "hardware loopback recording"
http://en.wikipedia.org/wiki/Intel_High ... tion_Audio
Re: second run of ossrec from vmix loop records garbage
I haven't read the hdaudio spec, but the other drivers (ALSA, FreeBSD, Windows, etc.) don't have hw hdaudio recording either AFAIK. I guess this was an oversight in the spec, or the spec authors wanted to drop this feature to cut costs...
Back to our issue, if rrva only wants to record from spotify under wine, oss_audioloop or oss_userdev drivers might offer another way which will work (audioloop is a bit easier to set up here I think). Not sure how to set up wine output device though...
Back to our issue, if rrva only wants to record from spotify under wine, oss_audioloop or oss_userdev drivers might offer another way which will work (audioloop is a bit easier to set up here I think). Not sure how to set up wine output device though...
Re: second run of ossrec from vmix loop records garbage
cesium wrote:I haven't read the hdaudio spec, but the other drivers (ALSA, FreeBSD, Windows, etc.) don't have hw hdaudio recording either AFAIK. I guess this was an oversight in the spec, or the spec authors wanted to drop this feature to cut costs...
Back to our issue, if rrva only wants to record from spotify under wine, oss_audioloop or oss_userdev drivers might offer another way which will work (audioloop is a bit easier to set up here I think). Not sure how to set up wine output device though...
It seems that the spec does not matter. The Russian guru revealed that ALSA cannot play genuine 24bits sound, for example. More precisely, ALSA converts 24bit to 16bits, resamples, and then converts it to 24bits. Not a very nice news for audiophiles.
Would you be so kind as to explain how to use audioloop for loopback recording?
Re: second run of ossrec from vmix loop records garbage
Here's an example:
"sudo modprobe oss_audioloop"
"sudo ossdetect -d -v" (One can add "oss_audioloop" line to /usr/lib/oss/etc/installed_drivers so these two commands are done automatically on OSS startup)
[optional: "sudo ossdevlinks -v" will create a symlink for audioloop's pcm0]
"ossplay -l (file) -d/dev/oss/oss_audioloop0/server0" (We use a program to act as server)
"ossrecord -d/dev/oss/oss_audioloop0/pcm0 - | ossplay -" (The client can now record from oss_audioloop. In this example, we just played the recording).
oss_audioloop can also be used in the reverse mode (e.g. ossrecord as server). See "oss_audioloop" manpage for a few more details.
"sudo modprobe oss_audioloop"
"sudo ossdetect -d -v" (One can add "oss_audioloop" line to /usr/lib/oss/etc/installed_drivers so these two commands are done automatically on OSS startup)
[optional: "sudo ossdevlinks -v" will create a symlink for audioloop's pcm0]
"ossplay -l (file) -d/dev/oss/oss_audioloop0/server0" (We use a program to act as server)
"ossrecord -d/dev/oss/oss_audioloop0/pcm0 - | ossplay -" (The client can now record from oss_audioloop. In this example, we just played the recording).
oss_audioloop can also be used in the reverse mode (e.g. ossrecord as server). See "oss_audioloop" manpage for a few more details.
Re: second run of ossrec from vmix loop records garbage
Many thanks!
I will certainly try this.
I will certainly try this.
Re: second run of ossrec from vmix loop records garbage
cesium wrote:I haven't read the hdaudio spec, but the other drivers (ALSA, FreeBSD, Windows, etc.) don't have hw hdaudio recording either AFAIK. I guess this was an oversight in the spec, or the spec authors wanted to drop this feature to cut costs...
Back to our issue, if rrva only wants to record from spotify under wine, oss_audioloop or oss_userdev drivers might offer another way which will work (audioloop is a bit easier to set up here I think). Not sure how to set up wine output device though...
Let us make it clear. Intel HDA soundcards do allow hardware loopback recording with Windows XP.
We just tested this card:
00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 01)
You have to select the proper things in the mixer.
Then you can call by Skype, play music through the Skype, discuss it,
and record all these as a kind of podcast.
the manual for Windows users is here:
http://wiki.audacityteam.org/wiki/Recor ... er#Windows
Quick answer: use the appropriate "stereo mix" or similar input source on the Audacity Mixer Toolbar dropdown selector, or (on Vista) the appropriate Recording Device at Edit > Preferences > Audio I/O. If you have problems, use the Windows Control Panel to enable and select the correct source or device - see especially the green panel "HELP ON RECORDING COMPUTER PLAYBACK OR STREAMING AUDIO" in that section. Also see this topic on the Audacity Forum.
In short, hardware loopback recording is possible with Intel HDA soundcards with Windows XP. But it might be impossible with Linux, because the proper drivers are missing. You can do this with Linux too, if you have a very old computer with non-HDA onboard soundcard.
Re: second run of ossrec from vmix loop records garbage
I have exactly the same problem with Creative Audigy 4 and the latest oss build. Is it a bug in osscore that should be fixed?
Re: second run of ossrec from vmix loop records garbage
konst1089 wrote:I have exactly the same problem with Creative Audigy 4 and the latest oss build. Is it a bug in osscore that should be fixed?
If you have a problem, you may better start a new thread instead of "necro-bumping"
https://wiki.archlinux.org/index.php/Fo ... Bumping.27
Who is online
Users browsing this forum: No registered users and 2 guests