KR20000007098A - 각종 화면 표시 장치에 있어서 동적 및 다중화된 화면표시 장치 및 방법 - Google Patents

각종 화면 표시 장치에 있어서 동적 및 다중화된 화면표시 장치 및 방법 Download PDF

Info

Publication number
KR20000007098A
KR20000007098A KR1019990052832A KR19990052832A KR20000007098A KR 20000007098 A KR20000007098 A KR 20000007098A KR 1019990052832 A KR1019990052832 A KR 1019990052832A KR 19990052832 A KR19990052832 A KR 19990052832A KR 20000007098 A KR20000007098 A KR 20000007098A
Authority
KR
South Korea
Prior art keywords
screen
image data
image
dividing
temporary buffer
Prior art date
Application number
KR1019990052832A
Other languages
English (en)
Inventor
김경홍
Original Assignee
김경홍
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 김경홍 filed Critical 김경홍
Priority to KR1019990052832A priority Critical patent/KR20000007098A/ko
Publication of KR20000007098A publication Critical patent/KR20000007098A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • H04N21/4316Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for displaying supplemental content in a region of the screen, e.g. an advertisement in a separate window
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/44Receiver circuitry for the reception of television signals according to analogue transmission standards
    • H04N5/445Receiver circuitry for the reception of television signals according to analogue transmission standards for displaying additional information
    • H04N5/45Picture in picture, e.g. displaying simultaneously another television channel in a region of the screen

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

본 발명은 영상 자료를 화면 표시 장치에 정적 및 동적으로 분할 표시를 가능케하는 장치 및 방법에 대한 기술이다. 더 상세하게는 하나의 화면 표시 장치를 여러 대의 화면 표시 장치를 사용하는 멀티비젼과 같이 사용할 수 있는 기술이며, 컴퓨터 영상 표현 기술의 응용 기술로서 보다 다채로운 영상을 감상할 수 있는 특징을 지닌다.
본 발명에 따르면, 화면 표시 장치 상에 영상을 표현할 때 하나의 화면이 아닌 여러 개의 화면으로 분할해서 화면 표시 장치가 여러 대 놓여있는 것같은 효과를 볼 수 있어서, 행사장, 콘서트장 등지에서 대형 빔 프로젝터나, 대형 TV 모니터에 연결하여 고가의 멀티비젼 장비와 같은 효과를 볼 수 있고, 여러 가지의 상이한 영상 데이터들을 입력받아 하나의 대형 화면내에 분할한 화면으로 출력하는 것도 가능하여 감시 카메라의 모니터링도 하나의 화면에서 할 수 있다.
이를 위하여 본 발명은, 기존의 기술에서 실질적으로 화면 표시 장치에 출력하는 부분을 분리해 내고, 영상의 스트림을 받아와서 인위적으로 만든 표면의 픽셀 비율을 계산하여, 하나의 영상을 나누어 출력하는 방식에 특징을 둔다.

Description

