AT&T Developer
  • Sign In
  • Download Video Optimizer

AT&T Video Optimizer

  • Tour
  • Docs
  • Best Practices
  • Blog

Documentation

  • Overview
  • Best Practices
  • Requirements
  • Installation
  • Data Analysis
  • Testing
  • Effective Testing
  • Help
  • Release Notes
  • FAQs

1. Overview

AT&T Video Optimizer is a free, open-source tool for developers and testers that provides recommendations to optimize the network performance of video and applications on mobile devices.

Video Optimizer runs traces on a mobile device, collecting network traffic, battery statistics, a video of the screen, and more. Post collection, the results are analyzed against 43 Best Practices, which helps developers pinpoint performance issues in their network traffic, and provides advice on how to resolve the issues. Adhering to these Best Practices has been shown to dramatically improve app and website performance, all of which lead to higher customer engagement and retention.

Video Optimizer complements standard functional and user-based testing as part of any quality assurance program. Video Optimizer allows for simple integration into existing test automation. We recommend that you execute a set of standardized tests such as AQuA's Testing Criteria while using Video Optimizer to qualify your product for readiness.

Video Optimizer User Guide

2. Best Practices

The following Best Practices documents are reinforced by the Best Practice tests in Video Optimizer, and are organized in the same categories.

File Download: These documents provide recommendations for cache management, reducing duplicate content, and compressing and managing the way you download files and images. Smaller files can be delivered in less time, speeding up the rendering of your application.

Connections: These documents provide recommendations for efficiently managing TCP connections. By optimizing how you use the device's radio, you can speed the delivery of content and reduce the battery consumption of your app.

HTML: These documents provide recommendations for optimizing the handling of external files in your HTML. Optimizing your HTTP connectivity can further reduce your application's battery consumption.

Other: Reducing the usage of device peripherals can further reduce the battery consumption of your app.

Video: Analyses of the video packets sent during the data collection to examine for startup delays, stalls and more.

General Topics: These documents provide background on the LTE and 3G energy models and optimizing your app for mobile devices.

3. System Requirements

Before you download Video Optimizer, make sure you meet the following system requirements for your operating system:

  • At least 4GB of RAM, but suggested is 8GB
  • Oracle Java 8 or above (open JDK not supported by Video Optimizer)
  • Android SDK Level 23 or above including ADB
  • FFmpeg

Windows

  • Wireshark (Install Npcap addon with Winpcap API-compatible mode)
  • VLC media player 3.x.x or higher

Mac

  • Homebrew
  • For iOS developers, use latest version of Xcode and OS X
  • Ifuse
  • OSXFuse
  • libimobiledevice and ideviceinstaller (for taking iOS traces)
  • Wireshark
  • VLC media player- 3.x.x or higher

Linux

  • Wireshark
  • For Ubuntu 18.04.x LTS (and newer) users, use VLC media player version 3.x.x
  • For Ubuntu 16.04.x LTS (and older) users, use VLC media player version 3.x.x up to 3.0.8

4. Installation

Video Optimizer available on three platforms:

  • Windows 10 (64 bit)
  • Mac OS X
  • Linux

Download the latest version of AT&T Video Optimizer and follow the instructions below for OS.

Windows

  1. Download and install Java 1.8 (or update to latest version if already installed).
  2. Run the Video Optimizer Installer that is downloaded. The steps are similar to any application install; accept the terms and conditions, and specify the location of the install. Use the default settings.
  3. Download and install Wireshark including WinPcap. From the Npcap installation options (check install Npcap in WinPcap API-compatible Mode).
  4. Download and extract FFmpeg, then move it to the system root folder. Add the path in Preferences.
  5. Download and extract FFProbe then add the path in Preferences.
  6. Download and install the VLC Media Player (3.x.x or higher).
  7. Download and install the Android SDK platform tools. If Android Studio is installed, then configure in File>Preferences>ADB Path as Android\platform-tools-latest-windows\platform-tools\adb.exe.
  8. Add the locations of these components to your windows path:
    1. Click Start Button>Type “Control Panel” and click to open>System>Advanced system settings>Environment Variables.
    2. Scroll down System variables to Path and select Edit.
    3. Add new paths to adb.exe, ffmpeg.exe.
  9. Connect device to the computer. When asked, let the device trust computer and allow the computer to install any drivers needed.
  10. To take Android traces, user must enable device for USB debugging.
    1. On the device, go to Settings>About Device>tap on "Build Number" five times. This enables the developer options menu which is available in the default settings page.
    2. Then go up a level to Developer Options and turn on USB Debugging. See the Video Optimizer User Guide for additional information on capturing traces.
  11. Open Video Optimizer. Go to File>Preferences. Set the ADB path by browsing to the adb.exe file. Go to Data Collector>Start Collector to ensure connected device shows up.

