Delphi Video Stream Callback Component for macOS

Build a Delphi FireMonkey component that provides a way to play a video file in macOS while sending the bits for each video frame to a callback function. This component must provide a way to open a video file as well as provide basic transport functions like play, pause, stop, and stream position. Audio must also be supported with the basic functions of setting the audio level and mute.

Each video frame must be provided through a callback function passing it a TBitmapSurface (FMX). This must be passed at the properly scheduled time so that the video is synchronized with the audio.

This component must be built with Delphi with calls into the native macOS API so that it only uses the media components provided by macOS. It is acceptable to build part of this solution using Object C and/or Swift if it will help in building the interface between Delphi and the OS. If so, the complete XCode project must also be included.

This component should not do any video decoding itself nor should it use any third-party tool either. This is to avoid patent infringements. All video and audio decoding must take place using native OS components.

For clarification: this component does not display video on its own. All video frames are provided thought a callback function as data in a TBitmapSurface.

The component must also provide a callback for certain media events including when the video is ready to play and when the video has reached the end.

The component must be able to play media both from a file but also from a TStream source.

The attached MacOsVideo.pas file provides the class prototype with documentation to complete this project.

Skills: Delphi, Mac OS, OpenGL

See more: cggetonlinedisplaylist, cgmaindisplayid, cggetactivedisplaylist, cgdisplayscreensize, cggetdisplayswithpoint, cgdisplaycreateimage, nsscreennumber, cgdisplaymodegetwidth, component delphi video flv, delphi stream mpeg2 component, video stream windows 2003 server, module video stream, video gallery joomla component, video stream frame grabber, livejasmincom better video stream quality livejasmin, set video stream server, video stream transform, showing live video stream website, java code video stream, freeware flash video stream

About the Employer:
( 0 reviews ) BOISE, United States

Project ID: #16252060