각종 화면 표시 장치에 있어서 동적 및 다중화된 화면 표시 장치 및 방법{Multi Vision Technology}
본 발명은 영상 자료를 화면 표시 장치에 정적 및 동적으로 분할 표시를 가능케하는 장치 및 방법에 대한 기술이다. 더 상세하게는 하나의 화면 표시 장치를 여러 대의 화면 표시 장치를 사용하는 멀티비젼과 같이 사용할 수 있는 기술에 관한 것이며, 컴퓨터 영상 표현 기술의 응용기술로서 보다 다채로운 영상을 감상할 수 있는 특징을 지닌다.
일반적인 이전 기술은 단지 하나의 영상 데이터를 하나의 화면 표시 장치에 표현하는 방식을 취해왔다.(도 1) 이는 지극히 일반적인 개념이고, 이를 응용하여 발명한 것이 여러 대의 화면 표시장치를 붙여 다채로운 화면 표시를 보여주는 방식을 사용하는 것이다.
일례로, 대형 행사장이나 프리젠테이션, 콘서트장, 고급 카페, 노래방 등지에서는 RGB 모니터를 여러 대 배열하여 각 화면에 하나의 영상을 재생하거나, 여러 화면에 하나의 영상을 재생하는 방식을 스위칭하며 영상을 표현한다. 이러한 방식은 현재까지 범용화된 기술로 널리 사용되고 있다.
그러나, 영상 표시 장치의 발전과 더불어 빔 프로젝터나 대형 스크린, 모니터 등이 급속도로 발전해오면서 그 가격 또한 하락해 가는 추세이다. 이러한 점을 고려해 볼 때, 여러 대의 화면 표시 장치를 사용하는 종래 기술은 구현 비용 측면에서 보면 많은 경제적 손실을 야기한다. 아울러, 여러 대의 모니터에 하나의 영상을 표현 할 때 하나의 영상이 모니터의 외곽에 있는 장치의 선으로 인하여 왜곡되는 현상을 보이게 된다. 이러한 현상은 현재까지 곡면 모니터가 주로 사용되고 있기에 더욱 가중된다.
본 발명의 주된 목적은 상기와 같은 문제점을 해소하기 위해 하나의 화면 표시 장치를 사용하여 여러 대의 화면 표시 장치를 사용하는 것과 같은 효과를 내어 비용 절감 및 영상의 왜곡을 막고자 함이며, 컴퓨터 영상 표현 기술의 응용기술로서, 뮤직비디오 등의 자막을 고려치 않아도 되는 영상들을 보다 다채롭게 감상할 수 있는 기술로서도 작용한다. 아울러, 여러 가지의 상이한 영상 데이터들을 하나의 대형 화면내에 인위적으로 분할한 화면으로 모두 출력할 수 있어 감시 카메라의 모니터링도 하나의 화면에서 할 수 있다.
이와 같은 목적을 달성하기 위하여 본 발명에서는, 화면 표시 장치가 영상을 표현할 때 사용하는 단위를 픽셀단위로 하고, 화면의 픽셀 절대 좌표를 구하여 일정 비율로 나누는 단계, 표시할 정적·동적 영상데이터를 입력받아 프레임을 나누어 임시 버퍼에 저장하는 단계, 킴퓨터 화면이나 TV, 스크린 등의 화면에 나누어진 좌표대로 임시 버퍼의 내용을 뿌리는 단계로 이루어져 있다.
1 : 일반적인 기존 영상
2 : 2 X 2로 분할된 영상
3 : 3 X 3으로 분할된 영상
4 : 4 X 4로 분할된 영상
5 : 혼합형식으로 분할된 영상
6 : 공간을 사이에 두고 분할된 영상
7 : 영상에 거울 효과를 주어 분할된 영상
8 : 영상에 거울 효과를 주어 분할된 영상
본 발명에 대하여 상세히 설명하면 다음과 같다.
본 발명은 하나의 화면을 나누어서 흡사 여러 개의 화면을 보는 것과 같은 효과를 내어주는 기술이다. 기술의 주요 개념은 화면 표시 장치가 영상을 표현할 때 사용하는 단위를 픽셀단위로 하고, 화면의 픽셀 절대 좌표를 구하여 일정 비율로 나눈다. 예를 들어 화면이 640 X 480의 픽셀을 사용한다면 이를 320 X 240 픽셀로 하나의 영역을 만들어 사용할 때, 총 4(2 X 2)개의 영역(도 2)을 사용할 수 있다는 계산이 나오게 된다. 이와 같은 방법으로 9(3 X 3)개(도 3), 16(4 X 4)개(도 4)등 계속적인 분할도 가능하다.
또한, 근래의 화면 표시 제어장치(통상 그래픽카드, VGA라 칭한다.)에서 TV OUT 및 빔프로젝터, 스크린연결 등을 하드웨어적으로 지원 가능하므로 컴퓨터를 이용하여 이를 제어할 수 있다.
따라서, 컴퓨터의 화면 표시 제어장치를 이용하여 본 기술을 구현하면 다음과 같은 과정을 통해 이루어진다.
우선, 위에서 기술한 바와 같이 화면을 절대 픽셀 비율에 따라 적당한 크기로 나누고, 각 사각형이 지니는 좌표를 임시 저장한다. 그 다음 표시하고자 하는 영상 데이터를 열고, 영상 데이터를 임시 버퍼 메모리에 블록 단위로 전송한다. 여기서 생성하는 임시 버퍼는 화면의 표면과 동일한 속성을 가진 메모리 저장소이어야 한다. 예를 들자면, 하나의 픽셀 데이터가 가질 수 있는 크기는 픽셀이 사용하는 칼라 수에 따라 정해지는데, 1600만 칼라를 사용할 때는 24Bit칼라, 즉 3Byte가 된다. 즉, 임시 버퍼를 생성할 때는 화면 제어 장치가 현재 사용하는 특성과 일치시켜야 한다. 만일 영상의 크기가 임시 버퍼의 크기가 다르다면, 임시 버퍼의 크기에 맞게 확대 / 축소해야 한다. 이는 메모리간 블록 전송에서 처리하여야 하며, 컴퓨터 OS(Operating System)가 지원하는 API(Application Programming Interface)를 사용하거나 기존의 공개된 이미지 확대 / 축소 알고리즘을 사용한다. 마지막으로 이전에 분할해 둔 각 화면 좌표에 임시 버퍼 내용을 분할한 수에 맞게 연속적으로 전송한다. 그러면, 화면 제어 장치에서 화면 표시 장치로 데이터를 전송하면서 실제 화면이 나타나게 된다.
플로우 챠트는 다음과 같다.
예를 들어 화면에 4 X 4의 영상 패턴을 출력하려면 다음과 같이 프로그래밍 할 수 있다.(다음 예로 든 코드는 Microsoft Visual C++ 6.0에서 작성하였으며 DirectX SDK(Software Development Kit)를 사용하여 작성하였다.)
void CMultiPlayer::InitData()
{
RECT rect;
int iMaxX, iMaxY, iMinX, iMinY;
int i,j;
iMaxX = m_dwSysMaxX; // 화면의 X축 전체 크기
iMaxY = m_dwSysMaxY; // 화면의 Y축 전체 크기
iMinX = iMaxX >> 2; // X축 전체의 값을 4로 나눔
iMinY = iMaxY >> 2; // Y축 전체의 값을 4로 나눔
rect.top = rect.left = O; // 픽셀에 준한 상대 좌표 구함
rect.right = iMinX; // 즉, 전체 화면 크기를 4로 나눈 X 값과
rect.bottom = iMinY; // Y값을 구하여 분할한 화면의 상대적 크기를 구함.
for (i = 0; i < 4; I++) // 4 X 4 패턴 화면 구성
for (j = 0; j < 4; j++) // 각 영역을 정의하는 변수에 절대 좌표값을 설정
{
m_rectPattern[i][j] = rect;
m_rectPattern[i][j].left += iMinX * j;
m_rectPattern[i][j].right += iMinX * j;
m_rectPattern[i][j].top += iMinY * i;
m_rectPattern[i][j].bottom += iMinY * i;
}
}
BOOL CMultiPlayer::InitDDrawSurface()
{
DDSURFACEDESC ddsd;
m_pPrimarySurface->GetSurfaceDesc(&m_ddsdPrimary); // 화면의 속성 구함
ZeroMemory(&ddsd, sizeof(ddsd)); // 구조체 초기화
ddsd.dwSize = sizeof(ddsd);
ddsd.dwFlags = DDSD_CAPS | DDSD_HEIGHT |
DDSD_WIDTH | DDSD_PIXELFORMAT;
ddsd.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN;
ddsd.dwHeight = m_dwSysMaxY >> 2; // 4 X 4 사이즈 설정
ddsd.dwWidth = m_dwSysMaxX >> 2;
ddsd.ddpfPixelFormat = m_ddsdPrimary.ddpfPixelFormat;// 화면과 동일한 픽셀
// 속성 설정
hr = m_pDD- >CreateSurface(&ddsd, &m_pOffFour, NULL);// 임시 버퍼 생성
if (FAILED(hr)) return FALSE;
}
BOOL CMultiPlayer::Draw()
{
int i, j;
HRESULT hr;
if (m_pSample->Update(0, NULL, NULL, 0) != S_OK)
{
return FALSE;
// 동적 영상 데이터에 대하여 영상의 재생이 끝나는 시점에 함수 리턴.
// 재생이 지속된다면 함수 자체 내에서 루프를 생성해야 한다.
}
else
{
hr = m_pOffFour->Blt(&m_rectPattern[0][0], m_pOffscreenSurface,
&m_rectSource, DDBLT_WAIT, NULL);
// 영상 데이터를 m_pOffFour 임시 버퍼에 메모리 블록 전송
// 필요하다면 영상을 확대 / 축소.
// 여기서는 Blt라는 함수가 자체적으로 확대 / 축소.
for (i = 0; i < 4; i++)
for (j = 0; j < 4; j++)
hr = m_pPrimarySurface->BltFast(m_rectPattern[i][j].left,
m_rectPattern[i][j].top, m_p0ffFour, &m_rectPattern[0][0],
DDBLTFAST_WAIT);
//m_pPrimarySurface라는 실제 화면 제어 장치의 메모리에
// 화면을 분할한 수만큼 임시 버퍼의 내용을 블록 전송
// 여기서는 4 X 4(총 16개) 패턴을 생성하였으므로 총 16번 전송.
// 함수가 실행된 후에 실제 화면 표시 장치에 결과 출력.
}
}
이상에서 상술한 바와 같이 본 발명은, 컴퓨터가 가지고 있던 기존의 영상 표현 기술과 대형 스크린을 이용하여 기존의 멀티비젼 장비를 대치할 수 있다. 이 기술의 효과는 기존 장비에 대한 상대적인 비용절감과 장비 사용의 최소화, 영상의 왜곡방지 및 더 많은 영상 효과(도 5, 도 6, 도 7, 도 8)를 간단하게 구현할 수 있다. 또한, 개인용 컴퓨터 및 일반 모니터에서도 이전의 영상 표현 기술에 본 발명 기술을 더하여 더 다채로운 영상을 감상할 수 있고, 여러 상이한 영상 데이터를 하나의 화면 내에 출력할 수 있어 여러 대의 감시 카메라들이 보내오는 영상을 하나의 화면 내에서 모니터링 하는 것도 가능하다.

