Deprecated: Return type of WP_Theme::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php on line 554

Deprecated: Return type of WP_Theme::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php on line 595

Deprecated: Return type of WP_Theme::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php on line 535

Deprecated: Return type of WP_Theme::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php on line 544

Deprecated: Return type of WP_REST_Request::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-request.php on line 960

Deprecated: Return type of WP_REST_Request::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-request.php on line 980

Deprecated: Return type of WP_REST_Request::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-request.php on line 992

Deprecated: Return type of WP_REST_Request::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-request.php on line 1003

Deprecated: Return type of WP_Block_List::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 151

Deprecated: Return type of WP_Block_List::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 175

Deprecated: Return type of WP_Block_List::key() should either be compatible with Iterator::key(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 164

Deprecated: Return type of WP_Block_List::valid() should either be compatible with Iterator::valid(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 186

Deprecated: Return type of WP_Block_List::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 138

Deprecated: Return type of WP_Block_List::offsetExists($index) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 75

Deprecated: Return type of WP_Block_List::offsetGet($index) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 89

Deprecated: Return type of WP_Block_List::offsetSet($index, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 110

Deprecated: Return type of WP_Block_List::offsetUnset($index) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 127

Deprecated: Return type of WP_Block_List::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/class-wp-block-list.php on line 199

Deprecated: Optional parameter $attr declared before required parameter $content is implicitly treated as a required parameter in /home/superbeet/dev.beet.tv/wp-content/plugins/wp-fancybox-3/src/Core.php on line 207

Deprecated: Optional parameter $value declared before required parameter $field is implicitly treated as a required parameter in /home/superbeet/dev.beet.tv/wp-content/plugins/wp-gdpr-compliance/Includes/Extensions/GForms.php on line 142

Deprecated: Optional parameter $lead declared before required parameter $field is implicitly treated as a required parameter in /home/superbeet/dev.beet.tv/wp-content/plugins/wp-gdpr-compliance/Includes/Extensions/GForms.php on line 142

Deprecated: Optional parameter $username declared before required parameter $errors is implicitly treated as a required parameter in /home/superbeet/dev.beet.tv/wp-content/plugins/wp-gdpr-compliance/Includes/Extensions/WC.php on line 47

Deprecated: Optional parameter $emailAddress declared before required parameter $errors is implicitly treated as a required parameter in /home/superbeet/dev.beet.tv/wp-content/plugins/wp-gdpr-compliance/Includes/Extensions/WC.php on line 47

Deprecated: DateTime::__construct(): Passing null to parameter #1 ($datetime) of type string is deprecated in /home/superbeet/dev.beet.tv/wp-includes/script-loader.php on line 333

Deprecated: Return type of Requests_Cookie_Jar::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Cookie/Jar.php on line 63

Deprecated: Return type of Requests_Cookie_Jar::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Cookie/Jar.php on line 73

Deprecated: Return type of Requests_Cookie_Jar::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Cookie/Jar.php on line 89

Deprecated: Return type of Requests_Cookie_Jar::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Cookie/Jar.php on line 102

Deprecated: Return type of Requests_Cookie_Jar::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Cookie/Jar.php on line 111

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 40

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 51

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 68

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 82

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/superbeet/dev.beet.tv/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 91

Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /home/superbeet/dev.beet.tv/wp-includes/class-wp.php on line 173

Warning: Cannot modify header information - headers already sent by (output started at /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php:9) in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-server.php on line 1667

Warning: Cannot modify header information - headers already sent by (output started at /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php:9) in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-server.php on line 1667

Warning: Cannot modify header information - headers already sent by (output started at /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php:9) in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-server.php on line 1667

Warning: Cannot modify header information - headers already sent by (output started at /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php:9) in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-server.php on line 1667

Warning: Cannot modify header information - headers already sent by (output started at /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php:9) in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-server.php on line 1667

Warning: Cannot modify header information - headers already sent by (output started at /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php:9) in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-server.php on line 1667

Warning: Cannot modify header information - headers already sent by (output started at /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php:9) in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-server.php on line 1667

Warning: Cannot modify header information - headers already sent by (output started at /home/superbeet/dev.beet.tv/wp-includes/class-wp-theme.php:9) in /home/superbeet/dev.beet.tv/wp-includes/rest-api/class-wp-rest-server.php on line 1667
{"id":59029,"date":"2019-02-14T11:10:22","date_gmt":"2019-02-14T16:10:22","guid":{"rendered":"https:\/\/www.beet.tv\/?p=59029"},"modified":"2019-02-14T11:10:22","modified_gmt":"2019-02-14T16:10:22","slug":"freewheel-james-rooke","status":"publish","type":"post","link":"https:\/\/dev.beet.tv\/2019\/02\/freewheel-james-rooke.html","title":{"rendered":"Three Steps To NBC’s ‘Single Decision Brain’: FreeWheel’s Rooke"},"content":{"rendered":"

When Digiday reported<\/a> recently how Comcast-owned NBCUniversal was beginning to use FreeWheel, its ad-tech software stablemate, to schedule linear TV ads, it set industry tongues wagging.<\/p>\n

That sort of integration requires extensive infrastructure development. But bigger things are coming, says James Rooke, FreeWheel GM, publishers, who explains the workings in this video interview with Beet.TV.<\/p>\n

“The foundation is enabling the digital ad server, FreeWheel’s digital ad server, to be able to understand and receive linear television logs,” Rooke says. “And that really is building the connective tissue between the traditional NBC’s linear tracking system and FreeWheel’s digital ad server.<\/p>\n

“Once you’ve built that connective tissue, then you can start to leverage FreeWheel’s digital ad server to use this intelligence to make decisions about how the linear log should be scheduled.”<\/p>\n

As Digiday’s Tim Peterson reported<\/a>: “FreeWheel is not pulling digital video ads and putting them on linear TV \u2014 for now. (But this)\u00a0sets up for a day when its linear and digital inventory can be treated equally.”<\/p>\n

Rooke says NBC has made the move because ad buyers are calling for a single unified way to buy moving-image ads, whether on “TV” or in “video”. “Executing on that is incredibly hard,” he concedes.<\/p>\n

Rooke outlined a three-phase approach he will use to pull it off:<\/p>\n

    \n
  1. Phase one<\/strong>: This connecting of fundamental systems. Now complete.<\/li>\n
  2. Phase two<\/strong>: “Use FreeWheel’s digital ad server to be able to take a look at the linear schedule and say, ‘Hey, I think there’s a better way to organize that schedule that will enable better delivery on behalf of NBC and ultimately on behalf of the advertiser’. Rooke says FreeWheel will work on that integration through 2019, starting on a smaller NBC channel and rolling up to all of them within eight to 12 months.<\/li>\n
  3. Phase three<\/strong>: Supporting buying audiences, not just demographics. “Building the foundation of your single decision brain, the ad decision engine that is based on principles in digital, enables you to execute much more sophisticated use cases, audience based use cases, data-enabled use cases, on behalf of NBC that can work not just in digital environments but across linear environments as well.”<\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"

    When Digiday reported recently how Comcast-owned NBCUniversal was beginning to use FreeWheel, its ad-tech software stablemate, to schedule linear TV ads, it set industry tongues wagging. That sort of integration requires extensive infrastructure development. But bigger things are coming, says James Rooke, FreeWheel GM, publishers, who explains the workings in this video interview with Beet.TV. […]<\/p>\n","protected":false},"author":15,"featured_media":59038,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"mc4wp_mailchimp_campaign":[]},"categories":[1],"tags":[5267,4811],"_links":{"self":[{"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/posts\/59029"}],"collection":[{"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/users\/15"}],"replies":[{"embeddable":true,"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/comments?post=59029"}],"version-history":[{"count":0,"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/posts\/59029\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/media\/59038"}],"wp:attachment":[{"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/media?parent=59029"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/categories?post=59029"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dev.beet.tv\/wp-json\/wp\/v2\/tags?post=59029"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}