mirror of
				https://gitlab.freedesktop.org/pipewire/pipewire.git
				synced 2025-11-03 09:01:54 -05:00 
			
		
		
		
	Use the quirks database to check whether to enable MSBC codec for each device. If quirks don't allow ALT1 mode for an USB adapter, check whether the adapter has an usable ALT6 mode and disable MSBC if not.
		
			
				
	
	
		
			78 lines
		
	
	
	
		
			2 KiB
		
	
	
	
		
			Meson
		
	
	
	
	
	
			
		
		
	
	
			78 lines
		
	
	
	
		
			2 KiB
		
	
	
	
		
			Meson
		
	
	
	
	
	
bluez5_deps = [ mathlib, dbus_dep, sbc_dep, bluez_dep ]
 | 
						|
foreach dep: bluez5_deps
 | 
						|
  if not dep.found()
 | 
						|
    subdir_done()
 | 
						|
  endif
 | 
						|
endforeach
 | 
						|
 | 
						|
if not get_option('bluez5-backend-hsp-native').disabled()
 | 
						|
  cdata.set('HAVE_BLUEZ_5_BACKEND_HSP_NATIVE', 1)
 | 
						|
  cdata.set('HAVE_BLUEZ_5_BACKEND_NATIVE', 1)
 | 
						|
endif
 | 
						|
if not get_option('bluez5-backend-hfp-native').disabled()
 | 
						|
  cdata.set('HAVE_BLUEZ_5_BACKEND_HFP_NATIVE', 1)
 | 
						|
  cdata.set('HAVE_BLUEZ_5_BACKEND_NATIVE', 1)
 | 
						|
endif
 | 
						|
if not get_option('bluez5-backend-ofono').disabled()
 | 
						|
  cdata.set('HAVE_BLUEZ_5_BACKEND_OFONO', 1)
 | 
						|
endif
 | 
						|
if not get_option('bluez5-backend-hsphfpd').disabled()
 | 
						|
  cdata.set('HAVE_BLUEZ_5_BACKEND_HSPHFPD', 1)
 | 
						|
endif
 | 
						|
 | 
						|
bluez5_sources = ['plugin.c',
 | 
						|
		  'a2dp-codecs.c',
 | 
						|
		  'a2dp-codec-sbc.c',
 | 
						|
		  'a2dp-sink.c',
 | 
						|
		  'a2dp-source.c',
 | 
						|
		  'sco-sink.c',
 | 
						|
		  'sco-source.c',
 | 
						|
		  'sco-io.c',
 | 
						|
		  'quirks.c',
 | 
						|
		  'bluez5-device.c',
 | 
						|
		  'bluez5-dbus.c']
 | 
						|
 | 
						|
bluez5_args = [ ]
 | 
						|
 | 
						|
if ldac_dep.found()
 | 
						|
  bluez5_sources += [ 'a2dp-codec-ldac.c' ]
 | 
						|
  bluez5_args += [ '-DENABLE_LDAC' ]
 | 
						|
  bluez5_deps += ldac_dep
 | 
						|
  if ldac_abr_dep.found()
 | 
						|
    bluez5_args += [ '-DENABLE_LDAC_ABR' ]
 | 
						|
    bluez5_deps += ldac_abr_dep
 | 
						|
  endif
 | 
						|
endif
 | 
						|
if aptx_dep.found()
 | 
						|
  bluez5_sources += [ 'a2dp-codec-aptx.c' ]
 | 
						|
  bluez5_args += [ '-DENABLE_APTX' ]
 | 
						|
  bluez5_deps += aptx_dep
 | 
						|
endif
 | 
						|
if fdk_aac_dep.found()
 | 
						|
  bluez5_sources += [ 'a2dp-codec-aac.c' ]
 | 
						|
  bluez5_args += [ '-DENABLE_AAC' ]
 | 
						|
  bluez5_deps += fdk_aac_dep
 | 
						|
endif
 | 
						|
 | 
						|
if not get_option('bluez5-backend-hsp-native').disabled() or not get_option('bluez5-backend-hfp-native').disabled()
 | 
						|
  if libusb_dep.found()
 | 
						|
    bluez5_deps += libusb_dep
 | 
						|
  endif
 | 
						|
  bluez5_sources += ['backend-native.c']
 | 
						|
endif
 | 
						|
 | 
						|
if not get_option('bluez5-backend-ofono').disabled()
 | 
						|
  bluez5_sources += ['backend-ofono.c']
 | 
						|
endif
 | 
						|
 | 
						|
if not get_option('bluez5-backend-hsphfpd').disabled()
 | 
						|
  bluez5_sources += ['backend-hsphfpd.c']
 | 
						|
endif
 | 
						|
 | 
						|
bluez5lib = shared_library('spa-bluez5',
 | 
						|
	bluez5_sources,
 | 
						|
	include_directories : [ spa_inc, configinc ],
 | 
						|
	c_args : bluez5_args,
 | 
						|
	dependencies : bluez5_deps,
 | 
						|
	install : true,
 | 
						|
        install_dir : spa_plugindir / 'bluez5')
 |