#if defined(PJMEDIA_HAS_VIDEO) && (PJMEDIA_HAS_VIDEO != 0) #define THIS_FILE "videodev.c" #define DEFINE_CAP(name, info) {name, info} /* Capability names */ static struct cap_info { const char *name; const char *info; } cap_infos[] = { DEFINE_CAP("format", "Video format"), DEFINE_CAP("scale", "Input dimension"), DEFINE_CAP("window", "Window handle"), DEFINE_CAP("resize", "Renderer resize"), DEFINE_CAP("position", "Renderer position"), DEFINE_CAP("hide", "Renderer hide"), DEFINE_CAP("preview", "Input preview"), DEFINE_CAP("orientation", "Video orientation"), DEFINE_CAP("switch", "Switch device"), DEFINE_CAP("wndflags", "Window flags") }; /* * The device index seen by application and driver is different. *
#include <pj/pool.h> #include <pj/string.h> #define THIS_FILE "audiodev.c" #define DEFINE_CAP(name, info) {name, info} /* Capability names */ static struct cap_info { const char *name; const char *info; } cap_infos[] = { DEFINE_CAP("ext-fmt", "Extended/non-PCM format"), DEFINE_CAP("latency-in", "Input latency/buffer size setting"), DEFINE_CAP("latency-out", "Output latency/buffer size setting"), DEFINE_CAP("vol-in", "Input volume setting"), DEFINE_CAP("vol-out", "Output volume setting"), DEFINE_CAP("meter-in", "Input meter"), DEFINE_CAP("meter-out", "Output meter"), DEFINE_CAP("route-in", "Input routing"), DEFINE_CAP("route-out", "Output routing"), DEFINE_CAP("aec", "Accoustic echo cancellation"), DEFINE_CAP("aec-tail", "Tail length setting for AEC"), DEFINE_CAP("vad", "Voice activity detection"), DEFINE_CAP("cng", "Comfort noise generation"), DEFINE_CAP("plg", "Packet loss concealment") };