You can also view
You are viewing documentation for version 11. This is the most recent stable release!

What's new in V11?

Get more for less. That's the motto of our V11 release! We've updated our pricing model to be both cheaper and more flexible for you guys. We've also added a slew of new fatures and bug fixes to make your experience (and that of your users) so much better.

Pay Less
Usage Based Overage Pricing
Referal Program

Get More
Custom Media Outputs
Media Specific Watermarks
Faster (Parallel) Processing
Custom Error and Processing Media
HLS Video Streaming
Speech-To-Text Captioning
Slack Integration
Live Preview Camera Selection
Visual Scrub in Player
Realtime Image Resizing
S3 key-based-auth
White theme css
Reduced Flash Pausing
Bug Fixes

Upgrade Notes
How to Upgrade
Potentially Breaking Changes

Usage Based Overage Pricing

You've spoken and we've listened. It's no fun playing the guessing game each month. Do you need to upgrade or will you just scrape by? You don't want to pay for the more expensive plan if you don't need to but you can't risk a service disruption.

Well we've got good news! Now you can sleep easy knowing that we will no longer turn off service once you hit your monthly quota. Instead we will charge you an overage fee at the end of the month based on how many extra minutes you used. Better yet, there are no nasty surcharges for overages- you'll pay the same the per-minute rate as your monthly plan (discounts, sales, and coupons not withstanding)!

We want the CameraTag experience to surprise and delight you from end-to-end. Hopefully, removing this small source of stress brings us one step closer to that goal.

Referal Program

Flexible pricing is not the only new way we've come up with to save you money. We have also crated a program which can net you as much as $800 per customer that you refer to CameraTag. Now you can invite your friends to use CameraTag and when they sign up for a paid plan we will credit your account with their first month's payment. To get started grab your referal link from the "Referals" tab of the "My Account" section of the site.

Custom Media Outputs

Until now, CameraTag would produce a predefined group of files for each piece of user generated media. For example, for every video that was published to CameraTag we would generate an mp4 video file, and two image thumbnails. We're excited to announce that you now have much greater control over the number and types of files that we produce from each one of your published media.

Custom

You may now choose from any of the following media outputs. Mix and match them to create the perfect set of medias for your use.

  • Videos: create a video file of the format, resolution and length of your choosing
  • Images: create an image file of the format and resolution your choosing. If from a video source you may also choose the time for the thumbnail.
  • Audio: create an audio file of the format and length of your choosing.
  • Waveforms: create an image file showing the audio waveform of an Audio or Video source
  • Captions: auto generate captions in one of six languages using our speech to text system
  • Filmstrips: generate a 30-frame vertical (single image) filmstrip of frames sampled from a video source.

Media Specific Watermarks

Previously you would define a watermark at the Application level- meaning that all medias (videos, thumbnails etc) would bear the watermark you defined. You can now define watermarks on a media by media basis allowing you to create both branded and unbranded versions of your media (or multiple versions of your media for multiple brands).

Faster (Parallel) Processing

Transcoding and syndication of medias for a given source used to be done in serial. For example a video would be assigned a worker that would first generate the mp4, then the thumbnails, then copy assets to s3 if needed etc etc. This is because there is a complex dependency graph that dictates the order in which the outputs needed to be created.

We're happy to announce that we have codified that dependency graph and are now able to parallel process (with multiple workers) much of the transcoding process. This means up to 30% faster transcoding, syndcation, and notification times across the board.

Custom Error and Processing Media

Tired of the standard CameraTag placeholders for processing or failed media? Good news! You can now specify your own placeholder medias to be displayed when an asset is viewed but unavailable. Check out the Playback Settings section of your CameraTag App to specify the UUID(s) of media to be served when your assets are unavailable.

HLS Video Streaming

Hopefully you've heard that CameraTag now allows you to create multiple custom outputs for every asset that is published to our servers. One of those options is now an m3u8 HLS playlist for HTML5 streaming. If HLS is of interest to you can create an HLS output in the transcoding settings of your CameraTag App.

Speech-To-Text Captioning

We've partnered with IBM Watson to bring you state-of-the-art speech-to-text functionality to auto-generate captions for your Video and Audio assets. We support six languages and will automatically include the generated transcriptions as a VTT (captions) track in the CameraTag player. One click, hands free transcriptions.

Captions

Slack Integration

Get notifications of new assets in your Slack channel (thumbnail included). Find the new Slack integration in the "Integrations" section of your CameraTag App Settings.

Slack

Live Preview Camera Selection

When making device selections in the <camera> and <photobooth> tags you can now get a live preview of the camera you have selected. This helps users ensure they are selecting the correct device.

Preview

Visual Scrub in Player

The CameraTag player now includes a visual preview when scrubbing and mousing-over video timelines. Quickly get a preview of what's to come and hop to exactly the moment you're looking for.

Scrub

Realtime Image Resizing

Here's a scenario. You want to display many small thumbnails on a page but all you have is a bunch of 1280x720 thumbnails from CameraTag. Do you load up the page with a bunch of very large image files (cause slow load times and unneeded bandwidth usage) or do you change your page design to only show a few thumbnails?

Well now you don't have to make that choice! You can now append a max_width or a max_height parameter (or both!) to the end of any CameraTag image URL and we will dynamically resize the original file and serve up and image file that is exactly the size you need. This technology has been implemented in the CameraTag <player>, <photo> and <videowall> products to ensure the fastest possible page load times.

S3 key-based-auth

CameraTag's S3 integration was previously built on the requirement that you create an S3 bucket policy that would allow us access to place files in your bucket. We have extended the S3 integration to include the option of using an AWS key / secret pair instead of creating a bucket policy. This option may be simpler for some (over creating a well-formatted policy) and offers the added benefit of all bucket assets being owned by your AWS account and not ours :)

