Removed video_display/deltacast.h

Common format definitions moved to common header.

+ fixed incorrect vidcap flag
This commit is contained in:
Martin Pulec
2019-11-08 10:05:25 +01:00
parent 31d9809fcd
commit 69a14e2101
4 changed files with 84 additions and 132 deletions

View File

@@ -62,6 +62,88 @@
#include <VideoMasterHD_Sdi_Audio.h>
#endif
#include "types.h"
struct deltacast_frame_mode_t {
int mode;
const char * name;
unsigned int width;
unsigned int height;
double fps;
enum interlacing_t interlacing;
unsigned long int iface;
};
const static struct deltacast_frame_mode_t deltacast_frame_modes[] = {
{VHD_VIDEOSTD_S274M_1080p_25Hz, "SMPTE 274M 1080p 25 Hz",
1920u, 1080u, 25.0, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080p_30Hz, "SMPTE 274M 1080p 29.97 Hz",
1920u, 1080u, 29.97, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080p_30Hz, "SMPTE 274M 1080p 30 Hz",
1920u, 1080u, 30.0, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080i_50Hz, "SMPTE 274M 1080i 50 Hz",
1920u, 1080u, 25.0, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080i_60Hz, "SMPTE 274M 1080i 59.94 Hz",
1920u, 1080u, 29.97, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080i_60Hz, "SMPTE 274M 1080i 60 Hz",
1920u, 1080u, 30.0, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S296M_720p_50Hz, "SMPTE 296M 720p 50 Hz",
1280u, 720u, 50.0, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S296M_720p_60Hz, "SMPTE 296M 720p 59.94 Hz",
1280u, 720u, 59.94, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S296M_720p_60Hz, "SMPTE 296M 720p 60 Hz",
1280u, 720u, 60.0, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S259M_PAL, "SMPTE 259M PAL",
720u, 576u, 25.0, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S259M_NTSC, "SMPTE 259M NTSC",
720u, 487u, 29.97, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080p_24Hz, "SMPTE 274M 1080p 23.98 Hz",
1920u, 1080u, 23.98, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080p_24Hz, "SMPTE 274M 1080p 24 Hz",
1920u, 1080u, 24.0, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080p_60Hz, "SMPTE 274M 1080p 59.94 Hz",
1920u, 1080u, 59.94, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080p_60Hz, "SMPTE 274M 1080p 60 Hz",
1920u, 1080u, 60.0, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080p_24Hz, "SMPTE 274M 1080p 50 Hz",
1920u, 1080u, 50.0, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080psf_24Hz, "SMPTE 274M 1080psf 23.98 Hz",
1920u, 1080u, 23.98, SEGMENTED_FRAME, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080psf_24Hz, "SMPTE 274M 1080psf 24 Hz",
1920u, 1080u, 24.0, SEGMENTED_FRAME, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080psf_25Hz, "SMPTE 274M 1080psf 25 Hz",
1920u, 1080u, 25.0, SEGMENTED_FRAME, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080psf_30Hz, "SMPTE 274M 1080psf 29.97 Hz",
1920u, 1080u, 29.97, SEGMENTED_FRAME, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080psf_30Hz, "SMPTE 274M 1080psf 30 Hz",
1920u, 1080u, 30.0, SEGMENTED_FRAME, VHD_INTERFACE_AUTO},
// UHD modes
{VHD_VIDEOSTD_3840x2160p_24Hz, "3840x2160 24 Hz",
3840u, 2160u, 24.0, PROGRESSIVE, VHD_INTERFACE_4XHD},
{VHD_VIDEOSTD_3840x2160p_25Hz, "3840x2160 25 Hz",
3840u, 2160u, 25.0, PROGRESSIVE, VHD_INTERFACE_4XHD},
{VHD_VIDEOSTD_3840x2160p_30Hz, "3840x2160 30 Hz",
3840u, 2160u, 30.0, PROGRESSIVE, VHD_INTERFACE_4XHD},
{VHD_VIDEOSTD_3840x2160p_50Hz, "3840x2160 50 Hz",
3840u, 2160u, 50.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A},
{VHD_VIDEOSTD_3840x2160p_60Hz, "3840x2160 60 Hz",
3840u, 2160u, 60.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A},
{VHD_VIDEOSTD_4096x2160p_24Hz, "4096x2160 24 Hz",
4096u, 2160u, 24.0, PROGRESSIVE, VHD_INTERFACE_4XHD},
{VHD_VIDEOSTD_4096x2160p_25Hz, "4096x2160 25 Hz",
4096u, 2160u, 25.0, PROGRESSIVE, VHD_INTERFACE_4XHD},
{VHD_VIDEOSTD_4096x2160p_25Hz, "4096x2160 25 Hz",
4096u, 2160u, 25.0, PROGRESSIVE, VHD_INTERFACE_4XHD},
{VHD_VIDEOSTD_4096x2160p_48Hz, "4096x2160 48 Hz",
4096u, 2160u, 48.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A},
{VHD_VIDEOSTD_4096x2160p_50Hz, "4096x2160 50 Hz",
4096u, 2160u, 50.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A},
{VHD_VIDEOSTD_4096x2160p_60Hz, "4096x2160 60 Hz",
4096u, 2160u, 60.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A},
};
const static int deltacast_frame_modes_count = sizeof(deltacast_frame_modes)/sizeof(deltacast_frame_mode_t);
static std::unordered_map<ULONG, std::string> board_type_map = {
{ VHD_BOARDTYPE_HD, "HD board type" },
{ VHD_BOARDTYPE_HDKEY, "HD key board type" },

View File

@@ -45,6 +45,7 @@
#include "lib_common.h"
#include "video.h"
#include "video_capture.h"
#include "video_capture_params.h"
#include "tv.h"
@@ -65,9 +66,6 @@
#include <sys/time.h>
#include <semaphore.h>
#include "video_display.h"
#include "video_display/deltacast.h"
using namespace std;
struct vidcap_deltacast_state {
@@ -281,7 +279,7 @@ static bool wait_for_channel(struct vidcap_deltacast_state *s)
throw delta_init_exception();
}
if(s->initialize_flags & DISPLAY_FLAG_AUDIO_EMBEDDED) {
if ((s->initialize_flags & VIDCAP_FLAG_AUDIO_EMBEDDED) == 0u) {
if(audio_capture_channels != 1 &&
audio_capture_channels != 2) {
log_msg(LOG_LEVEL_ERROR, "[DELTACAST capture] Unable to handle channel count other than 1 or 2.\n");

View File

@@ -45,7 +45,6 @@
#include "tv.h"
#include "video.h"
#include "video_display.h"
#include "video_display/deltacast.h"
#include "debug.h"
#include "audio/audio.h"
#include "audio/utils.h"
@@ -55,76 +54,6 @@
#define DELTACAST_MAGIC 0x01005e02
const struct deltacast_frame_mode_t deltacast_frame_modes[] = {
{VHD_VIDEOSTD_S274M_1080p_25Hz, "SMPTE 274M 1080p 25 Hz",
1920u, 1080u, 25.0, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080p_30Hz, "SMPTE 274M 1080p 29.97 Hz",
1920u, 1080u, 29.97, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080p_30Hz, "SMPTE 274M 1080p 30 Hz",
1920u, 1080u, 30.0, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080i_50Hz, "SMPTE 274M 1080i 50 Hz",
1920u, 1080u, 25.0, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080i_60Hz, "SMPTE 274M 1080i 59.94 Hz",
1920u, 1080u, 29.97, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080i_60Hz, "SMPTE 274M 1080i 60 Hz",
1920u, 1080u, 30.0, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S296M_720p_50Hz, "SMPTE 296M 720p 50 Hz",
1280u, 720u, 50.0, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S296M_720p_60Hz, "SMPTE 296M 720p 59.94 Hz",
1280u, 720u, 59.94, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S296M_720p_60Hz, "SMPTE 296M 720p 60 Hz",
1280u, 720u, 60.0, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S259M_PAL, "SMPTE 259M PAL",
720u, 576u, 25.0, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S259M_NTSC, "SMPTE 259M NTSC",
720u, 487u, 29.97, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080p_24Hz, "SMPTE 274M 1080p 23.98 Hz",
1920u, 1080u, 23.98, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080p_24Hz, "SMPTE 274M 1080p 24 Hz",
1920u, 1080u, 24.0, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080p_60Hz, "SMPTE 274M 1080p 59.94 Hz",
1920u, 1080u, 59.94, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080p_60Hz, "SMPTE 274M 1080p 60 Hz",
1920u, 1080u, 60.0, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080p_24Hz, "SMPTE 274M 1080p 50 Hz",
1920u, 1080u, 50.0, PROGRESSIVE, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080psf_24Hz, "SMPTE 274M 1080psf 23.98 Hz",
1920u, 1080u, 23.98, SEGMENTED_FRAME, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080psf_24Hz, "SMPTE 274M 1080psf 24 Hz",
1920u, 1080u, 24.0, SEGMENTED_FRAME, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080psf_25Hz, "SMPTE 274M 1080psf 25 Hz",
1920u, 1080u, 25.0, SEGMENTED_FRAME, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080psf_30Hz, "SMPTE 274M 1080psf 29.97 Hz",
1920u, 1080u, 29.97, SEGMENTED_FRAME, VHD_INTERFACE_AUTO},
{VHD_VIDEOSTD_S274M_1080psf_30Hz, "SMPTE 274M 1080psf 30 Hz",
1920u, 1080u, 30.0, SEGMENTED_FRAME, VHD_INTERFACE_AUTO},
// UHD modes
{VHD_VIDEOSTD_3840x2160p_24Hz, "3840x2160 24 Hz",
3840u, 2160u, 24.0, PROGRESSIVE, VHD_INTERFACE_4XHD},
{VHD_VIDEOSTD_3840x2160p_25Hz, "3840x2160 25 Hz",
3840u, 2160u, 25.0, PROGRESSIVE, VHD_INTERFACE_4XHD},
{VHD_VIDEOSTD_3840x2160p_30Hz, "3840x2160 30 Hz",
3840u, 2160u, 30.0, PROGRESSIVE, VHD_INTERFACE_4XHD},
{VHD_VIDEOSTD_3840x2160p_50Hz, "3840x2160 50 Hz",
3840u, 2160u, 50.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A},
{VHD_VIDEOSTD_3840x2160p_60Hz, "3840x2160 60 Hz",
3840u, 2160u, 60.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A},
{VHD_VIDEOSTD_4096x2160p_24Hz, "4096x2160 24 Hz",
4096u, 2160u, 24.0, PROGRESSIVE, VHD_INTERFACE_4XHD},
{VHD_VIDEOSTD_4096x2160p_25Hz, "4096x2160 25 Hz",
4096u, 2160u, 25.0, PROGRESSIVE, VHD_INTERFACE_4XHD},
{VHD_VIDEOSTD_4096x2160p_25Hz, "4096x2160 25 Hz",
4096u, 2160u, 25.0, PROGRESSIVE, VHD_INTERFACE_4XHD},
{VHD_VIDEOSTD_4096x2160p_48Hz, "4096x2160 48 Hz",
4096u, 2160u, 48.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A},
{VHD_VIDEOSTD_4096x2160p_50Hz, "4096x2160 50 Hz",
4096u, 2160u, 50.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A},
{VHD_VIDEOSTD_4096x2160p_60Hz, "4096x2160 60 Hz",
4096u, 2160u, 60.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A},
};
const int deltacast_frame_modes_count = sizeof(deltacast_frame_modes)/sizeof(deltacast_frame_mode_t);
struct state_deltacast {
uint32_t magic;

View File

@@ -1,57 +0,0 @@
/*
* FILE: video_display/deltacast.h
* AUTHOR: Colin Perkins <csp@isi.edu>
*
* Copyright (c) 2001-2002 University of Southern California
*
* Redistribution and use in source and binary forms, with or without
* modification, is permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
*
* This product includes software developed by the University of Southern
* California Information Sciences Institute.
*
* 4. Neither the name of the University nor of the Institute may be used
* to endorse or promote products derived from this software without
* specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING,
* BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
* EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
* EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*/
#include "types.h"
struct deltacast_frame_mode_t {
int mode;
const char * name;
unsigned int width;
unsigned int height;
double fps;
enum interlacing_t interlacing;
unsigned long int iface;
};
extern const struct deltacast_frame_mode_t deltacast_frame_modes[];
extern const int deltacast_frame_modes_count;