Skip to content

sipsorcery-org/SIPSorceryMedia.FFmpeg

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SIPSorceryMedia.FFmpeg

This project is an example of developing a C# library that can use features from FFmpeg native libraries and that inegrates with the SIPSorcery real-time communications library.

This project has been tested successfully on Windows, MacOs and Linux.

The classes in this project provide functions to:

  • Video codecs: VP8, H264
  • Audio codecs: PCMU (G711), PCMA (G711), G722, G729 and Opus
  • Video input:
    • using local file or remote using URI (like this)
    • using camera
    • using screen
  • Audio input:
    • using local file or remote using URI (like this or this)
    • using microphone

You can set any Video input (or none) with any Audio input (or none)

There is no Audio ouput in this library. For this you can use SIPSorcery.SDL2

Installing FFmpeg

For Windows

Install the FFmpeg binaries using the packages at https://www.gyan.dev/ffmpeg/builds/#release-builds and include the FFMPEG executable in your PATH to find them automatically.

As of 14 Jan 2024 the command below works on Windows 11 and installs the required FFmpeg binaries and lbraries wheer teh can be found by SIPSorceryMedia.FFmpeg:

winget install "FFmpeg (Shared)"

For Linux

Install the FFmpeg binaries using the package manager for the distribution.

sudo apt install ffmpeg

For Mac

Install homebrew

brew install ffmpeg brew install mono-libgdiplus

Testing

Test