This is possible now that the next-API is gone.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Signed-off-by: James Almer <jamrial@gmail.com>
#include "avdevice.h"
/* devices */
-extern AVInputFormat ff_alsa_demuxer;
-extern AVOutputFormat ff_alsa_muxer;
-extern AVInputFormat ff_android_camera_demuxer;
-extern AVOutputFormat ff_audiotoolbox_muxer;
-extern AVInputFormat ff_avfoundation_demuxer;
-extern AVInputFormat ff_bktr_demuxer;
-extern AVOutputFormat ff_caca_muxer;
-extern AVInputFormat ff_decklink_demuxer;
-extern AVOutputFormat ff_decklink_muxer;
-extern AVInputFormat ff_dshow_demuxer;
-extern AVInputFormat ff_fbdev_demuxer;
-extern AVOutputFormat ff_fbdev_muxer;
-extern AVInputFormat ff_gdigrab_demuxer;
-extern AVInputFormat ff_iec61883_demuxer;
-extern AVInputFormat ff_jack_demuxer;
-extern AVInputFormat ff_kmsgrab_demuxer;
-extern AVInputFormat ff_lavfi_demuxer;
-extern AVInputFormat ff_openal_demuxer;
-extern AVOutputFormat ff_opengl_muxer;
-extern AVInputFormat ff_oss_demuxer;
-extern AVOutputFormat ff_oss_muxer;
-extern AVInputFormat ff_pulse_demuxer;
-extern AVOutputFormat ff_pulse_muxer;
-extern AVOutputFormat ff_sdl2_muxer;
-extern AVInputFormat ff_sndio_demuxer;
-extern AVOutputFormat ff_sndio_muxer;
-extern AVInputFormat ff_v4l2_demuxer;
-extern AVOutputFormat ff_v4l2_muxer;
-extern AVInputFormat ff_vfwcap_demuxer;
-extern AVInputFormat ff_xcbgrab_demuxer;
-extern AVOutputFormat ff_xv_muxer;
+extern const AVInputFormat ff_alsa_demuxer;
+extern const AVOutputFormat ff_alsa_muxer;
+extern const AVInputFormat ff_android_camera_demuxer;
+extern const AVOutputFormat ff_audiotoolbox_muxer;
+extern const AVInputFormat ff_avfoundation_demuxer;
+extern const AVInputFormat ff_bktr_demuxer;
+extern const AVOutputFormat ff_caca_muxer;
+extern const AVInputFormat ff_decklink_demuxer;
+extern const AVOutputFormat ff_decklink_muxer;
+extern const AVInputFormat ff_dshow_demuxer;
+extern const AVInputFormat ff_fbdev_demuxer;
+extern const AVOutputFormat ff_fbdev_muxer;
+extern const AVInputFormat ff_gdigrab_demuxer;
+extern const AVInputFormat ff_iec61883_demuxer;
+extern const AVInputFormat ff_jack_demuxer;
+extern const AVInputFormat ff_kmsgrab_demuxer;
+extern const AVInputFormat ff_lavfi_demuxer;
+extern const AVInputFormat ff_openal_demuxer;
+extern const AVOutputFormat ff_opengl_muxer;
+extern const AVInputFormat ff_oss_demuxer;
+extern const AVOutputFormat ff_oss_muxer;
+extern const AVInputFormat ff_pulse_demuxer;
+extern const AVOutputFormat ff_pulse_muxer;
+extern const AVOutputFormat ff_sdl2_muxer;
+extern const AVInputFormat ff_sndio_demuxer;
+extern const AVOutputFormat ff_sndio_muxer;
+extern const AVInputFormat ff_v4l2_demuxer;
+extern const AVOutputFormat ff_v4l2_muxer;
+extern const AVInputFormat ff_vfwcap_demuxer;
+extern const AVInputFormat ff_xcbgrab_demuxer;
+extern const AVOutputFormat ff_xv_muxer;
/* external libraries */
-extern AVInputFormat ff_libcdio_demuxer;
-extern AVInputFormat ff_libdc1394_demuxer;
+extern const AVInputFormat ff_libcdio_demuxer;
+extern const AVInputFormat ff_libdc1394_demuxer;
#include "libavdevice/outdev_list.c"
#include "libavdevice/indev_list.c"
.category = AV_CLASS_CATEGORY_DEVICE_AUDIO_INPUT,
};
-AVInputFormat ff_alsa_demuxer = {
+const AVInputFormat ff_alsa_demuxer = {
.name = "alsa",
.long_name = NULL_IF_CONFIG_SMALL("ALSA audio input"),
.priv_data_size = sizeof(AlsaData),
.category = AV_CLASS_CATEGORY_DEVICE_AUDIO_OUTPUT,
};
-AVOutputFormat ff_alsa_muxer = {
+const AVOutputFormat ff_alsa_muxer = {
.name = "alsa",
.long_name = NULL_IF_CONFIG_SMALL("ALSA audio output"),
.priv_data_size = sizeof(AlsaData),
.category = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT,
};
-AVInputFormat ff_android_camera_demuxer = {
+const AVInputFormat ff_android_camera_demuxer = {
.name = "android_camera",
.long_name = NULL_IF_CONFIG_SMALL("Android camera input device"),
.priv_data_size = sizeof(AndroidCameraCtx),
.category = AV_CLASS_CATEGORY_DEVICE_AUDIO_OUTPUT,
};
-AVOutputFormat ff_audiotoolbox_muxer = {
+const AVOutputFormat ff_audiotoolbox_muxer = {
.name = "audiotoolbox",
.long_name = NULL_IF_CONFIG_SMALL("AudioToolbox output device"),
.priv_data_size = sizeof(ATContext),
.category = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT,
};
-AVInputFormat ff_avfoundation_demuxer = {
+const AVInputFormat ff_avfoundation_demuxer = {
.name = "avfoundation",
.long_name = NULL_IF_CONFIG_SMALL("AVFoundation input device"),
.priv_data_size = sizeof(AVFContext),
.category = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT,
};
-AVInputFormat ff_bktr_demuxer = {
+const AVInputFormat ff_bktr_demuxer = {
.name = "bktr",
.long_name = NULL_IF_CONFIG_SMALL("video grab"),
.priv_data_size = sizeof(VideoData),
.category = AV_CLASS_CATEGORY_DEVICE_VIDEO_OUTPUT,
};
-AVOutputFormat ff_caca_muxer = {
+const AVOutputFormat ff_caca_muxer = {
.name = "caca",
.long_name = NULL_IF_CONFIG_SMALL("caca (color ASCII art) output device"),
.priv_data_size = sizeof(CACAContext),
.category = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT,
};
-AVInputFormat ff_decklink_demuxer = {
+const AVInputFormat ff_decklink_demuxer = {
.name = "decklink",
.long_name = NULL_IF_CONFIG_SMALL("Blackmagic DeckLink input"),
.flags = AVFMT_NOFILE,
.category = AV_CLASS_CATEGORY_DEVICE_VIDEO_OUTPUT,
};
-AVOutputFormat ff_decklink_muxer = {
+const AVOutputFormat ff_decklink_muxer = {
.name = "decklink",
.long_name = NULL_IF_CONFIG_SMALL("Blackmagic DeckLink output"),
.audio_codec = AV_CODEC_ID_PCM_S16LE,
.category = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT,
};
-AVInputFormat ff_dshow_demuxer = {
+const AVInputFormat ff_dshow_demuxer = {
.name = "dshow",
.long_name = NULL_IF_CONFIG_SMALL("DirectShow capture"),
.priv_data_size = sizeof(struct dshow_ctx),
.category = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT,
};
-AVInputFormat ff_fbdev_demuxer = {
+const AVInputFormat ff_fbdev_demuxer = {
.name = "fbdev",
.long_name = NULL_IF_CONFIG_SMALL("Linux framebuffer"),
.priv_data_size = sizeof(FBDevContext),
.category = AV_CLASS_CATEGORY_DEVICE_VIDEO_OUTPUT,
};
-AVOutputFormat ff_fbdev_muxer = {
+const AVOutputFormat ff_fbdev_muxer = {
.name = "fbdev",
.long_name = NULL_IF_CONFIG_SMALL("Linux framebuffer"),
.priv_data_size = sizeof(FBDevContext),
};
/** gdi grabber device demuxer declaration */
-AVInputFormat ff_gdigrab_demuxer = {
+const AVInputFormat ff_gdigrab_demuxer = {
.name = "gdigrab",
.long_name = NULL_IF_CONFIG_SMALL("GDI API Windows frame grabber"),
.priv_data_size = sizeof(struct gdigrab),
.category = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT,
};
-AVInputFormat ff_iec61883_demuxer = {
+const AVInputFormat ff_iec61883_demuxer = {
.name = "iec61883",
.long_name = NULL_IF_CONFIG_SMALL("libiec61883 (new DV1394) A/V input device"),
.priv_data_size = sizeof(struct iec61883_data),
.category = AV_CLASS_CATEGORY_DEVICE_AUDIO_INPUT,
};
-AVInputFormat ff_jack_demuxer = {
+const AVInputFormat ff_jack_demuxer = {
.name = "jack",
.long_name = NULL_IF_CONFIG_SMALL("JACK Audio Connection Kit"),
.priv_data_size = sizeof(JackData),
.category = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT,
};
-AVInputFormat ff_kmsgrab_demuxer = {
+const AVInputFormat ff_kmsgrab_demuxer = {
.name = "kmsgrab",
.long_name = NULL_IF_CONFIG_SMALL("KMS screen capture"),
.priv_data_size = sizeof(KMSGrabContext),
.category = AV_CLASS_CATEGORY_DEVICE_INPUT,
};
-AVInputFormat ff_lavfi_demuxer = {
+const AVInputFormat ff_lavfi_demuxer = {
.name = "lavfi",
.long_name = NULL_IF_CONFIG_SMALL("Libavfilter virtual input device"),
.priv_data_size = sizeof(LavfiContext),
.category = AV_CLASS_CATEGORY_DEVICE_AUDIO_INPUT,
};
-AVInputFormat ff_libcdio_demuxer = {
+const AVInputFormat ff_libcdio_demuxer = {
.name = "libcdio",
.read_header = read_header,
.read_packet = read_packet,
return 0;
}
-AVInputFormat ff_libdc1394_demuxer = {
+const AVInputFormat ff_libdc1394_demuxer = {
.name = "libdc1394",
.long_name = NULL_IF_CONFIG_SMALL("dc1394 v.2 A/V grab"),
.priv_data_size = sizeof(struct dc1394_data),
.category = AV_CLASS_CATEGORY_DEVICE_AUDIO_INPUT,
};
-AVInputFormat ff_openal_demuxer = {
+const AVInputFormat ff_openal_demuxer = {
.name = "openal",
.long_name = NULL_IF_CONFIG_SMALL("OpenAL audio capture device"),
.priv_data_size = sizeof(al_data),
.category = AV_CLASS_CATEGORY_DEVICE_VIDEO_OUTPUT,
};
-AVOutputFormat ff_opengl_muxer = {
+const AVOutputFormat ff_opengl_muxer = {
.name = "opengl",
.long_name = NULL_IF_CONFIG_SMALL("OpenGL output"),
.priv_data_size = sizeof(OpenGLContext),
.category = AV_CLASS_CATEGORY_DEVICE_AUDIO_INPUT,
};
-AVInputFormat ff_oss_demuxer = {
+const AVInputFormat ff_oss_demuxer = {
.name = "oss",
.long_name = NULL_IF_CONFIG_SMALL("OSS (Open Sound System) capture"),
.priv_data_size = sizeof(OSSAudioData),
.category = AV_CLASS_CATEGORY_DEVICE_AUDIO_OUTPUT,
};
-AVOutputFormat ff_oss_muxer = {
+const AVOutputFormat ff_oss_muxer = {
.name = "oss",
.long_name = NULL_IF_CONFIG_SMALL("OSS (Open Sound System) playback"),
.priv_data_size = sizeof(OSSAudioData),
.category = AV_CLASS_CATEGORY_DEVICE_AUDIO_INPUT,
};
-AVInputFormat ff_pulse_demuxer = {
+const AVInputFormat ff_pulse_demuxer = {
.name = "pulse",
.long_name = NULL_IF_CONFIG_SMALL("Pulse audio input"),
.priv_data_size = sizeof(PulseData),
.category = AV_CLASS_CATEGORY_DEVICE_AUDIO_OUTPUT,
};
-AVOutputFormat ff_pulse_muxer = {
+const AVOutputFormat ff_pulse_muxer = {
.name = "pulse",
.long_name = NULL_IF_CONFIG_SMALL("Pulse audio output"),
.priv_data_size = sizeof(PulseData),
.category = AV_CLASS_CATEGORY_DEVICE_VIDEO_OUTPUT,
};
-AVOutputFormat ff_sdl2_muxer = {
+const AVOutputFormat ff_sdl2_muxer = {
.name = "sdl,sdl2",
.long_name = NULL_IF_CONFIG_SMALL("SDL2 output device"),
.priv_data_size = sizeof(SDLContext),
.category = AV_CLASS_CATEGORY_DEVICE_AUDIO_INPUT,
};
-AVInputFormat ff_sndio_demuxer = {
+const AVInputFormat ff_sndio_demuxer = {
.name = "sndio",
.long_name = NULL_IF_CONFIG_SMALL("sndio audio capture"),
.priv_data_size = sizeof(SndioData),
.category = AV_CLASS_CATEGORY_DEVICE_AUDIO_OUTPUT,
};
-AVOutputFormat ff_sndio_muxer = {
+const AVOutputFormat ff_sndio_muxer = {
.name = "sndio",
.long_name = NULL_IF_CONFIG_SMALL("sndio audio playback"),
.priv_data_size = sizeof(SndioData),
.category = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT,
};
-AVInputFormat ff_v4l2_demuxer = {
+const AVInputFormat ff_v4l2_demuxer = {
.name = "video4linux2,v4l2",
.long_name = NULL_IF_CONFIG_SMALL("Video4Linux2 device grab"),
.priv_data_size = sizeof(struct video_data),
.category = AV_CLASS_CATEGORY_DEVICE_VIDEO_OUTPUT,
};
-AVOutputFormat ff_v4l2_muxer = {
+const AVOutputFormat ff_v4l2_muxer = {
.name = "video4linux2,v4l2",
.long_name = NULL_IF_CONFIG_SMALL("Video4Linux2 output device"),
.priv_data_size = sizeof(V4L2Context),
.category = AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT
};
-AVInputFormat ff_vfwcap_demuxer = {
+const AVInputFormat ff_vfwcap_demuxer = {
.name = "vfwcap",
.long_name = NULL_IF_CONFIG_SMALL("VfW video capture"),
.priv_data_size = sizeof(struct vfw_ctx),
return 0;
}
-AVInputFormat ff_xcbgrab_demuxer = {
+const AVInputFormat ff_xcbgrab_demuxer = {
.name = "x11grab",
.long_name = NULL_IF_CONFIG_SMALL("X11 screen capture, using XCB"),
.priv_data_size = sizeof(XCBGrabContext),
.category = AV_CLASS_CATEGORY_DEVICE_VIDEO_OUTPUT,
};
-AVOutputFormat ff_xv_muxer = {
+const AVOutputFormat ff_xv_muxer = {
.name = "xv",
.long_name = NULL_IF_CONFIG_SMALL("XV (XVideo) output device"),
.priv_data_size = sizeof(XVContext),