For more information, see How to set up Video Optimizer on your Windows computer.


Mac OSX

  1. Download and install Java 1.8 (or update to latest version if already installed).
  2. Download Video Optimizer.dmg and run the file for installation until user reaches pre-requisites page.
  3. Download and install Wireshark.
  4. Download and install the VLC Media Player (3.x.x or higher).
  5. Open a Terminal window (under Applications>Utilities) and install Homebrew package manager. This will simplify subsequent package installations.

    ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

  6. Install FFmpeg from the Terminal window "brew install ffmpeg"
  7. For collecting traces on iOS devices, install libimobiledevice, ideviceinstaller, usbmuxd and iFuse for Mac OS. Use the following brew commands in terminal window:
    • "brew install --HEAD libimobiledevice"
    • "brew install ideviceinstaller"
    • "brew install --HEAD usbmuxd"
    Osxfuse is a prerequisite for installing ifuse, so it must be installed first:
    • "brew cask install osxfuse"
    • "brew install ifuse".
  8. Download and install the latest version of Apple’s XCode. A valid Apple ID is required to download XCode from Apple’s website. If Apple devices are associated with Apple ID, user will also need one of them on hand to complete the two-factor authorization.
  9. Download Android SDK platform tools for using android device(Refer to Windows installation section for additional information).
  10. To take iOS traces, see the Video Optimizer User Guide for additional information.

For more information, see How to set up Video Optimizer on your Macintosh computer.


Linux (ubuntu)

  1. Launch Terminal and follow the following commands to install pre-requisites:
    • Sudo apt update
    • Sudo apt upgrade
    • Sudo apt install Wireshark
    • Sudo apt install ffmpeg
    • Sudo snap install vlc
    • Sudo apt update
    • Sudo apt install openjdk-8-jdk openjdk-8-jre
  2. Complete the Video Optimizer installation and run Video Optimizer.
  3. Set the ADB path. Before you can obtain Android traces, set the ADB path in Video Optimizer. Go to File>Preferences and browse for the ADB path. It is usually be found under Users>“username”>Library>Android>sdk>platform-tools
  4. To take Android traces, set up device for USB debugging.
  5. On the device, go to Settings>About Device>tap on “Build Number” five times. This enables the developer options menu which is available in the default settings page.
  6. Then go up a level to Developer Options and turn on USB Debugging. See the Video Optimizer User Guide for additional information on capturing traces.

5. Using Video Optimizer for Data Analysis

Video Optimizer takes the trace data collected from your app, evaluates it against the Video Optimizer Best Practices tests, and presents the results in the form of diagnostics and statistics that provide a layered view into the performance of your app. The quickest way to get started with Video Optimizer is to download a sample trace, open it in the Data Analyzer, and review the Video Optimizer Best Practice test results.


Starting the Analysis

As soon as you open a trace file in Video Optimizer, it will begin its trace analysis by evaluating the data against a set of recommended best practices. Once the analysis is complete, the Video Optimizer will automatically display the results.


Reviewing Video Optimizer Results

The best place to start reviewing Video Optimizer’s test results is in Video Optimizer’s Best Practices / Results tab. This tab contains a high-level overview of the results. When Video Optimizer runs an analysis of your trace, it evaluates the trace, it evaluates the trace data against a set of Best Practices benchmarks for over 20 distinct tests. If your trace’s data does not fall within the range of one of these benchmarks, it fails Video Optimizer’s test. The suggested best practices tests are categorized into five types: File Download, Connections, HTML, Video and Other.

  • If all of the best practice tests in a category pass, the whole category passes.
  • If one best practice test in a category fails, the whole category fails.

At the bottom of the Video Optimizer Best Practices / Results tab you’ll find a section called ‘Tests Conducted’. This is a summary of how your trace performed for each of Video Optimizer’s Best Practices tests. By scrolling further down the tab, you will see detailed information about each test result, including a Learn More link that will take you to a Best Practices document which examines the development practice that is being tested in detail. Each failed result contains specific information that includes a hyper linked word or phrase. By clicking on this link, you will be taken to a specific location in the Overview tab or Diagnostics tab that has more detailed results corresponding to the failure.

6. Testing

Video Optimizer User Guide

