• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2019 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #include <stdint.h>
6 #include <stddef.h>
7 #include "ldacBT.h"
8 
9 #define TESTFUNC_TYPE extern "C" int
10 
11 TESTFUNC_TYPE
LLVMFuzzerTestOneInput(const uint8_t * buf,size_t size)12 LLVMFuzzerTestOneInput(const uint8_t *buf, size_t size)
13 {
14     if (size == 0) {
15     	return 0;
16     }
17     HANDLE_LDAC_BT hLdacBt;
18     int pcm_used, stream_sz, frame_num;
19     unsigned char p_stream[1024];
20 
21     hLdacBt = ldacBT_get_handle();
22 
23     ldacBT_init_handle_encode(
24         hLdacBt,
25         679,
26         LDACBT_EQMID_SQ,
27         LDACBT_CHANNEL_MODE_DUAL_CHANNEL,
28         LDACBT_SMPL_FMT_S16,
29         48000);
30 
31     ldacBT_encode(
32         hLdacBt,
33         (void *)(&buf + 44),
34         &pcm_used,
35         p_stream,
36         &stream_sz,
37         &frame_num);
38 
39     ldacBT_get_sampling_freq(hLdacBt);
40     ldacBT_get_bitrate(hLdacBt);
41     ldacBT_get_version();
42 
43     ldacBT_close_handle(hLdacBt);
44     ldacBT_free_handle(hLdacBt);
45 
46     return 0;
47 }
48