FalconChristmas / fpp

Falcon Player
http://FalconChristmas.com
Other
569 stars 202 forks source link

Experimental Feature to force audioDeviceName in SDLOut.cpp #2013

Closed HADeveloper closed 2 weeks ago

HADeveloper commented 4 weeks ago

This adds an experimental field to the AV settings page to manually set the Audio Card Id.

We were having an issue where the installed drivers for our audio card had the wrong id in the card folder. We manually set the audioDeviceName in the SDLOut.cpp file and it worked, so I added it as an option in the settings page.

HADeveloper commented 4 weeks ago

Here is a screenshot of the new field and how we are using it. image

dkulp commented 4 weeks ago

Curious to know what the output of "aplay -lL" looks like. I'm wondering if the comma in the name is causing an issue.

HADeveloper commented 4 weeks ago

Here is the aplay -lL

$ aplay -lL                                                                                                                                                                                                                                    
null                                                                                                                                                                                                                                                           
    Discard all samples (playback) or generate zero samples (capture)                                                                                                                                                                                          
default                                                                                                                                                                                                                                                        
    Playback/recording through the PulseAudio sound server                                                                                                                                                                                                     
lavrate                                                                                                                                                                                                                                                        
    Rate Converter Plugin Using Libav/FFmpeg Library                                                                                                                                                                                                           
samplerate                                                                                                                                                                                                                                                     
    Rate Converter Plugin Using Samplerate Library                                                                                                                                                                                                             
speexrate                                                                                                                                                                                                                                                      
    Rate Converter Plugin Using Speex Resampler                                                                                                                                                                                                                
jack                                                                                                                                                                                                                                                           
    JACK Audio Connection Kit                                                                                                                                                                                                                                  
oss                                                                                                                                                                                                                                                            
    Open Sound System                                                                                                                                                                                                                                          
pulse                                                                                                                                                                                                                                                          
    PulseAudio Sound Server                                                                                                                                                                                                                                    
speex                                                                                                                                                                                                                                                          
    Plugin using Speex DSP (resample, agc, denoise, echo, dereverb)                                                                                                                                                                                            
upmix                                                                                                                                                                                                                                                          
    Plugin for channel upmix (4,6,8)                                                                                                                                                                                                                           
vdownmix                                                                                                                                                                                                                                                       
    Plugin for channel downmix (stereo) with a simple spacialization                                                                                                                                                                                           
hw:CARD=PCH,DEV=0                                                                                                                                                                                                                                              
    HDA Intel PCH, ALC3246 Analog                                                                                                                                                                                                                              
    Direct hardware device without any conversions                                                                                                                                                                                                             
hw:CARD=PCH,DEV=3                                                                                                                                                                                                                                              
    HDA Intel PCH, HDMI 0                                                                                                                                                                                                                                      
    Direct hardware device without any conversions                                                                                                                                                                                                             
hw:CARD=PCH,DEV=7                                                                                                                                                                                                                                              
    HDA Intel PCH, VE248                                                                                                                                                                                                                                       
    Direct hardware device without any conversions                                                                                                                                                                                                             
hw:CARD=PCH,DEV=8                                                                                                                                                                                                                                              
    HDA Intel PCH, HDMI 2                                                                                                                                                                                                                                      
    Direct hardware device without any conversions                                                                                                                                                                                                             
hw:CARD=PCH,DEV=9                                                                                                                                                                                                                                              
    HDA Intel PCH, HDMI 3                                                                                                                                                                                                                                      
    Direct hardware device without any conversions                                                                                                                                                                                                             
plughw:CARD=PCH,DEV=0                                                                                                                                                                                                                                          
    HDA Intel PCH, ALC3246 Analog                                                                                                                                                                                                                              
    Hardware device with all software conversions                                                                                                                                                                                                              
plughw:CARD=PCH,DEV=3                                                                                                                                                                                                                                          
    HDA Intel PCH, HDMI 0                                                                                                                                                                                                                                      
    Hardware device with all software conversions                                                                                                                                                                                                              
plughw:CARD=PCH,DEV=7                                                                                                                                                                                                                                          
    HDA Intel PCH, VE248                                                                                                                                                                                                                                       
    Hardware device with all software conversions                                                                                                                                                                                                              
