poms 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,20 @@
1
+ module Poms
2
+ module HasBaseAttributes
3
+ def title
4
+ return @title if @title
5
+ main_title = select_title_by_type 'MAIN'
6
+ sub_title = select_title_by_type 'SUB'
7
+ @titel = (sub_title && sub_title.match(main_title)) ? sub_title : [main_title, sub_title].compact.join(": ")
8
+ end
9
+
10
+ def description
11
+ @description ||= descriptions.first.value rescue nil
12
+ end
13
+
14
+ private
15
+
16
+ def select_title_by_type(type)
17
+ titles.select { |t| t.type == type }.map(&:value).first
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,36 @@
1
+ module Poms
2
+ class ScheduleEvent < Poms::Builder::NestedOpenStruct
3
+
4
+ def initialize hash
5
+ @hash = hash
6
+ set_start_and_end_times
7
+ super @hash
8
+ end
9
+
10
+ private
11
+
12
+ def set_start_and_end_times
13
+ set_starts_at
14
+ set_ends_at
15
+ end
16
+
17
+ def set_starts_at
18
+ @hash[:starts_at] = case @hash[:start]
19
+ when String, Integer
20
+ Time.at @hash[:start] / 1000
21
+ when Time
22
+ @hash[:start]
23
+ end
24
+ end
25
+
26
+ def set_ends_at
27
+ @hash['ends_at'] = @hash[:starts_at] + duration
28
+ end
29
+
30
+ def duration
31
+ (@hash[:duration].to_i / 1000).seconds
32
+ end
33
+
34
+ end
35
+ end
36
+
@@ -0,0 +1,13 @@
1
+ require 'poms/has_ancestors'
2
+
3
+ module Poms
4
+ class Season < Poms::Builder::NestedOpenStruct
5
+ include Poms::HasBaseAttributes
6
+ include Poms::HasAncestors
7
+
8
+ def related_group_mids
9
+ descendant_of.map &:mid_ref
10
+ end
11
+ end
12
+ end
13
+
@@ -0,0 +1,12 @@
1
+ require 'poms/has_base_attributes'
2
+
3
+ module Poms
4
+ class Series < Poms::Builder::NestedOpenStruct
5
+ include Poms::HasBaseAttributes
6
+
7
+ def related_group_mids
8
+ Poms.fetch_descendants_for_serie(mid, 'SEASON').map &:mid
9
+ end
10
+ end
11
+ end
12
+
@@ -0,0 +1,3 @@
1
+ module Poms
2
+ VERSION = "0.0.3"
3
+ end
@@ -0,0 +1,39 @@
1
+ Fabricator(:poms_broadcast, class_name: :"Poms::Broadcast") do
2
+ initialize_with do
3
+ Poms::Builder.process_hash(
4
+ JSON.parse File.read('spec/fixtures/poms_broadcast.json')
5
+ )
6
+ end
7
+ end
8
+
9
+ Fabricator(:poms_broadcast_pippi_langkous, class_name: :"Poms::Broadcast") do
10
+ initialize_with do
11
+ Poms::Builder.process_hash(
12
+ JSON.parse File.read('spec/fixtures/poms_broadcast_pippi.json')
13
+ )
14
+ end
15
+ end
16
+
17
+ Fabricator(:poms_broadcast_multiple_schedule_events, class_name: :"Poms::Broadcast") do
18
+ initialize_with do
19
+ Poms::Builder.process_hash(
20
+ JSON.parse File.read('spec/fixtures/poms_broadcast_multiple_schedule_events.json')
21
+ )
22
+ end
23
+ end
24
+
25
+ Fabricator(:poms_series, class_name: :"Poms::Series") do
26
+ initialize_with do
27
+ Poms::Builder.process_hash(
28
+ JSON.parse File.read('spec/fixtures/poms_series.json')
29
+ )
30
+ end
31
+ end
32
+
33
+ Fabricator(:zapp_broadcasts, class_name: :array) do
34
+ initialize_with do
35
+ hash = JSON.parse File.read('spec/fixtures/poms_zapp.json')
36
+ array = hash['rows'].take(10).map {|item| Poms::Builder.process_hash item['doc']}
37
+ array
38
+ end
39
+ end
@@ -0,0 +1,307 @@
1
+ {
2
+ "_id": "KRO_1614405",
3
+ "_rev": "60-77ca9ba680a9bf9f5215137163eb3a14",
4
+ "avAttributes": {
5
+ "audioAttributes": {
6
+ "numberOfChannels": 2
7
+ },
8
+ "videoAttributes": {
9
+ "aspectRatio": "16:9",
10
+ "color": "BLACK_AND_WHITE_AND_COLOR"
11
+ }
12
+ },
13
+ "avType": "VIDEO",
14
+ "broadcasters": [
15
+ "KRO",
16
+ "Zapp"
17
+ ],
18
+ "creationDate": 1367962602891,
19
+ "credits": [],
20
+ "crids": [
21
+ "crid://tmp.program.omroep.nl/15641304"
22
+ ],
23
+ "descendantOf": [
24
+ {
25
+ "midRef": "KRO_1521173",
26
+ "type": "SEASON",
27
+ "urnRef": "urn:vpro:media:group:15084154"
28
+ },
29
+ {
30
+ "midRef": "POMS_S_KRO_059857",
31
+ "type": "SERIES",
32
+ "urnRef": "urn:vpro:media:group:5346131"
33
+ }
34
+ ],
35
+ "descriptions": [
36
+ {
37
+ "owner": "BROADCASTER",
38
+ "type": "MAIN",
39
+ "value": "Li biedt Barry een baantje aan bij de uitdragerij en vraagt zich meteen af of dat wel zo slim was. Timon en Joep zien de criminele organisatie de Rijland Angels. Timon wil naar hun loods, maar is dat wel een goed idee?"
40
+ },
41
+ {
42
+ "owner": "MIS",
43
+ "type": "MAIN",
44
+ "value": "Dramaserie voor de jeugd over liefde, kattenkwaad en avontuur."
45
+ },
46
+ {
47
+ "owner": "CERES",
48
+ "type": "MAIN",
49
+ "value": "Li biedt Barry een baantje aan bij de uitdragerij en vraagt zich meteen af of dat wel zo slim was. Timon en Joep zien de criminele organisatie de Rijland Angels. Timon wil naar hun loods, maar is dat wel een goed idee?\n\t&nbsp;"
50
+ },
51
+ {
52
+ "owner": "WHATS_ON",
53
+ "type": "MAIN",
54
+ "value": "Dramaserie voor de jeugd over liefde, kattenkwaad en avontuur."
55
+ },
56
+ {
57
+ "owner": "CERES",
58
+ "type": "SHORT",
59
+ "value": "Li biedt Barry een baantje aan bij de uitdragerij en vraagt zich meteen af of dat wel zo slim was. Timon en Joep zien de criminele organisatie de Rijland Angels. Timon wil naar hun loods, maar is dat wel een goed idee?\n\t&nbsp;"
60
+ }
61
+ ],
62
+ "duration": 1080000,
63
+ "embeddable": true,
64
+ "episodeOf": [
65
+ {
66
+ "added": 1369773120772,
67
+ "highlighted": false,
68
+ "index": 64,
69
+ "midRef": "KRO_1521173",
70
+ "type": "SEASON",
71
+ "urnRef": "urn:vpro:media:group:15084154"
72
+ }
73
+ ],
74
+ "images": [
75
+ {
76
+ "creationDate": 1368815299665,
77
+ "description": "VRijland",
78
+ "highlighted": false,
79
+ "imageUri": "urn:vpro:image:184169",
80
+ "lastModified": 1368815299705,
81
+ "owner": "BROADCASTER",
82
+ "title": "VRijland",
83
+ "type": "PICTURE",
84
+ "urn": "urn:vpro:media:image:25765753",
85
+ "workflow": "PUBLISHED"
86
+ },
87
+ {
88
+ "creationDate": 1369760424862,
89
+ "description": "Li biedt Barry een baantje aan bij de uitdragerij en vraagt zich meteen af of dat wel zo slim was. Timon en Joep zien de criminele organisatie de Rijland Angels. Timon wil naar hun loods, maar is dat wel een goed idee?\n\t&nbsp;",
90
+ "highlighted": false,
91
+ "imageUri": "urn:vpro:image:187003",
92
+ "lastModified": 1369760431467,
93
+ "owner": "NEBO",
94
+ "title": "VRijland",
95
+ "type": "STILL",
96
+ "urn": "urn:vpro:media:image:26079440",
97
+ "workflow": "PUBLISHED"
98
+ },
99
+ {
100
+ "creationDate": 1369760428232,
101
+ "description": "Li biedt Barry een baantje aan bij de uitdragerij en vraagt zich meteen af of dat wel zo slim was. Timon en Joep zien de criminele organisatie de Rijland Angels. Timon wil naar hun loods, maar is dat wel een goed idee?\n\t&nbsp;",
102
+ "highlighted": false,
103
+ "imageUri": "urn:vpro:image:187004",
104
+ "lastModified": 1369760431467,
105
+ "owner": "NEBO",
106
+ "title": "VRijland",
107
+ "type": "STILL",
108
+ "urn": "urn:vpro:media:image:26079441",
109
+ "workflow": "PUBLISHED"
110
+ },
111
+ {
112
+ "creationDate": 1369760431388,
113
+ "description": "Li biedt Barry een baantje aan bij de uitdragerij en vraagt zich meteen af of dat wel zo slim was. Timon en Joep zien de criminele organisatie de Rijland Angels. Timon wil naar hun loods, maar is dat wel een goed idee?\n\t&nbsp;",
114
+ "highlighted": false,
115
+ "imageUri": "urn:vpro:image:187005",
116
+ "lastModified": 1369760431468,
117
+ "owner": "NEBO",
118
+ "title": "VRijland",
119
+ "type": "STILL",
120
+ "urn": "urn:vpro:media:image:26079442",
121
+ "workflow": "PUBLISHED"
122
+ }
123
+ ],
124
+ "lastModified": 1369859493926,
125
+ "locations": [
126
+ {
127
+ "avAttributes": {
128
+ "avFileFormat": "HASP"
129
+ },
130
+ "creationDate": 1369760183309,
131
+ "lastModified": 1369760183436,
132
+ "owner": "CERES",
133
+ "programUrl": "odip+http://odi.omroep.nl/video/adaptive/KRO_1614405",
134
+ "type": "INTERNAL",
135
+ "publishStop": 1369758599000,
136
+ "urn": "urn:vpro:media:location:26079425",
137
+ "workflow": "PUBLISHED"
138
+ },
139
+ {
140
+ "avAttributes": {
141
+ "avFileFormat": "MP4",
142
+ "bitrate": 204800,
143
+ "videoAttributes": {
144
+ "aspectRatio": "16:9",
145
+ "videoCoding": "WM"
146
+ }
147
+ },
148
+ "creationDate": 1369765721479,
149
+ "lastModified": 1369765721611,
150
+ "owner": "NEBO",
151
+ "programUrl": "odi+http://odi.omroep.nl/video/h264_sb/KRO_1614405",
152
+ "publishStart": 1369758589000,
153
+ "type": "EXTERNAL",
154
+ "urn": "urn:vpro:media:location:26079907",
155
+ "workflow": "PUBLISHED"
156
+ },
157
+ {
158
+ "avAttributes": {
159
+ "avFileFormat": "MP4",
160
+ "bitrate": 512000,
161
+ "videoAttributes": {
162
+ "aspectRatio": "16:9",
163
+ "videoCoding": "WM"
164
+ }
165
+ },
166
+ "creationDate": 1369765721480,
167
+ "lastModified": 1369765721613,
168
+ "owner": "NEBO",
169
+ "programUrl": "odi+http://odi.omroep.nl/video/h264_bb/KRO_1614405",
170
+ "publishStart": 1369758589000,
171
+ "type": "EXTERNAL",
172
+ "urn": "urn:vpro:media:location:26079910",
173
+ "workflow": "PUBLISHED"
174
+ },
175
+ {
176
+ "avAttributes": {
177
+ "avFileFormat": "MP4",
178
+ "bitrate": 1024000,
179
+ "videoAttributes": {
180
+ "aspectRatio": "16:9",
181
+ "videoCoding": "WM"
182
+ }
183
+ },
184
+ "creationDate": 1369765721480,
185
+ "lastModified": 1369765721614,
186
+ "owner": "NEBO",
187
+ "programUrl": "odi+http://odi.omroep.nl/video/h264_std/KRO_1614405",
188
+ "publishStart": 1369758589000,
189
+ "type": "EXTERNAL",
190
+ "urn": "urn:vpro:media:location:26079913",
191
+ "workflow": "PUBLISHED"
192
+ },
193
+ {
194
+ "avAttributes": {
195
+ "avFileFormat": "WVC1",
196
+ "bitrate": 1024000,
197
+ "videoAttributes": {
198
+ "aspectRatio": "16:9",
199
+ "videoCoding": "WM"
200
+ }
201
+ },
202
+ "creationDate": 1369765721480,
203
+ "lastModified": 1369765721615,
204
+ "owner": "NEBO",
205
+ "programUrl": "odi+http://odi.omroep.nl/video/wvc1_std/KRO_1614405",
206
+ "publishStart": 1369758589000,
207
+ "type": "EXTERNAL",
208
+ "urn": "urn:vpro:media:location:26079916",
209
+ "workflow": "PUBLISHED"
210
+ },
211
+ {
212
+ "avAttributes": {
213
+ "avFileFormat": "WM",
214
+ "bitrate": 204800,
215
+ "videoAttributes": {
216
+ "aspectRatio": "16:9",
217
+ "videoCoding": "WM"
218
+ }
219
+ },
220
+ "creationDate": 1369765721479,
221
+ "lastModified": 1369765721617,
222
+ "owner": "NEBO",
223
+ "programUrl": "odi+http://odi.omroep.nl/video/wmv_sb/KRO_1614405",
224
+ "publishStart": 1369758589000,
225
+ "type": "EXTERNAL",
226
+ "urn": "urn:vpro:media:location:26079919",
227
+ "workflow": "PUBLISHED"
228
+ },
229
+ {
230
+ "avAttributes": {
231
+ "avFileFormat": "WM",
232
+ "bitrate": 512000,
233
+ "videoAttributes": {
234
+ "aspectRatio": "16:9",
235
+ "videoCoding": "WM"
236
+ }
237
+ },
238
+ "creationDate": 1369765721479,
239
+ "lastModified": 1369765721618,
240
+ "owner": "NEBO",
241
+ "programUrl": "odi+http://odi.omroep.nl/video/wmv_bb/KRO_1614405",
242
+ "publishStart": 1369758589000,
243
+ "type": "EXTERNAL",
244
+ "urn": "urn:vpro:media:location:26079922",
245
+ "workflow": "PUBLISHED"
246
+ }
247
+ ],
248
+ "mid": "KRO_1614405",
249
+ "poProgID": "KRO_1614405",
250
+ "poSeriesID": "KRO_1521173",
251
+ "predictions": [
252
+ "INTERNETVOD"
253
+ ],
254
+ "scheduleEvents": [
255
+ {
256
+ "channel": "NED3",
257
+ "duration": 1049000,
258
+ "midRef": "KRO_1614405",
259
+ "poProgID": "KRO_1614405",
260
+ "poSeriesID": "KRO_1521173",
261
+ "start": 1369757335000,
262
+ "urnRef": "urn:vpro:media:program:25215266"
263
+ }
264
+ ],
265
+ "segments": [],
266
+ "sortDate": 1369757335000,
267
+ "titles": [
268
+ {
269
+ "owner": "BROADCASTER",
270
+ "type": "MAIN",
271
+ "value": "VRijland"
272
+ },
273
+ {
274
+ "owner": "NEBO",
275
+ "type": "MAIN",
276
+ "value": "VRijland"
277
+ },
278
+ {
279
+ "owner": "MIS",
280
+ "type": "MAIN",
281
+ "value": "VRijland"
282
+ },
283
+ {
284
+ "owner": "CERES",
285
+ "type": "MAIN",
286
+ "value": "VRijland"
287
+ },
288
+ {
289
+ "owner": "WHATS_ON",
290
+ "type": "MAIN",
291
+ "value": "VRijland"
292
+ },
293
+ {
294
+ "owner": "BROADCASTER",
295
+ "type": "SUB",
296
+ "value": "VRijland afl.64 & 65 (herhaling)"
297
+ },
298
+ {
299
+ "owner": "CERES",
300
+ "type": "EPISODE",
301
+ "value": "VRijland afl.64 & 65 (herhaling)"
302
+ }
303
+ ],
304
+ "type": "BROADCAST",
305
+ "urn": "urn:vpro:media:program:25215266",
306
+ "workflow": "PUBLISHED"
307
+ }
@@ -0,0 +1,354 @@
1
+ {
2
+ "_id": "NPS_1223852",
3
+ "_rev": "63-cb150c34f7f8fa18d547be5d900b0ff3",
4
+ "avAttributes": {
5
+ "audioAttributes": {
6
+ "numberOfChannels": 2
7
+ },
8
+ "videoAttributes": {
9
+ "aspectRatio": "16:9",
10
+ "color": "BLACK_AND_WHITE_AND_COLOR"
11
+ }
12
+ },
13
+ "avType": "VIDEO",
14
+ "broadcasters": [
15
+ "NPS",
16
+ "NTR",
17
+ "Zapp"
18
+ ],
19
+ "creationDate": 1367962603105,
20
+ "credits": [
21
+ {
22
+ "familyName": "Nienke",
23
+ "givenName": "",
24
+ "role": "PRESENTER"
25
+ }
26
+ ],
27
+ "crids": [
28
+ "crid://tmp.program.omroep.nl/15641305"
29
+ ],
30
+ "descendantOf": [
31
+ {
32
+ "midRef": "NPS_1217585",
33
+ "type": "SEASON",
34
+ "urnRef": "urn:vpro:media:group:16805225"
35
+ },
36
+ {
37
+ "midRef": "POMS_S_NTR_059960",
38
+ "type": "SERIES",
39
+ "urnRef": "urn:vpro:media:group:3731098"
40
+ }
41
+ ],
42
+ "descriptions": [
43
+ {
44
+ "owner": "WHATS_ON",
45
+ "type": "MAIN",
46
+ "value": "Nienke gaat naar Makkum in Friesland. De Friese klei, die daar al eeuwen onder de grond ligt, is ideaal voor het maken van aardewerk. Nienke volgt het hele giet- en bakproces totdat er een prachtig stuk nieuw aardewerk geboren is. En hoe kom je te weten of het aardewerk goed gelukt is? Door heel goed te luisteren! www.hetklokhuis.nl"
47
+ },
48
+ {
49
+ "owner": "MIS",
50
+ "type": "SHORT",
51
+ "value": "Nienke gaat naar Makkum in Friesland. De Friese klei die daar al eeuwen onder de grond ligt is ideaal voor het maken van aardewerk. Nienke volgt het hele giet- en bakproces."
52
+ },
53
+ {
54
+ "owner": "CERES",
55
+ "type": "SHORT",
56
+ "value": "Nienke gaat naar Makkum in Friesland. De Friese klei die daar al eeuwen onder de grond ligt is ideaal voor het maken van aardewerk. Nienke volgt het hele giet- en bakproces."
57
+ },
58
+ {
59
+ "owner": "CERES",
60
+ "type": "SUB",
61
+ "value": "De eerste reportage van onze nieuwe presentatrice Nienke! Hoe zal ze het er vanaf brengen? Nienke gaat naar Makkum in Friesland. De Friese klei die daar al eeuwen onder de grond ligt is ideaal voor het maken van aardewerk. Nienke volgt het hele giet- en bakproces totdat er een prachtig stuk nieuw aardewerk geboren is. En hoe kom je te weten of het aardewerk goed gelukt is? Door heel goed te luisteren!"
62
+ },
63
+ {
64
+ "owner": "MIS",
65
+ "type": "EPISODE",
66
+ "value": "De eerste reportage van onze nieuwe presentatrice Nienke! Hoe zal ze het er vanaf brengen? Nienke gaat naar Makkum in Friesland. De Friese klei die daar al eeuwen onder de grond ligt is ideaal voor het maken van aardewerk. Nienke volgt het hele giet- en bakproces totdat er een prachtig stuk nieuw aardewerk geboren is. En hoe kom je te weten of het aardewerk goed gelukt is? Door heel goed te luisteren!"
67
+ }
68
+ ],
69
+ "duration": 1320000,
70
+ "embeddable": true,
71
+ "episodeOf": [
72
+ {
73
+ "added": 1369773121035,
74
+ "highlighted": false,
75
+ "index": 3407,
76
+ "midRef": "NPS_1217585",
77
+ "type": "SEASON",
78
+ "urnRef": "urn:vpro:media:group:16805225"
79
+ }
80
+ ],
81
+ "genres": [
82
+ "Informatief",
83
+ "Jeugd"
84
+ ],
85
+ "images": [
86
+ {
87
+ "creationDate": 1369760403678,
88
+ "description": "Nienke gaat naar Makkum in Friesland. De Friese klei die daar al eeuwen onder de grond ligt is ideaal voor het maken van aardewerk. Nienke volgt het hele giet- en bakproces.",
89
+ "highlighted": false,
90
+ "imageUri": "urn:vpro:image:186997",
91
+ "lastModified": 1369760410677,
92
+ "owner": "NEBO",
93
+ "title": "Het Klokhuis",
94
+ "type": "STILL",
95
+ "urn": "urn:vpro:media:image:26079434",
96
+ "workflow": "PUBLISHED"
97
+ },
98
+ {
99
+ "creationDate": 1369760407265,
100
+ "description": "Nienke gaat naar Makkum in Friesland. De Friese klei die daar al eeuwen onder de grond ligt is ideaal voor het maken van aardewerk. Nienke volgt het hele giet- en bakproces.",
101
+ "highlighted": false,
102
+ "imageUri": "urn:vpro:image:186998",
103
+ "lastModified": 1369760410678,
104
+ "owner": "NEBO",
105
+ "title": "Het Klokhuis",
106
+ "type": "STILL",
107
+ "urn": "urn:vpro:media:image:26079435",
108
+ "workflow": "PUBLISHED"
109
+ },
110
+ {
111
+ "creationDate": 1369760410567,
112
+ "description": "Nienke gaat naar Makkum in Friesland. De Friese klei die daar al eeuwen onder de grond ligt is ideaal voor het maken van aardewerk. Nienke volgt het hele giet- en bakproces.",
113
+ "highlighted": false,
114
+ "imageUri": "urn:vpro:image:186999",
115
+ "lastModified": 1369760410678,
116
+ "owner": "NEBO",
117
+ "title": "Het Klokhuis",
118
+ "type": "STILL",
119
+ "urn": "urn:vpro:media:image:26079436",
120
+ "workflow": "PUBLISHED"
121
+ }
122
+ ],
123
+ "languages": [
124
+ "NL"
125
+ ],
126
+ "lastModified": 1369876951297,
127
+ "locations": [
128
+ {
129
+ "avAttributes": {
130
+ "avFileFormat": "HASP"
131
+ },
132
+ "creationDate": 1369760765709,
133
+ "lastModified": 1369760765858,
134
+ "owner": "CERES",
135
+ "programUrl": "odip+http://odi.omroep.nl/video/adaptive/NPS_1223852",
136
+ "type": "INTERNAL",
137
+ "urn": "urn:vpro:media:location:26079497",
138
+ "workflow": "PUBLISHED"
139
+ },
140
+ {
141
+ "avAttributes": {
142
+ "avFileFormat": "MP4",
143
+ "bitrate": 204800,
144
+ "videoAttributes": {
145
+ "aspectRatio": "16:9",
146
+ "videoCoding": "MP4"
147
+ }
148
+ },
149
+ "creationDate": 1369766645862,
150
+ "lastModified": 1369766645997,
151
+ "owner": "NEBO",
152
+ "programUrl": "odi+http://odi.omroep.nl/video/h264_sb/NPS_1223852",
153
+ "publishStart": 1369759752000,
154
+ "type": "EXTERNAL",
155
+ "urn": "urn:vpro:media:location:26080644",
156
+ "workflow": "PUBLISHED"
157
+ },
158
+ {
159
+ "avAttributes": {
160
+ "avFileFormat": "MP4",
161
+ "bitrate": 512000,
162
+ "videoAttributes": {
163
+ "aspectRatio": "16:9",
164
+ "videoCoding": "MP4"
165
+ }
166
+ },
167
+ "creationDate": 1369766645860,
168
+ "lastModified": 1369766645998,
169
+ "owner": "NEBO",
170
+ "programUrl": "odi+http://odi.omroep.nl/video/h264_bb/NPS_1223852",
171
+ "publishStart": 1369759752000,
172
+ "type": "EXTERNAL",
173
+ "urn": "urn:vpro:media:location:26080647",
174
+ "workflow": "PUBLISHED"
175
+ },
176
+ {
177
+ "avAttributes": {
178
+ "avFileFormat": "MP4",
179
+ "bitrate": 1024000,
180
+ "videoAttributes": {
181
+ "aspectRatio": "16:9",
182
+ "videoCoding": "MP4"
183
+ }
184
+ },
185
+ "creationDate": 1369766645862,
186
+ "lastModified": 1369766646000,
187
+ "owner": "NEBO",
188
+ "programUrl": "odi+http://odi.omroep.nl/video/h264_std/NPS_1223852",
189
+ "publishStart": 1369759752000,
190
+ "type": "EXTERNAL",
191
+ "urn": "urn:vpro:media:location:26080650",
192
+ "workflow": "PUBLISHED"
193
+ },
194
+ {
195
+ "avAttributes": {
196
+ "avFileFormat": "WVC1",
197
+ "bitrate": 1024000,
198
+ "videoAttributes": {
199
+ "aspectRatio": "16:9",
200
+ "videoCoding": "MP4"
201
+ }
202
+ },
203
+ "creationDate": 1369766645861,
204
+ "lastModified": 1369766646002,
205
+ "owner": "NEBO",
206
+ "programUrl": "odi+http://odi.omroep.nl/video/wvc1_std/NPS_1223852",
207
+ "publishStart": 1369759752000,
208
+ "type": "EXTERNAL",
209
+ "urn": "urn:vpro:media:location:26080653",
210
+ "workflow": "PUBLISHED"
211
+ },
212
+ {
213
+ "avAttributes": {
214
+ "avFileFormat": "WM",
215
+ "bitrate": 204800,
216
+ "videoAttributes": {
217
+ "aspectRatio": "16:9",
218
+ "videoCoding": "MP4"
219
+ }
220
+ },
221
+ "creationDate": 1369766645861,
222
+ "lastModified": 1369766646003,
223
+ "owner": "NEBO",
224
+ "programUrl": "odi+http://odi.omroep.nl/video/wmv_sb/NPS_1223852",
225
+ "publishStart": 1369759752000,
226
+ "type": "EXTERNAL",
227
+ "urn": "urn:vpro:media:location:26080656",
228
+ "workflow": "PUBLISHED"
229
+ },
230
+ {
231
+ "avAttributes": {
232
+ "avFileFormat": "WM",
233
+ "bitrate": 512000,
234
+ "videoAttributes": {
235
+ "aspectRatio": "16:9",
236
+ "videoCoding": "MP4"
237
+ }
238
+ },
239
+ "creationDate": 1369766645861,
240
+ "lastModified": 1369766646005,
241
+ "owner": "NEBO",
242
+ "programUrl": "odi+http://odi.omroep.nl/video/wmv_bb/NPS_1223852",
243
+ "publishStart": 1369759752000,
244
+ "type": "EXTERNAL",
245
+ "urn": "urn:vpro:media:location:26080659",
246
+ "workflow": "PUBLISHED"
247
+ }
248
+ ],
249
+ "mid": "NPS_1223852",
250
+ "poProgID": "NPS_1223852",
251
+ "poSeriesID": "NPS_1217585",
252
+ "predictions": [
253
+ "INTERNETVOD"
254
+ ],
255
+ "scheduleEvents": [
256
+ {
257
+ "channel": "NED3",
258
+ "duration": 897000,
259
+ "midRef": "NPS_1223852",
260
+ "poProgID": "NPS_1223852",
261
+ "poSeriesID": "NPS_1217585",
262
+ "start": 1369758445000,
263
+ "urnRef": "urn:vpro:media:program:25215274"
264
+ },
265
+ {
266
+ "avAttributes": {
267
+ "videoAttributes": {
268
+ "aspectRatio": "16:9"
269
+ }
270
+ },
271
+ "channel": "BVNT",
272
+ "duration": 900000,
273
+ "imi": "imi:20927",
274
+ "midRef": "NPS_1223852",
275
+ "poProgID": "NPS_1223852",
276
+ "poSeriesID": "NPS_1217585",
277
+ "repeat": {
278
+ "isRerun": true,
279
+ "value": ""
280
+ },
281
+ "start": 1370356500000,
282
+ "textSubtitles": "Teletekst ondertitels",
283
+ "urnRef": "urn:vpro:media:program:25215274"
284
+ },
285
+ {
286
+ "avAttributes": {
287
+ "videoAttributes": {
288
+ "aspectRatio": "16:9"
289
+ }
290
+ },
291
+ "channel": "BVNT",
292
+ "duration": 900000,
293
+ "imi": "imi:20954",
294
+ "midRef": "NPS_1223852",
295
+ "poProgID": "NPS_1223852",
296
+ "poSeriesID": "NPS_1217585",
297
+ "repeat": {
298
+ "isRerun": true,
299
+ "value": ""
300
+ },
301
+ "start": 1370399700000,
302
+ "textSubtitles": "Teletekst ondertitels",
303
+ "urnRef": "urn:vpro:media:program:25215274"
304
+ }
305
+ ],
306
+ "segments": [],
307
+ "sortDate": 1369758445000,
308
+ "teletext": 226,
309
+ "titles": [
310
+ {
311
+ "owner": "NEBO",
312
+ "type": "MAIN",
313
+ "value": "Het Klokhuis"
314
+ },
315
+ {
316
+ "owner": "MIS",
317
+ "type": "MAIN",
318
+ "value": "Het Klokhuis"
319
+ },
320
+ {
321
+ "owner": "CERES",
322
+ "type": "MAIN",
323
+ "value": "Het Klokhuis"
324
+ },
325
+ {
326
+ "owner": "WHATS_ON",
327
+ "type": "MAIN",
328
+ "value": "Aardewerk"
329
+ },
330
+ {
331
+ "owner": "WHATS_ON",
332
+ "type": "ORIGINAL",
333
+ "value": "AARDEWERK"
334
+ },
335
+ {
336
+ "owner": "MIS",
337
+ "type": "EPISODE",
338
+ "value": "Aardewerk"
339
+ },
340
+ {
341
+ "owner": "CERES",
342
+ "type": "EPISODE",
343
+ "value": "Aardewerk"
344
+ }
345
+ ],
346
+ "type": "BROADCAST",
347
+ "urn": "urn:vpro:media:program:25215274",
348
+ "websites": [
349
+ {
350
+ "value": "www.hetklokhuis.nl"
351
+ }
352
+ ],
353
+ "workflow": "PUBLISHED"
354
+ }