FFmpeg
Functions
decklink_common.cpp File Reference
#include "libavformat/internal.h"
#include <DeckLinkAPI.h>
#include <DeckLinkAPIDispatch.cpp>
#include "libavformat/avformat.h"
#include "libavutil/imgutils.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/bswap.h"
#include "avdevice.h"
#include "decklink_common.h"

Go to the source code of this file.

Functions

static IDeckLinkIterator * decklink_create_iterator (AVFormatContext *avctx)
 
static int decklink_get_attr_string (IDeckLink *dl, BMDDeckLinkAttributeID cfg_id, const char **s)
 
static int decklink_select_input (AVFormatContext *avctx, BMDDeckLinkConfigurationID cfg_id)
 
static DECKLINK_BOOL field_order_eq (enum AVFieldOrder field_order, BMDFieldDominance bmd_field_order)
 
int ff_decklink_set_configs (AVFormatContext *avctx, decklink_direction_t direction)
 
int ff_decklink_set_format (AVFormatContext *avctx, int width, int height, int tb_num, int tb_den, enum AVFieldOrder field_order, decklink_direction_t direction)
 
int ff_decklink_set_format (AVFormatContext *avctx, decklink_direction_t direction)
 
void ff_decklink_packet_queue_init (AVFormatContext *avctx, DecklinkPacketQueue *q, int64_t queue_size)
 
void ff_decklink_packet_queue_flush (DecklinkPacketQueue *q)
 
void ff_decklink_packet_queue_end (DecklinkPacketQueue *q)
 
unsigned long long ff_decklink_packet_queue_size (DecklinkPacketQueue *q)
 
int ff_decklink_packet_queue_put (DecklinkPacketQueue *q, AVPacket *pkt)
 
int ff_decklink_packet_queue_get (DecklinkPacketQueue *q, AVPacket *pkt, int block)
 
int64_t ff_decklink_packet_queue_peekpts (DecklinkPacketQueue *q)
 
int ff_decklink_list_devices (AVFormatContext *avctx, struct AVDeviceInfoList *device_list, int show_inputs, int show_outputs)
 
void ff_decklink_list_devices_legacy (AVFormatContext *avctx, int show_inputs, int show_outputs)
 
int ff_decklink_list_formats (AVFormatContext *avctx, decklink_direction_t direction)
 
void ff_decklink_cleanup (AVFormatContext *avctx)
 
int ff_decklink_init_device (AVFormatContext *avctx, const char *name)
 

Function Documentation

◆ decklink_create_iterator()

static IDeckLinkIterator* decklink_create_iterator ( AVFormatContext avctx)
static

Definition at line 56 of file decklink_common.cpp.

Referenced by ff_decklink_init_device(), and ff_decklink_list_devices().

◆ decklink_get_attr_string()

static int decklink_get_attr_string ( IDeckLink *  dl,
BMDDeckLinkAttributeID  cfg_id,
const char **  s 
)
static

Definition at line 101 of file decklink_common.cpp.

Referenced by ff_decklink_init_device(), and ff_decklink_list_devices().

◆ decklink_select_input()

static int decklink_select_input ( AVFormatContext avctx,
BMDDeckLinkConfigurationID  cfg_id 
)
static

Definition at line 122 of file decklink_common.cpp.

Referenced by ff_decklink_list_formats(), and ff_decklink_set_configs().

◆ field_order_eq()

static DECKLINK_BOOL field_order_eq ( enum AVFieldOrder  field_order,
BMDFieldDominance  bmd_field_order 
)
static

Definition at line 151 of file decklink_common.cpp.

Referenced by ff_decklink_set_format().

◆ ff_decklink_set_configs()

int ff_decklink_set_configs ( AVFormatContext avctx,
decklink_direction_t  direction 
)

Definition at line 164 of file decklink_common.cpp.

Referenced by decklink_setup_video(), and ff_decklink_read_header().

◆ ff_decklink_set_format() [1/2]

int ff_decklink_set_format ( AVFormatContext avctx,
int  width,
int  height,
int  tb_num,
int  tb_den,
enum AVFieldOrder  field_order,
decklink_direction_t  direction 
)

◆ ff_decklink_set_format() [2/2]

int ff_decklink_set_format ( AVFormatContext avctx,
decklink_direction_t  direction 
)

Definition at line 389 of file decklink_common.cpp.

◆ ff_decklink_packet_queue_init()

void ff_decklink_packet_queue_init ( AVFormatContext avctx,
DecklinkPacketQueue q,
int64_t  queue_size 
)

Definition at line 393 of file decklink_common.cpp.

Referenced by ff_decklink_read_header(), and ff_decklink_write_header().

◆ ff_decklink_packet_queue_flush()

void ff_decklink_packet_queue_flush ( DecklinkPacketQueue q)

Definition at line 402 of file decklink_common.cpp.

Referenced by ff_decklink_packet_queue_end().

◆ ff_decklink_packet_queue_end()

void ff_decklink_packet_queue_end ( DecklinkPacketQueue q)

Definition at line 415 of file decklink_common.cpp.

Referenced by ff_decklink_read_close(), and ff_decklink_write_trailer().

◆ ff_decklink_packet_queue_size()

unsigned long long ff_decklink_packet_queue_size ( DecklinkPacketQueue q)

◆ ff_decklink_packet_queue_put()

int ff_decklink_packet_queue_put ( DecklinkPacketQueue q,
AVPacket pkt 
)

◆ ff_decklink_packet_queue_get()

int ff_decklink_packet_queue_get ( DecklinkPacketQueue q,
AVPacket pkt,
int  block 
)

Definition at line 463 of file decklink_common.cpp.

Referenced by ff_decklink_read_packet().

◆ ff_decklink_packet_queue_peekpts()

int64_t ff_decklink_packet_queue_peekpts ( DecklinkPacketQueue q)

Definition at line 487 of file decklink_common.cpp.

◆ ff_decklink_list_devices()

int ff_decklink_list_devices ( AVFormatContext avctx,
struct AVDeviceInfoList device_list,
int  show_inputs,
int  show_outputs 
)

◆ ff_decklink_list_devices_legacy()

void ff_decklink_list_devices_legacy ( AVFormatContext avctx,
int  show_inputs,
int  show_outputs 
)

Definition at line 576 of file decklink_common.cpp.

Referenced by ff_decklink_read_header(), and ff_decklink_write_header().

◆ ff_decklink_list_formats()

int ff_decklink_list_formats ( AVFormatContext avctx,
decklink_direction_t  direction 
)

Definition at line 597 of file decklink_common.cpp.

Referenced by ff_decklink_read_header(), and ff_decklink_write_header().

◆ ff_decklink_cleanup()

void ff_decklink_cleanup ( AVFormatContext avctx)

◆ ff_decklink_init_device()

int ff_decklink_init_device ( AVFormatContext avctx,
const char *  name 
)

Definition at line 665 of file decklink_common.cpp.

Referenced by ff_decklink_read_header(), and ff_decklink_write_header().