Claims (7)

  1. 컴퓨터 모니터, TV 모니터, 대형 스크린 등 각종 영상 표시 장치에 있어서 화면을 다중창으로 정적 또는 동적으로 분할하여 주어진 영상 자료를 표시하는 방법.
  2. 영상 표시 장치의 수직·수평간 픽셀 단위 좌표가 구성하는 영역을 실행 이전이나 실행중에 임의 또는 사용자의 입력에 따라 전체화면 내에 2 X 2(도 2), 3 X 3(도 3), 4 X 4(도 4) 형식 및 혼합 패턴(도 5, 도 6) 등으로 영역을 나누어 배열하고 영상에 변형을 주어(도 7, 도 8) 정적·동적 분할 패턴을 구성하는 방법.
  3. 정적·동적으로 구성된 영역의 수에 따라 영상 데이터가 저장되어 있는 임시 버퍼의 내용을 메모리 블록 단위로 각 영역에 전송하여 하나의 화면 내에 하나 또는 그이상의 여러 상이한 영상 데이터로 이루어진 여러 화면이 출력되도록 표시하는 방법.
  4. 컴퓨터 모니터, TV 모니터, 대형 스크린 등 각종 영상 표시 장치에 있어서 화면을 다중창으로 정적 또는 동적으로 분할하여 주어진 영상 자료를 표시하는 장치.
  5. 영상 표시 장치의 수직·수평간 픽셀 단위 좌표가 구성하는 영역을 동작 이전이나 동작중에 임의 또는 사용자의 입력에 따라 전체화면 내에 2 X 2(도 2), 3 X 3(도 3), 4 X 4(도 4) 형식 및 혼합 패턴(도 5, 도 6) 등으로 영역을 나누어 배열하고 영상에 변형을 주어(도 7, 도 8) 정적·동적 분할 패턴을 구성하는 장치.
  6. 영상 표시 장치의 수직·수평간 픽셀 단위 좌표가 구성하는 영역을 동작 이전이나 동작중에 임의 또는 사용자의 입력에 따라 전체화면 내에 2 X 2(도 2), 3 X 3(도 3), 4 X 4(도 4) 형식 및 혼합 패턴(도 5, 도 6) 등으로 영역을 나누어 형성되는 분할 영역에 기반, 화면 표시 버퍼의 픽셀 속성을 추출 후에 그와 동일한 임시 버퍼를 생성하고 영상 데이터를 저장하는 장치.
  7. 정적·동적으로 구성된 영역의 수에 따라 영상 데이터가 저장되어 있는 임시 버퍼의 내용을 메모리 블록 단위로 각 영역에 전송하여 하나의 화면 내에 하나 또는 그이상의 여러 상이한 영상 데이터로 이루어진 여러 화면이 출력되도록 표시하는 장치.
