I faced a similar issue with a2dp_sink profile where it is "not available" and what I did prior to connecting the Bluetooth headset in bluetoothctl was to first run pulseaudio --check -v to check if the pulseaudio daemon is running. If it is not running, issue "pulseaudio -D" and then check if it is running. Once the pulseaudio daemon is running, then only perform pairing and connecting in bluetoothctl.
I faced a similar issue with a2dp_sink profile where it is "not available" and what I did prior to connecting the Bluetooth headset in bluetoothctl was to first run pulseaudio --check -v to check if the pulseaudio daemon is running. If it is not running, issue "pulseaudio -D" and then check if it is running. Once the pulseaudio daemon is running, then only perform pairing and connecting in bluetoothctl.