#include <alsa/asoundlib.h>
#include <stdint.h>
-#include <sys/types.h>
-#include <atomic>
#include <chrono>
#include <functional>
#include <memory>
#include <QMainWindow>
#include <QString>
#include <QTimer>
+#include <QObject>
+#include <QWidget>
#include <string>
#include <epoxy/gl.h>
+#include <epoxy/gl_generated.h>
#include "mixer.h"
#include "defs.h"
#include "shared/mux.h"
+#include "shared/shared_defs.h"
#include "shared/timebase.h"
using namespace std;
#include <vector>
extern "C" {
+#include <libavcodec/codec.h>
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
#include <libswresample/swresample.h>
#include <mutex>
#include <set>
#include <string>
+#include <utility>
#include <vector>
#include "alsa_pool.h"
#include "input_mapping.h"
#include "resampling_queue.h"
#include "stereocompressor.h"
+#include "shared/shared_defs.h"
class DeviceSpecProto;
#include <movit/image_format.h>
-#include "defs.h"
-#include "shared/metrics.h"
#include "print_latency.h"
#include "video_codec_interface.h"
#include <assert.h>
#include <stdint.h>
-#include <condition_variable>
+#include <atomic>
#include <functional>
#include <map>
#include <memory>
#include <mutex>
#include <set>
#include <string>
-#include <thread>
#include <vector>
#undef CHECK
#include <cef_client.h>
#include <cef_base.h>
#include <cef_render_handler.h>
+#include <cef_frame.h>
+#include <cef_load_handler.h>
#include <bmusb/bmusb.h>
// Just like a normal QLabel, except that it can also emit a clicked signal.
#include <QLabel>
+#include <QWidget>
class QMouseEvent;
#include <QWidget>
#include <mutex>
-#include "piecewise_interpolator.h"
-
class QObject;
class QPaintEvent;
class QResizeEvent;
#include <atomic>
#include <chrono>
#include <condition_variable>
-#include <deque>
+#include <map>
#include <memory>
#include <mutex>
#include <queue>
#include <vector>
#include "DeckLinkAPI.h"
+#include "DeckLinkAPIModes.h"
#include "DeckLinkAPITypes.h"
#include "LinuxCOM.h"
+#include <bmusb/bmusb.h>
+
#include "shared/context.h"
#include "print_latency.h"
#include "quittable_sleeper.h"
#include "bmusb/bmusb.h"
#include "DeckLinkAPI.h"
#include "DeckLinkAPITypes.h"
+#include "DeckLinkAPIDiscovery.h"
class IDeckLinkDisplayModeIterator;
#ifndef _DEFS_H
#define _DEFS_H
-#include <libavformat/version.h>
-
#define TYPICAL_FPS 60
#define FAKE_FPS 25 // Must be an integer.
// #define MAX_VIDEO_CARDS 16 // defined in shared_defs.h.
#define DEFAULT_SRT_PORT 9710
#define DEFAULT_SRT_OUTPUT_LATENCY_MS 2000
-#include "shared/shared_defs.h"
-
// In number of frames. Comes in addition to any internal queues in x264
// (frame threading, lookahead, etc.).
#define X264_QUEUE_LENGTH 50
#define _ELLIPSIS_LABEL_H 1
#include <QLabel>
+#include <QFontMetrics>
+#include <QWidget>
+#include <QObject>
class EllipsisLabel : public QLabel {
Q_OBJECT
// see the subtitle until the next frame.
#include <assert.h>
+#include <stddef.h>
#include <stdint.h>
+#include <time.h>
+
+#include <atomic>
+#include <chrono>
#include <functional>
#include <map>
#include <memory>
#include <set>
#include <string>
#include <thread>
+#include <vector>
#include <movit/effect.h>
#include <movit/ycbcr.h>
extern "C" {
+#include <libavutil/frame.h>
#include <libswresample/swresample.h>
#include <libavutil/channel_layout.h>
#include <libavutil/pixfmt.h>
extern "C" {
#include <libavformat/avformat.h>
+#include <libavutil/avutil.h>
}
// Look for the file in all theme_dirs until we find one;
#include <complex>
#include "defs.h"
+#include "shared/shared_defs.h"
#ifdef __SSE__
#include <mmintrin.h>
#include <vector>
#include "defs.h"
+#include "shared/shared_defs.h"
#include "ycbcr_interpretation.h"
struct Flags {
#define _IMAGE_INPUT_H 1
#include <epoxy/gl.h>
-#include <movit/flat_input.h>
#include <stdbool.h>
#include <time.h>
#include <condition_variable>
-#include <cstdint>
#include <map>
#include <memory>
#include <mutex>
#include "defs.h"
#include "ref_counted_frame.h"
+#include "shared/shared_defs.h"
struct BufferedFrame {
RefCountedFrame frame;
#include <lauxlib.h>
#include <lua.hpp>
-
#include <mutex>
#include <utility>
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
+#include <memory>
#include <stdbool.h>
#include <sys/types.h>
#include <QMainWindow>
#include <QString>
+#include <QWidget>
#include <chrono>
#include <string>
#include <vector>
#include "audio_mixer.h"
#include "midi_mapper.h"
#include "mixer.h"
+#include "theme.h"
class QDial;
class QEvent;
// This way, it is possible to control audio functionality using physical
// pots and faders instead of the mouse.
+#include <stdint.h>
+
#include <atomic>
#include <functional>
#include <map>
#include <memory>
#include <mutex>
#include <string>
-#include <thread>
#include "defs.h"
#include "shared/midi_device.h"
#include <chrono>
#include <condition_variable>
#include <cstddef>
+#include <deque>
#include <functional>
#include <map>
#include <memory>
#include <queue>
#include <string>
#include <thread>
+#include <utility>
#include <vector>
#include <movit/effect.h>
-#include <movit/image_format.h>
#include "audio_mixer.h"
+#include "card_type.h"
#include "bmusb/bmusb.h"
-#include "defs.h"
#include "ffmpeg_capture.h"
#include "shared/httpd.h"
#include "input_state.h"
#include "shared/ref_counted_gl_sync.h"
#include "srt_metrics.h"
#include "theme.h"
+#include "shared/shared_defs.h"
#include "shared/timebase.h"
#include "video_encoder.h"
#include "ycbcr_interpretation.h"
#ifndef _MJPEG_ENCODER_H
#define _MJPEG_ENCODER_H 1
-#include "defs.h"
#include "shared/ffmpeg_raii.h"
#include "shared/httpd.h"
#include "shared/va_resource_pool.h"
#include <atomic>
#include <bmusb/bmusb.h>
#include <condition_variable>
-#include <list>
+#include <map>
+#include <memory>
#include <mutex>
#include <queue>
+#include <stddef.h>
#include <stdint.h>
#include <string>
#include <thread>
+#include <vector>
#include <movit/effect.h>
#include <va/va.h>
+#include <va/va_enc_jpeg.h>
struct jpeg_compress_struct;
struct VADisplayWithCleanup;
// have to be run from the message loop, but that's fine; CEF gives us tools
// to post tasks to it.
-#include <stdio.h>
-
#include <cef_app.h>
+#include <cef_base.h>
#include <cef_browser.h>
-#include <cef_client.h>
-#include <cef_version.h>
+#include <cef_browser_process_handler.h>
+#include <cef_command_line.h>
+#include <cef_render_process_handler.h>
+#include <cef_task.h>
-#include <atomic>
#include <condition_variable>
#include <functional>
#include <mutex>
-#include <unordered_set>
#include <thread>
-#include <vector>
+#include <utility>
// Takes in arbitrary lambdas and converts them to something CefPostTask() will accept.
class CEFTaskAdapter : public CefTask
#include <epoxy/gl.h>
#include <stdbool.h>
#include <stddef.h>
+#include <stdint.h>
+#include <map>
#include <memory>
#include <mutex>
+#include <string>
#include <queue>
+#include <movit/effect.h>
#include <movit/ycbcr.h>
#include "bmusb/bmusb.h"
#include "mjpeg_encoder.h"
+#include "shared/va_resource_pool.h"
class MJPEGEncoder;
// point when the frame is ready to be output in some form).
#include <chrono>
+#include <memory>
#include <string>
#include <vector>
#ifndef _QUEUE_LENGTH_POLICY_H
#define _QUEUE_LENGTH_POLICY_H 1
+#include <stddef.h>
+#include <stdint.h>
+
#include <atomic>
#include <chrono>
#include <deque>
#ifndef _QUICKSYNC_ENCODER_IMPL_H
#define _QUICKSYNC_ENCODER_IMPL_H 1
+#include <stddef.h>
+#include <stdint.h>
#include <epoxy/egl.h>
+#include <epoxy/gl.h>
#include <movit/image_format.h>
#include <va/va.h>
+#include <va/va_enc_h264.h>
+#include <atomic>
#include <condition_variable>
+#include <deque>
#include <map>
#include <memory>
#include <mutex>
#include <queue>
#include <string>
-#include <stack>
#include <thread>
#include <unordered_map>
+#include <vector>
#include "audio_encoder.h"
#include "defs.h"
#include "shared/timebase.h"
#include "print_latency.h"
+#include "ref_counted_frame.h"
#include "shared/ref_counted_gl_sync.h"
#include "shared/va_display.h"
#include "v4l_output.h"
+extern "C" {
+#include <libavformat/avformat.h>
+}
+
#define SURFACE_NUM 16 /* 16 surfaces for source YUV */
#define MAX_NUM_REF1 16 // Seemingly a hardware-fixed value, not related to SURFACE_NUM
#define MAX_NUM_REF2 32 // Seemingly a hardware-fixed value, not related to SURFACE_NUM
#include "resampling_queue.h"
#include <assert.h>
+#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <zita-resampler/vresampler.h>
#include <algorithm>
-#include <cmath>
+
+#include "shared/shared_defs.h"
using namespace std;
using namespace std::chrono;
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
+#include <stddef.h>
#include <sys/types.h>
#include <zita-resampler/vresampler.h>
#include <chrono>
#include <deque>
-#include <memory>
+#include <string>
-#include "defs.h"
-#include "input_mapping.h"
class ResamplingQueue {
public:
#include <QPixmap>
#include <QWidget>
#include <QColor>
+#include <vector>
#include "vu_common.h"
// (directly to screen, RGBA) or live (Y'CbCr output).
#include <stddef.h>
+#include <array>
#include <bitset>
#include <functional>
#include <map>
#include <memory>
#include <string>
+#include <utility>
#include <vector>
class CEFCapture;
#ifndef _SRT_METRICS_H
#define _SRT_METRICS_H 1
+#include <stdint.h>
#include <atomic>
#include <vector>
#include <string>
#include <movit/effect.h>
#include <movit/flat_input.h>
#include <movit/ycbcr_input.h>
-#include <stdbool.h>
+#include <array>
#include <functional>
#include <map>
+#include <memory>
#include <mutex>
#include <string>
#include <unordered_map>
+#include <utility>
#include <vector>
#include "bmusb/bmusb.h"
-#include "defs.h"
#include "ref_counted_frame.h"
+#include "shared/shared_defs.h"
#include "tweaked_inputs.h"
class Scene;
// Some tweaked variations of Movit inputs.
+#include <string>
+
+#include <epoxy/gl.h>
+#include <movit/image_format.h>
#include <movit/flat_input.h>
#include <movit/ycbcr_input.h>
// (1.4 ms equates to about 35% of the theoretical memory bandwidth of
// 12.8 GB/sec, which is pretty good.)
+#include <stddef.h>
#include <map>
#include <epoxy/gl.h>
#define _VIDEO_ENCODER_H
#include <epoxy/gl.h>
+#include <epoxy/gl_generated.h>
#include <movit/image_format.h>
#include <stdbool.h>
#include <stdint.h>
#include <mutex>
#include <string>
#include <vector>
-#include <chrono>
extern "C" {
#include <libavformat/avformat.h>
#include <stdint.h>
#include <x264.h>
#include <atomic>
-#include <chrono>
#include <condition_variable>
#include <memory>
#include <mutex>
#include <movit/image_format.h>
-#include "defs.h"
-#include "shared/metrics.h"
#include "print_latency.h"
#include "video_codec_interface.h"
#include "x264_dynamic.h"