Commits

Commit Message Author Age Changes
9d387f43 Convert unit tests from GLib to GNU Check Johan Hedberg 14 years ago 3 files, +38, -8
41ccb16f Add get_le/get_be helpers Helpers to access LE / BE values. In different Bluetooth protocols/profiles there is a mixture of LE / BE byte order. Andrei Emeltchenko 14 years ago 1 file, +64, -0
7bcf9638 Make whitespace usage consistent in mgmt-api.txt Johan Hedberg 14 years ago 1 file, +28, -0
ba69cd1f mgmt: Rename Name Info command to match corresponding flag Johan Hedberg 14 years ago 1 file, +2, -2
dfd9c98a mgmt: Allow specifying discovery type for Start Discovery Johan Hedberg 14 years ago 1 file, +6, -1
82b17d0d Add new command and event for LTK storage support This documents the new command and event that are to be added to the Management API to add support for persistent pairing of LE devices. Vinicius Costa Gomes 14 years ago 1 file, +32, -0
84596969 Add device type to found and connected mgmt events Johan Hedberg 14 years ago 1 file, +18, -0
0eeebf47 Add User Passkey commands and events to mgmt Johan Hedberg 14 years ago 1 file, +27, -0
a6c19f4e Rename mgmt key commands and events Johan Hedberg 14 years ago 1 file, +8, -6
672fbbe4 Add timeout to Set Discoverable mgmt command Johan Hedberg 14 years ago 1 file, +4, -0
890eb14f Update controller info command with current plan Johan Hedberg 14 years ago 1 file, +8, -9
10cbe2ae Fix whitespace for fast connectable mgmt command doc Johan Hedberg 14 years ago 1 file, +4, -4
ed4de024 Add (legacy) name resolution handling to mgmt API Johan Hedberg 14 years ago 1 file, +14, -0
557a8ae8 Unregister players' events when disconnected Lucas De Marchi 14 years ago 1 file, +1, -0
fd8dda80 Fix leak of GTimer Lucas De Marchi 14 years ago 1 file, +1, -0
ce8cd610 Add missing TRACK-REACHED-START event When track is changed, we automatically start to play it, therefore we need to notify CT regarding this event. Lucas De Marchi 14 years ago 1 file, +2, -0
1723fe2f Fix handling of dbus signals We're previously leaking a D-Bus message and always returning that the signal was not handled. Lucas De Marchi 14 years ago 1 file, +11, -5
bb957be6 Add EIR length parameter to eir_parse() LE uses shorter EIR (31 bytes) than HCI (240 bytes) Frédéric Danis 14 years ago 9 files, +23, -25
011c01ed Add btohll / htobll macros Handle 64 bit swap Andrei Emeltchenko 14 years ago 1 file, +4, -0
b051c670 Add definitions for L2CAP fixed channels Andrei Emeltchenko 14 years ago 1 file, +5, -0
f19d4349 Simplify eir_parse_uuid* functions Frédéric Danis 14 years ago 1 file, +14, -22
40023618 Add unit/test-eir to .gitignore Frédéric Danis 14 years ago 1 file, +1, -0
64e54c20 Simplify eir_parse function Frédéric Danis 14 years ago 1 file, +80, -75
5a4402f8 Fix MediaPlayer documentation Lucas De Marchi 14 years ago 1 file, +0, -6
9aa24695 Fix leak of dbus message Lucas De Marchi 14 years ago 1 file, +5, -1
b2cf7cf2 Fix release all sessions on powering adapter off When adapter is powered off, all sessions should be released without changing mode, which is contrary to what session_remove does. This prevents from such situation when powering off leads to new mode derived from mode_sessions. Currently, if there are multiple mode sessions requested by different clients, powering adapter off results in powering immediately it on. Dmitriy Paliy 14 years ago 1 file, +2, -12
79f47253 sbc: Reduce for-loop induced indentation in sbc_unpack_frame Johan Hedberg 14 years ago 1 file, +20, -16
54cea427 sbc: overflow bugfix and audio decoding quality improvement The "(((audio_sample << 1) | 1) << frame->scale_factor[ch][sb])" part of expression "frame->sb_sample[blk][ch][sb] = (((audio_sample << 1) | 1) << frame->scale_factor[ch][sb]) / levels[ch][sb] - (1 << frame->scale_factor[ch][sb])" in "sbc_unpack_frame" function can sometimes overflow 32-bit signed int. This problem can be reproduced by first using bitpool 128 and encoding some random noise data, and then feeding it to sbc decoder. The obvious thing to do would be to change "audio_sample" variable type to uint32_t. However the problem is a little bit more complicated. According to the section "12.6.2 Scale Factors" of A2DP spec: scalefactor[ch][sb] = pow(2.0, (scale_factor[ch][sb] + 1)) And according to "12.6.4 Reconstruction of the Subband Samples": sb_sample[blk][ch][sb] = scalefactor[ch][sb] * ((audio_sample[blk][ch][sb]*2.0+1.0) / levels[ch][sb]-1.0); Hence the current code for calculating "sb_sample[blk][ch][sb]" is not quite correct, because it loses one least significant bit of sample data and passes twice smaller sample values to the synthesis filter (the filter also deviates from the spec to compensate this). This all has quite a noticeable impact on audio quality. Moreover, it makes sense to keep a few extra bits of precision here in order to minimize rounding errors. So the proposed patch introduces a new SBCDEC_FIXED_EXTRA_BITS constant and uses uint64_t data type for intermediate calculations in order to safeguard against overflows. This patch intentionally addresses only the quality issue, but performance can be also improved later (like replacing division with multiplication by reciprocal). Test for the difference of sbc encoding/decoding roundtrip vs. the original audio file for joint stereo, bitpool 128, 8 subbands and http://media.xiph.org/sintel/sintel-master-st.flac sample demonstrates some quality improvement: === before === --- comparing original / sbc_encoder.exe + sbcdec --- stddev: 4.64 PSNR: 82.97 bytes:170495708/170496000 === after === --- comparing original / sbc_encoder.exe + sbcdec --- stddev: 1.95 PSNR: 90.50 bytes:170495708/170496000 Siarhei Siamashka 14 years ago 2 files, +11, -6
f0c16d85 Use color output for unit tests Marcel Holtmann 14 years ago 1 file, +1, -1
02907710 Add basic unit tests framework for EIR parsing Johan Hedberg 14 years ago 2 files, +74, -0
4a4b5655 Fix implicit declaration of 'g_slist_free_full' audio/avrcp.c: In function 'avrcp_unregister': audio/avrcp.c:1253: error: implicit declaration of function 'g_slist_free_full' thermometer/thermometer.c: In function 'destroy_char': thermometer/thermometer.c:79: error: implicit declaration of function 'g_slist_free_full' Frédéric Danis 14 years ago 2 files, +6, -1
68838679 Move SDP client functions from glib-helper.c to sdp-client.c Johan Hedberg 14 years ago 10 files, +405, -345
9b98a6c7 Add glib-compat.h to deal with issues in old GLib versions Johan Hedberg 14 years ago 22 files, +50, -20
b3ba3242 AVRCP: Implement RequestContinuingResponse PDU Lucas De Marchi 14 years ago 1 file, +146, -68
d888f549 AVRCP: Implement AbortContinuingResponse PDU Lucas De Marchi 14 years ago 1 file, +55, -0
464c36f7 AVRCP: respond with UINT32_MAX if duration is not available Section 5.4.1 of AVRCP 1.3 spec says: If TG does not support SongLength And SongPosition on TG, then TG shall return 0xFFFFFFFF. SongPosition is always available, but song length depends on user to provied it. Lucas De Marchi 14 years ago 1 file, +7, -4
2c920f6d AVRCP: implement TRACK-REACHED-START event Lucas De Marchi 14 years ago 3 files, +17, -3
9ab125a8 AVRCP: Use track's UID in event notification When registering for TRACK_CHANGED event, CT expects the track's UID in the INTERIM and CHANGED responses. According to AVRCP 1.3 spec, there are only 2 possible values: 1) 0: there's a track selected 2) UINT32_MAX: there's no track selected AVRCP 1.4 reserves the value UINT64_MAX for the second case. Since this later value is the one used in certification process for best IOP we return UINT64_MAX instead of the former. This implementation allows to pass PTS test TP/NFY/BV-05-C. Lucas De Marchi 14 years ago 3 files, +22, -12
549087a1 hciops: fix discov_state when powering off an adapter Johan Hedberg 14 years ago 1 file, +1, -0
02bc7a19 Simplify property variable usage in btd_adapter_stop Johan Hedberg 14 years ago 1 file, +8, -15
38eaee6b Fix updating Adapter.Discovering property when powering off Johan Hedberg 14 years ago 1 file, +8, -1
c18d64b0 Fix input pending connect handling iconn->pending_connect needs to be freed after sending the error reply Chan-yeol Park 14 years ago 1 file, +3, -0
b110c733 hciops: fix adapter initialization when commands are missed Sometimes after e.g, suspend we miss some initialization commands from the kernel, even though we had a workaround for this it doesn't really work as expected since the adapter must be up in order to resend. To fix this problem the resend logic is moved after DEVUP. Luiz Augusto von Dentz 14 years ago 1 file, +24, -16
d6ca7019 Simplify process_thermometer_char() logic Johan Hedberg 14 years ago 1 file, +4, -8
e3eb563d Fix thermometer Intermediate property changes Set Intermediate property if intermediate temperature characteristic is supported Santiago Carot-Nemesio 14 years ago 1 file, +2, -1
4cd8ecb0 Read measurement interval characteristic Santiago Carot-Nemesio 14 years ago 1 file, +69, -1
c9fc5907 Read temperature type characteristic Santiago Carot-Nemesio 14 years ago 1 file, +30, -1
2219cc88 Get all characteristics in thermometer service Santiago Carot-Nemesio 14 years ago 1 file, +110, -0
62d4daf2 Add handler function to manage GATT indications Santiago Carot-Nemesio 14 years ago 1 file, +17, -0
2d2e3a41 Add functions to manage attio callbacks Santiago Carot-Nemesio 14 years ago 1 file, +28, -0
Previous Next