Aller au contenu

SDK .NET : fonctionnalités et plateformes prises en charge

Video Capture SDK .NET Video Edit SDK .NET Media Blocks SDK .NET Media Player SDK .NET

Découvrez l'ensemble complet de fonctionnalités et la large compatibilité de plateformes des SDK .NET VisioForge. Les tableaux ci-dessous détaillent les formats d'entrée et de sortie pris en charge, les codecs vidéo et audio, l'accélération matérielle, les périphériques de capture et les protocoles réseau sur Windows, Linux, macOS, Android et iOS.

Formats de fichiers d'entrée et de sortie

Formats de sortie Windows Linux MacOS Android iOS
MP4 ✔ ✔ ✔ ✔ ✔
WebM ✔ ✔ ✔ ✔ ✔
MKV ✔ ✔ ✔ ✔ ✔
AVI ✔ ✔ ✔ ✔ ✔
ASF (WMV/WMA) ✔ ✔ ✔ ✔ ✔
MPEG-PS ✔ ✔ ✔ ✔ ✔
MPEG-TS ✔ ✔ ✔ ✔ ✔
MOV ✔ ✔ ✔ ✔ ✔
MXF ✔ ✔ ✔ ✔ ✔
WMA ✔ ✔ ✔ ✔ ✔
WAV ✔ ✔ ✔ ✔ ✔
MP3 ✔ ✔ ✔ ✔ ✔
OGG ✔ ✔ ✔ ✔ ✔

De plus, les moteurs multiplateformes prennent en charge tous les formats pris en charge par FFMPEG et GStreamer.

Encodeurs et décodeurs vidéo

Le SDK prend en charge les codecs vidéo suivants :

Encodeurs Windows Linux MacOS Android iOS
H264 ✔ ✔ ✔ ✔ ✔
H264/HEVC ✔ ✔ ✔ ✔ ✔
VP8/VP9 ✔ ✔ ✔ ✔ ✔
AV1 ✔ ✔ ✔ ✔ ✘ (*)
MJPEG ✔ ✔ ✔ ✔ ✔
WMV ✔ ✔ ✔ ✔ ✔
MPEG-4 ASP ✔ ✔ ✔ ✔ ✔
GIF ✔ ✔ ✔ ✔ ✔
MPEG-1 ✔ ✔ ✔ ✔ ✔
MPEG-2 ✔ ✔ ✔ ✔ ✔
Theora ✔ ✔ ✔ ✔ ✔
DNxHD ✔ ✔ ✔ ✔ ✔
DV ✔ ✔ ✔ ✔ ✔

() Le décodage AV1 est disponible sur iOS - via VideoToolbox à partir de l'A17 Pro, et via le décodeur logiciel dav1d partout ailleurs. L'encodage* AV1 ne l'est pas : Apple ne fournit d'encodeur matériel AV1 sur aucune puce, et les encodeurs AV1 logiciels ne font pas partie du redistribuable iOS.

Encodage et décodage accélérés par GPU

Le tableau ci-dessous présente la prise en charge de l'encodage et du décodage accélérés matériellement pour chaque codec et plateforme.

Codec Matériel Windows Linux MacOS Android iOS
H264/HEVC Intel D / E D / E D / E ✘ ✘
H264/HEVC Nvidia D / E D / E D / E ✘ ✘
H264/HEVC AMD D / E D / E D / E ✘ ✘
H264/HEVC Apple ✘ ✘ D / E ✘ D / E
H264/HEVC Android (1) ✘ ✘ ✘ D / E ✘
AV1 Intel D / E D / E D / E ✘ ✘
AV1 Nvidia D / E D / E D / E ✘ ✘
AV1 AMD D / E D / E D / E ✘ ✘
AV1 Apple ✘ ✘ D ✘ D
AV1 Android (1) ✘ ✘ ✘ D ✘
VP9 Intel D / E D / E D / E ✘ ✘
VP9 Nvidia D / E D / E D / E ✘ ✘
VP9 AMD D / E D / E D / E ✘ ✘
VP9 Apple ✘ ✘ D (2) ✘ ✘
VP9 Android (1) ✘ ✘ ✘ D / E ✘

