All Projects → bitmovin → Bitmovin Php

bitmovin / Bitmovin Php

DEPRECATED: PHP client for the Bitmovin API, see https://github.com/bitmovin/bitmovin-api-sdk-php

Projects that are alternatives of or similar to Bitmovin Php

keen-analysis.js
A light JavaScript client for Keen
Stars: ✭ 40 (+90.48%)
Mutual labels:  analytics, api-client
Google Searchconsole
A wrapper for the Google Search Console API.
Stars: ✭ 83 (+295.24%)
Mutual labels:  api-client, analytics
Bitmovin Python
DEPRECATED: Python client for the Bitmovin API, see https://github.com/bitmovin/bitmovin-api-sdk-python
Stars: ✭ 39 (+85.71%)
Mutual labels:  api-client, analytics
bitmovin-go
Golang-Client which enables you to seamlessly integrate the new Bitmovin API into your existing projects
Stars: ✭ 49 (+133.33%)
Mutual labels:  analytics, api-client
Curlie
The power of curl, the ease of use of httpie.
Stars: ✭ 877 (+4076.19%)
Mutual labels:  api-client
Genius Php
PHP library for Genius API (http://genius.com/developers)
Stars: ✭ 10 (-52.38%)
Mutual labels:  api-client
Moqui Elasticsearch
Moqui Tool Component for ElasticSearch useful for scalable faceted text search, and analytics and reporting using aggregations and other great features
Stars: ✭ 10 (-52.38%)
Mutual labels:  analytics
Walkoff
A flexible, easy to use, automation framework allowing users to integrate their capabilities and devices to cut through the repetitive, tedious tasks slowing them down. #nsacyber
Stars: ✭ 855 (+3971.43%)
Mutual labels:  analytics
Sense Client
Quick and dirty Ruby client for the Hello Sense sleep tracker. Based on http://jeffhuang.com/extracting_my_data_from_the_hello_sense.html
Stars: ✭ 20 (-4.76%)
Mutual labels:  api-client
Supervisord
Async first supervisord HTTP API Client for PHP 7
Stars: ✭ 14 (-33.33%)
Mutual labels:  api-client
Eda miner
Swiss army knife, but for visualization, analytics, and machine learning. View docs here: http://edaminer.com/docs/ and a demo (don't abuse) here: http://edaminer.com/
Stars: ✭ 13 (-38.1%)
Mutual labels:  analytics
Dremio Oss
Dremio - the missing link in modern data
Stars: ✭ 862 (+4004.76%)
Mutual labels:  analytics
Ahoy email
First-party email analytics for Rails
Stars: ✭ 876 (+4071.43%)
Mutual labels:  analytics
Visma.net
This is an open source API client for Visma.net Integrations
Stars: ✭ 10 (-52.38%)
Mutual labels:  api-client
Swiftinfo
📊 Extract and analyze the evolution of an iOS app's code.
Stars: ✭ 880 (+4090.48%)
Mutual labels:  analytics
Homer
HOMER - 100% Open-Source SIP / VoIP Packet Capture & Monitoring
Stars: ✭ 855 (+3971.43%)
Mutual labels:  analytics
Metrica Plugin Xamarin
Xamarin plugin for Yandex AppMetrica SDK
Stars: ✭ 12 (-42.86%)
Mutual labels:  analytics
Live log analyzer spark
Spark Application for analysis of Apache Access logs and detect anamolies! Along with Medium Article.
Stars: ✭ 14 (-33.33%)
Mutual labels:  analytics
Node Api.ai
[DEPRECATED] Ultimate Node.JS SDK for api.ai
Stars: ✭ 12 (-42.86%)
Mutual labels:  api-client
Papers I Read
A-Paper-A-Week
Stars: ✭ 869 (+4038.1%)
Mutual labels:  analytics

bitmovin

New API Client (Recommended)

bitmovin-php is the legacy Bitmovin API client for PHP.

We recommend using the new client, which you can find at bitmovin-api-sdk-php. Using the new client guarantees 100% specification conformity at any given time and access to all features of the API as soon as they are released.


bitmovin-php

PHP-Client which enables you to seamlessly integrate the Bitmovin API into your projects. Using this API client requires an active account. Sign up for a Bitmovin API key.

The full Bitmovin API reference can be found on our website.

Installation

Requirements: PHP 5.6.0 or higher is required

Composer

To install the api-client with composer, add the following to your composer.json file:

{
"require": 
  {
    "bitmovin/bitmovin-php": "1.5.*"
  }
}

Then run php composer.phar install

OR

run the following command: php composer.phar require bitmovin/bitmovin-php:1.5.*

Example

The following example creates a simple transcoding job and transfers it to a GCS output location (CreateSimpleEncoding.php):

<?php

use Bitmovin\api\enum\CloudRegion;
use Bitmovin\BitmovinClient;
use Bitmovin\configs\audio\AudioStreamConfig;
use Bitmovin\configs\EncodingProfileConfig;
use Bitmovin\configs\JobConfig;
use Bitmovin\configs\manifest\DashOutputFormat;
use Bitmovin\configs\manifest\HlsOutputFormat;
use Bitmovin\configs\video\H264VideoStreamConfig;
use Bitmovin\input\HttpInput;
use Bitmovin\output\GcsOutput;

require_once __DIR__ . '/vendor/autoload.php';

$client = new BitmovinClient('INSERT YOUR API KEY HERE');

// CONFIGURATION
$videoInputPath = 'http://eu-storage.bitcodin.com/inputs/Sintel.2010.720p.mkv';
$gcs_accessKey = 'INSERT YOUR GCS OUTPUT ACCESS KEY HERE';
$gcs_secretKey = 'INSERT YOUR GCS OUTPUT SECRET KEY HERE';
$gcs_bucketName = 'INSERT YOUR GCS OUTPUT BUCKET NAME HERE';
$gcs_prefix = 'path/to/your/output/destination/';

// CREATE ENCODING PROFILE
$encodingProfile = new EncodingProfileConfig();
$encodingProfile->name = 'Test Encoding';
$encodingProfile->cloudRegion = CloudRegion::GOOGLE_EUROPE_WEST_1;

// CREATE VIDEO STREAM CONFIG FOR 1080p
$videoStreamConfig_1080 = new H264VideoStreamConfig();
$videoStreamConfig_1080->input = new HttpInput($videoInputPath);
$videoStreamConfig_1080->width = 1920;
$videoStreamConfig_1080->height = 1080;
$videoStreamConfig_1080->bitrate = 4800000;
$videoStreamConfig_1080->rate = 25.0;
$encodingProfile->videoStreamConfigs[] = $videoStreamConfig_1080;

// CREATE VIDEO STREAM CONFIG FOR 720p
$videoStreamConfig_720 = new H264VideoStreamConfig();
$videoStreamConfig_720->input = new HttpInput($videoInputPath);
$videoStreamConfig_720->width = 1280;
$videoStreamConfig_720->height = 720;
$videoStreamConfig_720->bitrate = 2400000;
$videoStreamConfig_720->rate = 25.0;
$encodingProfile->videoStreamConfigs[] = $videoStreamConfig_720;

// CREATE AUDIO STREAM CONFIG
$audioConfig = new AudioStreamConfig();
$audioConfig->input = new HttpInput($videoInputPath);
$audioConfig->bitrate = 128000;
$audioConfig->rate = 48000;
$audioConfig->name = 'English';
$audioConfig->lang = 'en';
$audioConfig->position = 1;
$encodingProfile->audioStreamConfigs[] = $audioConfig;

// CREATE JOB CONFIG
$jobConfig = new JobConfig();
// ASSIGN OUTPUT
$jobConfig->output = new GcsOutput($gcs_accessKey, $gcs_secretKey, $gcs_bucketName, $gcs_prefix);
// ASSIGN ENCODING PROFILES TO JOB
$jobConfig->encodingProfile = $encodingProfile;
// ENABLE DASH OUTPUT
$jobConfig->outputFormat[] = new DashOutputFormat();
// ENABLE HLS OUTPUT
$jobConfig->outputFormat[] = new HlsOutputFormat();

// RUN JOB AND WAIT UNTIL IT HAS FINISHED
$client->runJobAndWaitForCompletion($jobConfig);

For more examples go to our example page.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].