Lines 35-46
Link Here
|
35 |
#define OPT_ENCODEDBY 'e' |
35 |
#define OPT_ENCODEDBY 'e' |
36 |
#define OPT_TOOL 'E' |
36 |
#define OPT_TOOL 'E' |
37 |
#define OPT_GENRE 'g' |
37 |
#define OPT_GENRE 'g' |
|
|
38 |
#define OPT_GENRETYPE 'J' |
38 |
#define OPT_GROUPING 'G' |
39 |
#define OPT_GROUPING 'G' |
39 |
#define OPT_HD 'H' |
40 |
#define OPT_HD 'H' |
40 |
#define OPT_MEDIA_TYPE 'i' |
41 |
#define OPT_MEDIA_TYPE 'i' |
41 |
#define OPT_CONTENTID 'I' |
42 |
#define OPT_CONTENTID 'I' |
42 |
#define OPT_LONGDESC 'l' |
43 |
#define OPT_LONGDESC 'l' |
43 |
#define OPT_GENREID 'j' |
44 |
#define OPT_GENREID 'j' |
|
|
45 |
#define OPT_COMPILATION 'K' |
44 |
#define OPT_LYRICS 'L' |
46 |
#define OPT_LYRICS 'L' |
45 |
#define OPT_DESCRIPTION 'm' |
47 |
#define OPT_DESCRIPTION 'm' |
46 |
#define OPT_TVEPISODE 'M' |
48 |
#define OPT_TVEPISODE 'M' |
Lines 51-56
Link Here
|
51 |
#define OPT_PLAYLISTID 'p' |
53 |
#define OPT_PLAYLISTID 'p' |
52 |
#define OPT_PICTURE 'P' |
54 |
#define OPT_PICTURE 'P' |
53 |
#define OPT_PODCAST 'B' |
55 |
#define OPT_PODCAST 'B' |
|
|
56 |
#define OPT_GAPLESS 'Q' |
54 |
#define OPT_ALBUM_ARTIST 'R' |
57 |
#define OPT_ALBUM_ARTIST 'R' |
55 |
#define OPT_NAME 's' |
58 |
#define OPT_NAME 's' |
56 |
#define OPT_TVSHOW 'S' |
59 |
#define OPT_TVSHOW 'S' |
Lines 63-69
Link Here
|
63 |
#define OPT_ARTISTID 'z' |
66 |
#define OPT_ARTISTID 'z' |
64 |
#define OPT_COMPOSERID 'Z' |
67 |
#define OPT_COMPOSERID 'Z' |
65 |
|
68 |
|
66 |
#define OPT_STRING "r:A:a:b:c:C:d:D:e:E:g:G:H:i:I:j:l:L:m:M:n:N:o:O:p:P:B:R:s:S:t:T:x:X:w:y:z:Z:" |
69 |
#define OPT_STRING "r:A:a:b:c:C:d:D:e:E:g:J:G:H:i:I:j:K:l:L:m:M:n:N:o:O:p:P:B:Q:R:s:S:t:T:x:X:w:y:z:Z:" |
67 |
|
70 |
|
68 |
#define ELEMENT_OF(x,i) x[int(i)] |
71 |
#define ELEMENT_OF(x,i) x[int(i)] |
69 |
|
72 |
|
Lines 82-93
Link Here
|
82 |
" -D, -disks NUM Set the number of disks\n" |
85 |
" -D, -disks NUM Set the number of disks\n" |
83 |
" -e, -encodedby STR Set the name of the person or company who encoded the file\n" |
86 |
" -e, -encodedby STR Set the name of the person or company who encoded the file\n" |
84 |
" -E, -tool STR Set the software used for encoding\n" |
87 |
" -E, -tool STR Set the software used for encoding\n" |
|
|
88 |
" -Q, -gapless NUM Set gapless flag (0 false, non-zero true)\n" |
85 |
" -g, -genre STR Set the genre name\n" |
89 |
" -g, -genre STR Set the genre name\n" |
|
|
90 |
" -J, -genretype NUM Set the genre type\n" |
86 |
" -G, -grouping STR Set the grouping name\n" |
91 |
" -G, -grouping STR Set the grouping name\n" |
87 |
" -H, -hdvideo NUM Set the HD flag (1\\0)\n" |
92 |
" -H, -hdvideo NUM Set the HD flag (1\\0)\n" |
88 |
" -i, -type STR Set the Media Type(tvshow, movie, music, ...)\n" |
93 |
" -i, -type STR Set the Media Type(tvshow, movie, music, ...)\n" |
89 |
" -I, -contentid NUM Set the content ID\n" |
94 |
" -I, -contentid NUM Set the content ID\n" |
90 |
" -j, -genreid NUM Set the genre ID\n" |
95 |
" -j, -genreid NUM Set the genre ID\n" |
|
|
96 |
" -K, -compilation NUM Set the compilation flag (0 false, non-zero true)\n" |
91 |
" -l, -longdesc STR Set the long description\n" |
97 |
" -l, -longdesc STR Set the long description\n" |
92 |
" -L, -lyrics NUM Set the lyrics\n" |
98 |
" -L, -lyrics NUM Set the lyrics\n" |
93 |
" -m, -description STR Set the short description\n" |
99 |
" -m, -description STR Set the short description\n" |
Lines 122-133
Link Here
|
122 |
{ "album", prog::Option::REQUIRED_ARG, 0, OPT_ALBUM }, |
128 |
{ "album", prog::Option::REQUIRED_ARG, 0, OPT_ALBUM }, |
123 |
{ "artist", prog::Option::REQUIRED_ARG, 0, OPT_ARTIST }, |
129 |
{ "artist", prog::Option::REQUIRED_ARG, 0, OPT_ARTIST }, |
124 |
{ "comment", prog::Option::REQUIRED_ARG, 0, OPT_COMMENT }, |
130 |
{ "comment", prog::Option::REQUIRED_ARG, 0, OPT_COMMENT }, |
|
|
131 |
{ "compilation", prog::Option::REQUIRED_ARG, 0, OPT_COMPILATION }, |
125 |
{ "copyright", prog::Option::REQUIRED_ARG, 0, OPT_COPYRIGHT }, |
132 |
{ "copyright", prog::Option::REQUIRED_ARG, 0, OPT_COPYRIGHT }, |
126 |
{ "disk", prog::Option::REQUIRED_ARG, 0, OPT_DISK }, |
133 |
{ "disk", prog::Option::REQUIRED_ARG, 0, OPT_DISK }, |
127 |
{ "disks", prog::Option::REQUIRED_ARG, 0, OPT_DISKS }, |
134 |
{ "disks", prog::Option::REQUIRED_ARG, 0, OPT_DISKS }, |
128 |
{ "encodedby", prog::Option::REQUIRED_ARG, 0, OPT_ENCODEDBY }, |
135 |
{ "encodedby", prog::Option::REQUIRED_ARG, 0, OPT_ENCODEDBY }, |
129 |
{ "tool", prog::Option::REQUIRED_ARG, 0, OPT_TOOL }, |
136 |
{ "tool", prog::Option::REQUIRED_ARG, 0, OPT_TOOL }, |
|
|
137 |
{ "gapless", prog::Option::REQUIRED_ARG, 0, OPT_GAPLESS }, |
130 |
{ "genre", prog::Option::REQUIRED_ARG, 0, OPT_GENRE }, |
138 |
{ "genre", prog::Option::REQUIRED_ARG, 0, OPT_GENRE }, |
|
|
139 |
{ "genretype", prog::Option::REQUIRED_ARG, 0, OPT_GENRETYPE }, |
131 |
{ "grouping", prog::Option::REQUIRED_ARG, 0, OPT_GROUPING }, |
140 |
{ "grouping", prog::Option::REQUIRED_ARG, 0, OPT_GROUPING }, |
132 |
{ "hdvideo", prog::Option::REQUIRED_ARG, 0, OPT_HD }, |
141 |
{ "hdvideo", prog::Option::REQUIRED_ARG, 0, OPT_HD }, |
133 |
{ "type", prog::Option::REQUIRED_ARG, 0, OPT_MEDIA_TYPE }, |
142 |
{ "type", prog::Option::REQUIRED_ARG, 0, OPT_MEDIA_TYPE }, |
Lines 196-202
Link Here
|
196 |
case OPT_DISKS: |
205 |
case OPT_DISKS: |
197 |
case OPT_HD: |
206 |
case OPT_HD: |
198 |
case OPT_CONTENTID: |
207 |
case OPT_CONTENTID: |
|
|
208 |
case OPT_GAPLESS: |
209 |
case OPT_COMPILATION: |
199 |
case OPT_GENREID: |
210 |
case OPT_GENREID: |
|
|
211 |
case OPT_GENRETYPE: |
200 |
case OPT_TVEPISODE: |
212 |
case OPT_TVEPISODE: |
201 |
case OPT_TVSEASON: |
213 |
case OPT_TVSEASON: |
202 |
case OPT_PLAYLISTID: |
214 |
case OPT_PLAYLISTID: |
Lines 454-462
Link Here
|
454 |
case OPT_TOOL: |
466 |
case OPT_TOOL: |
455 |
MP4TagsSetEncodingTool( mdata, tags[i] ); |
467 |
MP4TagsSetEncodingTool( mdata, tags[i] ); |
456 |
break; |
468 |
break; |
|
|
469 |
case OPT_COMPILATION: |
470 |
{ |
471 |
uint8_t value = static_cast<uint8_t>( nums[i] ); |
472 |
MP4TagsSetCompilation( mdata, &value ); |
473 |
break; |
474 |
} |
475 |
case OPT_GAPLESS: |
476 |
{ |
477 |
uint8_t value = static_cast<uint8_t>( nums[i] ); |
478 |
MP4TagsSetGapless( mdata, &value ); |
479 |
break; |
480 |
} |
457 |
case OPT_GENRE: |
481 |
case OPT_GENRE: |
458 |
MP4TagsSetGenre( mdata, tags[i] ); |
482 |
MP4TagsSetGenre( mdata, tags[i] ); |
459 |
break; |
483 |
break; |
|
|
484 |
case OPT_GENRETYPE: |
485 |
{ |
486 |
uint16_t value = static_cast<uint16_t>( nums[i] ); |
487 |
MP4TagsSetGenreType( mdata, &value ); |
488 |
} |
460 |
case OPT_GROUPING: |
489 |
case OPT_GROUPING: |
461 |
MP4TagsSetGrouping( mdata, tags[i] ); |
490 |
MP4TagsSetGrouping( mdata, tags[i] ); |
462 |
break; |
491 |
break; |