M-JPEG Video Encoder

From AVObjects Knowledge Base
Revision as of 12:06, 28 August 2009 by Admin (Talk | contribs)
Jump to: navigation, search

This page is a copy of the original page on the AVObjects' web site and can also be viewed here.

High-quality M-JPEG video encoder DirectShow filter with ARGB32 (alpha channel) support.

Overview

MediaLooks M-JPEG Video Encoder is a high-performance DirectShow encoder for Motion JPEG video with alpha channel support.

M-JPEG Compression Technology Features

  • Real-time encoding/decoding of HD video.
  • Ease of reverse playback.

Features

  • Multiple CPU support.
  • ARGB32 support (alpha channel).
  • Bitrate or quality management.
  • Interlaced/progressive input streams.
  • Opportunity of correction of interlace parameters.
  • Multiple color spaces on input (YUV macropixels, RGB, YUV planar).
  • Compatibility with third-party decoders.
  • Highly optimized for the Intel processor family.

Future Features:

  • Lossless encoding

DirectShow Interfaces

[12:13:08] Dmitry Nikitin: // Filter compresses an uncompressed video stream, using motion JPEG compression. // Next compression modes supported: // - YUY2 / Interlaced // - YUY2 / Progressive // - ARGB32 (4 planes) / Interlaced // - ARGB32 (4 planes) / Progressive // Output media type has for YUY2 BITMAPINFOHEADER::biBitCount = 24 and for ARGB32 = 32 //


Filter Interfaces: IBaseFilter, IPersistStream, ISpecifyPropertyPages, IMLMjpegEncoder
Input Pin Media Types Default mode and if IMLMjpegEncoder::SetARGB32Encoding(FALSE) called

MEDIATYPE_Video, MEDIASUBTYPE_YUY2, MEDIASUBTYPE_UYVY, MEDIASUBTYPE_YVYU, MEDIASUBTYPE_ARGB32, MEDIASUBTYPE_RGB32, MEDIASUBTYPE_RGB24, MEDIASUBTYPE_RGB565, MEDIASUBTYPE_RGB555, MEDIASUBTYPE_YV12, MEDIASUBTYPE_I420 IMLMjpegEncoder::SetARGB32Encoding(TRUE) called: MEDIATYPE_Video, MEDIASUBTYPE_ARGB32



// // Input Pin Interfaces // IMemInputPin, IPin, IQualityControl // // Output Pin Media Types // MEDIATYPE_Video, MEDIASUBTYPE_MJPG // FORMAT_VideoInfo // FORMAT_VideoInfo2 // // Output Pin Interfaces // IAMStreamConfig, IAMVideoCompression, IMediaSeeking, IPin, IQualityControl // // IAMStreamConfig // IAMStreamConfig returns 2 possible media types (with FORMAT_VideoInfo2 and FORMAT_VideoInfo) // With IAMStreamConfig::SetFormat() next parts of output media type can be changed: // - for FORMAT_VideoInfo: // VIDEOINFOHEADER::dwBitRate and AvgTimePerFrame // - for FORMAT_VideoInfo2: // VIDEOINFOHEADER2::dwBitRate, AvgTimePerFrame, dwInterlaceFlags, // dwPictAspectRatioX, dwPictAspectRatioY // Media type from IAMStreamConfig::SetFormat() cleared after: // - input pin disconnection // - IAMStreamConfig::SetFormat(NULL) call // - IMLMjpegEncoder::SetARGB32Encoding() call (input pin reconnection executed) // // IAMVideoCompression // only next methods implemented: // - put_Quality() // - get_Quality() // - GetInfo() // // Merit // MERIT_DO_NOT_USE // // Filter Categories // CLSID_VideoCompressorCategory, CLSID_MediaLooksCategory //

See Also

Downloads

Licensing

If you are interested in licensing this product please contact us through the link below.

Personal tools