plughw:CARD=PCH,DEV=8                                                                                                                                                                                                                                          
    HDA Intel PCH, HDMI 2                                                                                                                                                                                                                                      
    Hardware device with all software conversions                                                                                                                                                                                                              
plughw:CARD=PCH,DEV=9                                                                                                                                                                                                                                          
    HDA Intel PCH, HDMI 3                                                                                                                                                                                                                                      
    Hardware device with all software conversions                                                                                                                                                                                                              
sysdefault:CARD=PCH                                                                                                                                                                                                                                            
    HDA Intel PCH, ALC3246 Analog                                                                                                                                                                                                                              
    Default Audio Device                                                                                                                                                                                                                                       
front:CARD=PCH,DEV=0                                                                                                                                                                                                                                           
    HDA Intel PCH, ALC3246 Analog                                                                                                                                                                                                                              
    Front output / input                                                                                                                                                                                                                                       
surround21:CARD=PCH,DEV=0                                                                                                                                                                                                                                      
    HDA Intel PCH, ALC3246 Analog                                                                                                                                                                                                                              
    2.1 Surround output to Front and Subwoofer speakers                                                                                                                                                                                                        
surround40:CARD=PCH,DEV=0                                                                                                                                                                                                                                      
    HDA Intel PCH, ALC3246 Analog                                                                                                                                                                                                                              
    4.0 Surround output to Front and Rear speakers                                                                                                                                                                                                             
surround41:CARD=PCH,DEV=0                                                                                                                                                                                                                                      
    HDA Intel PCH, ALC3246 Analog                                                                                                                                                                                                                              
    4.1 Surround output to Front, Rear and Subwoofer speakers                                                                                                                                                                                                  
surround50:CARD=PCH,DEV=0                                                                                                                                                                                                                                      
    HDA Intel PCH, ALC3246 Analog                                                                                                                                                                                                                              
    5.0 Surround output to Front, Center and Rear speakers                                                                                                                                                                                                     
surround51:CARD=PCH,DEV=0                                                                                                                                                                                                                                      
    HDA Intel PCH, ALC3246 Analog                                                                                                                                                                                                                              
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers                                                                                                                                                                                          
surround71:CARD=PCH,DEV=0                                                                                                                                                                                                                                      
    HDA Intel PCH, ALC3246 Analog                                                                                                                                                                                                                              
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers                                                                                                                                                                                       
hdmi:CARD=PCH,DEV=0                                                                                                                                                                                                                                            
    HDA Intel PCH, HDMI 0                                                                                                                                                                                                                                      
    HDMI Audio Output                                                                                                                                                                                                                                          
hdmi:CARD=PCH,DEV=1                                                                                                                                                                                                                                            
    HDA Intel PCH, VE248                                                                                                                                                                                                                                       
    HDMI Audio Output                                                                                                                                                                                                                                          
hdmi:CARD=PCH,DEV=2                                                                                                                                                                                                                                            
    HDA Intel PCH, HDMI 2                                                                                                                                                                                                                                      
    HDMI Audio Output                                                                                                                                                                                                                                          
hdmi:CARD=PCH,DEV=3                                                                                                                                                                                                                                            
    HDA Intel PCH, HDMI 3                                                                                                                                                                                                                                      
    HDMI Audio Output                                                                                                                                                                                                                                          
dmix:CARD=PCH,DEV=0                                                                                                                                                                                                                                            
    HDA Intel PCH, ALC3246 Analog                                                                                                                                                                                                                              
    Direct sample mixing device                                                                                                                                                                                                                                
dmix:CARD=PCH,DEV=3                                                                                                                                                                                                                                            
    HDA Intel PCH, HDMI 0                                                                                                                                                                                                                                      
    Direct sample mixing device                                                                                                                                                                                                                                
dmix:CARD=PCH,DEV=7                                                                                                                                                                                                                                            
    HDA Intel PCH, VE248                                                                                                                                                                                                                                       
    Direct sample mixing device                                                                                                                                                                                                                                
dmix:CARD=PCH,DEV=8                                                                                                                                                                                                                                            
    HDA Intel PCH, HDMI 2                                                                                                                                                                                                                                      
    Direct sample mixing device                                                                                                                                                                                                                                