KR1019990052832A 1999-11-25 1999-11-25 각종 화면 표시 장치에 있어서 동적 및 다중화된 화면표시 장치 및 방법 KR20000007098A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990052832A KR20000007098A (ko) 1999-11-25 1999-11-25 각종 화면 표시 장치에 있어서 동적 및 다중화된 화면표시 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990052832A KR20000007098A (ko) 1999-11-25 1999-11-25 각종 화면 표시 장치에 있어서 동적 및 다중화된 화면표시 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20000007098A true KR20000007098A (ko) 2000-02-07

Family

ID=19621900

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990052832A KR20000007098A (ko) 1999-11-25 1999-11-25 각종 화면 표시 장치에 있어서 동적 및 다중화된 화면표시 장치 및 방법

Country Status (1)

Country Link
KR (1) KR20000007098A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100377353B1 (ko) * 2000-07-06 2003-03-26 한성종 멀티비전 시스템의 운용장치 및 운용방법, 그 프로그램소스를 기록한 기록매체
KR100400429B1 (ko) * 2000-11-07 2003-10-01 권영록 오디오 비디오 자동 셀렉터 시스템

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100377353B1 (ko) * 2000-07-06 2003-03-26 한성종 멀티비전 시스템의 운용장치 및 운용방법, 그 프로그램소스를 기록한 기록매체
KR100400429B1 (ko) * 2000-11-07 2003-10-01 권영록 오디오 비디오 자동 셀렉터 시스템