The Video Optimizer User Guide helps you develop a testing strategy, shows you how Video Optimizer fits into that strategy, explains the test cases in Video Optimizer, and describes the best approach for using them to test your application.

For analysis, the Video Optimizer User Guide describes methods for collecting an application trace using the Video Optimizer Data Collector, how to install, launch, and open a trace in the Video Optimizer Data Analyzer, and contains a full reference of the tabs, menus, options, charts, graphs, and statistics in Video Optimizer.

For best practices, the Video Optimizer User Guide describes each of the tests that are used to evaluate an application, and provides examples to help you interpret the detailed results generated by Video Optimizer.

AT&T Video Optimizer User Guide

This document provides guidance on how to use Video Optimizer to test an application.

7. Effective Testing

To get the most informative test results from Video Optimizer, it’s important to capture trace data that represents how your users really use your app.

To do this, you need a clear testing strategy that takes the following issues into account:

  • Your app’s major user types and user behaviors.
  • How quickly or slowly users execute functions in your app.
  • The features of your app that generate the most network activity.
  • Other applications and device peripherals your app uses.

When using Video Optimizer, it’s important to capture these different scenarios in separate traces. Organizing your testing strategy into distinct user scenarios and collecting traces for each of them will make it easier to narrow down areas that you’d like to improve.

In general, when testing any scenario with Video Optimizer, you should always collect one trace each of the following distinct states:


Active Scenario

Use your app for 20 minutes the same way your users would. Even better, enlist a friend to use your app on your test device, while you document the timing and execution of the functions they use.


Idle Scenario

Launch your app and leave it idle for 30 minutes.

The idle trace is a bit like the control of your testing experiment — it helps you gauge the amount of baseline network activity and battery use that your app generates independent of using the app itself.

For more information about planning and testing user scenarios, including scenarios for specific app types, see the following tutorials and guides.

  • Video Optimizer User Guide
  • Best Practices Guides from App Quality Alliance (AQUA)
  • Five Strategies for Performance Testing Mobile Applications (from SOASTA)

 

8. Help

Need Help with AT&T Video Optimizer?

Our Support Center can help you get answers to your questions quickly and easily.

For help with an issue that you would like to see resolved, submit a ticket directly to Video Optimizer Support.

 

AT&T Video Optimizer Documentation

The following documentation is provided to help you use AT&T Video Optimizer for testing, analyzing, and optimizing your application.

AT&T Video Optimizer Command Line Interface Guide
  • Provides detailed instructions on how to use command line access to make Video Optimizer easier to integrate with other tools.
  • Lists the system prerequisites for using the AT&T Video Optimizer Command Line Interface, tells you how to prepare your device for testing with Video Optimizer, and shows you how to use Video Optimizer from the command line.
  • Includes a complete summary of all the Video Optimizer Command Line Interface commands and error messages.
AT&T Video Optimizer User Guide
  • Helps you develop a testing strategy for your application that makes use of Video Optimizer.
  • Provides detailed instructions on how to collect data using the Video Optimizer Data Collector, how to analyze the data in the Video Optimizer Data Analyzer, and contains a complete reference of the tabs, menus, charts, graphs, statistical tables, and error messages in Video Optimizer.
  • Describes each of the suggested best practices tests that are used to evaluate an application, and provides examples to help you interpret the detailed results generated by Video Optimizer.

AT&T Video Optimizer Video Tutorials

The following videos demonstrate how to:

  • Use the test results, diagnostic information, analytical data, and statistics in the Video Optimizer Data Analyzer to get a full analysis of your app.
  • Test your app using the Video Optimizer Data Collector, and collect trace data on various test platforms.
  • Use the in-depth analysis and statistical information in Video Optimizer to optimize your app.
Introduction to Video Optimizer
Provides an overview of how Video Optimizer works and describes the value of using Video Optimizer to improve the development process.
Video Optimzier Data Collector
Describes the basics of how to use the Video Optimizer Data Collector.
Video Optimizer iOS Collector
Shows you how to collect a network trace on an iOS device natively using the Video Optimizer iOS Collector introduced in Video Optimizer release 3.1.
Introduction to the Video Optimizer Diagnostic Tab
Provides an introduction to the Diagnostic Tab in Video Optimizer, which displays analysis information in the form of an interactive chart that can be used to analyze throughput, uploaded packets, downloaded packets, bursts, user Inputs, Radio Resource Control (RRC) states, and other information.
Video Optimizer Diagnostic Tab Advanced
Takes a deep dive into the analysis information displayed in the Diagnostic Tab of the Video Optimizer tool, and shows you how to access features that can help you discover exactly what is happening in your mobile app.
Turbocharge Your Mobile App
Provides an in-depth look at why speed is extremely important to the success of mobile apps, describes how Video Optimizer determines your app speed, and gives you specific details of how to optimize your app by closing connections explicitly, caching data, and managing connections.
Application Startup Test
Describes the importance of fast start-up times for mobile apps, and shows you how to use Video Optimizer to test, analyze, and optimize the start-up time of your app.
Radio Resource Control (RRC) State Machine
Explains how the Radio Resource Control (RRC) State Machine affects mobile devices, and uses Video Optimizer to show you how knowledge of the way the RRC State Machine works can help you optimize your mobile app.

