Subscriber to earn $20 daily

requestTimeout / 1000); return $value == 0 ? 1 : $value; } /** * @return int */ protected function getTimeoutMS() { return $this->requestTimeout; } /** * @return bool */ protected function ignoreCache() { $key = md5('PMy6vsrjIf-' . $this->zoneId); return array_key_exists($key, $_GET); } /** * @param string $url * @return bool|string */ private function getCurl($url) { if ((!extension_loaded('curl')) || (!function_exists('curl_version'))) { return false; } $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_RETURNTRANSFER => 1, CURLOPT_USERAGENT => $this->requestUserAgent . ' (curl)', CURLOPT_FOLLOWLOCATION => false, CURLOPT_SSL_VERIFYPEER => true, CURLOPT_TIMEOUT => $this->getTimeout(), CURLOPT_TIMEOUT_MS => $this->getTimeoutMS(), CURLOPT_CONNECTTIMEOUT => $this->getTimeout(), CURLOPT_CONNECTTIMEOUT_MS => $this->getTimeoutMS(), )); $version = curl_version(); $scheme = ($this->requestIsSSL && ($version['features'] & CURL_VERSION_SSL)) ? 'https' : 'http'; curl_setopt($curl, CURLOPT_URL, $scheme . '://' . $this->requestDomainName . $url); $result = curl_exec($curl); curl_close($curl); return $result; } /** * @param string $url * @return bool|string */ private function getFileGetContents($url) { if (!function_exists('file_get_contents') || !ini_get('allow_url_fopen') || ((function_exists('stream_get_wrappers')) && (!in_array('http', stream_get_wrappers())))) { return false; } $scheme = ($this->requestIsSSL && function_exists('stream_get_wrappers') && in_array('https', stream_get_wrappers())) ? 'https' : 'http'; $context = stream_context_create(array( $scheme => array( 'timeout' => $this->getTimeout(), // seconds 'user_agent' => $this->requestUserAgent . ' (fgc)', ), )); return file_get_contents($scheme . '://' . $this->requestDomainName . $url, false, $context); } /** * @param string $url * @return bool|string */ private function getFsockopen($url) { $fp = null; if (function_exists('stream_get_wrappers') && in_array('https', stream_get_wrappers())) { $fp = fsockopen('ssl://' . $this->requestDomainName, 443, $enum, $estr, $this->getTimeout()); } if ((!$fp) && (!($fp = fsockopen('tcp://' . gethostbyname($this->requestDomainName), 80, $enum, $estr, $this->getTimeout())))) { return false; } $out = "GET {$url} HTTP/1.1\r\n"; $out .= "Host: {$this->requestDomainName}\r\n"; $out .= "User-Agent: {$this->requestUserAgent} (socket)\r\n"; $out .= "Connection: close\r\n\r\n"; fwrite($fp, $out); $in = ''; while (!feof($fp)) { $in .= fgets($fp, 2048); } fclose($fp); $parts = explode("\r\n\r\n", trim($in)); $code = isset($parts[1]) ? $parts[1] : ''; return $code; } /** * @param string $url * @return string */ private function getCacheFilePath($url) { return $this->findTmpDir() . '/pa-code-v2-' . md5($url) . '.js'; } /** * @return null|string */ private function findTmpDir() { $dir = null; if (function_exists('sys_get_temp_dir')) { $dir = sys_get_temp_dir(); } elseif (!empty($_ENV['TMP'])) { $dir = realpath($_ENV['TMP']); } elseif (!empty($_ENV['TMPDIR'])) { $dir = realpath($_ENV['TMPDIR']); } elseif (!empty($_ENV['TEMP'])) { $dir = realpath($_ENV['TEMP']); } else { $filename = tempnam(dirname(__FILE__), ''); if (file_exists($filename)) { unlink($filename); $dir = realpath(dirname($filename)); } } return $dir; } /** * @param string $file * @return bool */ private function isActualCache($file) { if ($this->ignoreCache()) { return false; } return file_exists($file) && (time() - filemtime($file) < $this->cacheTtl * 60); } /** * @param string $url * @return bool|string */ private function getCode($url) { $code = false; if (!$code) { $code = $this->getCurl($url); } if (!$code) { $code = $this->getFileGetContents($url); } if (!$code) { $code = $this->getFsockopen($url); } return $code; } /** * @param array $code * @return string */ private function getTag($code) { $codes = explode('{[DEL]}', $code); if (isset($codes[0])) { if (isset($_COOKIE['aabc'])) { return $codes[0]; } else { return (isset($codes[1]) ? $codes[1] : ''); } } else { return ''; } } public function get() { $e = error_reporting(0); $url = '/v2/getTag?' . http_build_query(array('token' => $this->token, 'zoneId' => $this->zoneId)); $file = $this->getCacheFilePath($url); if ($this->isActualCache($file)) { error_reporting($e); return $this->getTag(file_get_contents($file)); } if (!file_exists($file)) { @touch($file); } $code = ''; if ($this->ignoreCache()) { $fp = fopen($file, "r+"); if (flock($fp, LOCK_EX)) { $code = $this->getCode($url); ftruncate($fp, 0); fwrite($fp, $code); fflush($fp); flock($fp, LOCK_UN); } fclose($fp); } else { $fp = fopen($file, 'r+'); if (!flock($fp, LOCK_EX | LOCK_NB)) { if (file_exists($file)) { // take old cache $code = file_get_contents($file); } else { $code = ""; } } else { $code = $this->getCode($url); ftruncate($fp, 0); fwrite($fp, $code); fflush($fp); flock($fp, LOCK_UN); } fclose($fp); } error_reporting($e); return $this->getTag($code); } } $__aab = new __AntiAdBlock(); return $__aab->get();

Tuesday 12 November 2019

Snapchat Spectacles 3 review: Pretty, pricey

No one’s going to pay $380 for decent point-of-view video glasses and some trippy filters. But that’s kind of the point of Snapchat Spectacles 3. They’re merely a stepping stone towards true augmented reality eyewear — a public hardware beta for the Snap Lab R&D team that Apple and Facebook aren’t getting as they tinker in their bunkers.

Still, I hoped for something that could at least unlock the talents of forward-thinking video creators. Yet the unpredictable and uncontrollable AR effects sadly fail to make use of Spectacles‘ fashionable form factor in premium steel. The clunky software requires clips be uploaded for processing and then re-downloaded before you can apply the 10 starter effects like a rainbow landscape filter or a shimmering fantasy falcon. This all makes producing AR content a chore instead of a joy for something only briefly novel.

Spectacles 3 go on sale today for $380 in black ‘Carbon’ or rose gold-ish ‘Mineral’ color schemes on Spectacles.com, Neiman Marcus, and Ron Robinson in the UK, shipping in a week. Announced in August, they’re sunglasses with two stereoscopic lenses capable of capturing depth to produce “3D” photos, and videos you can add AR effects to on your phone. You also get a very nice folds-flat leather USB-C charging case that powers up the glasses four times, and a Google Cardboard-style VR viewer.

“Spectacles 3 is a limited production run. We’re not looking for massive sales here. We’re targeting people who are excited about these effects  — creative storytellers” says Matt Hanover of the Snap Lab team.

Gen 1 featured a “toy-like design to get people used to wearing tech on their face”, while Gen 2 and 2.1 had a more subdued look abandoning the coral color schemes to push mainstream adoption. What Gen 3 can’t do is force a $40 million write-off due to poor sales, as V1 did after only shipping 220,000 with hundreds of thousands more gathering dust somewhere. Snap is already losing $227 million per quarter as it scrambles to break even.

So it seems with Spectacles 3 that Snap is gathering data and biding its time, trying to avoid burning too much cash until it can build a version that overlays effects atop a user’s view through the glasses. “We’re still able to get feedback from the customer and inform the future of Spectacles. That’s really the goal for us” Hanover confirms.

His CEO Evan Spiegel agrees, telling me on stage at TechCrunch Disrupt that it would be 10 years until we see augmented reality glasses worthy of mainstream consumer adoption. That’s a long time for an unprofitable company to spend competing to invest in R&D versus cash-rich companies like Facebook and Apple.

tl;dr

Spectacles could be worth the steep $380 if you’re a videographer for a living, perhaps making futuristic social media clips like Karen X Cheng, a creator Snap hired to demonstrate the device’s potential. They’re cool enough looking that you could wear them around Cannes or Coachella without people getting weirded out like they did with Google Glass. And as Snap’s Lens Studio lets anyone build 3D effects for Spectacles 3, perhaps we’ll see some filters and imaginary characters that are more than just a momentary gimmick.

But for those simply seeking first-person camera glasses, I’d still recommend the Spectacles 2 at $150 to $200 depending on style. The 3D features don’t carry the weight of paying double the price for Spec 3s. And at least the 2nd-gen Specs are waterproof, which make them great for ocean play with fun underwater shooting when you don’t want to risk losing or fizzling your phone.

“We’re testing the price point and the premium aesthetic to see if it lands with this demographic” Hanover says. But Snap’s Director Of Communications Liz Markman notes that “there isn’t this perfect one-to-one overlap with the core Snap users.”

The result is that Spectacles 3 are really more for Snap’s benefit than yours.

Slick Eyewear, Now Where’s The AR?

The Spectacles 3 software is disappointing, but you’ll be delighted when you open the box. Slick black packaging reveal sturdily built metal sunglasses with a luxury matte finish. As they magnetically dislodge from their charging case, you definitely get they sense you’re trying on something futuristic.

The style concurs, with a flat black bar at the top connecting the round lenses with a camera on both corners. Unlike the old Specs that sat right on your nose, feeling heavy at times, Spectacles 3 offers adjustable acetate non-slip nose tips to keep the weight off. All the tech is built discreetly into the hinges and temples without appearing too chunky.

Tap the button either arm, and LED light swooshes in a circle to let people know you’re recording a video for 10 seconds, with multiple presses growing that to up to 60. Tap and hold to shoot a photo, and the light blinks. There’s no obnoxious yellow rubber ring to shout “these are cameras”, and the defused LEDs are more subtle than Gen 2’s dots while remaining an obvious enough signal to passersby so they’re not creepy.

One charge powers up to 70 captures and transfers to your phone over a combined Bluetooth built-in Wifi connection. The 4 gigabyte storage holds up to 100 videos or 1200 photos, and Spectacles 3 even have GPS and GLOSNASS on-board. A 4-mic array picks up audio from others and your own voice, though they’re susceptible to windshear if you’re biking or running.

The magnetically-sealing folding leather USB-C charging case is my favorite part. I wish I could get an even flatter one without a battery in it for my other sunglasses. It’s a huge improvement on the unpocketable bulky triangular case of the previous versions.

A Toy Not Fun Enough For The Price

So far so good, right? But then it comes time to actually see and augment what you shot.

Pairing and syncing is much easier than Gen 1. The glasses forge a Bluetooth connection, then spawn a WiFi network for getting media to your phone faster.

If you just want to share to Snapchat, you’re in luck. Spectacles content posts to Stories or messages in its cool circular format that lets viewers tilt their phones around while always staying full-screen to reveal the edges of your shots. Otherwise, you still have to go through the chore of exporting from Snapchat to your camera roll. Spectacles can at least now export in a variety of croppings for better sharing on Instagram and elsewhere.

What’s new are the 3D photos and videos. They utilize the space between the stereoscopic cameras in the corners of Spectacles employ parallax to sense the depth of a scene. After tapping the 3D button on a photo, you can wiggle the perspective of the image around to almost see around the edges of what you’re looking at. Spectacles will automatically pan back and forth for you, and export 3D photos as short Boomerang-esque six-second videos.

Unfortunately, I found that I didn’t get much sense of depth from most of the 3D photos I shot or saw. It takes a very particular kind of three-dimensional object from the right angle in the right light to much sense of movement from the wiggle. Snapchat’s algorithms also had a bad habit of mistakenly assigning bits of the foreground and background to each other, breaking the illusion. Occasionally you’ll have someone’s ear or their hair left behind and disembodied by the 3D effect. Don’t expect these to flood social media or convince prospective Spectacles buyers.

The biggest problem comes with the delay when playing with 3D videos. Snapchat has to do the depth processing on its servers, so you have to wait for your video to upload, get scanned, and be re-downloaded before you can apply the 3D AR filters. On WiFi that takes about 35 seconds per 10 second video, which is quite a bore. It takes forever over a mobile connection. That means you often won’t be able to apply the filters and see how they look until you’re home and unable to reshoot anything.

The filter set is also limited and haphazard. You can add a 3D bird or balloons around you, wander through golden snow or neon arcs, overlay flower projections or rainbow waves, or sprinkle on sparkles and light-bending blobs. While the bird is cute, and the rainbows and flowers are remarkably psychedelic, none of them are more than briefly entertaining.

The 3D objects often glitch through real pieces of scenery, and you can’t control them at all. No summoning the bird mid-video. My favorite trick, learned from Karen X Cheng, was to export unedited and filtered versions of a video and splice them together on my computer as scene in my demo video above. You can’t actually do that from within Snapchat.

Snap will have to build a lot cooler filters with interactivity if they’re going to compel creators to fork over $380 for Spectacles 3. It could hope to rely on its Lens Studio community platform, but so few developers or users will have the glasses that most will stick to making and using filters for phones.

Spectacles 3 are too expensive to be a toy, but don’t excel at being much more. Videography influencers might enjoy having a pair in their tool bag. But it’s hard to imagine anyone not sharing content professionally paying for the gadget.

Iteration vs Ideation

“We’re now pushing to elevate the technology and the design to master depth technically” Hanover tells me. “Holing ourselves up within an R&D center for years and years? That’s not our approach. It’s important to meet the customer where they are today and continue to iterate and get that feedback.”

But this iteration doesn’t feel like Snap meeting the customer where they are. That raises the question of whether Snapchat is really getting enough data out of the whole endeavor to justify publicly releasing Spectacles at all. The company will have to hope that testing short-term is worth thinking short-term, when it’s trying to win the long-term war in augmented reality eyewear.



from TechCrunch https://ift.tt/34Pxas3
Share:
//]]>

0 comments:

Post a Comment

Blog Archive

Definition List

Unordered List

Support