BTA2DPD(8)              NetBSD System Manager's Manual              BTA2DPD(8)

     bta2dpd -- Bluetooth Advanced Audio Distribution Profile daemon

     bta2dpd [-v] [-A bitpool_allocation] [-B bitpool] [-b blocks] [-d device]
             [-e encoding_bands] [-f channel_mode] [-M mtu] [-m mode]
             [-r rate] [-V volume] -a address files ...
     bta2dpd -K [-Iv] [-A bitpool_allocation] [-B bitpool] [-b blocks]
             [-d device] [-e encoding_bands] [-f channel_mode] [-m mode]
             [-p psm] [-r rate] [a address] file
     bta2dpd -t [-A bitpool_allocation] [-B bitpool] [-b blocks]
             [-e encoding_bands] [-f channel_mode] [-M mtu] [-r rate]
             [-V volume] files ...
     bta2dpd -t -K file

     The bta2dpd daemon is used to transmit/receive audio to/from Bluetooth
     devices such as speakers or headphones, using the Advanced Audio Distri-
     bution Profile (A2DP).

     -a address  Remote device address.  The address may be given as BDADDR or
                 a name.

                 If a name was specified, bta2dpd attempts to resolve the name
                 via bt_gethostbyname(3).

     -B bitpool  Allows setting the maximum bitpool value for your device.
                 This may have to be lowered if audio is distorted.

                 Use bta2dpd with only the -v option and the maximum bitpool
                 for your device will be printed to stdout.

     -d device   Local device address.  May be given as BDADDR or device name.

     -I          Initiate a Discover command.
                  Useful when used as an audio sink as some devices need this
                 to pair.

     -K          Allows registering as an audio sink receiving an incoming

     -M mtu      Allows setting the Maximum Transmission Unit (MTU) for the
                 streaming connections.

                 For most devices this would be 672 but if audio is broken or
                 has gaps lowering this value may help.

     -m mode     Set L2CAP connection link mode.  Supported modes are:

                 auth     Require devices to be paired.
                 encrypt  Auth, plus enable encryption.
                 secure   Encryption, plus change of link key.

     -p psm      Allows changing the l2cap psm for an audio sink the default
                 is 25.  Most all devices will use 25.

     -t          Test mode can be used with -K to decode and receive encoded
                 music from stdout/stdin to file.

     -V volume   Allows shifting the volume of the music by 1 or 2 bits prior
                 to encoding for increased volume.

                 USE WITH CARE as this may mean the output is quite loud.

     -v          Be verbose.

     files ...     Files to stream.  These can be WAV files or CD-Audio Red
                   Book data or output from a pad(4) device.  If not speci-
                   fied, the default is stdin or stdout if -K applied and
                   bta2dpd is used as an audio sink.

                   When writing to a file or stdout it is raw 16-bit little
                   endian (pulse coded modulation) PCM data.  So a utility
                   must be used to convert the file to add a header or use the
                   audioplay(1) command as stated in EXAMPLES.

   Channel Modes
     -f channel_mode

                 0   This specifies that all possible input formats are
                     accepted and then one is chosen starting with joint
                     stereo then stereo then 2 channel then mono.

                 m   This specifies that the input is monophonic.

                 2   This specifies that the input is dual-channel.

                 j   This specifies that the input is joint-stereo.

                 s   This specifies that the input is stereo.  This is the

                 Specifying joint stereo as opposed to stereo would allow for
                 a slightly higher quality of playback as bta2dpd will only
                 encode stereo and monophonic streams.

     -r rate     The frequency of the input.  Where rate is one of 0, 16000,
                 32000, 44100, 48000.  This defaults to 44.1 kHz.

                 A value of 0 will arbitrate from the highest to lowest fre-

   Sub Band Codec (SBC) Encoding Options
     -A bitpool_allocation

                 0             Bit Allocation is negotiated starting with
                               Loudness then SNR.

                 S             Audio is encoded with SNR (Signal to Noise
                               Ratio) bit allocation.

                 L             Audio is encoded with Loudness bit allocation.
                               This is the default.

     -b blocks   Number of blocks to use for encoding.  Where blocks is one of
                 0, 4, 8, 12, 16.  This defaults to 16 blocks.

                 In the case of 0 the number of blocks is negotiated starting
                 from 16 down to 4.

     -e bands

                 0   Number of SBC bands is negotiated 8 then 4.

                 4   Audio is encoded with 4 SBC bands.

                 8   Audio is encoded with 8 SBC bands.  This is the default.

     It may be necessary to use btconfig(8) to set the class of your Bluetooth
     adapter to that of headphones when using bta2dpd as an audio sink.  I.e.,
           btconfig ubt0 class 0x200418
     Then start bta2dpd with -K before pairing.

     This is necessary as some devices only perform an sdpquery(1) just after
     pairing and cache the result.

     It is possible to specify multiples of -r -e -b -f.  This will mean that
     the specified combinations are reported as being accepted by the

     When used as a sink (-K), all modes, bands, blocks and allocation modes
     will be accepted unless specified as options.  I.e., -r 44100 will only
     accept a connection with a rate of 44.1kHz.

           bta2dpd -a spkr my.wav
     Encode and send audio my.wav to address `spkr'.

           bta2dpd -a spkr /dev/pad
     Encode and send audio from pad(4) to address `spkr'.

           bta2dpd -K out.pcm
     Decode stream from any connected address and write it to out.pcm.

           bta2dpd -K -a phone | audioplay -f -e linear -P 16 -s 44100 -c 2 --
     Decode stream from address `phone' and send to speakers.

     audioplay(1), sdpquery(1), pad(4), btconfig(8)

     Nathanial Sloss

NetBSD 8.0                       March 2, 2016                      NetBSD 8.0

You can also request any man page by name and (optionally) by section:


Use the DEFAULT collection to view manual pages for third-party software.

©1994 Man-cgi 1.15, Panagiotis Christias
©1996-2018 Modified for NetBSD by Kimmo Suominen