duo_splitter 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/README.md +32 -0
- data/data/labels/01.txt +10 -0
- data/data/labels/02.txt +13 -0
- data/data/labels/03.txt +15 -0
- data/data/labels/04.txt +11 -0
- data/data/labels/05.txt +18 -0
- data/data/labels/06.txt +14 -0
- data/data/labels/07.txt +17 -0
- data/data/labels/08.txt +10 -0
- data/data/labels/09.txt +14 -0
- data/data/labels/10.txt +13 -0
- data/data/labels/11.txt +12 -0
- data/data/labels/12.txt +10 -0
- data/data/labels/13.txt +11 -0
- data/data/labels/14.txt +11 -0
- data/data/labels/15.txt +12 -0
- data/data/labels/16.txt +10 -0
- data/data/labels/17.txt +13 -0
- data/data/labels/18.txt +15 -0
- data/data/labels/19.txt +13 -0
- data/data/labels/20.txt +18 -0
- data/data/labels/21.txt +16 -0
- data/data/labels/22.txt +18 -0
- data/data/labels/23.txt +10 -0
- data/data/labels/24.txt +13 -0
- data/data/labels/25.txt +11 -0
- data/data/labels/26.txt +11 -0
- data/data/labels/27.txt +16 -0
- data/data/labels/28.txt +14 -0
- data/data/labels/29.txt +13 -0
- data/data/labels/30.txt +13 -0
- data/data/labels/31.txt +18 -0
- data/data/labels/32.txt +11 -0
- data/data/labels/33.txt +12 -0
- data/data/labels/34.txt +16 -0
- data/data/labels/35.txt +15 -0
- data/data/labels/36.txt +17 -0
- data/data/labels/37.txt +9 -0
- data/data/labels/38.txt +10 -0
- data/data/labels/39.txt +12 -0
- data/data/labels/40.txt +16 -0
- data/data/labels/41.txt +16 -0
- data/data/labels/42.txt +12 -0
- data/data/labels/43.txt +14 -0
- data/data/labels/44.txt +18 -0
- data/data/labels/45.txt +14 -0
- data/exe/duo_splitter +6 -0
- data/lib/duo_splitter.rb +24 -0
- data/lib/duo_splitter/aac_encoder.rb +13 -0
- data/lib/duo_splitter/album.rb +21 -0
- data/lib/duo_splitter/encoder.rb +71 -0
- data/lib/duo_splitter/mp3_encoder.rb +13 -0
- data/lib/duo_splitter/runner.rb +93 -0
- data/lib/duo_splitter/section.rb +30 -0
- data/lib/duo_splitter/sentence.rb +22 -0
- data/lib/duo_splitter/version.rb +3 -0
- data/lib/duo_splitter/wav_encoder.rb +13 -0
- metadata +143 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 29142faa6db1a28c4729cfa2c84006ec5de9e7f57cf47ad5d14bdd450d05017b
|
4
|
+
data.tar.gz: e788f6c989a1f852443f130f7c2cff7d2543798f2ae4563ca47964630df95231
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 0a6a9cfa9406970d34f0a746f4ccb776bc3a126cf17e198f37344b76e887bd783c9ec1b57a54433a308e741a97d9a143fbb312b243e6fbfeb7f4556b69b1c0bc
|
7
|
+
data.tar.gz: 8bcf3160dec0573f8151835fc521176e0e336846a74a8f370e251ef4d9dff6943c4700fed32771d7c4add8466093a56a212ade14417b9c1de8c487f31fe6da30
|
data/README.md
ADDED
@@ -0,0 +1,32 @@
|
|
1
|
+
# `duo_splitter`
|
2
|
+
|
3
|
+
This gem provides a command to split the tracks into each sentences from [DUO 3.0 CD](https://www.amazon.co.jp/dp/4900790079)
|
4
|
+
|
5
|
+
## Installation
|
6
|
+
|
7
|
+
```
|
8
|
+
$ gem install duo_splitter
|
9
|
+
```
|
10
|
+
|
11
|
+
## Usage
|
12
|
+
|
13
|
+
```
|
14
|
+
Usage: duo_splitter [options] "01 Track 01.wav" "02 Track 02.wav" ... "45 Track 45.wav"
|
15
|
+
-d, --output-dir=PATH Output directory (default: /Users/yzn/Desktop/DUO 3.0)
|
16
|
+
-f, --format=FORMAT Output format (default: wav; one of aac, mp3, wav)
|
17
|
+
--[no-]output-intro Output intro track (default: true)
|
18
|
+
--[no-]section-number Add section number to output name (default: true)
|
19
|
+
--ffmpeg-path=PATH Path to ffmpeg command (default: ffmpeg)
|
20
|
+
```
|
21
|
+
|
22
|
+
## Development
|
23
|
+
|
24
|
+
Run `bin/rspec` to run the specs.
|
25
|
+
|
26
|
+
## Contributing
|
27
|
+
|
28
|
+
Bug reports and pull requests are welcome on GitHub at <https://github.com/healthypackrat/duo_splitter>.
|
29
|
+
|
30
|
+
## License
|
31
|
+
|
32
|
+
The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
|
data/data/labels/01.txt
ADDED
data/data/labels/02.txt
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
1.860000 1.860000 10
|
2
|
+
7.780000 7.780000 11
|
3
|
+
14.900000 14.900000 12
|
4
|
+
20.550000 20.550000 13
|
5
|
+
27.110000 27.110000 14
|
6
|
+
32.480000 32.480000 15
|
7
|
+
38.700000 38.700000 16
|
8
|
+
43.620000 43.620000 17
|
9
|
+
49.230000 49.230000 18
|
10
|
+
55.610000 55.610000 19
|
11
|
+
62.850000 62.850000 20
|
12
|
+
69.350000 69.350000 21
|
13
|
+
76.333333 76.333333 END
|
data/data/labels/03.txt
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
2.230000 2.230000 22
|
2
|
+
9.420000 9.420000 23
|
3
|
+
15.880000 15.880000 24
|
4
|
+
21.910000 21.910000 25
|
5
|
+
28.080000 28.080000 26
|
6
|
+
36.020000 36.020000 27
|
7
|
+
41.990000 41.990000 28
|
8
|
+
48.040000 48.040000 29
|
9
|
+
53.850000 53.850000 30
|
10
|
+
61.270000 61.270000 31
|
11
|
+
66.560000 66.560000 32
|
12
|
+
74.830000 74.830000 33
|
13
|
+
81.890000 81.890000 34
|
14
|
+
87.300000 87.300000 35
|
15
|
+
95.106667 95.106667 END
|
data/data/labels/04.txt
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
1.660000 1.660000 36
|
2
|
+
6.430000 6.430000 37
|
3
|
+
11.370000 11.370000 38
|
4
|
+
16.330000 16.330000 39
|
5
|
+
22.330000 22.330000 40
|
6
|
+
30.440000 30.440000 41
|
7
|
+
36.060000 36.060000 42
|
8
|
+
41.950000 41.950000 43
|
9
|
+
49.280000 49.280000 44
|
10
|
+
54.440000 54.440000 45
|
11
|
+
61.800000 61.800000 END
|
data/data/labels/05.txt
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
2.200000 2.200000 46
|
2
|
+
6.610000 6.610000 47
|
3
|
+
12.560000 12.560000 48
|
4
|
+
17.080000 17.080000 49
|
5
|
+
22.880000 22.880000 50
|
6
|
+
27.980000 27.980000 51
|
7
|
+
32.350000 32.350000 52
|
8
|
+
38.210000 38.210000 53
|
9
|
+
45.260000 45.260000 54
|
10
|
+
48.940000 48.940000 55
|
11
|
+
54.750000 54.750000 56
|
12
|
+
61.610000 61.610000 57
|
13
|
+
67.450000 67.450000 58
|
14
|
+
72.880000 72.880000 59
|
15
|
+
76.820000 76.820000 60
|
16
|
+
83.330000 83.330000 61
|
17
|
+
90.880000 90.880000 62
|
18
|
+
98.733333 98.733333 END
|
data/data/labels/06.txt
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
2.060000 2.060000 63
|
2
|
+
7.560000 7.560000 64
|
3
|
+
14.580000 14.580000 65
|
4
|
+
21.890000 21.890000 66
|
5
|
+
27.480000 27.480000 67
|
6
|
+
32.850000 32.850000 68
|
7
|
+
42.270000 42.270000 69
|
8
|
+
47.250000 47.250000 70
|
9
|
+
55.330000 55.330000 71
|
10
|
+
60.000000 60.000000 72
|
11
|
+
66.090000 66.090000 73
|
12
|
+
73.710000 73.710000 74
|
13
|
+
79.710000 79.710000 75
|
14
|
+
87.800000 87.800000 END
|
data/data/labels/07.txt
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
2.010000 2.010000 76
|
2
|
+
8.460000 8.460000 77
|
3
|
+
15.580000 15.580000 78
|
4
|
+
21.050000 21.050000 79
|
5
|
+
25.750000 25.750000 80
|
6
|
+
31.140000 31.140000 81
|
7
|
+
38.530000 38.530000 82
|
8
|
+
45.040000 45.040000 83
|
9
|
+
51.250000 51.250000 84
|
10
|
+
58.200000 58.200000 85
|
11
|
+
64.260000 64.260000 86
|
12
|
+
71.250000 71.250000 87
|
13
|
+
78.210000 78.210000 88
|
14
|
+
85.780000 85.780000 89
|
15
|
+
90.850000 90.850000 90
|
16
|
+
96.190000 96.190000 91
|
17
|
+
104.026667 104.026667 END
|
data/data/labels/08.txt
ADDED
data/data/labels/09.txt
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
2.000000 2.000000 101
|
2
|
+
7.440000 7.440000 102
|
3
|
+
12.140000 12.140000 103
|
4
|
+
16.600000 16.600000 104
|
5
|
+
21.000000 21.000000 105
|
6
|
+
26.560000 26.560000 106
|
7
|
+
30.730000 30.730000 107
|
8
|
+
36.710000 36.710000 108
|
9
|
+
41.960000 41.960000 109
|
10
|
+
50.840000 50.840000 110
|
11
|
+
59.420000 59.420000 111
|
12
|
+
66.080000 66.080000 112
|
13
|
+
72.070000 72.070000 113
|
14
|
+
77.800000 77.800000 END
|
data/data/labels/10.txt
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
1.630000 1.630000 114
|
2
|
+
5.830000 5.830000 115
|
3
|
+
11.970000 11.970000 116
|
4
|
+
19.110000 19.110000 117
|
5
|
+
25.740000 25.740000 118
|
6
|
+
30.440000 30.440000 119
|
7
|
+
36.980000 36.980000 120
|
8
|
+
41.740000 41.740000 121
|
9
|
+
48.190000 48.190000 122
|
10
|
+
54.680000 54.680000 123
|
11
|
+
60.150000 60.150000 124
|
12
|
+
67.180000 67.180000 125
|
13
|
+
74.066667 74.066667 END
|
data/data/labels/11.txt
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
1.980000 1.980000 126
|
2
|
+
7.620000 7.620000 127
|
3
|
+
14.200000 14.200000 128
|
4
|
+
19.820000 19.820000 129
|
5
|
+
25.020000 25.020000 130
|
6
|
+
31.210000 31.210000 131
|
7
|
+
37.370000 37.370000 132
|
8
|
+
44.270000 44.270000 133
|
9
|
+
51.420000 51.420000 134
|
10
|
+
56.270000 56.270000 135
|
11
|
+
63.370000 63.370000 136
|
12
|
+
72.560000 72.560000 END
|
data/data/labels/12.txt
ADDED
data/data/labels/13.txt
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
2.310000 2.310000 146
|
2
|
+
9.410000 9.410000 147
|
3
|
+
12.760000 12.760000 148
|
4
|
+
17.920000 17.920000 149
|
5
|
+
26.370000 26.370000 150
|
6
|
+
31.890000 31.890000 151
|
7
|
+
36.970000 36.970000 152
|
8
|
+
43.670000 43.670000 153
|
9
|
+
49.040000 49.040000 154
|
10
|
+
54.050000 54.050000 155
|
11
|
+
63.400000 63.400000 END
|
data/data/labels/14.txt
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
2.290000 2.290000 156
|
2
|
+
9.550000 9.550000 157
|
3
|
+
15.090000 15.090000 158
|
4
|
+
21.410000 21.410000 159
|
5
|
+
25.870000 25.870000 160
|
6
|
+
32.960000 32.960000 161
|
7
|
+
40.940000 40.940000 162
|
8
|
+
46.240000 46.240000 163
|
9
|
+
52.780000 52.780000 164
|
10
|
+
57.470000 57.470000 165
|
11
|
+
64.333333 64.333333 END
|
data/data/labels/15.txt
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
2.070000 2.070000 166
|
2
|
+
6.280000 6.280000 167
|
3
|
+
12.410000 12.410000 168
|
4
|
+
16.540000 16.540000 169
|
5
|
+
21.480000 21.480000 170
|
6
|
+
26.790000 26.790000 171
|
7
|
+
35.990000 35.990000 172
|
8
|
+
44.590000 44.590000 173
|
9
|
+
50.060000 50.060000 174
|
10
|
+
55.690000 55.690000 175
|
11
|
+
61.240000 61.240000 176
|
12
|
+
68.426667 68.426667 END
|
data/data/labels/16.txt
ADDED
data/data/labels/17.txt
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
2.280000 2.280000 186
|
2
|
+
9.320000 9.320000 187
|
3
|
+
19.210000 19.210000 188
|
4
|
+
24.930000 24.930000 189
|
5
|
+
31.230000 31.230000 190
|
6
|
+
39.090000 39.090000 191
|
7
|
+
43.280000 43.280000 192
|
8
|
+
49.500000 49.500000 193
|
9
|
+
55.020000 55.020000 194
|
10
|
+
59.660000 59.660000 195
|
11
|
+
65.880000 65.880000 196
|
12
|
+
72.520000 72.520000 197
|
13
|
+
81.160000 81.160000 END
|
data/data/labels/18.txt
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
2.190000 2.190000 198
|
2
|
+
9.180000 9.180000 199
|
3
|
+
15.650000 15.650000 200
|
4
|
+
22.800000 22.800000 201
|
5
|
+
29.600000 29.600000 202
|
6
|
+
34.770000 34.770000 203
|
7
|
+
42.130000 42.130000 204
|
8
|
+
48.690000 48.690000 205
|
9
|
+
56.730000 56.730000 206
|
10
|
+
65.790000 65.790000 207
|
11
|
+
74.610000 74.610000 208
|
12
|
+
79.570000 79.570000 209
|
13
|
+
84.340000 84.340000 210
|
14
|
+
90.840000 90.840000 211
|
15
|
+
101.506667 101.506667 END
|
data/data/labels/19.txt
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
2.230000 2.230000 212
|
2
|
+
11.090000 11.090000 213
|
3
|
+
16.860000 16.860000 214
|
4
|
+
22.390000 22.390000 215
|
5
|
+
30.430000 30.430000 216
|
6
|
+
35.830000 35.830000 217
|
7
|
+
41.690000 41.690000 218
|
8
|
+
50.810000 50.810000 219
|
9
|
+
56.100000 56.100000 220
|
10
|
+
62.970000 62.970000 221
|
11
|
+
71.640000 71.640000 222
|
12
|
+
77.500000 77.500000 223
|
13
|
+
84.533333 84.533333 END
|
data/data/labels/20.txt
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
2.280000 2.280000 224
|
2
|
+
7.110000 7.110000 225
|
3
|
+
12.480000 12.480000 226
|
4
|
+
17.840000 17.840000 227
|
5
|
+
23.950000 23.950000 228
|
6
|
+
28.300000 28.300000 229
|
7
|
+
33.600000 33.600000 230
|
8
|
+
38.960000 38.960000 231
|
9
|
+
44.510000 44.510000 232
|
10
|
+
49.920000 49.920000 233
|
11
|
+
55.900000 55.900000 234
|
12
|
+
60.880000 60.880000 235
|
13
|
+
66.170000 66.170000 236
|
14
|
+
75.090000 75.090000 237
|
15
|
+
81.660000 81.660000 238
|
16
|
+
87.080000 87.080000 239
|
17
|
+
93.980000 93.980000 240
|
18
|
+
100.533333 100.533333 END
|
data/data/labels/21.txt
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
2.300000 2.300000 241
|
2
|
+
10.380000 10.380000 242
|
3
|
+
14.960000 14.960000 243
|
4
|
+
20.560000 20.560000 244
|
5
|
+
27.170000 27.170000 245
|
6
|
+
32.230000 32.230000 246
|
7
|
+
37.450000 37.450000 247
|
8
|
+
42.410000 42.410000 248
|
9
|
+
48.150000 48.150000 249
|
10
|
+
53.720000 53.720000 250
|
11
|
+
59.130000 59.130000 251
|
12
|
+
66.520000 66.520000 252
|
13
|
+
71.040000 71.040000 253
|
14
|
+
78.370000 78.370000 254
|
15
|
+
86.210000 86.210000 255
|
16
|
+
94.093333 94.093333 END
|
data/data/labels/22.txt
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
2.030000 2.030000 256
|
2
|
+
7.830000 7.830000 257
|
3
|
+
14.990000 14.990000 258
|
4
|
+
19.580000 19.580000 259
|
5
|
+
25.240000 25.240000 260
|
6
|
+
32.980000 32.980000 261
|
7
|
+
38.620000 38.620000 262
|
8
|
+
45.370000 45.370000 263
|
9
|
+
51.590000 51.590000 264
|
10
|
+
57.980000 57.980000 265
|
11
|
+
63.890000 63.890000 266
|
12
|
+
69.460000 69.460000 267
|
13
|
+
75.970000 75.970000 268
|
14
|
+
85.050000 85.050000 269
|
15
|
+
91.700000 91.700000 270
|
16
|
+
100.840000 100.840000 271
|
17
|
+
106.580000 106.580000 272
|
18
|
+
115.306667 115.306667 END
|
data/data/labels/23.txt
ADDED
data/data/labels/24.txt
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
1.960000 1.960000 282
|
2
|
+
8.970000 8.970000 283
|
3
|
+
15.190000 15.190000 284
|
4
|
+
22.150000 22.150000 285
|
5
|
+
31.350000 31.350000 286
|
6
|
+
36.700000 36.700000 287
|
7
|
+
43.100000 43.100000 288
|
8
|
+
49.500000 49.500000 289
|
9
|
+
57.530000 57.530000 290
|
10
|
+
64.940000 64.940000 291
|
11
|
+
71.430000 71.430000 292
|
12
|
+
76.740000 76.740000 293
|
13
|
+
85.333333 85.333333 END
|
data/data/labels/25.txt
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
2.260000 2.260000 294
|
2
|
+
7.090000 7.090000 295
|
3
|
+
14.360000 14.360000 296
|
4
|
+
21.480000 21.480000 297
|
5
|
+
26.640000 26.640000 298
|
6
|
+
31.790000 31.790000 299
|
7
|
+
37.810000 37.810000 300
|
8
|
+
43.740000 43.740000 301
|
9
|
+
49.030000 49.030000 302
|
10
|
+
54.370000 54.370000 303
|
11
|
+
60.773333 60.773333 END
|
data/data/labels/26.txt
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
2.150000 2.150000 304
|
2
|
+
8.170000 8.170000 305
|
3
|
+
12.620000 12.620000 306
|
4
|
+
17.320000 17.320000 307
|
5
|
+
24.020000 24.020000 308
|
6
|
+
30.920000 30.920000 309
|
7
|
+
38.170000 38.170000 310
|
8
|
+
43.020000 43.020000 311
|
9
|
+
48.390000 48.390000 312
|
10
|
+
55.350000 55.350000 313
|
11
|
+
61.693333 61.693333 END
|
data/data/labels/27.txt
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
2.380000 2.380000 314
|
2
|
+
7.870000 7.870000 315
|
3
|
+
14.080000 14.080000 316
|
4
|
+
19.430000 19.430000 317
|
5
|
+
24.850000 24.850000 318
|
6
|
+
31.200000 31.200000 319
|
7
|
+
35.770000 35.770000 320
|
8
|
+
41.190000 41.190000 321
|
9
|
+
47.370000 47.370000 322
|
10
|
+
53.660000 53.660000 323
|
11
|
+
59.000000 59.000000 324
|
12
|
+
64.100000 64.100000 325
|
13
|
+
69.600000 69.600000 326
|
14
|
+
77.880000 77.880000 327
|
15
|
+
84.530000 84.530000 328
|
16
|
+
90.106667 90.106667 END
|
data/data/labels/28.txt
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
2.350000 2.350000 329
|
2
|
+
9.110000 9.110000 330
|
3
|
+
13.850000 13.850000 331
|
4
|
+
20.880000 20.880000 332
|
5
|
+
28.460000 28.460000 333
|
6
|
+
35.560000 35.560000 334
|
7
|
+
41.530000 41.530000 335
|
8
|
+
48.580000 48.580000 336
|
9
|
+
54.060000 54.060000 337
|
10
|
+
59.550000 59.550000 338
|
11
|
+
64.800000 64.800000 339
|
12
|
+
70.630000 70.630000 340
|
13
|
+
79.210000 79.210000 341
|
14
|
+
88.626667 88.626667 END
|
data/data/labels/29.txt
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
2.220000 2.220000 342
|
2
|
+
8.400000 8.400000 343
|
3
|
+
13.730000 13.730000 344
|
4
|
+
18.880000 18.880000 345
|
5
|
+
24.680000 24.680000 346
|
6
|
+
30.760000 30.760000 347
|
7
|
+
35.620000 35.620000 348
|
8
|
+
42.700000 42.700000 349
|
9
|
+
50.040000 50.040000 350
|
10
|
+
54.600000 54.600000 351
|
11
|
+
60.110000 60.110000 352
|
12
|
+
65.610000 65.610000 353
|
13
|
+
72.573333 72.573333 END
|
data/data/labels/30.txt
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
1.920000 1.920000 354
|
2
|
+
8.980000 8.980000 355
|
3
|
+
18.860000 18.860000 356
|
4
|
+
24.380000 24.380000 357
|
5
|
+
30.280000 30.280000 358
|
6
|
+
36.720000 36.720000 359
|
7
|
+
44.520000 44.520000 360
|
8
|
+
51.850000 51.850000 361
|
9
|
+
58.140000 58.140000 362
|
10
|
+
66.450000 66.450000 363
|
11
|
+
71.560000 71.560000 364
|
12
|
+
77.070000 77.070000 365
|
13
|
+
87.826667 87.826667 END
|
data/data/labels/31.txt
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
1.880000 1.880000 366
|
2
|
+
8.870000 8.870000 367
|
3
|
+
15.410000 15.410000 368
|
4
|
+
22.530000 22.530000 369
|
5
|
+
28.550000 28.550000 370
|
6
|
+
34.840000 34.840000 371
|
7
|
+
39.800000 39.800000 372
|
8
|
+
46.120000 46.120000 373
|
9
|
+
52.800000 52.800000 374
|
10
|
+
59.950000 59.950000 375
|
11
|
+
66.160000 66.160000 376
|
12
|
+
70.450000 70.450000 377
|
13
|
+
77.600000 77.600000 378
|
14
|
+
86.910000 86.910000 379
|
15
|
+
93.670000 93.670000 380
|
16
|
+
100.350000 100.350000 381
|
17
|
+
106.840000 106.840000 382
|
18
|
+
113.666667 113.666667 END
|
data/data/labels/32.txt
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
2.110000 2.110000 383
|
2
|
+
7.020000 7.020000 384
|
3
|
+
13.340000 13.340000 385
|
4
|
+
19.910000 19.910000 386
|
5
|
+
25.680000 25.680000 387
|
6
|
+
31.340000 31.340000 388
|
7
|
+
38.610000 38.610000 389
|
8
|
+
43.570000 43.570000 390
|
9
|
+
49.440000 49.440000 391
|
10
|
+
56.220000 56.220000 392
|
11
|
+
62.240000 62.240000 END
|
data/data/labels/33.txt
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
2.790000 2.790000 393
|
2
|
+
7.700000 7.700000 394
|
3
|
+
15.040000 15.040000 395
|
4
|
+
23.570000 23.570000 396
|
5
|
+
30.540000 30.540000 397
|
6
|
+
36.590000 36.590000 398
|
7
|
+
46.610000 46.610000 399
|
8
|
+
53.040000 53.040000 400
|
9
|
+
60.380000 60.380000 401
|
10
|
+
66.620000 66.620000 402
|
11
|
+
73.340000 73.340000 403
|
12
|
+
80.600000 80.600000 END
|
data/data/labels/34.txt
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
2.100000 2.100000 404
|
2
|
+
9.540000 9.540000 405
|
3
|
+
17.500000 17.500000 406
|
4
|
+
24.080000 24.080000 407
|
5
|
+
29.580000 29.580000 408
|
6
|
+
35.190000 35.190000 409
|
7
|
+
43.210000 43.210000 410
|
8
|
+
49.660000 49.660000 411
|
9
|
+
57.130000 57.130000 412
|
10
|
+
62.240000 62.240000 413
|
11
|
+
68.310000 68.310000 414
|
12
|
+
74.160000 74.160000 415
|
13
|
+
79.280000 79.280000 416
|
14
|
+
84.760000 84.760000 417
|
15
|
+
91.870000 91.870000 418
|
16
|
+
99.733333 99.733333 END
|
data/data/labels/35.txt
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
2.340000 2.340000 419
|
2
|
+
8.000000 8.000000 420
|
3
|
+
14.460000 14.460000 421
|
4
|
+
20.490000 20.490000 422
|
5
|
+
26.600000 26.600000 423
|
6
|
+
32.180000 32.180000 424
|
7
|
+
38.420000 38.420000 425
|
8
|
+
47.010000 47.010000 426
|
9
|
+
52.820000 52.820000 427
|
10
|
+
59.310000 59.310000 428
|
11
|
+
64.510000 64.510000 429
|
12
|
+
69.190000 69.190000 430
|
13
|
+
75.710000 75.710000 431
|
14
|
+
82.840000 82.840000 432
|
15
|
+
88.760000 88.760000 END
|
data/data/labels/36.txt
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
2.120000 2.120000 433
|
2
|
+
7.700000 7.700000 434
|
3
|
+
13.540000 13.540000 435
|
4
|
+
18.720000 18.720000 436
|
5
|
+
23.920000 23.920000 437
|
6
|
+
29.040000 29.040000 438
|
7
|
+
37.480000 37.480000 439
|
8
|
+
43.270000 43.270000 440
|
9
|
+
48.550000 48.550000 441
|
10
|
+
56.200000 56.200000 442
|
11
|
+
60.970000 60.970000 443
|
12
|
+
66.690000 66.690000 444
|
13
|
+
73.370000 73.370000 445
|
14
|
+
78.930000 78.930000 446
|
15
|
+
84.000000 84.000000 447
|
16
|
+
90.360000 90.360000 448
|
17
|
+
96.533333 96.533333 END
|
data/data/labels/37.txt
ADDED
data/data/labels/38.txt
ADDED
data/data/labels/39.txt
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
2.490000 2.490000 466
|
2
|
+
11.430000 11.430000 467
|
3
|
+
16.950000 16.950000 468
|
4
|
+
22.210000 22.210000 469
|
5
|
+
28.040000 28.040000 470
|
6
|
+
35.040000 35.040000 471
|
7
|
+
41.190000 41.190000 472
|
8
|
+
48.920000 48.920000 473
|
9
|
+
56.620000 56.620000 474
|
10
|
+
63.500000 63.500000 475
|
11
|
+
69.510000 69.510000 476
|
12
|
+
75.466667 75.466667 END
|
data/data/labels/40.txt
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
1.680000 1.680000 477
|
2
|
+
7.380000 7.380000 478
|
3
|
+
13.050000 13.050000 479
|
4
|
+
19.460000 19.460000 480
|
5
|
+
25.270000 25.270000 481
|
6
|
+
30.770000 30.770000 482
|
7
|
+
35.840000 35.840000 483
|
8
|
+
42.220000 42.220000 484
|
9
|
+
48.630000 48.630000 485
|
10
|
+
52.910000 52.910000 486
|
11
|
+
60.190000 60.190000 487
|
12
|
+
66.020000 66.020000 488
|
13
|
+
72.660000 72.660000 489
|
14
|
+
79.300000 79.300000 490
|
15
|
+
85.910000 85.910000 491
|
16
|
+
94.066667 94.066667 END
|
data/data/labels/41.txt
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
2.650000 2.650000 492
|
2
|
+
8.030000 8.030000 493
|
3
|
+
15.650000 15.650000 494
|
4
|
+
21.010000 21.010000 495
|
5
|
+
25.850000 25.850000 496
|
6
|
+
30.410000 30.410000 497
|
7
|
+
35.710000 35.710000 498
|
8
|
+
42.200000 42.200000 499
|
9
|
+
46.900000 46.900000 500
|
10
|
+
52.310000 52.310000 501
|
11
|
+
57.730000 57.730000 502
|
12
|
+
62.920000 62.920000 503
|
13
|
+
67.340000 67.340000 504
|
14
|
+
75.140000 75.140000 505
|
15
|
+
80.710000 80.710000 506
|
16
|
+
88.866667 88.866667 END
|
data/data/labels/42.txt
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
2.170000 2.170000 507
|
2
|
+
7.700000 7.700000 508
|
3
|
+
14.750000 14.750000 509
|
4
|
+
19.560000 19.560000 510
|
5
|
+
24.880000 24.880000 511
|
6
|
+
32.930000 32.930000 512
|
7
|
+
37.410000 37.410000 513
|
8
|
+
43.240000 43.240000 514
|
9
|
+
49.050000 49.050000 515
|
10
|
+
56.030000 56.030000 516
|
11
|
+
63.270000 63.270000 517
|
12
|
+
69.173333 69.173333 END
|
data/data/labels/43.txt
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
2.140000 2.140000 518
|
2
|
+
8.620000 8.620000 519
|
3
|
+
14.610000 14.610000 520
|
4
|
+
22.650000 22.650000 521
|
5
|
+
29.220000 29.220000 522
|
6
|
+
36.780000 36.780000 523
|
7
|
+
43.350000 43.350000 524
|
8
|
+
50.370000 50.370000 525
|
9
|
+
55.120000 55.120000 526
|
10
|
+
63.080000 63.080000 527
|
11
|
+
68.530000 68.530000 528
|
12
|
+
79.800000 79.800000 529
|
13
|
+
89.260000 89.260000 530
|
14
|
+
95.226667 95.226667 END
|
data/data/labels/44.txt
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
3.110000 3.110000 531
|
2
|
+
8.480000 8.480000 532
|
3
|
+
13.320000 13.320000 533
|
4
|
+
17.850000 17.850000 534
|
5
|
+
26.270000 26.270000 535
|
6
|
+
34.080000 34.080000 536
|
7
|
+
39.180000 39.180000 537
|
8
|
+
50.460000 50.460000 538
|
9
|
+
59.520000 59.520000 539
|
10
|
+
68.400000 68.400000 540
|
11
|
+
73.820000 73.820000 541
|
12
|
+
83.080000 83.080000 542
|
13
|
+
88.780000 88.780000 543
|
14
|
+
93.020000 93.020000 544
|
15
|
+
102.540000 102.540000 545
|
16
|
+
109.410000 109.410000 546
|
17
|
+
115.300000 115.300000 547
|
18
|
+
120.666667 120.666667 END
|
data/data/labels/45.txt
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
2.790000 2.790000 548
|
2
|
+
8.470000 8.470000 549
|
3
|
+
14.180000 14.180000 550
|
4
|
+
21.850000 21.850000 551
|
5
|
+
27.850000 27.850000 552
|
6
|
+
35.540000 35.540000 553
|
7
|
+
42.200000 42.200000 554
|
8
|
+
49.490000 49.490000 555
|
9
|
+
54.520000 54.520000 556
|
10
|
+
63.140000 63.140000 557
|
11
|
+
70.580000 70.580000 558
|
12
|
+
76.210000 76.210000 559
|
13
|
+
82.640000 82.640000 560
|
14
|
+
88.666667 88.666667 END
|
data/exe/duo_splitter
ADDED
data/lib/duo_splitter.rb
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
require "duo_splitter/album"
|
2
|
+
require "duo_splitter/section"
|
3
|
+
require "duo_splitter/sentence"
|
4
|
+
|
5
|
+
require "duo_splitter/encoder"
|
6
|
+
require "duo_splitter/aac_encoder"
|
7
|
+
require "duo_splitter/mp3_encoder"
|
8
|
+
require "duo_splitter/wav_encoder"
|
9
|
+
|
10
|
+
require "duo_splitter/runner"
|
11
|
+
|
12
|
+
require "duo_splitter/version"
|
13
|
+
|
14
|
+
require 'pathname'
|
15
|
+
|
16
|
+
module DuoSplitter
|
17
|
+
class Error < StandardError; end
|
18
|
+
|
19
|
+
DATA_DIR = Pathname.new(__dir__).parent.join('data')
|
20
|
+
|
21
|
+
NUMBER_OF_SECTIONS = 45
|
22
|
+
|
23
|
+
NUMBER_OF_SENTENCES = 560
|
24
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
module DuoSplitter
|
2
|
+
class Album
|
3
|
+
attr_reader :sections
|
4
|
+
|
5
|
+
def initialize
|
6
|
+
@sections = load_sections
|
7
|
+
end
|
8
|
+
|
9
|
+
def sentences(intro: true)
|
10
|
+
sections.map(&:sentences).flatten.reject do |sentence|
|
11
|
+
!intro && sentence.intro?
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
private
|
16
|
+
|
17
|
+
def load_sections
|
18
|
+
1.upto(NUMBER_OF_SECTIONS).map {|n| Section.new(number: n) }
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,71 @@
|
|
1
|
+
require 'pathname'
|
2
|
+
|
3
|
+
module DuoSplitter
|
4
|
+
class Encoder
|
5
|
+
class << self
|
6
|
+
def known_encoders
|
7
|
+
@known_encoders ||= {}
|
8
|
+
end
|
9
|
+
|
10
|
+
def register(key, encoder)
|
11
|
+
known_encoders[key] = encoder
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
def initialize(album:, output_dir:, output_intro:, add_section_prefix:, ffmpeg_path:)
|
16
|
+
@album = album
|
17
|
+
@output_dir = Pathname.new(output_dir)
|
18
|
+
@output_intro = output_intro
|
19
|
+
@add_section_prefix = add_section_prefix
|
20
|
+
@ffmpeg_path = ffmpeg_path
|
21
|
+
end
|
22
|
+
|
23
|
+
def run
|
24
|
+
commands = to_commands
|
25
|
+
|
26
|
+
return if commands.empty?
|
27
|
+
|
28
|
+
@output_dir.mkpath
|
29
|
+
|
30
|
+
commands.each.with_index(1) do |command, index|
|
31
|
+
$stderr.print "proccessing #{index}/#{commands.size}\r"
|
32
|
+
|
33
|
+
shell_output = IO.popen(command, err: [:child, :out]) {|io| io.read }
|
34
|
+
|
35
|
+
status = $?.exitstatus
|
36
|
+
|
37
|
+
unless status.zero?
|
38
|
+
$stderr.print "\n"
|
39
|
+
$stderr.print "#{shell_output}\n"
|
40
|
+
raise Error, "process exit with #{status}"
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
$stderr.print "\n"
|
45
|
+
$stderr.print "\u{1F37A} done.\n"
|
46
|
+
end
|
47
|
+
|
48
|
+
def to_commands
|
49
|
+
sentences = @album.sentences(intro: @output_intro).select {|sentence| sentence.section.source_path }
|
50
|
+
|
51
|
+
sentences.map do |sentence|
|
52
|
+
output_name = sentence.output_name(add_section_prefix: @add_section_prefix, ext: ext)
|
53
|
+
|
54
|
+
command = [@ffmpeg_path, '-y']
|
55
|
+
command += ['-i', sentence.section.source_path.to_s]
|
56
|
+
command += ['-ss', sentence.start_pos, '-to', sentence.end_pos]
|
57
|
+
command += encoding_options
|
58
|
+
command += [@output_dir.join(output_name).to_s]
|
59
|
+
command
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
def ext
|
64
|
+
raise NotImplementedError, '#ext must be defined in a sub class'
|
65
|
+
end
|
66
|
+
|
67
|
+
def encoding_options
|
68
|
+
raise NotImplementedError, '#encoding_options must be defined in a sub class'
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
@@ -0,0 +1,93 @@
|
|
1
|
+
require 'optparse'
|
2
|
+
require 'pathname'
|
3
|
+
|
4
|
+
module DuoSplitter
|
5
|
+
class Runner
|
6
|
+
attr_reader :output_dir, :format, :output_intro, :add_section_prefix, :ffmpeg_path, :album
|
7
|
+
|
8
|
+
def initialize(argv)
|
9
|
+
@output_dir = Pathname.new('~/Desktop/DUO 3.0').expand_path
|
10
|
+
@format = :wav
|
11
|
+
@known_formats = Encoder.known_encoders.keys.sort
|
12
|
+
@output_intro = true
|
13
|
+
@add_section_prefix = true
|
14
|
+
@ffmpeg_path = 'ffmpeg'
|
15
|
+
@album = Album.new
|
16
|
+
|
17
|
+
parse_options(argv)
|
18
|
+
handle_source_paths(argv)
|
19
|
+
end
|
20
|
+
|
21
|
+
def run
|
22
|
+
encoder_class = Encoder.known_encoders[@format]
|
23
|
+
|
24
|
+
encoder = encoder_class.new(
|
25
|
+
album: @album,
|
26
|
+
output_dir: @output_dir,
|
27
|
+
output_intro: @output_intro,
|
28
|
+
add_section_prefix: @add_section_prefix,
|
29
|
+
ffmpeg_path: @ffmpeg_path
|
30
|
+
)
|
31
|
+
|
32
|
+
encoder.run
|
33
|
+
end
|
34
|
+
|
35
|
+
private
|
36
|
+
|
37
|
+
def parse_options(argv)
|
38
|
+
parser = OptionParser.new
|
39
|
+
|
40
|
+
parser.banner = %(Usage: #{File.basename($PROGRAM_NAME)} [options] "01 Track 01.wav" "02 Track 02.wav" ... "45 Track 45.wav")
|
41
|
+
|
42
|
+
parser.on('-d', '--output-dir=PATH', "Output directory (default: #{@output_dir})") do |value|
|
43
|
+
@output_dir = Pathname.new(value)
|
44
|
+
end
|
45
|
+
|
46
|
+
parser.on('-f', '--format=FORMAT', @known_formats, "Output format (default: #{@format}; one of #{@known_formats.join(', ')})") do |value|
|
47
|
+
@format = value.to_sym
|
48
|
+
end
|
49
|
+
|
50
|
+
parser.on('--[no-]output-intro', "Output intro track (default: #{@output_intro})") do |flag|
|
51
|
+
@output_intro = flag
|
52
|
+
end
|
53
|
+
|
54
|
+
parser.on('--[no-]section-number', "Add section number to output name (default: #{@add_section_prefix})") do |flag|
|
55
|
+
@add_section_prefix = flag
|
56
|
+
end
|
57
|
+
|
58
|
+
parser.on('--ffmpeg-path=PATH', "Path to ffmpeg command (default: #{@ffmpeg_path})") do |value|
|
59
|
+
@ffmpeg_path = value
|
60
|
+
end
|
61
|
+
|
62
|
+
begin
|
63
|
+
parser.parse!(argv)
|
64
|
+
rescue OptionParser::ParseError => error
|
65
|
+
raise Error, error.message
|
66
|
+
end
|
67
|
+
|
68
|
+
unless @add_section_prefix
|
69
|
+
@output_intro = false
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
73
|
+
def handle_source_paths(argv)
|
74
|
+
argv.each do |source_path|
|
75
|
+
source_path = Pathname.new(source_path)
|
76
|
+
|
77
|
+
if /\A(\d+)/ =~ source_path.basename.to_s
|
78
|
+
section_number = $1.to_i
|
79
|
+
|
80
|
+
section = @album.sections.find {|section| section.number == section_number }
|
81
|
+
|
82
|
+
if section
|
83
|
+
section.source_path = source_path
|
84
|
+
else
|
85
|
+
raise Error, "invalid section number: #{section_number}"
|
86
|
+
end
|
87
|
+
else
|
88
|
+
raise Error, "input file name doesn't start with a section number: #{source_path}"
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
module DuoSplitter
|
2
|
+
class Section
|
3
|
+
attr_reader :number, :sentences
|
4
|
+
|
5
|
+
attr_accessor :source_path
|
6
|
+
|
7
|
+
def initialize(number:)
|
8
|
+
@number = number
|
9
|
+
@sentences = load_sentences
|
10
|
+
end
|
11
|
+
|
12
|
+
private
|
13
|
+
|
14
|
+
def load_sentences
|
15
|
+
label_path = DATA_DIR.join('labels/%02d.txt' % number)
|
16
|
+
|
17
|
+
records = label_path.readlines.map {|line| line.chomp.split(/\t/) }
|
18
|
+
|
19
|
+
records.unshift(%w[0 0 0])
|
20
|
+
|
21
|
+
records.each_cons(2).map do |current_record, next_record|
|
22
|
+
sentence_number = current_record.last.to_i
|
23
|
+
start_pos = current_record.first
|
24
|
+
end_pos = next_record.first
|
25
|
+
|
26
|
+
Sentence.new(number: sentence_number, start_pos: start_pos, end_pos: end_pos, section: self)
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
module DuoSplitter
|
2
|
+
class Sentence
|
3
|
+
attr_reader :number, :start_pos, :end_pos, :section
|
4
|
+
|
5
|
+
def initialize(number:, start_pos:, end_pos:, section:)
|
6
|
+
@number = number
|
7
|
+
@start_pos = start_pos
|
8
|
+
@end_pos = end_pos
|
9
|
+
@section = section
|
10
|
+
end
|
11
|
+
|
12
|
+
def intro?
|
13
|
+
number.zero?
|
14
|
+
end
|
15
|
+
|
16
|
+
def output_name(add_section_prefix: true, ext:)
|
17
|
+
name = '%03d.%s' % [number, ext]
|
18
|
+
name = ('%02d-' % section.number) + name if add_section_prefix
|
19
|
+
name
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
metadata
ADDED
@@ -0,0 +1,143 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: duo_splitter
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- healthypackrat
|
8
|
+
autorequire:
|
9
|
+
bindir: exe
|
10
|
+
cert_chain: []
|
11
|
+
date: 2019-02-15 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '2.0'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '2.0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '10.0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '10.0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rspec
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '3.0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '3.0'
|
55
|
+
description:
|
56
|
+
email:
|
57
|
+
- healthypackrat@gmail.com
|
58
|
+
executables:
|
59
|
+
- duo_splitter
|
60
|
+
extensions: []
|
61
|
+
extra_rdoc_files: []
|
62
|
+
files:
|
63
|
+
- README.md
|
64
|
+
- data/labels/01.txt
|
65
|
+
- data/labels/02.txt
|
66
|
+
- data/labels/03.txt
|
67
|
+
- data/labels/04.txt
|
68
|
+
- data/labels/05.txt
|
69
|
+
- data/labels/06.txt
|
70
|
+
- data/labels/07.txt
|
71
|
+
- data/labels/08.txt
|
72
|
+
- data/labels/09.txt
|
73
|
+
- data/labels/10.txt
|
74
|
+
- data/labels/11.txt
|
75
|
+
- data/labels/12.txt
|
76
|
+
- data/labels/13.txt
|
77
|
+
- data/labels/14.txt
|
78
|
+
- data/labels/15.txt
|
79
|
+
- data/labels/16.txt
|
80
|
+
- data/labels/17.txt
|
81
|
+
- data/labels/18.txt
|
82
|
+
- data/labels/19.txt
|
83
|
+
- data/labels/20.txt
|
84
|
+
- data/labels/21.txt
|
85
|
+
- data/labels/22.txt
|
86
|
+
- data/labels/23.txt
|
87
|
+
- data/labels/24.txt
|
88
|
+
- data/labels/25.txt
|
89
|
+
- data/labels/26.txt
|
90
|
+
- data/labels/27.txt
|
91
|
+
- data/labels/28.txt
|
92
|
+
- data/labels/29.txt
|
93
|
+
- data/labels/30.txt
|
94
|
+
- data/labels/31.txt
|
95
|
+
- data/labels/32.txt
|
96
|
+
- data/labels/33.txt
|
97
|
+
- data/labels/34.txt
|
98
|
+
- data/labels/35.txt
|
99
|
+
- data/labels/36.txt
|
100
|
+
- data/labels/37.txt
|
101
|
+
- data/labels/38.txt
|
102
|
+
- data/labels/39.txt
|
103
|
+
- data/labels/40.txt
|
104
|
+
- data/labels/41.txt
|
105
|
+
- data/labels/42.txt
|
106
|
+
- data/labels/43.txt
|
107
|
+
- data/labels/44.txt
|
108
|
+
- data/labels/45.txt
|
109
|
+
- exe/duo_splitter
|
110
|
+
- lib/duo_splitter.rb
|
111
|
+
- lib/duo_splitter/aac_encoder.rb
|
112
|
+
- lib/duo_splitter/album.rb
|
113
|
+
- lib/duo_splitter/encoder.rb
|
114
|
+
- lib/duo_splitter/mp3_encoder.rb
|
115
|
+
- lib/duo_splitter/runner.rb
|
116
|
+
- lib/duo_splitter/section.rb
|
117
|
+
- lib/duo_splitter/sentence.rb
|
118
|
+
- lib/duo_splitter/version.rb
|
119
|
+
- lib/duo_splitter/wav_encoder.rb
|
120
|
+
homepage: https://github.com/healthypackrat/duo_splitter
|
121
|
+
licenses:
|
122
|
+
- MIT
|
123
|
+
metadata: {}
|
124
|
+
post_install_message:
|
125
|
+
rdoc_options: []
|
126
|
+
require_paths:
|
127
|
+
- lib
|
128
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
129
|
+
requirements:
|
130
|
+
- - ">="
|
131
|
+
- !ruby/object:Gem::Version
|
132
|
+
version: '0'
|
133
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
134
|
+
requirements:
|
135
|
+
- - ">="
|
136
|
+
- !ruby/object:Gem::Version
|
137
|
+
version: '0'
|
138
|
+
requirements: []
|
139
|
+
rubygems_version: 3.0.1
|
140
|
+
signing_key:
|
141
|
+
specification_version: 4
|
142
|
+
summary: Split "DUO 3.0 CD" into separate tracks
|
143
|
+
test_files: []
|