dmix:CARD=PCH,DEV=9                                                                                                                                                                                                                                            
    HDA Intel PCH, HDMI 3                                                                                                                                                                                                                                      
    Direct sample mixing device                                                                                                                                                                                                                                
usbstream:CARD=PCH                                                                                                                                                                                                                                             
    HDA Intel PCH                                                                                                                                                                                                                                              
    USB Stream Output                                                                                                                                                                                                                                          
hw:CARD=ASI58100,DEV=0                                                                                                                                                                                                                                         
    ASI5810-0, Asihpi PCM                                                                                                                                                                                                                                      
    Direct hardware device without any conversions                                                                                                                                                                                                             
plughw:CARD=ASI58100,DEV=0                                                                                                                                                                                                                                     
    ASI5810-0, Asihpi PCM                                                                                                                                                                                                                                      
    Hardware device with all software conversions                                                                                                                                                                                                              
sysdefault:CARD=ASI58100                                                                                                                                                                                                                                       
    ASI5810-0, Asihpi PCM                                                                                                                                                                                                                                      
    Default Audio Device                                                                                                                                                                                                                                       
dmix:CARD=ASI58100,DEV=0                                                                                                                                                                                                                                       
    ASI5810-0, Asihpi PCM                                                                                                                                                                                                                                      
    Direct sample mixing device                                                                                                                                                                                                                                
usbstream:CARD=ASI58100                                                                                                                                                                                                                                        
    ASI5810-0                                                                                                                                                                                                                                                  
    USB Stream Output                                                                                                                                                                                                                                          
**** List of PLAYBACK Hardware Devices ****                                                                                                                                                                                                                    
card 0: PCH [HDA Intel PCH], device 0: ALC3246 Analog [ALC3246 Analog]                                                                                                                                                                                         
  Subdevices: 1/1                                                                                                                                                                                                                                              
  Subdevice #0: subdevice #0                                                                                                                                                                                                                                   
card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0]                                                                                                                                                                                                         
  Subdevices: 1/1                                                                                                                                                                                                                                              
  Subdevice #0: subdevice #0                                                                                                                                                                                                                                   
card 0: PCH [HDA Intel PCH], device 7: HDMI 1 [VE248]                                                                                                                                                                                                          
  Subdevices: 1/1                                                                                                                                                                                                                                              
  Subdevice #0: subdevice #0                                                                                                                                                                                                                                   
card 0: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]                                                                                                                                                                                                         
  Subdevices: 1/1                                                                                                                                                                                                                                              
  Subdevice #0: subdevice #0                                                                                                                                                                                                                                   
card 0: PCH [HDA Intel PCH], device 9: HDMI 3 [HDMI 3]                                                                                                                                                                                                         
  Subdevices: 1/1                                                                                                                                                                                                                                              
  Subdevice #0: subdevice #0                                                                                                                                                                                                                                   
card 1: ASI58100 [ASI5810-0], device 0: Asihpi PCM [Asihpi PCM]                                                                                                                                                                                                
  Subdevices: 4/4                                                                                                                                                                                                                                              
  Subdevice #0: subdevice #0                                                                                                                                                                                                                                   
  Subdevice #1: subdevice #1                                                                                                                                                                                                                                   
  Subdevice #2: subdevice #2                                                                                                                                                                                                                                   
  Subdevice #3: subdevice #3 
HADeveloper commented 4 weeks ago

The id in the card folder is ASI58100 found at /sys/class/sound/card1/id

patdelaney commented 4 weeks ago

I'm guessing that this would be in the advanced UI?

I would request that the appropriate tool tip text as well as some sort of description of the new field that Rick can use in the documentation would be included and greatly appreciated.

HADeveloper commented 4 weeks ago

I'm guessing that this would be in the advanced UI?

I would request that the appropriate tool tip text as well as some sort of description of the new field that Rick can use in the documentation would be included and greatly appreciated.

I leveled it "Experimental" in the UI, I can change it to advanced instead, and there is a tooltip attached.

As for a description: The Force Audio Card ID field allows for setting the audio card id manually instead of using the id in the selected card folder, located at /sys/class/sound/card*/id. This can help with the error: ALSA Couldn't open audio device: invalid argument.