S3

White Theme CSS

"You can get CameraTag in whatever color you want as long as it's black." Kidding aside, you've always been able to customize our css to create whatever design you want, but we wanted to give those of you looking for a lighter look a head start. To do so, check out our new white theme css file.

<link rel='stylesheet' href='//cameratag.com/static/11/cameratag_white.css'>
White

Bug Fixes

  • MediaRecorder Recording Errors
    Fixed an issue where in some versions of Chrome on OSX users would recieve an "There was an error during recording" error
  • Facebook Mobile App Browser
    Fixed an issue which prevented <camera>'s from loading properly in Facebook's mobile browser
  • Name and Description
    Fixed an issue that would prevent data-name and data-description attribute from getting passed to the server

Upgrading

Upgrading to v11 is easy. Simply replace the reference to cameratag.js and cameratag.css (if you have one) in your <head> with the new ones below. Also take note of the potentially breaking changes in the section below.

<script src='//cameratag.com/v11/js/cameratag.min.js' type='text/javascript'></script>
<link rel='stylesheet' href='//cameratag.com/static/11/cameratag.css'>

Potentially Breaking Fixes

With the release of v11 we have updated the way in which we deliver asset URLs to accommodate the new custom media outputs. Formerly the JS API, Webhook and REST API asset objcts would contain a hash of formats each of which contained one or more URLs. Now we simply provide a hash of all medias created by the Application (which you can define in the transcoding settings). Below is an example of what you can expect from the v11 JS API and the v11 REST API / WebHook

JS API
{
  "uuid": "v-8b7c9a5d-699b-4162-b5f4-84aba1204cea",
  "medias": {
    "h264-vga_mp4": "//cdanzig.com/assets/v-8b7c9a5d-699b-4162-b5f4-84aba1204cea/h264-vga_mp4.mp4",
    "h264-vga_thumb": "//cdanzig.com/assets/v-8b7c9a5d-699b-4162-b5f4-84aba1204cea/h264-vga_thumb.jpg",
    "h264-vga_filmstrip": "//cdanzig.com/assets/v-8b7c9a5d-699b-4162-b5f4-84aba1204cea/h264-vga_filmstrip.jpg",
    "qvga_mp4": "//cdanzig.com/assets/v-8b7c9a5d-699b-4162-b5f4-84aba1204cea/qvga_mp4.mp4",
    "qvga_thumb": "//cdanzig.com/assets/v-8b7c9a5d-699b-4162-b5f4-84aba1204cea/qvga_thumb.jpg",
    "qvga_filmstrip": "//cdanzig.com/assets/v-8b7c9a5d-699b-4162-b5f4-84aba1204cea/qvga_filmstrip.jpg",
    "en_captions": "//cdanzig.com/assets/v-8b7c9a5d-699b-4162-b5f4-84aba1204cea/en_captions.VTT"
  }
}
REST API / WebHook
{
  "uuid": "v-1237c41f-9038-44b7-b4cc-8cb1f13f6f76",
  "preview_thumbnail_url": "https://cameratag.com/assets/v-1237c41f-9038-44b7-b4cc-8cb1f13f6f76/720p_thumb.jpg",
  "preview_full_thumbnail_url": "https://cameratag.com/assets/v-1237c41f-9038-44b7-b4cc-8cb1f13f6f76/720p_thumb.jpg",
  "preview_mp4_url": "https://cameratag.com/assets/v-1237c41f-9038-44b7-b4cc-8cb1f13f6f76/720p_mp4.mp4",
  "preview_webm_url": "https://cameratag.com/videos/v-eed31052-1072-4457-bb62-aa49687e2be9/720p/mp4.mp4",
  "state": "processed",
  "name": "Bug Buck Bunny",
  "description": "A demo video",
  "type": "Video",
  "ad_server_type": null,
  "ad_server_url": null,
  "app_uuid": "bd67aac0-7869-0130-7e72-22000aaa02b5",
  "medias": {
    "720p_mp4": {
      "width": 1280,
      "height": 720,
      "length": 32,
      "media_type": "mp4",
      "name": "720p_mp4",
      "state": "COMPLETED",
      "urls": {
        "cameratag": "https://cameratag.com/assets/v-1237c41f-9038-44b7-b4cc-8cb1f13f6f76/720p_mp4.mp4"
      }
    },
    "720p_thumb": {
      "width": 1280,
      "height": 720,
      "length": null,
      "media_type": "thumb",
      "name": "720p_thumb",
      "state": "COMPLETED",
      "urls": {
        "cameratag": "https://cameratag.com/assets/v-1237c41f-9038-44b7-b4cc-8cb1f13f6f76/720p_thumb.jpg"
      }
    },
    "720p_filmstrip": {
      "width": 1280,
      "height": 720,
      "length": null,
      "media_type": "filmstrip",
      "name": "720p_filmstrip",
      "state": "COMPLETED",
      "urls": {
        "cameratag": "https://cameratag.com/assets/v-1237c41f-9038-44b7-b4cc-8cb1f13f6f76/720p_filmstrip.jpg"
      }
    }
  },
  "created_at": "2017-05-09T20:16:30.000Z",
  "percent_complete": 100,
  "publish_type": "upload",
  "play_count": 37,
  "metadata": {
  },
  "recorded_from": "https://cameratag.com/apps/bd67aac0-7869-0130-7e72-22000aaa02b5/assets#",
  "browser": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.36 Safari/537.36",
  "origin": "https://cameratag.com/apps/bd67aac0-7869-0130-7e72-22000aaa02b5/assets#",
  "client_version": "11"
}