direct3d9: move D3D9_Create/D3D9_Destroy in libd3d9_cmmon
[vlc.git] / modules / misc / webservices / acoustid.h
blobd7d54c975e886cd1a82136c379e7a6c6141cf133
1 /*****************************************************************************
2 * acoustid.h: AcoustId webservice parser
3 *****************************************************************************
4 * Copyright (C) 2012 VLC authors and VideoLAN
6 * This program is free software; you can redistribute it and/or modify it
7 * under the terms of the GNU Lesser General Public License as published by
8 * the Free Software Foundation; either version 2.1 of the License, or
9 * (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public License
17 * along with this program; if not, write to the Free Software Foundation,
18 * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
19 *****************************************************************************/
21 #define MB_ID_SIZE 36
23 struct musicbrainz_recording_t
25 char *psz_artist;
26 char *psz_title;
27 char s_musicbrainz_id[MB_ID_SIZE];
29 typedef struct musicbrainz_recording_t musicbrainz_recording_t;
31 struct acoustid_result_t
33 double d_score;
34 char *psz_id;
35 struct
37 unsigned int count;
38 musicbrainz_recording_t *p_recordings;
39 } recordings;
41 typedef struct acoustid_result_t acoustid_result_t;
43 struct acoustid_results_t
45 acoustid_result_t * p_results;
46 unsigned int count;
48 typedef struct acoustid_results_t acoustid_results_t;
50 struct acoustid_fingerprint_t
52 char *psz_fingerprint;
53 unsigned int i_duration;
54 acoustid_results_t results;
56 typedef struct acoustid_fingerprint_t acoustid_fingerprint_t;
58 int DoAcoustIdWebRequest( vlc_object_t *p_obj, acoustid_fingerprint_t *p_data );
59 void free_acoustid_result_t( acoustid_result_t * r );