Publishing Videos - ASP.NET jMedia Kit

ASP.NET jMedia Kit support various ways to publish videos that can be stream progressively on both web and mobile devices.

Product Detail

Overview

Publishing videos is the most important point for every type of video on demand web & mobile applications. It can help

  • Make normal videos to stream progressively on both mobile & web applications as not every video fromat is built for web & mobile streaming.
  • Make adaptive streaming strategies
  • Reduce unnecessary bandwidth usage
  • and more.

ASP.NET jMedia Kit support various options to allow users to publish videos. There are two main options supported.

  • i: Publish Videos via FFMPEG
  • ii: Publish Videos via Elastic Transcoder

Publish Videos via FFMPEG

ASP.NET jMedia Kit have own builtin ffmpeg wrapper ASP.NET Media Handler Pro that can act as bridge between ffmpeg and ASP.NET jMedia Kit application for publishing videos in background.

There are two ways publishing initiated via ffmpeg wrapper.

  • Direct Publishing
  • Batch Publishing

Via direct publishing, uploaded video initiate publishing processing directly after video uploads. This approach is good if there are very limited number of video uploads happens.

Via batch publishing, all uploaded videos are marked as unpublished at time of uploading. Later via special batch process, execute automatically via crone job can initiate video publishing job for each unpublished video one by one and mark video status as published once video publishing successfully completed.

Publishing video via ffmpeg can generate different types of outputs based on settings, some listed below

  • Publish single mp4 video.
  • Publish multiple format videos e.g mp4, webm
  • Publish multiple level videos e.g 720p mp4, 480p mp4, 360p mp4 etc
  • Pubilsh video clip for short views

Publish videos via ffmpeg option is recommended if you are not using AWS Webservices.

Publish Videos via Elastic Transcoder

ASP.NET jMedia Kit have built-in support for integrating and using AWS Webservices within application. You can enable AWS Elastic Transcoder as core video publishing module.

Once enabled, it makes video publishing process automatic. Here is process the involve in publishing videos via Elastic Transcoder.

  • Uploaded video transfer to AWS S3 Bucket after uploading finishes.
  • Lambda Function triggers that initiate video publishing Job.
  • When video published, it send notification to website regarding success or error via SNS notification.
  • Website when receive notification, based on notification it either mark video as published or blocked in case of error with reason.

ASP.NET jMedia Kit also support another way to initiate Elastic Transcoder to publish videos.

  • Uploaded video transfer to AWS S3 Bucket after uploading finishes.
  • Elastic Transcoder Job initiated from application instead of using Lambda function.
  • When video published, it send notification to website regarding success or error via SNS notification.
  • Website when receive notification, based on notification it either mark video as published or blocked in case of error with reason.

ASP.NET jMedia Kit support publishing videos via Elastic Transcoder via Direct Approach or Batch Approach.

Instead of getting SNS notification and update status based on notification, you can replace it with AWS Waiters script.

Possible outputs can be generated if using Elastic Transcoder as core publishing unit.

  • Publish mp4 videos (720p and 360p) for normal and HD view
  • Publish HLS Playlist stream for adaptive streaming on Apple devices.
  • Publish MPEG Dash Playlist stream for adaptive streaming on supported browsers and devices.

Articles