Similar Documents

Publication Publication Date Title
US5524197A (en) Workstation for displaying dynamic image with real-time special effects
US7119808B2 (en) Multiple parallel processor computer graphics system
KR100482708B1 (ko) 리스트제어비디오동작방법및시스템
US5850232A (en) Method and system for flipping images in a window using overlays
US7136042B2 (en) Display controller permitting connection of multiple displays with a single video cable
CN108108140B (zh) 一种多屏协同显示方法及存储装置及支持3d显示的设备
US9129581B2 (en) Method and apparatus for displaying images
US20030001856A1 (en) Image displaying system and information processing apparatus
US20020135585A1 (en) Video controller system with screen caching
JP3761559B1 (ja) 画像出力方法
WO1995012876A1 (en) Display list management mechanism for real-time control of by-the-line modifiable video display system
US6844879B2 (en) Drawing apparatus
KR101973985B1 (ko) 고해상도 디스플레이를 위한 분산 병렬 처리 방식의 영상 렌더링 시스템 및 그 방법
US20040075657A1 (en) Method of rendering a graphics image
US20060187239A1 (en) System and method for improving visual appearance of efficient rotation algorithm
CN101937557A (zh) 一种动态播放窗口的标注方法及其系统
KR20020064928A (ko) 데이터 처리 시스템과 방법, 컴퓨터 프로그램 및 기록 매체
KR20000007098A (ko) 각종 화면 표시 장치에 있어서 동적 및 다중화된 화면표시 장치 및 방법
US20100182331A1 (en) Method and apparatus for drawing image
JP2001103392A (ja) 画像枠生成回路及びそれを用いたデジタルテレビシステム
JP2001228818A (ja) 表示装置
JP2005134705A (ja) 画像表示装置及びマルチディスプレイ装置
KR20070020986A (ko) 그래픽 디스플레이 제어장치 및 그 방법
JPH08328519A (ja) マルチディスプレイ用画像出力装置
GB2547634A (en) Software system for displaying a remote desktop

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application