(1) — Encodeurs et décodeurs compatibles MediaCodec, si pris en charge par le matériel

(2) — uniquement sur Apple Silicon

Encodeurs et décodeurs audio

Le tableau ci-dessous présente la prise en charge des codecs audio pour chaque plateforme.

Encodeurs Windows Linux MacOS Android iOS
AAC ✔ ✔ ✔ ✔ ✔
MP3 ✔ ✔ ✔ ✔ ✔
Vorbis ✔ ✔ ✔ ✔ ✔
OPUS ✔ ✔ ✔ ✔ ✔
Speex ✔ ✔ ✔ ✔ ✔
FLAC ✔ ✔ ✔ ✔ ✔
MP2 ✔ ✔ ✔ ✔ ✔
WMA ✔ ✔ ✔ ✔ ✔
OPUS ✔ ✔ ✔ ✔ ✔
Wavpack ✔ ✔ ✔ ✔ ✔

De plus, vous pouvez utiliser tout autre encodeur audio ou vidéo disponible dans FFMPEG ou GStreamer.

Périphériques

Le tableau ci-dessous présente la prise en charge des périphériques de capture pour chaque plateforme.

Périphériques Windows Linux MacOS Android iOS
Webcams et autres sources de capture locales ✔ ✔ ✔ ✔ ✔
Caméras IP et NVR (y compris ONVIF) ✔ ✔ ✔ ✔ ✔
Écran ✔ ✔ ✔ ✔ ✔
Blackmagic Decklink (entrée et sortie) ✔ ✔ ✔ ✘ ✘
Caméscopes ✔ ✘ ✘ ✘ ✘
Tuners TV et DVB ✔ ✔ ✘ ✘ ✘
Caméras USB3/GigE compatibles GenICam ✔ ✔ ✔ ✘ ✘
Caméras GigE/USB3 Teledyne/FLIR ✔ ✘ ✘ ✘ ✘
Caméras GigE/USB3 Basler ✔ ✘ ✘ ✘ ✘
Caméras GigE/USB3 Allied Vision ✔ ✘ ✘ ✘ ✘

Les caméscopes (DV/HDV) ne sont pris en charge que par le moteur classique VideoCaptureCore sous Windows (DV, HDV).

Tuners TV : sous Windows, tuners analogiques et DVB (BDA) via le moteur classique VideoCaptureCore (guide) ; sous Linux, adaptateurs DVB via DVBSourceBlock de Media Blocks SDK .NET (bloc source DVB).

Protocoles réseau

Le tableau ci-dessous présente la prise en charge des protocoles réseau pour chaque plateforme.

Protocoles Windows Linux MacOS Android iOS
RTP/RTSP ✔ ✔ ✔ ✔ ✔
RTMP (YouTube, Facebook Live) ✔ ✔ ✔ ✔ ✔
SRT ✔ ✔ ✔ ✔ ✔
UDP ✔ ✔ ✔ ✔ ✔
TCP ✔ ✔ ✔ ✔ ✔
HTTP ✔ ✔ ✔ ✔ ✔
NDI ✔ ✔ ✔ ✔ ✘
VNC (source) ✔ ✔ ✔ ✔ ✔
GenICam (source) ✔ ✔ ✔ ✘ ✘
AWS S3 ✔ ✔ ✔ ✔ ✔

Sous Windows, NDI couvre x86 et x64 ; il n'est pas disponible dans un processus Windows ARM64 natif. NDI n'est pas disponible sous iOS : le runtime GStreamer iOS du SDK n'inclut pas le plugin NDI. Sous Android, la réception NDI fonctionne dès que la bibliothèque du SDK NDI du fournisseur (libndi.so) est empaquetée avec l'application, et le SDK la trouve à l'exécution ; la sortie NDI n'est pas disponible sous Android.