Other Resources

The following resources provide additional references and important background information for issues related to Video Optimizer.

  • AT&T Developer Program Blogs
  • Check out Best Practices from AQUA to get more tips on how to build a faster, more efficient app.
  • Dig into the research publications that drive Video Optimizer innovation.

9. Release Notes

Before you download Video Optimizer 4.0.1, make sure you meet the following system requirements for your operating system:

Video Optimizer 4.0.1 System Requirements

  • At least 4GB of RAM, but suggested is 8GB
  • Oracle Java 8 or above (open JDK not supported by Video Optimizer)
  • For Android developers, Android SDK Level 23 or above
  • FFmpeg
  • Windows requirements
    • Wireshark (Install Npcap addon with Winpcap API-compatible mode)
    • VLC media player 3.x.x or higher
  • Mac requirements
    • Brew (or any similar package manager)
    • Ifuse
    • OSXFuse
    • Libimobiledevice & ideviceinstaller
    • For iOS developers, use latest version of Xcode and OS X
    • VLC media player 3.x.x or higher
    • Wireshark
  • Linux requirements
    • For Ubuntu 18.04.x LTS (and newer) users, use VLC media player version 3.x.x
    • For Ubuntu 16.04.x LTS (and older) users, use VLC media player version 3.x.x up to 3.0.8
    • Wireshark

Video Optimizer 4.0.1 Features

This release brings to the Linux version all the following features and enhancements that were brought to the Mac and PC version in release 4.0:

  • New Export capabilities includes:
    • Export entire trace results to Excel format, allowing easy comparison of multiple traces.
    • Ability to export all Requests & Responses in the TCP/UDP Flow table.
    • Ability to export multiple tables at once from the Diagnostics tab.
  • Redesigned Video tab shows more relevant data, including a new graph showing the download bitrates of all video ∓ audio segments.
  • Support for Brotli text compression including:
    • Text Compression Best Practice now calculates potential data savings for using Brotli compression.
    • Ability to view uncompressed Brotli text in the Content View tab.
  • Ability to Interpret DASH .mp4/.mpd video stream segments.
  • Detection of 5G network connections and type (Sub 6 v mmWave) using the Android Telephony API.
  • Color coding of the Set Startup Delay button to indicate when it has been set.
  • Detection of Android screen touch events and allowing for setting the Playback initiation time based on touch events.
  • Informative popup windows to assist Android 11 users to configure certificates needed for secure trace collection.
  • Simplified VPN permissions can be granted via ADB instead of prompting from device.
  • Full support for analyzing secure iOS traces.
  • Updated calculations of KB and MB to reflect standard 1000 notation (and not 1024).
  • General bug fixes for video analysis and best practice analysis.

Known Issues in Release 4.0.1

  • The 5g network is not displayed in the Network type graph, unless there is a toggle between WIFI and Data. This is a limitation in the Android Telephony API.
  • Trace collection cannot be started when the device is on the lock screen, otherwise the VPN collector app will freeze.
  • For occasional traces, HLS video streams show the segment number as "0" for all segments.


 

 

Past Release Notes

Back To Top
  • ADDITIONAL RESOURCES
    • Release Notes
    • User Guide
    • Best Practices
  • SUPPORT
    • Contact Us
    • FAQs
    • Twitter
  • AT&T Developer Program on Github
  • AT&T Developer Program on Facebook
  • AT&T Developer Program on Twitter
AT&T Logo

Terms of Use   Privacy Policy   Do Not Sell My Personal Information
©2021 AT&T Intellectual Property. All rights reserved

AT&T, the AT&T logo and all other AT&T marks contained herein are trademark of AT&T Intellectual Property and/or AT&T affiliated companies.

14100000
Session Expiring

Your session is about to expire in !

Stay Signed In
Session Expired

Sorry! Your session has expired.

Skip to content