[nama] Re: No sound output

  • From: Lars Bjørndal <lars@xxxxxxxxxxx>
  • To: Joel Roth <joelz@xxxxxxxxx>
  • Date: Fri, 28 Dec 2018 11:19:13 +0100

Hi, Joel!

Thanks for your quick reply!

You wrote:

On Thu, Dec 27, 2018 at 09:56:13AM +0100, Lars Bjørndal wrote:
Thanks for your qhick response!

Lars Bjørndal wrote:
Hi, Joel!

Thanks a lott for your help!

I just realized that if I wait 15-20 seconds after starting the play, 
the sound is heard. Strange.

That is curious. Does the WAV file play from the beginning when you
hear it, or is the position already 15-20 seconds into the
recording?

The position is moving, so it's e.g. at 40 seconds. It seems that the first 
seconds of playing (although it's silent), moves faster than the real time. 
So if I press space and wait 1 sec. before stopping, the posistion is moved 
let's say 30 secs forward.

Did you edit $HOME/.namarc ? It's not clearly documented, but
the frequency: entry in the abbreviations section
should be set to the sample rate of your soundcard.

The ~/.namarc is untuched.

In /proc/asound/card0 I have files like codec#0 and codec#3. In codec#0 I have 
...

Default PCM:
    rates [0x5f0]: 32000 44100 48000 88200 96000 192000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM


It looks like default namarc defaults to 44100. 

I've not changed that.

The template is taken from config item raw_to_disk_format.

That would affect how import-audio works. 

What kind of audio environment ? Possibly pulseaudio running?

Yes, pulse is running.


Other ecasound processes?

No.

If you want to monitor ecasound closely, start
ecasound in a separate terminal as:

ecasound -c --server --server-tcp-port=2868 -d

( -dd gives more debug output -ddd even more.)

Then start Nama, and it will connect to the
existing process, which will scroll
with debugging information while Nama runs.

Please find a typescript file attached.

And/or you can start Nama with -L ECI to 
see the ecasound commands. 

You can run ecasound diagnostic commands from the Nama
prompt: fs,

nama lotta1 l1 > fs
### Audio input/output status (chainsetup '/home/lrs/nama/lotta1/Setup.ecs') ###
Input (1): "loop,Main_in" - [Internal loop device]
 -> connected to chains "1": position (63.948/0.000) seconds.
  -> open, , f32_le/16ch/44100Hz, buffer 0.
  Input (2): "/home/lrs/nama/lotta1/.wav/l1_1.wav," - [RIFF wave file]
   -> connected to chains "3": position (63.948/3092.317) seconds.
    -> open, , s16_le/2ch/44100Hz, buffer 1024.
    Output (1): "alsa,default" - [ALSA named PCM device]
     -> connected to chains "1": realtime-device; position 0, delay 0.
      -> open, s16_le/2ch/44100Hz, buffer 1024.
      Output (2): "loop,Main_in" - [Internal loop device]
       -> connected to chains "3": position (63.948/0.000) seconds.
        -> open, , f32_le/16ch/44100Hz, buffer 0.
        nama lotta1 l1 >

es,

### Chain operator status (chainsetup '/home/lrs/nama/lotta1/Setup.ecs') ###
Chain "1":
        1. Normal pan: [1] right-% 50.000
        2. Amplify (dB): [1] gain-db 0.000, [2] channel 0.000
                Chain "3":
        1. Normal pan: [1] right-% 50.000
        2. Amplify (dB) (BYPASSED): [1] gain-db 0.000, [2] channel 0.000
        nama lotta1 l1 >


cs.

nama lotta1 l1 > cs
### Chain status (chainsetup '/home/lrs/nama/lotta1/Setup.ecs') ###
Chain "1" "Normal pan""Amplify (dB)"
Chain "3" [selected] "Normal pan""Amplify (dB)"
nama lotta1 l1 >

These are the lowest level of
clarifying what ecasound is doing.

Thanks in advance

Lars

There are commands for positioning an audio clip (aka WAV
file aka RIFF), for defining, positioning and processing
regions of an audio clip, and for fades, all that might
be able to cause what you've observed.

So, it may be you may have accomplished something
unwittingly :-) Or perhaps the software is developing
sentience 8-)

The Nama command '3 show-track' should indicate if there
is a region or shift (position offset) involved. 

nama lotta1 l1 > 3 show-track
Use of uninitialized value in addition (+) at 
/usr/share/perl5/vendor_perl/Nama/
TrackRegion.pm line 51.
 No. Name       Requested  Status  Source                Destination   Vol  
 Pan
 
================================================================================
   3  l1                    PLAY    l1_1.wav              Main bus        0 
   50
   Length: 3092.318 / 51:32
   All versions: 1
   Signal width: mono
   C: Pan, epp, l1
       1. Level %: 50
       D: Volume, eadb, 1, l1
           1. Level db: 0
nama lotta1 l1 >


'list-fade' Will dump the data of the various fades.

No output.


The es command outputs

nama lotta1 l1 > es
### Chain operator status (chainsetup 
'/home/lrs/nama/lotta1/Setup.ecs') ###
Chain "1":
        1. Normal pan: [1] right-% 50.000
        2. Amplify (dB): [1] gain-db 0.000, [2] channel 0.000
Chain "3":
        1. Normal pan: [1] right-% 50.000
        2. Amplify (dB) (BYPASSED): [1] gain-db 0.000, [2] channel 0.000

I tried the bypass command:

nama lotta1 l1 > bypass
track
l1
, bypassing effects:
Use of uninitialized value in concatenation (.) or string at 
/usr/share/perl5/ve
ndor_perl/Nama/Grammar.pm line 332.
D ()
nama lotta1 l1 >

Despite the warning bypass-effect (bfx) and
bring-back-effect (bbfx) appear to work in my test. Like
you, I saw the BYPASSED indicator in the Ecasound 'es'
output, and also confirmed the status of the bypassed flag
in Nama's corresponding effect object.

With `ecasound -c Setup.ecs', it starts to play immediately if I type 
start. Also if I use setpos to enter a new position beforehand.

What do you observe when using setpos in Nama?  Does it affect the delay?

No.

Please post the result of the command "3 dump" in this
project.

nama lotta1 l1 > 3 dump
bless( {
  class => "Nama::Track",
  group => "Main",
  looping => undef,
   modifiers => "",
  n => 3,
    name => "l1",
      old_vol_level => undef,
        ops => [
        "C",
        "D",
              ],
        pan => "C",
          restore => 1,
            rw => "PLAY",
              send_id => undef,
        send_type => undef,
          source_id => 1,
            source_type => "soundcard",
      version => 0,
                vol => "D",
                  width => 1,
          }, 'Nama::Track' )
      nama lotta1 l1 >

And might as well add "1 dump".

nama lotta1 l1 > 1 dump
bless( {
  class => "Nama::SimpleTrack",
    group => "Null",
    looping => undef,
    modifiers => "",
  n => 1,
    name => "Main",
      old_vol_level => undef,
        ops => [
                "A",
            "B",
              ],
        pan => "A",
          restore => 1,
            rw => "MON",
              send_id => 1,
                send_type => "soundcard",
                  source_id => "Main",
            source_type => "bus",
              vol => "B",
                width => 2,
                }, 'Nama::SimpleTrack' )
    nama lotta1 Main >

Thanks

Lars


-- 
Joel Roth
  


Attachment: typescript.gz
Description: application/gzip

Other related posts: