thewh1teagle / vibe

Transcribe on your own!
https://thewh1teagle.github.io/vibe/
MIT License
430 stars 28 forks source link

[Bug]: "Record" feature not working on Linux #108

Open oleole39 opened 3 weeks ago

oleole39 commented 3 weeks ago

What happened?

Vibe 2.0.2's new feature "Record" does not seem to work on Linux. Here are 2 related issues noted and suggestion for 2 UI enhancements:

System Soundcard: Intel Cannon Point-LP High Definition Audio Linux Soundserver (on Linux Mint 21):

  Sound Server-1: ALSA v: k5.15.0-112-generic running: yes
  Sound Server-2: PulseAudio v: 15.99.1 running: yes
  Sound Server-3: PipeWire v: 0.3.48 running: yes

Bugs

  1. Values proposed in Audio Input and Audio Ouput select boxes are a bit nebulous:

    Input

    None
    default -----------------> comes as default
    samplerate
    speexrate
    pulse
    upmix
    vdownmix
    hw:CARD=PCH,DEV=0
    plughw:CARD=PCH,DEV=0
    sysdefault:CARD=PCH
    front:CARD=PCH,DEV=0
    surround40:CARD=PCH,DEV=0
    surround51:CARD=PCH,DEV=0
    surround71:CARD=PCH,DEV=0
    dsnoop:CARD=PCH,DEV=0

    Output:

    None  -----------------> comes as default
    hw:CARD=PCH,DEV=3
    hw:CARD=PCH,DEV=7
    hw:CARD=PCH,DEV=8
    hw:CARD=PCH,DEV=9
    hw:CARD=PCH,DEV=10
    plughw:CARD=PCH,DEV=3
    plughw:CARD=PCH,DEV=7
    plughw:CARD=PCH,DEV=8
    plughw:CARD=PCH,DEV=9
    plughw:CARD=PCH,DEV=10
    hdmi:CARD=PCH,DEV=0
    hdmi:CARD=PCH,DEV=1
    hdmi:CARD=PCH,DEV=2
    hdmi:CARD=PCH,DEV=3
    hdmi:CARD=PCH,DEV=4
    dmix:CARD=PCH,DEV=0
    dmix:CARD=PCH,DEV=3
    dmix:CARD=PCH,DEV=7
    dmix:CARD=PCH,DEV=8
    dmix:CARD=PCH,DEV=9
    dmix:CARD=PCH,DEV=10

    This may be quite OS specific. Settings in the Audacity software for instance gives a similar output. However the latter works using the default settings, which is not the case here (see next point). The OS sound settings' panel manages to show a simpler view of sound options. In my case it only shows 1 input and 1 output options. Here is a picture giving an idea of what it looks like: https://i.ytimg.com/vi/H48yZf3w33g/maxresdefault.jpg. I havn't checked how such list could be retrieved though.

    1. Leaving default settings and pressing "start record" shows the loader with the button "stop record".

      A. Pressing "stop record" actually quits Vibe without error pop-up. But leaving following crash log:

      
      thread 'main' panicked at desktop/src-tauri/src/cmd/audio.rs:218:107:
      called `Result::unwrap()` on an `Err` value: Failed to move file to documents directory

    Caused by: Lien physique inter-périphérique invalide (os error 18)

    Location: desktop/src-tauri/src/cmd/audio.rs:218:53 COMMIT: 462b98cfbca556516dcd85a01ebe483bfdf71678

    
     B. If option "Save record in documents folder" is checked, nothing seems to be actually saved/recorded.

UI suggestions

Steps to reproduce

Install Vibe 2.0.2 on Linux Mint 21

What OS are you seeing the problem on?

Linux

Relevant log output

No response

thewh1teagle commented 3 weeks ago

I'll look into that issue soon. I've only tested Vibe on macOS and Windows, so I may have missed something in Linux. Thanks for providing detailed logs and information about the issue! It will be very helpful.

Whether on Light or Dark theme, the tab structure of files/record buttons are hardly noticeable due to the little contrast of the border color with the background.

  • As a quick improvement, setting CSS var --tab-border-color to the --primary color defined in tailwind makes things better to my mind.

I agree, there are issues with the daisyUI theme (on top of Tailwind). I'm not sure if using the primary color there is the right approach, perhaps a primary color but with a taller border.

  • Introducing that menu with a text such as "Transcribe from: " or "Pick transcription source" above the tabs could maybe the UI easier to understand?

It should be easier to understand. I want to find a way to make it clearer, as you mentioned, but with minimal text or even without text at all. The fewer elements on the main page, the lower the cognitive load.

thewh1teagle commented 3 weeks ago

I just checked it on Ubuntu 22.10. Recording from the microphone works great, the issue is with recording from speakers (the second input settings)

Seems like upstream issue in cpal https://github.com/RustAudio/cpal/issues/310

oleole39 commented 3 weeks ago

perhaps a primary color but with a taller border.

By "taller" you mean thicker or longer? If thicker, not sure whether it would look nice (I guess it depends how thick), but as you wish of course. Simply, as it is now, it is a bit hard to get at the first look that they are tabs.

The fewer elements on the main page, the lower the cognitive load

Ok, the "transcribe from" mention is not absolutely necessary anyway. Already more visible tabs would make it easier to get.

I just checked it on Ubuntu 22.10. Recording from the microphone works great, the issue is with recording from speakers (the second input settings) Seems like upstream issue in cpal RustAudio/cpal#310

Could you please share the output of inxi -Axxx in Ubuntu terminal? Strange that recording from mic does not work with Mint.