gstreamer/subprojects/gst-plugins-bad/sys/aja
2024-11-20 08:48:31 +00:00
..
.clang-format
gstajacommon.cpp gst: Move GstQueueArray as GstVecDeque to core 2024-05-06 18:25:42 +00:00
gstajacommon.h gst: Move GstQueueArray as GstVecDeque to core 2024-05-06 18:25:42 +00:00
gstajadeviceprovider.cpp aja: Fix infinite loop in device provider 2024-11-20 08:48:31 +00:00
gstajadeviceprovider.h
gstajasink.cpp gst: Move GstQueueArray as GstVecDeque to core 2024-05-06 18:25:42 +00:00
gstajasink.h gst: Move GstQueueArray as GstVecDeque to core 2024-05-06 18:25:42 +00:00
gstajasinkcombiner.cpp aja: there is no need to take object lock 2024-09-17 15:59:47 +00:00
gstajasinkcombiner.h
gstajasrc.cpp ajasrc: Fix handling of timestamps and don't rely on driver frame counters 2024-07-16 09:59:36 +00:00
gstajasrc.h gst: Move GstQueueArray as GstVecDeque to core 2024-05-06 18:25:42 +00:00
gstajasrcdemux.cpp
gstajasrcdemux.h
meson.build aja: Update to AJA NTV2 17.0.1 2024-05-11 15:54:54 +00:00
plugin.cpp
README.md

GStreamer AJA source/sink plugin

GStreamer plugin for AJA capture and output cards.

This plugin requires the AJA NTV2 SDK version 16 or newer.

The location of the SDK can be configured via the aja-sdk-dir meson option. If no location is given then the NTV2 SDK from GitHub is compiled as a meson subproject as part of the plugin.

Example usage

Capture 1080p30 audio/video and display it locally

gst-launch-1.0 ajasrc video-format=1080p-3000 ! ajasrcdemux name=d \
    d.video ! queue max-size-bytes=0 max-size-buffers=0 max-size-time=1000000000 ! videoconvert ! autovideosink \
    d.audio ! queue max-size-bytes=0 max-size-buffers=0 max-size-time=1000000000 ! audioconvert ! audioresample ! autoaudiosink

Output a 1080p2997 test audio/video stream

gst-launch-1.0 videotestsrc pattern=ball ! video/x-raw,format=v210,width=1920,height=1080,framerate=30000/1001,interlace-mode=progressive ! timeoverlay ! timecodestamper ! combiner.video \
    audiotestsrc freq=440 ! audio/x-raw,format=S32LE,rate=48000,channels=16 ! audiobuffersplit output-buffer-duration=1/30 ! combiner.audio \
    ajasinkcombiner name=combiner ! ajasink channel=0

Capture 1080p30 audio/video and directly output it again on the same card

gst-launch-1.0 ajasrc video-format=1080p-3000 channel=1 input-source=sdi-1 audio-system=2 ! ajasrcdemux name=d \
    d.video ! queue max-size-bytes=0 max-size-buffers=0 max-size-time=1000000000 ! c.video \
    d.audio ! queue max-size-bytes=0 max-size-buffers=0 max-size-time=1000000000 ! c.audio \
    ajasinkcombiner name=c ! ajasink channel=0 reference-source=input-1