youtube.h - frontends - front-ends for some sites (experiment) | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
youtube.h (1771B) | |
--- | |
1 struct item { | |
2 enum LinkType { Unknown = 0, Channel, Movie, Playlist, Video } l… | |
3 char id[32]; | |
4 char title[1024]; | |
5 char channeltitle[1024]; | |
6 char channelid[256]; | |
7 char userid[256]; | |
8 char publishedat[32]; /* "human-friendly" string */ | |
9 char viewcount[32]; /* view count string, formatted */ | |
10 char duration[32]; /* duration string */ | |
11 char shortdescription[4096]; | |
12 }; | |
13 | |
14 #define MAX_VIDEOS 50 | |
15 struct search_response { | |
16 struct item items[MAX_VIDEOS + 1]; | |
17 size_t nitems; | |
18 }; | |
19 | |
20 struct video_format { | |
21 long itag; | |
22 char url[2048]; | |
23 char signaturecipher[2048]; /* encrypted stream */ | |
24 char mimetype[256]; /* mime-type and video codecs, etc */ | |
25 long bitrate; | |
26 long averagebitrate; | |
27 long width; /* pixel width */ | |
28 long height; /* pixel width */ | |
29 long fps; /* frames-per-second */ | |
30 char qualitylabel[64]; | |
31 char quality[64]; | |
32 long long contentlength; /* content length in bytes */ | |
33 long lastmodified; /* timestamp */ | |
34 long audiosamplerate; | |
35 long audiochannels; | |
36 }; | |
37 | |
38 #define MAX_FORMATS 50 | |
39 struct video_response { | |
40 char id[32]; /* video id */ | |
41 char title[1024]; | |
42 char author[1024]; /* channel name / title */ | |
43 char channelid[256]; | |
44 char publishdate[32]; /* YYYY-mm-dd */ | |
45 char uploaddate[32]; /* YYYY-mm-dd */ | |
46 long viewcount; | |
47 long lengthseconds; | |
48 char shortdescription[4096 * 4]; | |
49 char category[256]; | |
50 int isfamilysafe; | |
51 int isunlisted; | |
52 | |
53 int isfound; | |
54 | |
55 /* expiration for URLs in video formats */ | |
56 long expiresinseconds; | |
57 struct video_format formats[MAX_FORMATS + 1]; | |
58 int nformats; | |
59 }; | |
60 | |
61 struct search_response *youtube_search(const char *rawsearch, const char… | |
62 struct search_response *youtube_channel_videos(const char *channelid); | |
63 struct search_response *youtube_user_videos(const char *user); | |
64 struct video_response *youtube_video(const char *videoid); |