KR20020073346A - Distributed internet broadcasting method and system using camera and screen capture - Google Patents

Distributed internet broadcasting method and system using camera and screen capture Download PDF

Info

Publication number
KR20020073346A
KR20020073346A KR1020027007560A KR20027007560A KR20020073346A KR 20020073346 A KR20020073346 A KR 20020073346A KR 1020027007560 A KR1020027007560 A KR 1020027007560A KR 20027007560 A KR20027007560 A KR 20027007560A KR 20020073346 A KR20020073346 A KR 20020073346A
Authority
KR
South Korea
Prior art keywords
broadcast
channel
data
client
broadcasting
Prior art date
Application number
KR1020027007560A
Other languages
Korean (ko)
Other versions
KR100384757B1 (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 주식회사 에이씨에스테크놀로지
Publication of KR20020073346A publication Critical patent/KR20020073346A/en
Application granted granted Critical
Publication of KR100384757B1 publication Critical patent/KR100384757B1/en

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/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/4223Cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2368Multiplexing of audio and video streams
    • 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/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4341Demultiplexing of audio and video streams
    • 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
    • H04N21/4381Recovering the multiplex stream from a specific network, e.g. recovering MPEG packets from ATM cells
    • 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/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • 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
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/64322IP
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet

Abstract

PURPOSE: A distributed web casting method and system are provided to generate data using a web camera installed at a computer or generate data by executing a motion picture file stored in a computer using a motion picture reproducing application so that it can allow anyone to easily produce a program and broadcast it over the internet in real time. CONSTITUTION: The method comprises steps of a producer client inputting a URL address of a service site, which opens a broadcasting channel for a user and applies for a broadcasting channel to commence web casting(S310), the producer client requesting to open a broadcasting channel by clicking an open button(S320), a broadcasting server determining if the producer requests a broadcasting channel for the first time(S330), the broadcasting server automatically installing a client program for broadcasting which is a software necessary for producing a web cast if the request is the first one(S340), the server displaying an initial screen when the installation of the broadcasting is completed(S350), and the producer client broadcasting an image taken by a web camera in a case that the producer client uses the web camera or the producer client clicking a start/end image capture button on the broadcasting window to capture a desired image when not using a web camera or when intending to broadcast other broadcasting materials(S360).

Description

카메라와 화면 캡쳐를 이용한 인터넷 분산 방송 시스템 및 방법{DISTRIBUTED INTERNET BROADCASTING METHOD AND SYSTEM USING CAMERA AND SCREEN CAPTURE}Internet distributed broadcasting system and method using camera and screen capture {DISTRIBUTED INTERNET BROADCASTING METHOD AND SYSTEM USING CAMERA AND SCREEN CAPTURE}

몇 년 전까지 방송은 공중파와 케이블 TV의 두 분야로 발전해 왔다. 하지만, 최근에 와서는 인터넷의 발전으로 인하여 새로운 방송의 개념이 등장하고 있다. 즉, 누구나 과거에 비해 적은 비용과 방송 장비를 가지고 인터넷을 통해 방송을 할 수 있는 시대가 도래하게 되었다. 이를 좀 더 현실적으로 말하면, 자신만의 내용을 갖고 용이하게 세계 곳곳의 누구에게나 방송을 전달할 수 있는 시대가 도래한 것이다.Until a few years ago, broadcasting had evolved into two areas: airwaves and cable television. However, recently, due to the development of the Internet, a new broadcasting concept has appeared. In other words, the age has come for everyone to broadcast over the Internet with less cost and broadcasting equipment than in the past. To put it more realistically, the era has come when people can easily broadcast to anyone around the world with their own content.

일반적으로, 인터넷 방송이란 공중파 방송 또는 케이블 TV와 같이 TV와 라디오를 매체(미디어)로 시청자에게 전달하던 정보(대개 음성, 영상정보이며 최근에는문자정보도 전달)를 인터넷을 매체(미디어)로 하여 음성, 영상, 문자, 이미지 등의 멀티미디어 정보를 인터넷 사용자(기존의 시청자를 포함한)에게 전달하는 새로운 개념의 방송을 말한다.In general, Internet broadcasting refers to information used to deliver TV and radio to viewers, such as over-the-air broadcasting or cable TV (usually voice and video information, and also text information recently). It is a new concept of broadcasting that delivers multimedia information such as voice, video, text, and images to Internet users (including existing viewers).

인터넷을 미디어와 문화로 이해하는 시각에서 출발하여 초고속 통신망[예를 들면, 케이블 통신망, ADSL(Asymmetric Digital Subscriber Line), ISDN(Integrated Services Digital Network) 등]의 대중화로 인한 사용자 네트워크 환경의 고속화와 대용량화, 그리고 음성, 영상 등을 전송해 줄 수 있는 소프트웨어[예를 들면, 스트리밍 솔루션(streaming solutions)-리얼 시스템(real system), 윈도 미디어, 스트림 웍스(stream works) 등]의 등장으로 인터넷 방송의 발전이 가속화되었다. 또한, 초기에 텍스트와 정지된 이미지가 서비스의 주류였던 WWW(인터넷 서비스의 멀티미디어화를 가능하게 한 월드 와이드 웹) 서비스에서 음성, 영상, 애니메이션 등의 멀티미디어 데이터 전송이 가능해 짐으로써, 인터넷 방송국을 위시한 멀티미디어 웹사이트의 등장이 가속화되어 가고 있다. 음성, 영상 등의 멀티미디어 정보들은 파일용량이 다른 정보에 비해 수십 배 또는 수백 배 이상 많은 용량을 차지한다. 따라서, 많은 시간이 소요되는 멀티미디어 정보의 전송방식에 대한 단점을 보완하기 위해 등장한 것이 스트리밍(streaming) 기술이다. 스트리밍 기술이란, 파일이 모두 전송된 후에 인터넷 사용자가 볼 수 있는 것이 아니라 전체 파일의 일정량만이 전송되어도 바로 해당파일을 볼 수 있고, 그 동안 나머지 용량에 해당하는 부분이 전송되는 기술로 실시간으로 음성, 영상 등의 멀티미디어 정보를 볼 수 있도록 구성된 기술이다.Starting from an understanding of the Internet as a media and culture, the high speed and large capacity of the user network environment due to the popularization of high-speed communication networks (e.g., cable communication networks, Asymmetric Digital Subscriber Line (ADSL), Integrated Services Digital Network (ISDN), etc.) And the development of Internet broadcasting with the advent of software that can transmit audio and video (e.g., streaming solutions-real systems, Windows media, stream works, etc.). This was accelerated. In addition, the WWW (World Wide Web, which enables the multimediaization of Internet services), where texts and still images were initially the mainstream of services, enables the transmission of multimedia data such as voice, video, and animation. The emergence of websites is accelerating. Multimedia information such as audio and video occupies tens or hundreds of times more than other information. Therefore, streaming technology has emerged to make up for the shortcomings of the time-consuming transmission method of multimedia information. Streaming technology is a technology that allows the Internet user to see the file immediately after all files have been transferred, even if only a certain amount of the entire file is transferred, and the remaining portion of the capacity is transmitted in real time. It is a technology configured to view multimedia information such as video.

기존 방송매체(TV, 라디오 등)는 채널에 대한 선택권 외에는 시청자에게 일방적으로 정보를 전송하는 형태인 것에 반해, 인터넷 방송은 시간적, 공간적인 범위를 초월하여 어느 시간, 어느 장소에서나 인터넷 접속이 가능하면 시청하고 싶은 프로그램을 선택하여 볼 수 있다는 장점이 있다. 이러한 개념이 바로 주문형 비디오(VOD: Video On Demand)이다. 즉, VOD 서버에 연결된 TV 또는 PC를 통하여 원하는 프로그램을 선택함으로써 안방에서 원하는 프로그램을 시청할 수 있는 통신 서비스이다. VOD의 특징은 같은 프로그램을 네트워크 사정에 따라 여러 사용자가 동시에 다른 시간, 다른 장소에서 공유할 수 있다는 점이다. 예를 들어, MBC 방송의 주말 드라마의 경우 TV에서 방영(또는 재방영)하는 시간외에는 VTR로 녹화를 해서 시청하는 방법밖에는 없으나, 인터넷 방송의 경우 인터넷에 접속할 수 있다면 해당 파일을 어느 시간대에서도 시청할 수 있다. 다만, 아직까지는 TV의 수신 대역폭보다 인터넷 방송의 대역폭이 적기 때문에 TV만큼의 화질로 시청할 수는 없지만 향후 초고속 인터넷망의 보급으로 인해 이러한 한계는 극복될 수 있을 것이다.Existing broadcast media (TV, radio, etc.) is a form of unilateral transmission of information to viewers, except for channel selection options, whereas Internet broadcasting is capable of accessing the Internet at any time and place, beyond time and space. The advantage is that you can select and watch the program you want to watch. This concept is Video On Demand (VOD). That is, it is a communication service that can watch a desired program in the home by selecting a desired program through a TV or PC connected to the VOD server. The special feature of VOD is that the same program can be shared by different users at different times and places at the same time, depending on network conditions. For example, for weekend dramas on MBC broadcasts, the only option is to record and watch on a VTR outside of the time you watch on TV (or re-live) .However, if you can access the Internet, you can watch the file at any time. have. However, since the bandwidth of Internet broadcasting is smaller than the reception bandwidth of TV, it is not possible to watch with the quality as TV, but this limitation may be overcome due to the spread of high speed internet network in the future.

그러나, 이러한 인터넷 방송은 방송 제작자의 입장에서 보면 종래보다 쉬워졌다고는 하지만, 아직도 초보자인 일반 인터넷 사용자에게는 접근하기 어렵다는 문제점이 있다. 즉, 고속의 인터넷 전용 회선을 설치해야 하고, 고가 장비도 구입해야 하는 등의 문제가 있다. 또한, 기존의 인터넷 방송은 일부 대형 방송국에 의해 의존하는 실정이므로 정보 제공의 다양화가 이루어지고 있지 않아 일반 인터넷 사용자에게 원하는 장소, 원하는 프로그램을 제공할 수 없는 문제점이 있다. 따라서, 기존의 인터넷 방송 이용자는 인터넷 방송국 내의 스튜디오에서 녹화, 편집된프로그램만을 제공받으므로 매우 한정된 멀티미디어 정보만을 제공받는다. 또한, 기존의 인터넷 방송의 경우 컴퓨터에 장착되어 있는 웹 카메라를 통하여 입력받은 정보만을 방송할 수 있었다. 즉, 방송 제작자는 인터넷을 자신의 컴퓨터를 통하여 접속하게 되는데 종래의 기술로는 자신의 컴퓨터 내의 응용프로그램들을 통하여 실행되는 화면을 웹 카메라를 통하지 않고 직접 방송을 할 수 없다는 한계를 가지고 있다.However, although such an Internet broadcast is easier than the conventional one from a broadcast producer's point of view, there is a problem that it is difficult to access to a general Internet user who is still a beginner. That is, there is a problem that a high-speed Internet dedicated line must be installed, and expensive equipment must be purchased. In addition, since the existing Internet broadcasting is dependent on some large broadcasting stations, there is a problem in that it is not possible to provide a desired place and a desired program to a general Internet user because the information is not diversified. Therefore, the existing Internet broadcasting users are provided with only limited programs that are recorded and edited in the studios of the Internet broadcasting stations. In addition, in the case of the existing Internet broadcast it was possible to broadcast only the information received through the web camera mounted on the computer. That is, a broadcast producer connects the Internet through his computer. However, the conventional broadcaster has a limitation in that a conventional program cannot broadcast a screen executed through application programs in the computer without a web camera.

본 발명은 인터넷 분산 방송 시스템 및 방법에 관한 것으로, 보다 상세하게는 컴퓨터에 장착되어 있는 웹 카메라를 이용하여 데이터를 생성하거나 컴퓨터에 저장되어 있는 동영상 파일 등을 동영상 재생 어플리케이션으로 실행하여 데이터를 생성함으로써, 누구든지 용이하게 개인방송을 제작하여 인터넷상에서 실시간으로 방송할 수 있는 카메라와 화면 캡쳐를 이용한 인터넷 분산 방송 시스템 및 방법에 관한 것이다.The present invention relates to an internet distributed broadcasting system and method, and more particularly, by generating data using a web camera mounted on a computer or by executing a video file stored in the computer as a video playback application to generate data. The present invention relates to an internet distributed broadcasting system and method using a camera and a screen capture that can easily produce a personal broadcast and broadcast it in real time on the Internet.

본 발명은 동일 참조부호가 동일 구성요소를 가리키는 첨부 도면과 함께 이후의 상세한 설명에 의해 쉽게 이해될 것이다.BRIEF DESCRIPTION OF THE DRAWINGS The present invention will be readily understood by the following detailed description taken in conjunction with the accompanying drawings, in which like reference characters designate like elements.

도 1은 본 발명에 따른 인터넷 분산 방송 시스템(1000)의 전체적인 시스템 구성도이고;1 is an overall system configuration diagram of an internet distributed broadcasting system 1000 according to the present invention;

도 2는 본 발명에 따른 방송 컨텐츠를 제작하여 방송하는 제작자 클라이언트(200)의 상세 구성도이고;2 is a detailed configuration diagram of a producer client 200 for producing and broadcasting broadcast content according to the present invention;

도 3은 본 발명에 따른 제작자 클라이언트의 인터넷 방송 제작과정을 설명하는 흐름도이고,3 is a flowchart illustrating an internet broadcast production process of a producer client according to the present invention;

도 3A는 인터넷 방송 제작 사이트의 화면 예시도이고,3A is an exemplary view of a screen of an internet broadcasting production site.

도 3B는 방송채널 신청서의 예시도이고,3B is an exemplary view of a broadcast channel application.

도 3C는 예시적인 방송창의 기능 설명도이고,3C is a functional explanatory diagram of an exemplary broadcast window;

도 3D는 화면캡쳐 예시도이고,3D is an example of screen capture.

도 4는 본 발명에 따른 방송 서버(400)의 내부 구성도이고,4 is an internal configuration diagram of a broadcast server 400 according to the present invention.

도 5A 및 5B는 방송상태 모니터링 과정을 나타내는 정보 흐름도이고,5A and 5B are information flow diagrams illustrating a broadcast state monitoring process;

도 5C는 채널 개설 및 방송 참여 과정을 나타내는 정보 흐름도이고,5C is an information flow diagram illustrating a channel establishment and broadcast participation process;

도 5D 및 5E는 방송 종료시 채널 관리 과정을 나타내는 정보 흐름도이고,5D and 5E are information flow diagrams illustrating a channel management process at the end of a broadcast;

도 6은 본 발명에 따른 시청자 클라이언트(600)의 상세 구성도이고,6 is a detailed block diagram of the viewer client 600 according to the present invention,

도 7은 채널 관리 및 방송 리소스 관리 처리과정을 나타내는 흐름도이고,7 is a flowchart illustrating a channel management and a broadcast resource management process;

도 8은 그룹 관리 처리과정을 나타내는 흐름도이다.8 is a flowchart showing a group management process.

본 발명은 상기한 바와 같은 종래의 제반 문제점을 해결하기 위하여 안출된 것으로서, 본 발명은 제작자 클라이언트, 방송서버 및 시청자 클라이언트를 포함하는 인터넷 분산 방송 시스템 및 방법에 관한 것으로, 상시 제작자 클라이언트와 시청자 클라이언트가 지리적으로 서로 분리되어 있는 것이다. 또한, 본 발명은 실시간 방송을 위한 서버 구성 및 클라이언트의 구성에 관한 것이다.The present invention has been made to solve the above-mentioned conventional problems, the present invention relates to an Internet distributed broadcasting system and method comprising a producer client, a broadcast server and a viewer client, the producer client and viewer client Geographically separate from each other. The present invention also relates to a server configuration and a client configuration for real time broadcasting.

따라서, 본 발명의 목적은 방송을 하고자 하는 사람이라면 누구나 방송을 제작하여 일반 인터넷 이용자에게 실시간으로 방송할 수 있는 인터넷 분산 방송 시스템 및 방법을 제공하는 데 있다.Accordingly, an object of the present invention is to provide an internet distributed broadcasting system and method that anyone who wants to broadcast can produce a broadcast and broadcast it to a general Internet user in real time.

본 발명의 다른 목적은 웹 카메라로 입력받은 데이터뿐만 아니라 비디오 또는 오디오 파일 실행 어플리케이션을 이용한 화면 캡쳐 방식으로 방송할 수 있도록 구성하여 모니터 또는 스피커에서 출력되는 비디오 또는 오디오 데이터를 방송할 수 있는 인터넷 분산 방송 시스템 및 방법을 제공하는 데 있다.Another object of the present invention is configured to broadcast in a screen capture method using a video or audio file execution application as well as the data input to the web camera Internet distributed broadcasting that can broadcast the video or audio data output from the monitor or speaker A system and method are provided.

본 발명의 또 다른 목적은 고가의 압축장비 및 편집기기를 소프트웨어화하여웹 카메라와 헤드셋 장비만으로 인터넷 방송을 가능하게 할 수 있는 인터넷 분산 방송 시스템 및 방법을 제공하는 데 있다.It is still another object of the present invention to provide an internet distributed broadcasting system and method capable of enabling Internet broadcasting using only a web camera and a headset device by making software of an expensive compression device and an editor.

본 발명의 또 다른 목적은 시청자 클라이언트와 제작자 클라이언트는 물론 시청자 클라이언트 상호간은 채팅서버를 통해 대화할 수 있는 인터넷 분산 방송 시스템 및 방법을 제공하는 데 있다.It is still another object of the present invention to provide an internet distributed broadcasting system and method capable of communicating between a viewer client, a producer client, and a viewer client through a chat server.

본 발명의 실시예에 의하면, 제작자 클라이언트에 의해 제작된 음성, 영상, 문자, 이미지 등의 멀티미디어 정보를 초고속 통신망을 매체로 하여 시청자 클라이언트에게 방송하는 인터넷 방송 방법에 있어서, 방송채널 개설을 요청하고, 방송채널이 개설되면 방송하고자 하는 데이터를 캡쳐하고, 캡쳐된 방송 데이터를 인코딩하여 방송 서버로 전송하는 단계; 제작자 클라이언트의 방송채널 개설 요청에 따라 모든 채널을 검색하여 빈 채널을 할당해 주고, 시청자 클라이언트의 방송참여 요청에 따라 해당 채널로 링크시켜 주고, 방송 데이터를 수신하여 할당된 채널을 통해 시청자 클라이언트에게 방송 데이터를 여러 스트림으로 나누어 전송하는 단계를 포함한다.According to an embodiment of the present invention, in the Internet broadcasting method for broadcasting the multimedia information, such as voice, video, text, image produced by the producer client to the viewer client over a high-speed communication network, requesting the establishment of a broadcast channel, Capturing data to be broadcast when the broadcast channel is established, encoding the captured broadcast data, and transmitting the encoded broadcast data to the broadcast server; All channels are searched and allotted an empty channel according to the producer client's request to open a broadcast channel, linked to the corresponding channel according to the viewer's request to participate in the broadcast, and broadcast data is received to the viewer client through the assigned channel. And transmitting the data divided into several streams.

본 발명의 다른 실시예에 의하면, 제작자 클라이언트에 의해 제작된 음성, 영상, 문자, 이미지 등의 멀티미디어 정보를 초고속 통신망을 매체로 하여 시청자 클라이언트에게 방송하는 인터넷 방송 시스템에 있어서, 방송채널 신청 항목을 작성하여 방송채널 개설을 요청하고, 방송채널이 개설되면 방송하고자 하는 데이터를 캡쳐하고, 캡쳐된 방송 데이터를 인코딩하여 전송하는 제작자 클라이언트; 제작자 클라이언트와 초고속 통신망을 통해 연결되어 있으며, 제작자 클라이언트의 방송채널 개설 요청에 따라 모든 채널을 검색하여 빈 채널을 할당해 주고, 채널을 관리하고, 새로운 채널 정보를 업데이트하여 저장하고, 제작자 클라이언트로부터 전송되는 방송 데이터를 수신하여 할당된 채널을 통해 방송 데이터를 여러 스트림으로 나누어 전송하는 방송 서버; 및 방송 서버와 초고속 통신망을 통해 연결되어 있으며, 방송 서버에 방송참여 요청을 요구하고, 방송 서버로부터 전송되는 방송 데이터를 디코딩하여 원래의 데이터로 복원하고, 복원된 데이터를 재생하여 시청하는 시청자 클라이언트를 포함한다.According to another embodiment of the present invention, a broadcast channel application item is created in an internet broadcasting system in which multimedia information, such as voice, video, text, and image produced by a producer client, is broadcast to a viewer client using a high-speed communication network as a medium. A producer client for requesting to establish a broadcast channel, capturing data to be broadcast when the broadcast channel is established, and encoding and transmitting the captured broadcast data; It is connected to the producer client through a high-speed communication network, and searches for all channels and allocates empty channels according to the producer client's request to open a broadcast channel, manages channels, updates and stores new channel information, and transmits them from the producer client. A broadcast server that receives the broadcast data and divides the broadcast data into several streams through an assigned channel and transmits the broadcast data; And a viewer client connected to the broadcast server through a high-speed communication network, requesting a broadcast participation request from the broadcast server, decoding the broadcast data transmitted from the broadcast server, restoring the original data, and playing and viewing the restored data. Include.

본 발명의 장점은 여러 가지가 있다. 여러 가지 실시예 또는 이행예는 하나 또는 그 이상의 다음 장점을 도출할 수 있다. 본 발명의 하나의 장점은 고가의 장비 없이 누구든지 용이하게 방송을 제작하여 실시간으로 인터넷상에 방영할 수 있다는 것이다. 기존의 인터넷 방송은 고가의 방송장비를 필요로 하고, 방송을 위한 소프트웨어를 방송용 컴퓨터에 설치하여야 하지만, 본 발명은 별도의 소프트웨어의 설치 과정이 필요없이 액티브 엑스(Active X) 등의 기술을 이용하여 웹 환경에서 수행되는 본 인터넷 분산 방송 시스템의 제작자 클라이언트를 실행함으로써, 원하는 비디오, 오디오, 텍스트 데이터를 캡쳐하여 방송할 수 있다. 본 발명의 다른 장점은 웹 카메라를 통해 생성된 비디오 데이터는 물론 컴퓨터 내에 저장되어 있는 동영상 데이터, 정지영상 데이터를 캡쳐하여 방송할 수 있다는 것이다. 또한, 마이크를 통해 생성된 오디오 데이터뿐만 아니라 오디오 재생 어플리케이션을 통해 실행되는 오디오 데이터를 방송할 수도 있다. 즉, 제작자 클라이언트의 육성을 직접 방송하거나 제작자 클라이언트의 컴퓨터에서 실행되는 음악 파일 등을 방송할 수있다. 본 발명의 또 다른 장점은 제작자 클라이언트와 본 발명의 웹서버를 위치적으로 독립시킬 수 있기 때문에 제작자 클라이언트가 적은 업스트림(upstream)의 네트워크를 가지고도 방송할 수 있다는 것이다.There are several advantages of the present invention. Various embodiments or implementations may derive one or more of the following advantages. One advantage of the present invention is that anyone can easily produce a broadcast without expensive equipment and broadcast it on the Internet in real time. Existing Internet broadcasting requires expensive broadcasting equipment, and the software for broadcasting should be installed in the broadcasting computer. However, the present invention does not require a separate software installation process and uses technologies such as Active X. By executing the producer client of the present Internet distributed broadcasting system performed in a web environment, it is possible to capture and broadcast desired video, audio and text data. Another advantage of the present invention is that it is possible to capture and broadcast not only video data generated through a web camera but also video data and still image data stored in a computer. In addition, audio data generated through a microphone may be broadcast as well as audio data generated through an audio reproduction application. That is, it is possible to directly broadcast the upbringing of the producer client, or to broadcast a music file or the like executed on a computer of the producer client. Another advantage of the present invention is that the producer client can broadcast even with a small number of upstream networks since the producer client and the web server of the present invention can be located independently.

본 발명의 장점 및 다른 관점은 본 발명의 원리를 예를 들어 설명하는 첨부된 도면들과 함께 인용된 다음의 상세한 설명으로부터 명백해질 것이다.The advantages and other aspects of the present invention will become apparent from the following detailed description, which is incorporated in conjunction with the accompanying drawings which illustrate by way of example the principles of the invention.

후술하는 본 발명의 상세한 설명에 의하면, 다수의 구체적인 설명은 본 발명의 완전한 이해를 제공하기 위한 것이다.In the following detailed description of the invention, numerous specific details are set forth in order to provide a thorough understanding of the present invention.

이하, 본 발명에 따른 카메라와 화면 캡쳐를 이용한 인터넷 분산 방송 시스템 및 방법에 대한 바람직한 실시예를 첨부된 도면에 의거하여 상세하게 설명하면 다음과 같다.Hereinafter, a preferred embodiment of an internet distributed broadcasting system and method using a camera and a screen capture according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명에 따른 인터넷 분산 방송 시스템(1000)의 전체적인 시스템 구성도로서, 제작자 클라이언트(200), 방송 서버(400), 시청자 클라이언트(600)로 이루어져 있으며, 각 구성부는 인터넷(800)을 통해 상호 연결되어 있다.1 is an overall system configuration diagram of an internet distributed broadcasting system 1000 according to the present invention, and includes a producer client 200, a broadcast server 400, and a viewer client 600. Interconnected.

제작자 클라이언트(200)는 인터넷 방송을 직접 제작하는 자로서, 비디오, 오디오, 이미지, 그래픽 및 텍스트 등 구현 가능한 모든 멀티미디어를 활용하여 방송하고자 하는 정보를 쉽고 정확하게 편집하는 것이 바람직하다. 비디오 데이터는 일반적으로 웹 카메라를 사용하지만, CCTV(Closed Circuit TeleVision), 베타캠(betacam), 디지털 비디오 카메라, 캠코더 등을 사용할 수도 있다. 그 밖에, 오디오 스위처(audio switcher), 조명세트 일체를 구비하면 양질의 데이터를 방송할 수 있다. 촬영된 정보를 아날로그 형태(즉, 테잎)로 저장할 수 있으며, 테잎의 종류에는 VHS 테잎, 8mm 테잎, 베타 테잎 등이 있다. 방송 서버(400)는 제작자 클라이언트(200)의 요구에 따라 방송 채널을 할당시켜 주고, 제작자 클라이언트(200)로부터 전송되는 방송 데이터를 수신하여 할당된 채널을 통해 시청자 클라이언트(600)로 방송 데이터를 여러 스트림으로 나누어 전송하는 기능을 수행한다. 예를 들어, 제작자 클라이언트(200)에서 방송 서버(400)로 전송되는 데이터의 양이 100kbps이고, 시청자 클라이언트(600)의 수가 100명이면 방송 서버(200)에서 시청자 클라이언트(600)로 전송되는 데이터 스트림의 양은 100kbps ×100kbps = 10Mbps가 된다.The producer client 200 is a person who directly manufactures an Internet broadcast. It is preferable to easily and accurately edit information to be broadcast by utilizing all multimedia that can be implemented such as video, audio, images, graphics, and text. Video data generally uses web cameras, but closed circuit television (CCTV), betacam, digital video cameras, and camcorders can also be used. In addition, it is possible to broadcast high quality data by providing an audio switcher and an integrated lighting set. Recorded information can be stored in analog form (ie, tape). The types of tape include VHS tape, 8mm tape, and beta tape. The broadcast server 400 allocates a broadcast channel according to a request of the producer client 200, receives broadcast data transmitted from the producer client 200, and broadcasts the broadcast data to the viewer client 600 through the assigned channel. Performs the function of dividing into streams. For example, if the amount of data transmitted from the producer client 200 to the broadcast server 400 is 100 kbps and the number of the viewer clients 600 is 100, the data transmitted from the broadcast server 200 to the viewer client 600. The amount of stream is 100 kbps x 100 kbps = 10 Mbps.

일반적으로, 인터넷(800)은 T1, T2, T3, ADSL, 케이블 네트워크, 공중 전화 교환망(PSTN: Public Switched Telephone Network), 종합 정보 통신망(ISDN: Integrated Services Digital Network) 등으로 구성할 수 있다. 방송 서버(400)는 ADSL을 제공하는 스위치 주위 또는 T1, T2, T3 등으로 연결하는 것이 바람직하다. 클라이언트들(200, 600)의 경우는 특별한 제약이 없으나, 현실적으로 고속의 인터넷을 사용자에게 제공하는 ADSL 또는 케이블 네트워크 회선을 사용하는 것이 바람직하다. 따라서, 제작자 클라이언트(200)가 T1, T2, T3 등의 고가의 고속 환경 내에 있지 않아도 되기 때문에 일반 사용자 누구나 인터넷 방송을 제작할 수 있다. 즉, 제작자 클라이언트(200)와 방송 서버(400)가 위치적으로 독립되도록 구축할 수 있기 때문에 제작자 클라이언트(200)는 적은 업스트림의 네트워크로 인터넷 방송을 구현할 수 있다는 장점이 있다.In general, the Internet 800 may be configured of T1, T2, T3, ADSL, cable network, Public Switched Telephone Network (PSTN), Integrated Services Digital Network (ISDN), and the like. The broadcast server 400 is preferably connected around the switch providing ADSL or to T1, T2, T3, and the like. Clients 200 and 600 are not particularly limited, but in reality, it is preferable to use an ADSL or cable network line that provides a high-speed Internet to the user. Therefore, since the producer client 200 does not have to be in an expensive, high-speed environment such as T1, T2, or T3, any general user can produce an Internet broadcast. That is, since the producer client 200 and the broadcast server 400 may be constructed so as to be independent of each other, the producer client 200 may implement the Internet broadcast with a less upstream network.

도 2는 본 발명에 따른 방송 컨텐츠를 제작하여 방송하는 제작자 클라이언트(200)의 상세 구성도로서, 제작자 클라이언트(200)는 데이터 생성부(210), 데이터 캡쳐부(220), 인코딩부(230), 카메라(240), 마이크(250) 및 송신부(260)로 이루어져 있으며, 데이터 생성부(210)는 동영상 플레이어(212), 윈도우 화면(214), 응용 프로그램(216) 및 오디오 플레이어(218)를 포함하고, 데이터 캡쳐부(220)는 동영상 데이터 캡쳐부(222), 정지화면 데이터 캡쳐부(224) 및 오디오 데이터 캡쳐부(226)를 포함하고, 인코딩부(230)는 비디오 데이터 인코더(232) 및 오디오 데이터 인코더(234)를 포함한다.2 is a detailed configuration diagram of a producer client 200 for producing and broadcasting broadcast content according to the present invention. The producer client 200 includes a data generator 210, a data capture unit 220, and an encoder 230. , The camera 240, the microphone 250, and the transmitter 260, and the data generator 210 controls the video player 212, the window screen 214, the application 216, and the audio player 218. The data capture unit 220 includes a video data capture unit 222, a still image data capture unit 224, and an audio data capture unit 226, and the encoding unit 230 includes a video data encoder 232. And an audio data encoder 234.

데이터 생성부(210)는 방송하고자 하는 데이터를 생성하는 기능을 수행하며, 방송 데이터는 크게 비디오 스트림 데이터와 오디오 스트림 데이터로 구분된다. 비디오 스트림 데이터의 경우에는 동영상 데이터와 정지영상 데이터로 세분되며, 동영상 데이터는 통상의 웹 카메라를 통해 생성되는 데이터와 동영상 플레이어(212)(예컨대, 윈도우 미디어 플레이어, 리얼 플레이어 등)에서 실행되어 생성되는 데이터가 있고, 정지영상 데이터는 제작자 클라이언트(200)의 윈도우 화면(214) 또는 응용 프로그램(216)(예컨대, 엑셀, 파워 포인트 등)에 의해 실행되어 모니터 상에 디스플레이 되는 모든 화면 데이터가 될 수 있다. 오디오 스트림 데이터는 일반적인 오디오 플레이어(218)에서 재생되는 오디오 데이터와 마이크를 통해 생성되는 오디오 데이터로 나누어진다. 또한, 오디오 스트림 데이터에는 동영상 플레이어(212)에서 재생되는 오디오 데이터도 포함할 수 있음은 본 기술분야의 당업자에게 자명한 사항이다.The data generator 210 performs a function of generating data to be broadcast, and broadcast data is largely divided into video stream data and audio stream data. In the case of video stream data, it is subdivided into video data and still image data, and the video data is generated by being executed by data generated through a conventional web camera and by a video player 212 (for example, a Windows media player or a real player). Data, and the still image data may be all screen data executed by the window screen 214 of the creator client 200 or an application 216 (eg, Excel, PowerPoint, etc.) and displayed on the monitor. . The audio stream data is divided into audio data reproduced in a general audio player 218 and audio data generated through a microphone. In addition, it will be apparent to those skilled in the art that the audio stream data may also include audio data reproduced by the video player 212.

데이터 캡쳐부(220)는 데이터 생성부(210)에서 생성된 비디오 스트림 데이터 및 오디오 스트림 데이터를 캡쳐하는 기능을 수행하며, 동영상 플레이어(212)에서 재생되는 비디오 데이터는 동영상 데이터 캡쳐부(222)에서 캡쳐되고, 윈도우 화면(214) 및 응용 프로그램에서 디스플레이 되는 비디오 데이터는 정지화면 데이터 캡쳐부(224)에서 캡쳐되고, 동영상 플레이어(212) 또는 오디오 플레이어(218)에서 재생되는 오디오 데이터는 오디오 데이터 캡쳐부(226)에서 캡쳐된다. 인터넷 방송에서 오디오 서비스만을 제공한다면 사운드 카드만 구비하면 되지만, 비디오 서비스도 함께 제공하기 위해 웹 카메라를 사용하는 경우에는 별도의 추가 하드웨어가 필요하지 않지만, 캠코더, CCTV, VTR 등을 사용하는 경우에는 별도의 비디오 캡쳐 보드(video capture board)가 필요할 수도 있다. 데이터 캡쳐부(220)에서 생성되는 파일의 종류에는 .mov, .avi, .wav, .au 등을 갖는 확장자의 형태가 있으며, 일반적으로 오디오 파일은 .wav의 형태를 많이 사용하고, 비디오 파일은 .avi, .mov의 형태를 많이 사용한다. 데이터 캡쳐부(220)에서 사용되는 소프트웨어에는 단순히 비디오를 캡쳐받는 기능 이외에 다양하게 비디오를 편집할 수 있는 미국 아도브사(adobe)의 프리미어(premiere)와 사운드 편집기로 기능이 뛰어난 쿨 에디트(cool edit) 등을 사용할 수 있다.The data capture unit 220 captures the video stream data and the audio stream data generated by the data generator 210, and the video data reproduced by the video player 212 is captured by the video data capture unit 222. The video data captured and displayed on the window screen 214 and the application program is captured by the still image data capture unit 224, and the audio data reproduced by the video player 212 or the audio player 218 is captured by the audio data capture unit. Is captured at 226. If you only provide audio service in internet broadcasting, you only need a sound card.However, if you use a web camera to provide video service, you do not need additional hardware.However, if you use a camcorder, CCTV, VTR, etc. You may also need a video capture board. Types of files generated by the data capture unit 220 may be in the form of extensions having .mov, .avi, .wav, .au, etc. In general, audio files use a lot of .wav forms, and video files Many types of .avi and .mov are used. The software used in the data capture unit 220 includes a cool edit function of a premiere and sound editor of the US company, Adobe, which can edit a variety of videos in addition to simply capturing a video. Etc. can be used.

인코딩부(230)는 캡쳐된 비디오 및 오디오 데이터를 용이하게 전송하도록 압축하는 기능을 수행하며, 동영상 데이터 캡쳐부(222) 및 정지화면 데이터 캡쳐부(224)에서 캡쳐된 데이터는 비디오 데이터 인코더(232)에서 인코딩되고, 오디오 데이터 캡쳐부(226)에서 캡쳐된 데이터는 오디오 데이터 인코더(234)에서 인코딩 된다. 캡쳐된 고용량의 데이터를 효율적으로 전송하기 위해서는 압축기술이 필수적이다. 일반적으로, TV의 한 채널은 음성 신호를 포함하여 6MHz의 대역을 차지하는데, 이를 디지털화하면 45Mbps의 정보량이 된다. 이 고용량의 정보를 기존 전화선으로 전송하기에는 무리가 있다. 따라서, 정보 데이터를 압축하기 위해 엠펙(MPEG) 방식 등의 압축기술을 사용한다. 이러한 압축기술을 이용하면 45Mbps의 정보를 1.5Mbps 정도로 압축할 수 있으며, MPEG 방식에는 주로 CD 롬의 축적 미디어를 적용 대상으로 하는 MPEG-1, 픽셀이나 화면 구성에 따라 압축률이 달라지는 새로운 방식의 MPEG-2, 전화선이나 인터넷망을 이용하여 실시간으로 데이터를 전송할 수 있도록 데이터의 압축률을 높이면서 어떤 통신망이든 원활한 데이터를 전송할 수 있도록 가변 전송률을 지원하는 MPEG-4, 고선명 텔레비젼(HDTV)의 음성 화상 데이터를 압축하기 위한 MPEG++, 200kbps 이하의 대역폭대에 최적화된 H.263 또는 H.26L 등이 있다. 본 발명에서는 인터넷을 통해 데이터를 상호 교환하기 때문에 MPEG-4, H.263, H.26L을 이용하는 것이 바람직하다.The encoding unit 230 performs a function of compressing the captured video and audio data so as to be easily transmitted, and the data captured by the video data capture unit 222 and the still image data capture unit 224 may be a video data encoder 232. ) And the data captured by the audio data capture unit 226 are encoded by the audio data encoder 234. Compression is essential for the efficient transfer of high volumes of captured data. In general, one channel of a TV occupies a 6 MHz band including an audio signal, which is 45 Mbps of information when digitized. There is no way to transmit this high volume of information over existing telephone lines. Therefore, a compression technique such as MPEG method is used to compress the information data. Using this compression technology, 45Mbps of information can be compressed to 1.5Mbps. MPEG-based MPEG-1 is mainly used for CD-ROM storage media, and MPEG- is a new way of compressing according to pixel or screen configuration. 2, MPEG-4, high-definition television (HDTV) audio and video data that supports variable data rates to ensure smooth data transmission on any network, while increasing the compression rate of data to transmit data in real time using a telephone line or an internet network. MPEG ++ for compression, H.263 or H.26L optimized for bandwidths below 200kbps. In the present invention, it is preferable to use MPEG-4, H.263, H.26L because data is interchanged over the Internet.

또한, 인코딩부(230)의 비디오 데이터 인코더(232)에는 카메라(240)가 연결되어 있고, 오디오 데이터 인코더(234)에는 마이크(250)가 연결되어 있다. 따라서, 카메라(240)를 통해 전송되는 비디오 데이터는 물론 마이크(250)를 통해 전송되는 오디오 데이터를 인코딩함으로써, 제작자 클라이언트(200)의 컴퓨터에 내장된 비디오 및 오디오 데이터는 물론 제작자 클라이언트(200)의 현재 모습 및 음성을 실시간으로 방송할 수 있다. 인코딩부(230)에 의해 압축된 데이터는 송신부(260)를 통해 방송 서버(200)로 전송된다.In addition, a camera 240 is connected to the video data encoder 232 of the encoding unit 230, and a microphone 250 is connected to the audio data encoder 234. Accordingly, by encoding the video data transmitted through the camera 240 as well as the audio data transmitted through the microphone 250, the video and audio data embedded in the computer of the producer client 200 as well as the producer client 200 may be encoded. You can broadcast the current picture and voice in real time. The data compressed by the encoder 230 is transmitted to the broadcast server 200 through the transmitter 260.

도 3은 본 발명에 따른 제작자 클라이언트의 인터넷 방송 제작과정을 설명하는 흐름도이고, 도 3A는 인터넷 방송 제작 사이트의 화면 예시도이고, 도 3B는 방송채널 신청서의 예시도이고, 도 3C는 예시적인 방송창의 기능 설명도이고, 도 3D는 화면캡쳐 예시도이다.3 is a flowchart illustrating an internet broadcast production process of a producer client according to the present invention, FIG. 3A is an exemplary view of a screen of an internet broadcast production site, FIG. 3B is an exemplary view of a broadcast channel application, and FIG. 3C is an exemplary broadcast. FIG. 3D is a diagram illustrating a function of the window. FIG.

제작자 클라이언트가 인터넷 방송을 하기 위해서는 방송에 필요한 기본적인 장비를 구비하여야 한다. 예를 들어, 컴퓨터는 팬티엄 Ⅱ 200이상, USB 화상 카메라, ADSL 또는 케이블 등의 초고속 통신망, CD, MP3, 뮤직 비디오, 회의자료, 도표, 사진 등 각종 방송용 자료가 준비되어야 한다. 여기에서, 화상 카메라가 없더라도 윈도우 화면 또는 동영상을 캡쳐하여 방송할 수 있다.Producer Clients must be equipped with the basic equipment necessary for broadcasting. For example, the computer should be prepared for various broadcasting materials such as Pentium II 200 or higher, high speed communication network such as USB image camera, ADSL or cable, CD, MP3, music video, conference data, charts, photos, etc. Here, even if there is no image camera, it is possible to capture and broadcast a window screen or a video.

인터넷 방송을 위한 기본적인 준비가 완료되면, 제작자 클라이언트는 인터넷 방송을 개시하기 위한 방송채널을 개설시켜 주는 사이트의 URL 주소(예컨대, http://mystation.lycos.co.kr)를 입력하여 방송채널을 신청한다(S310). 방송채널을 신청하기 위해서는 방송채널 신청서를 형식에 맞게 작성하여야 한다. 예를 들어, 도 3A에 도시된 인터넷 방송 제작 사이트의 초기화면에서 '나만의 방송 만들기(즉, 우측 상단에 위치한 컨텐츠)'를 클릭하면, 도 3B와 같은 방송채널 신청서가 디스플레이 된다. 제작자 클라이언트는 디스플레이된 신청서의 각 항목을 기재한다. 기재항목 중에서 '공개여부'를 비공개로 지정하고 비밀번호를 지정해 두면 비밀번호를 알고 있는 사람만 입장시킬 수 있으며, '참가인원제한'은 개설할 채널에 최대 시청할 수 있는 시청자 인원을 지정하는 것이다. 방송창의 크기는 작은 화면과 큰 화면이 있으며, 작은 화면은 176 ×144 크기를 가지며, 큰 화면은 352 ×288의 화면 크기로 방송된다. 큰 화면은 빠른 동작 등에는 적합하지 않으므로 방송자료의 형식에 적합한 화면 크기를 지정하는 것이 바람직하다.When the basic preparation for the Internet broadcasting is completed, the producer client inputs the URL address (eg, http://mystation.lycos.co.kr) of the site that opens the broadcasting channel for starting the internet broadcasting. Apply (S310). In order to apply for a broadcast channel, a broadcast channel application must be prepared according to the format. For example, if the user clicks 'Create My Own Broadcast (i.e., the content located at the upper right)' on the initial screen of the Internet broadcasting production site shown in FIG. 3A, a broadcast channel application form as shown in FIG. 3B is displayed. The producer client lists each item of the displayed application. If you specify 'public or not' as a private item and specify a password, only the person who knows the password can enter. 'Limited Participants' designates the number of viewers who can watch the maximum number of channels to open. The size of the broadcast window includes a small screen and a large screen. The small screen has a size of 176 × 144, and the large screen is broadcasted at a screen size of 352 × 288. Since a large screen is not suitable for fast operation, it is desirable to designate a screen size suitable for the format of broadcast data.

방송채널 신청서를 모두 작성하면, 제작자 클라이언트는 '개설' 버튼을 클릭하여 방송채널 개설을 요청한다(S320). 제작자 클라이언트로부터 방송채널 개설 요청이 접수되면, 방송 서버는 해당 제작자 클라이언트가 방송채널을 처음 요청하였는가를 판단하여(S330) 처음 요청이면 본 발명에 따른 인터넷 방송을 제작하는데 필요한 소프트웨어인 방송용 클라이언트(예컨대, Active X) 프로그램을 자동으로 설치시켜준다(S340).When the broadcast channel application is completed, the producer client requests the establishment of a broadcast channel by clicking the 'open' button (S320). When a request for opening a broadcast channel is received from the producer client, the broadcast server determines whether the corresponding producer client requests the broadcast channel for the first time (S330), and if it is the first request, a broadcast client (eg, Active X) automatically installs the program (S340).

방송용 클라이언트가 설치되면, 도 3C에 도시된 바와 같은 초기화면이 디스플레이 된다(S350). 초기화면의 상단에는 제작자 클라이언트가 생성한 비디오 데이터를 디스플레이 해주는 '방송화면'이 위치하고, 그 하단에는 제작자 클라이언트와 시청자 클라이언트간 문자 데이터를 상호 교환할 수 있는 '채팅창'이 위치하고, 그 하단에는 각종 기능버튼이 위치한다. 기능버튼에는 제작자 클라이언트의 음성으로 방송할 수 있는 '마이크 선택' 버튼, 윈엠프, 미디어 플레이어, CD 플레이어 등 제작자 클라이언트의 컴퓨터에서 출력되는 모든 종류의 사운드를 방송할 수 있는 'PC 소리 선택' 버튼, 방송하고자 하는 화면을 캡쳐하기 위한 '화면캡쳐 시작/종료' 버튼, 방송을 종료시키기 위한 '방송 종료' 버튼, 채팅할 때의 문자 색깔을 지정하기 위한 '채팅 글자색 조정' 버튼 등이 있다. 또한, 방송창에는 현재 방송되는 화면의 전송속도를 표시하고, 본 방송을 시청하는 인원을 표시해 주는 기능도 포함한다.웹 카메라가 있는 경우 '방송화면'에는 웹 카메라가 촬영한 영상이 보이게 되고, 웹 카메라가 없는 경우 '방송화면'은 빈 공간으로 디스플레이 된다. 또한, 방송창에서 마우스의 오른쪽 버튼을 클릭한 후, 영상을 끄면 화면은 디스플레이 되지 않고 소리만 방송된다.When the broadcasting client is installed, an initial screen as shown in FIG. 3C is displayed (S350). At the top of the initial screen, there is a 'broadcasting screen' that displays video data created by the producer client.At the bottom, a 'chat window' is used to exchange text data between the producer client and the viewer client. The function button is located. The function buttons include a 'microphone select' button for broadcasting to the producer client's voice, a 'PC sound select' button for broadcasting all kinds of sound output from the producer client's computer, such as winamp, media player, and CD player. There is a 'start / stop screen capture' button for capturing a desired screen, a 'end broadcast' button for terminating a broadcast, and a 'chat text color adjustment' button for specifying a text color when chatting. In addition, the broadcast window includes a function of displaying the transmission speed of the screen currently being broadcast and displaying the number of viewers watching the broadcast.If there is a web camera, the video recorded by the web camera is displayed on the 'broadcast screen'. If there is no web camera, the 'broadcast screen' is displayed as a blank space. In addition, if the image is turned off after clicking the right button of the mouse in the broadcasting window, only the sound is broadcast without displaying the screen.

웹 카메라가 있는 경우에는 웹 카메라가 촬영한 영상을 방송하고, 웹 카메라가 없는 경우이거나 다른 방송자료를 방송하고자 하는 경우에는 방송창의 '화면캡쳐 시작/종료' 버튼을 클릭하여 원하는 영상을 캡쳐한다(S360). '화면캡쳐 시작/종료' 버튼을 한 번 클릭하면 영상이 PC 화면으로 변환되며, 캡쳐창을 방송하고자 하는 영역으로 이동시킨 후, 캡쳐 방송을 시작한다. 예를 들어, 도 3D에 도시된 바와 같이, 윈도우 미디어 플레이어로 뮤직 비디오 또는 동영상을 캡쳐하고자 하는 경우에는 방송하고 싶은 부분의 화면에 캡쳐창을 이동시키면 된다. 정지 화면을 캡쳐하고자 하는 경우에도 마찬가지로 해당 화면을 실행시킨 후, 캡쳐창을 방송하고자 하는 영역으로 이동시키면 된다. 이러한 캡쳐 기능은 방송용 클라이언트(예컨대, Active X)에 의해 가능하며, 캡쳐창의 크기도 작은 창과 큰 창 중에서 어느 하나를 선택할 수 있다. 동영상 방송대신 음악 위주로 방송하면서 앨범 자켓이나 정지 화면을 전송하고자 하는 경우에는 원하는 화면 영역을 캡쳐한 후, 주기적으로 방송창에서 영상 끄기와 켜기를 실행하면 네트워크의 전송율을 효율적으로 사용할 수 있다. 음악만 방송할 경우의 전송률은 약 24kbps 정도이며, 영상과 함께 방송할 경우의 전송률은 약 100kbps 내외가 된다.If there is a web camera, the web camera broadcasts the captured image. If there is no web camera or if you want to broadcast other broadcast data, click the 'Start / Stop Capture' button on the broadcast window to capture the desired video. S360). Click the 'Start / Stop Screen Capture' button once to convert the video to PC screen, move the capture window to the area you want to broadcast, and start capture broadcasting. For example, as illustrated in FIG. 3D, when a music video or a video is to be captured by a window media player, the capture window may be moved to a screen of a part to be broadcasted. Similarly, when a still image is to be captured, the corresponding screen is executed, and then the capture window is moved to an area to be broadcasted. Such a capture function is possible by a broadcasting client (eg, Active X), and the size of the capture window can be selected from a small window and a large window. If you want to transmit an album jacket or a still image instead of video broadcasting, you can capture the desired screen area and periodically turn off and on the video in the broadcasting window to effectively use the network's data rate. The transmission rate for broadcasting only music is about 24kbps, and the transmission rate for broadcasting with video is about 100kbps.

방송할 비디오 또는 오디오 데이터가 캡쳐되면, 인코딩부(도 2의 230)는 캡쳐된 방송 데이터를 인코딩하여 송신부(도 2의 260)를 통해 방송 서버(도 1의 200)로 전송한다.When video or audio data to be broadcast is captured, the encoder (230 of FIG. 2) encodes the captured broadcast data and transmits the encoded broadcast data to the broadcast server (200 of FIG. 1) through the transmitter (260 of FIG. 2).

도 4는 본 발명에 따른 방송 서버(400)의 내부 구성도로서, 방송 서버(400)는 웹서버(410), 연결 제어부(420), 데이터베이스(이하에서는 'D/B'라 칭한다)(430), 유닛(440) 및 송신부(gateway)(450)를 포함하며, 유닛(440)은 분배 주서버 프로세서(442) 및 분배 부서버 프로세서들(444, 446)로 이루어져 있다.4 is an internal configuration diagram of the broadcast server 400 according to the present invention. The broadcast server 400 includes a web server 410, a connection controller 420, and a database (hereinafter referred to as 'D / B') 430. Unit 440, and a gateway 450, which comprises a distribution main server processor 442 and distribution department processors 444 and 446.

웹서버(410)는 제작자 클라이언트와 인터넷을 통해 연결되어 있고, 서버 이름이 도메인 네임서버에 등록되어 있고, 일반 인터넷 사용자가 URL(Uniform Resource Locator)형식으로 정보를 검색할 수 있는 서버하드웨어로서 본 발명의 인터넷 방송 제작 사이트를 원활하게 운영하기 위해 웹서버 프로그램이 반드시 설치되고 실행되어야 한다. 웹서버(410)는 제작자 클라이언트 또는 시청자 클라이언트로부터 전송되는 URL형식의 정보검색요청을 처리하기 위하여 실행되는 서버 프로그램과 인터넷 사용자의 정보요구(예를 들면, 회원가입, 방송채널 개설 요청, 방송채널 참여 요청 등)를 처리하기 위하여 서버-클라이언트 상호작용을 지원하는 처리 프로그램을 포함한다. 서버 프로그램에는 유닉스용 서버인 NCSA, CERN, Apache, JIGSAW, 윈도우NT용 서버인 IIS, 그리고 윈도우NT와 윈도우95/98겸용 서버인 WebSite 등이 있고, 처리 프로그램은 일반적으로 CGI(Common Gateway Interface)라는 표준화된 정보의 상호전달 방식을 사용한다. CGI 형식에 맞추어 웹서버(410)에 전달된 정보는 웹서버(410)에 설치된 CGI 프로그램이 인터넷 사용자의 정보요구를 CGI 표준형식에 맞추어 적절히 해석하여 처리하게 된다. 또한, 웹서버(410)는 제작자 클라이언트가 처음으로 방송채널 개설을 요청할 경우, 인터넷 방송을 제작하기 위한 방송용 클라이언트 프로그램을 제작자 클라이언트에게 제공한다.The web server 410 is a server hardware connected to the producer client through the Internet, the server name is registered in the domain name server, and general Internet users can search for information in the form of a Uniform Resource Locator (URL). The web server program must be installed and executed in order to operate the Internet broadcasting production site of. The web server 410 is a server program that is executed to process URL-type information retrieval requests sent from producer clients or viewer clients, and requests for information from Internet users (for example, membership registration, broadcast channel establishment request, broadcast channel participation). A processing program that supports server-client interactions to handle requests and the like. Server programs include NCSA, CERN, Apache, JIGSAW, a server for Unix, IIS, a server for Windows NT, and WebSite, a server for both Windows NT and Windows 95/98. The processing program is generally called Common Gateway Interface (CGI). Use a standardized way of communicating information. The information transmitted to the web server 410 according to the CGI format is processed by the CGI program installed in the web server 410 by appropriately interpreting the information request of the Internet user according to the CGI standard format. In addition, the web server 410 provides the producer client with a broadcast client program for producing an Internet broadcast when the producer client requests to open a broadcast channel for the first time.

연결 제어부(420)는 웹서버(410)와 상호 연결되어 있으며, 가장 중요한 기능은 제작자 클라이언트와 시청자 클라이언트를 유닛을 통해 연결시켜 주는 것이다. 제작자 클라이언트의 채널 개설 요청에 따라 유닛의 빈 채널을 검색하여 해당 채널을 할당해준다. 이외에 연결 제어부(420)는 방송 채널의 전반적인 관리, 유닛 감시, 부하 분산, 로그 처리, 원격관리 처리, 채널 정보 백업과 같은 기능을 수행한다.The connection controller 420 is interconnected with the web server 410, and the most important function is to connect the producer client and the viewer client through the unit. The channel is searched for the empty channel of the unit according to the request from the producer client for channel establishment, and the channel is allocated. In addition, the connection control unit 420 performs functions such as overall management of a broadcast channel, unit monitoring, load balancing, log processing, remote management processing, and channel information backup.

D/B(430)는 연결 제어부(420)와 상호 연결되어 있으며, 채널과 그룹에 관한 각종 정보(예컨대, 채널 공간 정보, 참여 인원 정보, 그룹별 연관관계 정보 등)를 저장하는 기능을 수행한다. 채널과 그룹에 관한 각종 정보는 변환 테이블 형식으로 저장되며, 연결 제어부(420)의 요청에 따라 해당 정보를 추출하여 연결 제어부(420)로 전송한다.The D / B 430 is interconnected with the connection control unit 420 and performs a function of storing various information about the channel and the group (eg, channel space information, participant information, group association information, and the like). . Various information about the channel and the group is stored in a conversion table format, and the corresponding information is extracted and transmitted to the connection control unit 420 at the request of the connection control unit 420.

유닛(440)은 연결 제어부(420)와 상호 연결되어 있으며, 제작자 클라이언트가 방송하고자 하는 스트림 데이터를 수신하여 채널별로 할당해주는 역할을 수행한다. 유닛(440)은 다수의 그룹(예컨대, 50개)으로 구성되어 있고, 각 그룹의 수용 인원수는 10명이다. 따라서, 하나의 유닛(440)에 참여할 수 있는 인원수는 500명이다. 유닛(440)을 구성하는 그룹은 서버의 용량에 따라 다르게 설정될 수 있지만 본 발명에서는 50개로 설정하고, 한 그룹당 수용 인원도 최대 10명으로 설정하는 것이 바람직하다. 유닛(440)에 있는 각각의 그룹들은 분배 주서버 프로세서(442) 또는분배 부서버 프로세서(444, 446)의 기능을 수행할 수 있으며, 이는 그룹이 실제 방송에 참여하게 될 때 연결 제어부(420)에 의해 결정된다. 분배 주서버 프로세서(442)는 제작자 클라이언트가 제작한 방송자료를 해당 그룹에 참여한 시청자 클라이언트에게 전송하는 기능을 수행하고, 분배 부서버 프로세서들(444, 446)은 다른 그룹으로 방송자료를 링크하고자 할 때 해당 그룹을 연결하여 그 그룹에 참여한 시청자 클라이언트에게 방송자료를 전송하는 역할을 수행한다. 즉, 분배 주서버 프로세서(442)에는 제작자 클라이언트와 시청자 클라이언트가 모두 존재하며, 분배 부서버 프로세서들(444, 446)에는 시청자 클라이언트만 존재한다. 분배 부서버 프로세서들(444, 446)은 하나의 그룹이 수용 인원을 초과할 때 해당 그룹의 방송 내용을 시청하고자 하는 다른 시청자 클라이언트에게 방송할 경우에 필요한 것이다. 각 그룹간은 트리 구조를 이루며, 각 그룹간의 링크 정보는 연결 제어부(420)가 관장한다. 또한, 각각의 유닛(440)들은 자신의 유닛 정보(예컨대, 채널 공간 정보, 참여 인원 정보, 그룹별 연관관계 정보 등)를 주기적으로 연결 제어부(420)로 전송하여 제작자 클라이언트 또는 시청자 클라이언트가 최적의 유닛(440)에 접속할 수 있도록 한다.The unit 440 is interconnected with the connection control unit 420 and performs a role of receiving the stream data to be broadcast by the producer client and assigning the channel data to each channel. The unit 440 is composed of a plurality of groups (for example, 50), and each group has 10 people. Therefore, the number of people who can participate in one unit 440 is 500 people. The group constituting the unit 440 may be set differently according to the capacity of the server, but in the present invention, it is preferable to set the number to 50, and to set the number of people per group to a maximum of 10. Each of the groups in unit 440 may perform the functions of distributed main server processor 442 or distributed server processors 444 and 446, which are associated with connection control unit 420 when the group is to participate in the actual broadcast. Determined by The distribution main server processor 442 transmits the broadcast data produced by the producer client to the viewer clients participating in the group, and the distribution department processors 444 and 446 may link the broadcast data to other groups. When connected to the group and plays a role in transmitting the broadcast material to the viewer clients participating in the group. That is, both the producer client and the viewer client exist in the distribution main server processor 442, and only the viewer client exists in the distribution server processors 444 and 446. Distribution department processors 444 and 446 are required when broadcasting to another viewer client who wishes to view the broadcast content of that group when one group exceeds its capacity. Each group forms a tree structure, and the link controller 420 manages link information between the groups. In addition, each unit 440 periodically transmits its unit information (eg, channel space information, participant information, group-specific association information, etc.) to the connection control unit 420 so that the producer client or the viewer client is optimal. To connect to unit 440.

송신부(gateway)(450)는 분배 주서버 프로세서(442) 및 분배 부서버 프로세서들(444, 446)에 연결되어 있으며, 각 프로세서와 시청자 클라이언트를 연결하여 제작자 클라이언트가 방송하는 내용을 해당 시청자 클라이언트에게 전송하는 기능을 수행한다.The gateway 450 is connected to the distribution main server processor 442 and the distribution server processors 444 and 446. The gateway 450 connects each processor and the viewer client to broadcast the content broadcasted by the producer client to the viewer client. Perform the function of sending.

도 5A내지 5E는 제작자 클라이언트와 방송 서버간의 정보 흐름도로서, ⓟ는제작자 클라이언트, WEB는 웹서버, CSM은 연결 제어부, UNIT은 유닛, D/B는 데이터베이스를 가리킨다.5A to 5E are flow charts of information between a producer client and a broadcast server, a producer client, a WEB web server, a CSM connection controller, a UNIT unit, and a D / B database.

도 5A 및 5B는 방송상태 모니터링 과정을 나타내는 정보 흐름도이다. 웹서버는 일정 주기 또는 채널 개설 요구 등의 이벤트가 발생하면, CSM의 5000번 포트에 연결을 시도한다(1). 연결이 성공적으로 진행되면, CSM은 D/B로부터 현재의 방송채널 정보를 추출(2)하여 웹서버로 전달한다(3). 여기에서, D/B의 부하를 줄이기 위해 방송 서버의 설정에 따라 빈번한 연결을 방지하기 위한 연결 제한 시간을 설정할 수 있다(4). 연결 제한 시간은 예를 들어, 초 단위로 설정할 수 있다.5A and 5B are information flow diagrams illustrating a broadcast condition monitoring process. When an event such as a certain period or channel establishment request occurs, the web server attempts to connect to port 5000 of the CSM (1). If the connection is successful, the CSM extracts the current broadcast channel information from the D / B (2) and delivers it to the web server (3). Here, in order to reduce the load of the D / B, a connection timeout for preventing frequent connection may be set according to the setting of the broadcast server (4). The connection timeout can be set, for example, in seconds.

도 5C는 채널 개설 및 방송 참여 과정을 나타내는 정보 흐름도이다. 제작자 클라이언트가 웹서버에 방송을 위한 채널 개설을 요구하면(1), 웹서버는 해당 정보를 CSM에 전달한다(2). CSM은 D/B로부터 채널 정보를 추출(3)하여 채널 방송 서비스를 위한 유닛을 할당(4)하고, 할당된 유닛 정보 및 유닛의 IP(Internet Protocol) 주소를 웹서버에 전달한다(5). 즉, 제작자 클라이언트가 채널을 개설한 후, 방송에 참여하기 위해서는 웹서버, CSM, 유닛순으로 접근해야 한다. 다음에, 웹서버는 할당된 채널 정보 및 CSM의 IP 주소를 제작자 클라이언트로 전송하고(6), 제작자 클라이언트는 CSM에게 자신이 참여할 채널 번호를 전송한다(7). 그 후, CSM은 할당된 유닛 정보를 제작자 클라이언트에게 전달하면(8), 제작자 클라이언트는 해당 유닛으로 접속한 후, 방송을 개시한다(9).5C is an information flow diagram illustrating a channel establishment and broadcast participation process. When the producer client requests the web server to open a channel for broadcasting (1), the web server transmits the information to the CSM (2). The CSM extracts channel information from the D / B (3), allocates a unit for the channel broadcast service (4), and transmits the allocated unit information and the IP (Internet Protocol) address of the unit to the web server (5). In other words, after creating a channel, a producer client needs to access a web server, a CSM, and a unit in order to participate in a broadcast. Next, the web server sends the assigned channel information and the CSM's IP address to the producer client (6), and the producer client sends the CSM the channel number to which it participates (7). Thereafter, when the CSM delivers the allocated unit information to the producer client (8), the producer client connects to the unit and then starts broadcasting (9).

도 5D 및 5E는 방송 종료시 채널 관리 과정을 나타내는 정보 흐름도이다. 제작자 클라이언트가 유닛에게 방송 종료를 요청하면(1), 유닛은 해당 요청을 CSM에게 보고한다(2). 다음에, CSM은 유닛에게 채널 폐쇄 명령을 전달하고(3), 시청자 클라이언트가 모두 방송채널에서 탈퇴하면(4), CSM은 채널 정보를 D/B에 전달(5)하여 채널이 비어 있음을 알리고, 해당 채널 정보를 웹서버로 전달한다(6).5D and 5E are information flow diagrams illustrating a channel management process at the end of a broadcast. When the producer client requests the unit to terminate the broadcast (1), the unit reports the request to the CSM (2). Next, the CSM sends a channel closure command to the unit (3), and when all viewer clients leave the broadcast channel (4), the CSM passes the channel information to the D / B (5) to indicate that the channel is empty. In step 6, the channel information is transmitted to the web server.

채널 정보에 대한 변화는 유닛 테이블과 D/B 테이블로부터 알 수 있으며, 채널 개설 시에는 D/B 테이블이 세트된 후, 유닛 테이블이 세트된다. 반대로, 채널 종료 시에는 유닛 테이블이 리세트된 후, D/B 테이블이 리세트된다. 만일, 채널 개설과 동시에 채널 정보 업데이트 명령이 발생되면 유닛에는 채널이 개설되었지만 D/B 테이블에는 채널이 개설되지 않은 것으로 기록되는 경우가 발생할 수 있다. 정상적인 경우와 오류가 발생하는 경우를 살펴보면 다음과 같다.The change in the channel information can be known from the unit table and the D / B table. When the channel is opened, the unit table is set after the D / B table is set. In contrast, at the end of the channel, the unit table is reset and then the D / B table is reset. If a channel information update command is issued at the same time as the channel establishment, a channel may be recorded as being opened in the unit but not established in the D / B table. The normal case and the error case are as follows.

(1) 정상적인 경우(1) normal case

1) 제작자 클라이언트의 채널 개설 요구1) Requesting channel creation from producer client

2) CSM은 D/B에서 채널 정보를 읽은 후 할당할 채널 결정(3번 채널이라고 가정한다)2) CSM reads channel information from D / B and decides channel to allocate (assume channel 3)

3) D/B의 3번 채널 테이블 세트3) D / B channel table set

4) 유닛에게 3번 채널 개설 명령4) Command Unit 3 open channel

5) 유닛 테이블에서 3번 채널 세트5) Channel 3 set in the unit table

6) 제작자 클라이언트에게 유닛 주소와 채널 번호 전달6) Pass unit address and channel number to producer client

(2) 오류가 발생하는 경우(상기 3)과 5) 사이에서 웹서버가 CSM 정보를 갱신하는 경우)(2) If an error occurs (the web server updates CSM information between 3 and 5)

1) 제작자 클라이언트의 채널 개설 요구1) Requesting channel creation from producer client

2) CSM은 D/B에서 채널 정보를 읽은 후 할당할 채널 결정(3번 채널이라고 가정한다)2) CSM reads channel information from D / B and decides channel to allocate (assume channel 3)

3) D/B의 3번 채널 테이블 세트3) D / B channel table set

4) 웹서버가 유닛의 정보 요구4) Web server requests unit information

5) 유닛 테이블 정보 전달5) Unit Table Information Delivery

6) 유닛 테이블에 의하면 3번 채널이 비어 있으므로 D/B 테이블의 3번 테이블 리세트6) According to the unit table, channel 3 is empty, thus resetting table 3 of the D / B table.

7) 유닛에게 3번 채널 개설 명령7) Command Unit 3 open channel

8) 유닛 테이블에서 3번 채널 세트8) Channel 3 set in the unit table

즉, 오류가 발생하는 경우에는 D/B 테이블에는 3번 채널이 리세트 되어 있는 상태이고, 유닛 테이블에는 3번 채널이 세트되어 있는 상태이다.That is, when an error occurs, channel 3 is reset in the D / B table and channel 3 is set in the unit table.

위와 같은 오류는 웹서버에서 두 개 이상의 서로 다른 데몬이나 스크립트가 동작하기 때문에 발생하는 문제로서, D/B 테이블에 리세트 카운트를 둠으로써 해결할 수 있다. 즉, 채널 세트후, 일정 회수 또는 일정 시간이 경과하여야 리세트 될 수 있도록 한다. 예를 들어, 채널을 세트한 후, 명령 수행 시간을 기록하고, 리세트할 때 30초 이상 지나지 않았으면 리세트를 시키기 않는다. 이러한 기능은 웹서버에 구현할 수 있고, D/B에 구현할 수도 있다. 웹서버에서는 D/B를 리세트하기 전 시간 테이블을 읽어서 시간 차를 구한 다음 이 값으로 리세트 여부를 결정하는 방식으로 구현할 수 있고, D/B에서는 가장 최근의 세트 명령 후 일정 시간까지의 리세트 명령을 거부하는 방식으로 구현할 수 있다.The above error is caused by two or more different daemons or scripts running on the web server and can be solved by putting a reset count in the D / B table. That is, after a channel set, a certain number of times or a predetermined time must elapse so that it can be reset. For example, after setting the channel, record the command execution time and do not reset if it is not more than 30 seconds when reset. These functions can be implemented in a web server or in D / B. The web server can be implemented by reading the time table before resetting the D / B to obtain the time difference, and then determining whether to reset it using this value. It can be implemented by rejecting set commands.

또한, 두 개 이상의 웹서버를 운영할 때 문제가 발생될 수 있는 것은 유일한 채널 번호를 만드는 것이다. 즉, 거의 동시에 두 개의 웹서버가 D/B에 접근한 다음, 채널 테이블에서 동일한 빈 채널을 검색한 경우에 같은 채널에 개설 명령을 내리는 경우가 있다. 물론, CSM에 의해 두 번째 명령은 무시되겠지만, 이러한 문제는 D/B에서의 시퀀스 명령을 사용하거나 레코드 락(record lock) 기능을 통해 채널 번호를 읽어 들인 후, 새 채널을 할당할 동안 다른 웹서버의 채널 테이블 접근을 방지함으로써 해결할 수 있다.Also, when running more than one web server, the problem may be creating a unique channel number. In other words, when two web servers access the D / B at about the same time, and then search for the same empty channel in the channel table, it may issue a command to open the same channel. Of course, the second command will be ignored by the CSM, but this problem can be solved by using a sequence command on the D / B or reading the channel number via the record lock function and then assigning another web server while allocating a new channel. This can be solved by preventing access to the channel table.

도 6은 본 발명에 따른 시청자 클라이언트(600)의 상세 구성도로서, 시청자 클라이언트(600)는 수신부(610), 디코딩부(620), 데이터 재생부(630), 모니터(640) 및 스피커(650)를 포함하고, 디코딩부(620)는 비디오 디코더(622) 및 오디오 디코더(624)로 이루어져 있고, 데이터 재생부(630)는 동영상 디스플레이어(632), 정지영상 디스플레이어(634) 및 오디오 플레이어(636)로 이루어져 있다.6 is a detailed configuration diagram of the viewer client 600 according to the present invention, in which the viewer client 600 includes a receiver 610, a decoder 620, a data player 630, a monitor 640, and a speaker 650. The decoding unit 620 includes a video decoder 622 and an audio decoder 624, and the data reproducing unit 630 includes a video display 632, a still image display 634, and an audio player. It consists of 636.

수신부(610)는 방송 서버(400)의 송신부(450)로부터 전송되는 비디오 및 오디오 스트림 데이터를 수신하여 디코딩부(620)로 전달하는 기능을 수행한다. 디코딩부(620)는 수신부(610)에 연결되어 있으며, 수신부(610)에서 전달된 비디오 및 오디오 스트림 데이터를 디코딩하는 기능을 수행한다. 방송 서버(400)의 송신부(450)로부터 전송되는 비디오 및 오디오 스트림 데이터는 인코딩되어 전송되는 것이기 때문에 원래의 데이터로 복원하여야 한다. 여기에서, 비디오 스트림 데이터는 비디오 디코더(622)를 통해 압축을 풀고, 오디오 스트림 데이터는 오디오 디코더(624)를 통해 압축을 푼다. 데이터 재생부(630)는 디코딩부(620)에 연결되어 있으며, 동영상 디스플레이어(632) 및 정지영상 디스플레이어(634)는 비디오 디코더(622)에 연결되어 있고, 오디오 플레이어(636)는 오디오 디코더(624)에 연결되어 있다. 데이터 재생부(630)는 시청자 클라이언트(600)의 화면을 분할하여 일부는 동영상을 디스플레이하고, 일부는 정지영상을 디스플레이하며, 다른 일부는 방송 참여자들간의 텍스트 채팅을 통한 의사 전달이 가능하게 되어 있다. 따라서, 시청자는 제작자의 데이터 입력 종류에 구애받지 않고 시청자 클라이언트(600)만으로 방송의 모든 내용을 시청할 수 있다. 동영상 디스플레이어(632) 및 정지영상 디스플레이어(634)에서 재생되는 비디오 데이터는 시청자 클라이언트(600)의 컴퓨터 모니터(640)를 통해 디스플레이 되고, 오디오 플레이어(636)에서 재생되는 오디오 데이터는 스피커(650)를 통해 출력된다.The receiver 610 receives and transmits the video and audio stream data transmitted from the transmitter 450 of the broadcast server 400 to the decoder 620. The decoder 620 is connected to the receiver 610 and performs a function of decoding the video and audio stream data transferred from the receiver 610. Since the video and audio stream data transmitted from the transmitter 450 of the broadcast server 400 is encoded and transmitted, the original data should be restored. Here, the video stream data is decompressed through the video decoder 622, and the audio stream data is decompressed through the audio decoder 624. The data reproducing unit 630 is connected to the decoding unit 620, the video display 632 and the still image display 634 are connected to the video decoder 622, and the audio player 636 is the audio decoder. 624 is connected. The data reproducing unit 630 divides the screen of the viewer client 600 to display a video partly, partly to display a still image, and to communicate with a participant through text chat between broadcast participants. . Accordingly, the viewer can watch all contents of the broadcast only by the viewer client 600 regardless of the type of data input by the producer. Video data played back on the video display 632 and still picture display 634 is displayed through the computer monitor 640 of the viewer client 600, and audio data played back on the audio player 636 is output from the speaker 650. Is printed through).

도 7은 채널 관리 및 방송 리소스 관리 처리과정을 나타내는 흐름도이다. 먼저, 시청자 클라이언트가 방송채널 참여 요구를 요청하면, CSM은 채널에의 접근을 허용하기 전에 시청자 클라이언트의 연결을 대기시킨다(S710). CSM은 시청자 클라이언트가 요청한 채널이 현재 방송 중인 채널인가를 판단(S720)하여 현재 방송 중인 채널이면, 해당 채널에 참여할 여유가 있는가를 판단한다(S730). 이러한 채널 정보는 D/B(도 4의 430)를 통해 검색할 수 있으며, 채널 여유가 없으면 해당 채널이 속한 유닛 내의 그룹을 확장할 수 있는가를 판단하여 그룹 확장이 가능하면, 다른 그룹으로 링크시켜 해당 채널에 대한 서비스를 확장한다(S750). 상기단계(S720)에서 시청자 클라이언트가 요구한 채널이 현재 방송 중인 채널이 아니거나 상기 단계(S740)에서 해당 채널에 대한 그룹 확장이 불가능하면, 시청자 클라이언트가 요청한 채널로의 접근을 허용하지 않고 처음 단계(S710)로 복귀시켜 위의 과정을 반복하도록 지시한다(S760). 다음에, 상기 단계(S730)에서 해당 채널에 참여할 여유가 있거나 상기 단계(S750)에서 해당 채널에 대한 서비스가 확장되면, 부하 분산을 통해 여유 있는 유닛 또는 그룹을 할당시킨 후, 상기 단계(S710)로 복귀한다.7 is a flowchart illustrating a process of channel management and broadcast resource management. First, when the viewer client requests a broadcast channel participation request, the CSM waits for the connection of the viewer client before allowing access to the channel (S710). The CSM determines whether the channel requested by the viewer client is a channel that is currently being broadcast (S720), and if it is a channel that is currently being broadcast, it determines whether there is room to participate in the channel (S730). Such channel information can be retrieved through D / B (430 of FIG. 4). If there is no channel margin, it is determined whether the group within the unit to which the corresponding channel belongs can be expanded. The service for the channel is extended (S750). If the channel requested by the viewer client in the step (S720) is not a channel currently being broadcast or if the group expansion for the corresponding channel is impossible in the step (S740), the first step without allowing access to the channel requested by the viewer client Returning to (S710) and instructs to repeat the above process (S760). Next, if there is room to participate in the channel in step S730 or the service for the channel is expanded in step S750, after allocating a spare unit or group through load balancing, step S710 Return to.

도 8은 그룹 관리 처리과정을 나타내는 흐름도이다. 채널이 증가하고 각 채널에 참여하는 인원수가 증가되면, 방송을 위한 리소스(즉, 각 유닛들의 그룹들)가 많이 사용된다. 이러한 리소스들은 일정 시간마다 CSM의 리소스 해제 알고리즘에 의해 사용 유무가 검사되고, 그에 따라 사용되지 않는 리소스들은 해제되어 다른 채널에 할당될 수 있도록 하여야 한다. 먼저, CSM은 각 유닛에 속한 모든 그룹을 검색한다. 다음에, 해당 채널의 리소스 리스트를 검색하여 해당 채널의 마지막 그룹에 참여한 방송 참여자(즉, 제작자 클라이언트 및 시청자 클라이언트)의 존재 여부를 판단한다(S830). 방송 참여자가 없으면 해당 그룹의 앞에 링크된 그룹을 검색하여 해당 그룹이 최대 수용 인원(예컨대, 10명)보다 적은 인원을 수용하고 있는가를 판단한다(S840). 마지막 그룹 앞에 링크된 그룹에 참여한 사람이 여유가 있으면, 마지막 그룹을 방송채널 리스트에서 제거(S850)한 후, 모든 처리과정을 종료한다. 또한, 상기 단계(S830)에서 마지막 그룹에 참여자가 있거나 상기 단계(S840)에서 마지막 그룹 앞에 링크된 그룹에 참여 인원수의 여유가 없는 경우에는 마지막그룹을 채널 리스트로부터 제거하지 않고 본 처리과정을 종료한다. 즉, 하나의 채널을 서비스할 수 있는 리소스의 가장 마지막 그룹이 비어 있고, 바로 앞에 있는 그룹에 여분의 공간이 있어 앞으로 약간의 참여자가 해당 그룹에 참여하더라도 일정 기간의 여유가 있다면 마지막 그룹을 방송채널 리스트에서 제거하여 다른 그룹의 서비스에 이용할 수 있도록 본 시스템을 운용하는 것이 바람직하다.8 is a flowchart showing a group management process. As channels increase and the number of people participating in each channel increases, resources for broadcasting (i.e. groups of respective units) are heavily used. These resources should be checked for use by the CSM's resource release algorithm at regular intervals, and thus unused resources should be released and allocated to other channels. First, the CSM searches all groups belonging to each unit. Next, the resource list of the channel is searched to determine whether there is a broadcast participant (that is, a producer client and a viewer client) participating in the last group of the channel (S830). If there is no broadcast participant, the group linked to the front of the group is searched to determine whether the group accommodates less than the maximum capacity (for example, 10) (S840). If the person who participated in the linked group in front of the last group is free, the last group is removed from the broadcast channel list (S850), and then all processing ends. In addition, if there is a participant in the last group in step S830 or there is no room in the number of participants in the group linked to the last group in step S840, the process is terminated without removing the last group from the channel list. . In other words, if the last group of resources that can service one channel is empty, and there is extra space in the group in front of it, if there is a certain period of time even if some participants join the group, the last group is broadcasted. It is advisable to operate this system to remove it from the list and make it available to other groups of services.

이러한 본 발명에 따른 인터넷 분산 방송 시스템 및 방법이 인터넷상에서 널리 구축되어 활용되면, 누구나 자신이 제작한 방송 프로그램을 인터넷을 통해 여러 사람들에게 제공할 수 있을 것이다. 본 발명에 따른 인터넷 방송 시스템은 교육용 강의 시스템, 증권 소개 방송 시스템, 각 분야의 동호인(예컨대, 시사랑, 음악사랑, 영화사랑)의 개인방송 시스템, 많은 사람들이 참여하여 방송을 구축하는 인터넷 방송국 등에 적용될 수 있을 것이다. 예를 들어, 현재 일방향적으로 진행되고 있는 온라인 강의 시스템을 강사와 학습자간의 양방향 강의 시스템으로 발전시킬 수 있고, 현재 텍스트 위주의 온라인 경매 시스템의 경우에 있어서 경매자가 경매할 물건을 방송을 통하여 실시간으로 보여주어 경매 참여자와 양방향으로 경매를 진행시킬 수 있으며, 온라인 쇼핑의 경우 판매자가 인터넷상에서 실시간으로 케이블 TV 쇼핑과 같은 형태의 판매활동을 할 수 있다. 또한, 현재 공중파 방송 및 케이블 방송의 형태로 진행되는 모든 형태의 방송을 누구나 저렴한 비용으로 방송국을 구축하여 인터넷상에서 방송을 진행할 수 있다.If the Internet distributed broadcasting system and method according to the present invention is widely built and used on the Internet, anyone will be able to provide their own broadcast program to various people through the Internet. The Internet broadcasting system according to the present invention is applied to an educational lecture system, a stock introduction broadcasting system, a personal broadcasting system of hobbyists (eg, love of love, music love, and movie love) in each field, and an internet broadcasting station in which many people participate in establishing a broadcast. Could be. For example, the current one-way online lecture system can be developed into a two-way lecture system between the instructor and the learner, and in the case of the current text-based online auction system, the auctioneer can auction in real time through broadcast. By showing, the auction can be carried out interactively with the participants, and in the case of online shopping, the seller can perform a sales activity such as cable TV shopping in real time on the Internet. In addition, any type of broadcasting currently in the form of over-the-air broadcasting and cable broadcasting can be broadcasted on the Internet by establishing a broadcasting station at a low cost.

상기한 실시예는 본 발명의 바람직한 실시예를 설명한 것에 불과하고, 본 발명의 적용 범위는 이와 같은 것에 한정되는 것은 아니며 동일 사상의 범주 내에서 적절하게 변경 가능한 것이다. 예를 들어 본 발명의 실시예에 구체적으로 나타난 각 구성 요소의 형상 및 구조는 변형하여 실시할 수 있는 것이다. 또한, 본 발명은 이외에도 다른 분야에 널리 사용할 수 있는 것이다.The above embodiment is merely a description of the preferred embodiment of the present invention, the scope of application of the present invention is not limited to such, and can be changed as appropriate within the scope of the same idea. For example, the shape and structure of each component specifically shown in the embodiment of the present invention can be modified. In addition, the present invention can be widely used in other fields.

Claims (25)

제작자 클라이언트에 의해 제작된 음성, 영상, 문자, 이미지 등의 멀티미디어 정보를 초고속 통신망을 매체로 하여 시청자 클라이언트에게 방송하는 인터넷 방송 방법에 있어서,In the Internet broadcasting method for broadcasting the multimedia information, such as voice, video, text, image produced by the producer client to the viewer client via a high-speed communication network, a) 방송채널 개설을 요청하고, 방송채널이 개설되면 방송하고자 하는 데이터를 캡쳐하고, 캡쳐된 방송 데이터를 인코딩하여 방송 서버로 전송하는 단계; 및a) requesting to establish a broadcast channel, capturing data to be broadcast when the broadcast channel is established, encoding the captured broadcast data, and transmitting the encoded broadcast data to a broadcast server; And b) 상기 제작자 클라이언트의 방송채널 개설 요청에 따라 모든 채널을 검색하여 빈 채널을 할당해 주고, 상기 시청자 클라이언트의 방송참여 요청에 따라 해당 채널로 링크시켜 주고, 상기 방송 데이터를 수신하여 할당된 상기 채널을 통해 상기 시청자 클라이언트에게 상기 방송 데이터를 여러 스트림으로 나누어 전송하는 단계를 포함하는 방법.b) search for all channels according to the request of the producer client to establish a broadcast channel, allocate an empty channel, link to the corresponding channel according to the request for participation of the viewer client, and receive and allocate the broadcast data. And transmitting the broadcast data into multiple streams to the viewer client. 제1항에 있어서, 상기 a) 단계는The method of claim 1, wherein step a) a1) 방송채널 신청항목을 작성하여 방송채널 개설을 요청하는 단계;a1) creating a broadcast channel application item and requesting to establish a broadcast channel; a2) 상기 방송채널 개설 요청이 처음인가를 판단하는 단계;a2) determining whether a request for opening a broadcast channel is first; a3) 상기 요청이 처음이면, 방송에 필요한 방송용 클라이언트 프로그램을 자동으로 설치시키는 단계; 및a3) automatically installing a broadcasting client program required for broadcasting when the request is first; And a4) 방송자료를 캡쳐하여, 캡쳐된 방송 데이터를 인코딩하여 전송하는 단계를 포함하는 방법.a4) capturing broadcast data, encoding and transmitting the captured broadcast data. 제1항에 있어서, 상기 b) 단계는The method of claim 1, wherein b) b1) 전체 채널을 관리하는 유닛으로부터 각 채널의 정보를 수신하여 저장하는 단계;b1) receiving and storing information of each channel from a unit managing the entire channel; b2) 상기 제작자 클라이언트의 방송채널 개설 요청이 수신되면, 저장된 상기 채널 정보를 검색하여 빈 채널을 할당하는 단계;b2) retrieving the stored channel information and allocating an empty channel when the producer client requests to open a broadcast channel; b3) 상기 시청자 클라이언트의 방송참여 요청이 수신되면 요청된 채널의 참여 인원수를 파악하여 참여 인원수가 최대 참여 인원수보다 적은 경우 해당 채널로 상기 시청자 클라이언트를 링크시키고, 참여 인원수가 최대 참여 인원수와 같은 경우 채널을 확장하여 확장된 채널로 상기 시청자 클라이언트를 링크시키는 단계; 및b3) When the viewer client requests to participate in the broadcast, the number of participants in the requested channel is determined and the viewer client is linked to the corresponding channel when the number of participants is smaller than the maximum number of participants. Linking the viewer client to an extended channel by expanding; And b4) 할당된 상기 채널을 통해 상기 제작자 클라이언트와 상기 시청자 클라이언트를 연결시켜 상기 제작자 클라이언트가 제작한 방송 데이터를 상기 시청자 클라이언트에게 방송하는 단계를 포함하는 방법.b4) connecting the producer client to the viewer client through the assigned channel to broadcast broadcast data produced by the producer client to the viewer client. 제1항에 있어서, 상기 초고속 통신망은 T1, T2, T3을 포함하는 전용회선, 케이블 통신망, ADSL, ISDN 및 PSTN 중 어느 하나를 사용하는 인터넷인 방법.The method of claim 1, wherein the high speed communication network is a dedicated line including T1, T2, and T3, a cable communication network, and an Internet using any one of ADSL, ISDN, and PSTN. 제1항에 있어서, 상기 방송 데이터는 비디오 데이터, 오디오 데이터 및 텍스트 데이터를 포함하는 방법.The method of claim 1, wherein the broadcast data includes video data, audio data, and text data. 제2항에 있어서, 상기 a1) 단계의 방송채널 신청항목은The method of claim 2, wherein the broadcast channel application item of step a1) 개설자 이름, 방송제목, 공개여부, 참가인원 제한, 방송창 크기 및 방송의 간단한 설명을 포함하는 방법.A method that includes the name of the creator, the title of the broadcast, the visibility, the number of participants, the size of the broadcast window, and a brief description of the broadcast. 제2항에 있어서, 상기 a4) 단계의 방송자료 캡쳐는 상기 방송용 클라이언트 프로그램을 이용하여 캡쳐하고,The method of claim 2, wherein the capture of broadcast data in step a4) is captured by using the broadcast client program. 카메라를 통해 촬영된 비디오 및 오디오 데이터뿐만 아니라 상기 제작자 클라이언트의 컴퓨터에 내장된 동영상, 정지화면 또는 오디오 데이터를 캡쳐하여 방송하는 방법.A method of capturing and broadcasting video, still image, or audio data embedded in a computer of a producer client as well as video and audio data captured by a camera. 제2항에 있어서, 상기 a4)에서 캡쳐된 방송 데이터의 인코딩은 MPEG, H.263 및 H.26L 중 어느 하나의 방식을 사용하는 방법.The method of claim 2, wherein the encoding of the broadcast data captured in a4) uses any one of MPEG, H.263, and H.26L. 제3항에 있어서,The method of claim 3, b5) 상기 확장된 채널을 검색하여 링크된 여러 채널 중에서 마지막 채널의 참여 인원수를 파악하고, 마지막 채널에 참여 인원수가 없고 상기 마지막 채널 앞에 링크된 채널에 참여 인원수의 여유가 있는 상태이면 상기 마지막 채널을 채널 리스트로부터 제거하는 단계를 더 포함하는 방법.b5) search for the expanded channel to determine the number of participants of the last channel among the linked channels, and if the number of participants is not available in the last channel and there is room for the number of participants in the linked channel before the last channel, Removing from the channel list. 제3항에 있어서, 상기 유닛은 그룹으로 구성되어 있고, 상기 채널은 하나 이상의 그룹으로 구성되는 방법.4. The method of claim 3, wherein the units are organized in groups and the channels are organized in one or more groups. 제3항에 있어서, 상기 b1) 단계에서 저장된 채널 정보는 상기 유닛으로부터 주기적으로 제공받아 상기 채널 정보를 업데이트하는 방법.The method of claim 3, wherein the channel information stored in the step b1) is periodically received from the unit to update the channel information. 제작자 클라이언트에 의해 제작된 음성, 영상, 문자, 이미지 등의 멀티미디어 정보를 초고속 통신망을 매체로 하여 시청자 클라이언트에게 방송하는 인터넷 방송 시스템에 있어서,In the Internet broadcasting system for broadcasting the multimedia information, such as voice, video, text, image produced by the producer client to the viewer client via a high-speed communication network, 방송채널 신청 항목을 작성하여 방송채널 개설을 요청하고, 방송채널이 개설되면 방송하고자 하는 데이터를 캡쳐하고, 캡쳐된 방송 데이터를 인코딩하여 전송하는 제작자 클라이언트;A producer client for creating a broadcast channel request item and requesting to establish a broadcast channel, capturing data to be broadcast when the broadcast channel is established, and encoding and transmitting the captured broadcast data; 상기 제작자 클라이언트와 상기 초고속 통신망을 통해 연결되어 있으며, 상기 제작자 클라이언트의 방송채널 개설 요청에 따라 모든 채널을 검색하여 빈 채널을 할당해 주고, 상기 채널을 관리하고, 새로운 채널 정보를 업데이트하여 저장하고, 상기 제작자 클라이언트로부터 전송되는 상기 방송 데이터를 수신하여 할당된 상기 채널을 통해 상기 방송 데이터를 여러 스트림으로 나누어 전송하는 방송 서버; 및It is connected to the producer client through the high-speed communication network, and search for all channels according to the request for the establishment of a broadcast channel of the producer client to allocate an empty channel, manage the channel, update and store new channel information, A broadcast server which receives the broadcast data transmitted from the producer client and divides the broadcast data into several streams through the allocated channel; And 상기 방송 서버와 상기 초고속 통신망을 통해 연결되어 있으며, 상기 방송 서버에 방송참여 요청을 요구하고, 상기 방송 서버로부터 전송되는 상기 방송 데이터를 디코딩하여 원래의 데이터로 복원하고, 복원된 데이터를 재생하여 시청하는시청자 클라이언트를 포함하는 시스템.The broadcast server is connected to the broadcast server through the high-speed communication network, requests a broadcast participation request from the broadcast server, decodes the broadcast data transmitted from the broadcast server, restores the original data, and plays the restored data. A system comprising a viewer client. 제12항에 있어서, 상기 제작자 클라이언트는The method of claim 12, wherein the producer client 동영상 데이터를 재생하는 동영상 플레이어, 정지영상을 재생하는 윈도우 화면 및 응용 프로그램, 오디오 데이터를 재생하는 오디오 플레이어를 포함하며, 방송하고자 하는 비디오 스트림 데이터와 오디오 스트림 데이터를 생성하는 데이터 생성부;A data generator for generating a video stream data and audio stream data to be broadcasted, including a video player for playing video data, a window screen and an application for playing still images, and an audio player for playing audio data; 상기 데이터 생성부에 연결되어 있으며, 동영상 데이터를 캡쳐하는 동영상 데이터 캡쳐부, 정지영상을 캡쳐하는 정지화면 데이터 캡쳐부 및 오디오 데이터를 캡쳐하는 오디오 데이터 캡쳐부를 포함하며, 상기 데이터 생성부에서 생성된 상기 비디오 스트림 데이터 및 오디오 스트림 데이터를 캡쳐하는 데이터 캡쳐부;A video data capture unit that captures video data, a still image data capture unit that captures still images, and an audio data capture unit that captures audio data; A data capture unit for capturing video stream data and audio stream data; 상기 데이터 캡쳐부에 연결되어 있으며, 비디오 데이터를 압축하는 비디오 데이터 인코더 및 오디오 데이터를 압축하는 오디오 데이터 인코더를 포함하며, 상기 데이터 캡쳐부에 의해 캡쳐된 비디오 및 오디오 데이터를 용이하게 전송하기 위해 압축하는 인코딩부; 및A video data encoder coupled to the data capture unit and an audio data encoder for compressing video data and an audio data encoder for compressing audio data, the video data encoder compressing the video and audio data captured by the data capture unit for easy transmission. An encoding unit; And 상기 인코딩부에 연결되어 있으며, 상기 인코딩부에서 압축된 데이터를 상기 방송 서버로 전송하는 수신부를 포함하는 시스템.And a receiver connected to the encoder and transmitting the data compressed by the encoder to the broadcast server. 제12항에 있어서, 상기 초고속 통신망은 T1, T2, T3을 포함하는 전용회선, 케이블 통신망, ADSL, ISDN 및 PSTN 중 어느 하나를 사용하는 인터넷인 시스템.The system of claim 12, wherein the high speed communication network is a dedicated line including T1, T2, and T3, a cable communication network, and an Internet using any one of ADSL, ISDN, and PSTN. 제12항에 있어서, 상기 방송 데이터는 비디오 데이터, 오디오 데이터 및 텍스트 데이터를 포함하는 시스템.13. The system of claim 12, wherein the broadcast data includes video data, audio data and text data. 제12항에 있어서, 상기 방송채널 신청항목은 개설자 이름, 방송제목, 공개여부, 참가인원 제한, 방송창 크기 및 방송의 간단한 설명을 포함하는 시스템.The system of claim 12, wherein the broadcast channel application item includes a founder's name, a broadcast title, visibility, a limited number of participants, a broadcast window size, and a brief description of the broadcast. 제13항에 있어서,The method of claim 13, 상기 제작자 클라이언트의 현재 상태 영상 데이터를 촬영하는 카메라; 및A camera for capturing current state image data of the producer client; And 상기 제작자 클라이언트의 음성을 캡쳐하는 마이크를 더 포함하는 시스템.And a microphone for capturing voice of the producer client. 제13항에 있어서, 상기 인코딩부에서 사용하는 압축방식은 MPEG, H.263 및 H.26L 중 어느 하나의 방식을 사용하는 시스템.The system of claim 13, wherein the compression scheme used by the encoding unit uses any one of MPEG, H.263, and H.26L. 제13항에 있어서, 상기 데이터 캡쳐부는 상기 방송 서버에서 제공되는 방송용 클라이언트 프로그램을 이용하여 캡쳐하고,The method of claim 13, wherein the data capture unit captures data using a broadcast client program provided by the broadcast server. 상기 카메라를 통해 촬영된 비디오 및 오디오 데이터뿐만 아니라 상기 제작자 클라이언트의 컴퓨터에 내장된 동영상, 정지화면 또는 오디오 데이터를 캡쳐하여 방송하는 시스템.A system for capturing and broadcasting video, still image, or audio data embedded in a computer of the producer client as well as video and audio data captured by the camera. 제17항에 있어서, 상기 카메라는 웹 카메라, CCTV, 베타캠, 디지털 비디오 카메라, 캠코더 중 어느 하나를 사용하는 시스템.The system of claim 17, wherein the camera uses any one of a web camera, a CCTV, a betacam, a digital video camera, and a camcorder. 제12항에 있어서, 상기 방송 서버는The method of claim 12, wherein the broadcast server 상기 제작자 클라이언트 및 상기 시청자 클라이언트와 초고속 통신망을 통해 연결되어 있고, 상기 제작자 클라이언트 또는 시청자 클라이언트로부터 전송되는 URL형식의 정보검색요청을 처리하는 서버 프로그램과 인터넷 사용자의 정보요구를 처리하기 위하여 서버-클라이언트 상호작용을 지원하는 처리 프로그램을 포함하며, 상기 제작자 클라이언트의 방송채널 개설 요청이 수신되면 인터넷 방송을 제작하기 위한 방송용 클라이언트 프로그램을 상기 제작자 클라이언트에게 제공하는 웹서버;A server program that is connected to the producer client and the viewer client through a high-speed communication network, and processes a server program for processing an information request of an Internet user and a server program for processing an information search request in a URL format transmitted from the producer client or the viewer client. A web server including a processing program supporting an operation, and providing a broadcast client program for producing an Internet broadcast to the producer client when a broadcast channel establishment request of the producer client is received; 상기 웹서버와 상호 연결되어 있으며, 상기 제작자 클라이언트의 채널 개설 요청에 따라 유닛의 빈 채널을 검색하여 해당 채널을 할당해 주고, 상기 시청자 클라이언트의 방송채널 참여 요청에 따라 해당 채널로 상기 시청자 클라이언트를 연결시켜 주고, 방송 채널의 전반적인 관리, 유닛 감시, 부하 분산, 로그 처리, 원격관리 처리, 채널 정보 백업과 같은 기능을 수행하는 연결 제어부;It is interconnected with the web server, searches for an empty channel of a unit according to a channel opening request of the producer client, allocates a corresponding channel, and connects the viewer client to the corresponding channel according to a request for participation of a broadcasting channel of the viewer client. A connection controller for performing functions such as overall management of a broadcast channel, unit monitoring, load balancing, log processing, remote management processing, and channel information backup; 상기 연결 제어부와 상호 연결되어 있으며, 채널과 그룹에 관한 각종 정보를 저장하는 데이터베이스;A database which is interconnected with the connection control unit and stores various information about channels and groups; 상기 연결 제어부와 상호 연결되어 있으며, 상기 제작자 클라이언트가 방송하고자 하는 상기 방송 데이터를 수신하여 채널별로 할당해 주고, 각 채널의 정보를 수집하여 상기 연결 제어부로 전송하는 유닛; 및A unit which is interconnected with the connection controller, receives the broadcast data to be broadcasted by the producer client, allocates the broadcast data for each channel, collects information of each channel, and transmits the information to each connection controller; And 상기 유닛에 연결되어 있고, 상기 유닛을 통해 전송되는 상기 방송 데이터를 상기 시청자 클라이언트로 전송하는 송신부를 포함하는 시스템.And a transmitter, coupled to the unit, for transmitting the broadcast data transmitted through the unit to the viewer client. 제21항에 있어서, 상기 유닛은 다수개의 그룹으로 이루어져 있으며, 그 그룹은 상기 제작자 클라이언트와 상기 시청자 클라이언트 모두를 포함하는 분배 주서버 프로세서와 상기 시청자 클라이언트만을 포함하는 분배 부서버 프로세서로 이루어져 있으며, 상기 채널 정보를 상기 연결 제어부로 주기적으로 전송하는 시스템.22. The system of claim 21, wherein the unit is comprised of a plurality of groups, the group comprising a distribution main server processor including both the producer client and the viewer client, and a distribution department processor including only the viewer client. And periodically transmitting channel information to the connection controller. 제22항에 있어서, 상기 분배 부서버 프로세서는 링크된 각 채널의 인원 정보를 상기 연결 제어부로 전송하고,23. The apparatus of claim 22, wherein the distribution server processor transmits personnel information of each linked channel to the connection controller. 상기 연결 제어부는 상기 확장된 채널을 검색하여 링크된 여러 채널 중에서 마지막 채널의 참여 인원수를 파악하고, 마지막 채널에 참여 인원수가 없고 상기 마지막 채널 앞에 링크된 채널에 참여 인원수의 여유가 있는 상태이면 상기 마지막 채널을 채널 리스트로부터 제거하는 시스템.The connection controller detects the number of participants of the last channel among the linked channels by searching the extended channel, and if the number of participants is not present in the last channel and there is a margin of the number of participants in the channel linked in front of the last channel, System that removes a channel from the channel list. 제21항 또는 제22항에 있어서, 상기 유닛은 그룹으로 구성되어 있고, 상기 채널은 하나 이상의 그룹으로 구성되는 시스템.23. The system of claim 21 or 22, wherein said units are organized into groups and said channels are organized into one or more groups. 제21항에 있어서, 상기 데이터베이스에 저장되는 채널과 그룹에 관한 정보는 채널 공간 정보, 참여 인원 정보, 그룹별 연관관계 정보 등을 포함하고, 상기 채널과 그룹에 관한 정보는 변환 테이블 형식으로 저장되는 시스템.22. The method of claim 21, wherein the information about the channel and the group stored in the database includes channel space information, participant information, association information for each group, etc., and the information about the channel and the group is stored in a conversion table format. system.
KR10-2002-7007560A 2000-02-29 2001-02-27 Distributed internet broadcasting method and system using camera and screen capture KR100384757B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020000010262 2000-02-29
KR1020000010262A KR20010085150A (en) 2000-02-29 2000-02-29 Distributed internet broadcasting system using camera and screen capture

Publications (2)

Publication Number Publication Date
KR20020073346A true KR20020073346A (en) 2002-09-23
KR100384757B1 KR100384757B1 (en) 2003-05-22

Family

ID=19651354

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020000010262A KR20010085150A (en) 2000-02-29 2000-02-29 Distributed internet broadcasting system using camera and screen capture
KR10-2002-7007560A KR100384757B1 (en) 2000-02-29 2001-02-27 Distributed internet broadcasting method and system using camera and screen capture

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020000010262A KR20010085150A (en) 2000-02-29 2000-02-29 Distributed internet broadcasting system using camera and screen capture

Country Status (4)

Country Link
JP (1) JP3851975B2 (en)
KR (2) KR20010085150A (en)
AU (1) AU2001237749A1 (en)
WO (1) WO2001065396A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101381661B1 (en) * 2013-04-03 2014-04-14 주식회사 우정아이티에스 Snap image transferring system in broadcasting streaming and snap image transferring method of using the same
KR20150080903A (en) * 2014-01-02 2015-07-10 유비투스 인코포레이션 System and method for transmitting media over the network

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000030425A (en) * 2000-02-29 2000-06-05 원종호 Real time internet broadcasting system and broadcating method using the same
JP2003091647A (en) * 2001-09-18 2003-03-28 Sony Corp Information processing device, information list drawing- up method and program, and recording medium storing information list drawing-up program
KR20030042657A (en) * 2001-11-23 2003-06-02 서경필 Internet real time and reserved telerecording/broadcasting automatic system
KR20040000608A (en) * 2002-06-21 2004-01-07 (주)하이얼핸즈 business model for internet broadcast staion through the mp3 files by winamp solution with exclusive multimedia-server, and information giving by moving and cyber-gallery
KR20040032011A (en) * 2002-10-08 2004-04-14 지유소프트 주식회사 The Multicasting Algorithm and System for Streaming Data Transmission on P2P Network
AT414292B (en) * 2002-10-18 2006-11-15 Iines Innovative Engineering S METHOD FOR TRANSMITTING AUDIO AND VIDEO STREAMS VIA THE INTERNET BETWEEN MULTIPLE SOURCES OF DATA AND A DATA RATE
FR2862834B1 (en) * 2003-11-25 2006-03-10 Sagem VIDEO-PROJECTION METHOD AND DEVICE
US8660861B2 (en) 2012-01-24 2014-02-25 Fmr Llc Allocation of financial incentives for employee wellness programs
KR102049499B1 (en) * 2017-02-10 2020-01-08 주식회사 시어스랩 Live streaming image generating method and apparatus, live streaming service providing method and apparatus, live streaming system
CN114095108B (en) * 2021-10-09 2023-05-30 福建新大陆通信科技股份有限公司 Intelligent broadcasting method applied to client

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5778187A (en) * 1996-05-09 1998-07-07 Netcast Communications Corp. Multicasting method and apparatus
US5991799A (en) * 1996-12-20 1999-11-23 Liberate Technologies Information retrieval system using an internet multiplexer to focus user selection
TW315560B (en) * 1997-03-04 1997-09-11 Eten Information System Co Ltd Real-time broadcasting system on internet
JPH11316761A (en) * 1998-04-30 1999-11-16 Nippon Telegr & Teleph Corp <Ntt> Mass media content distributing device, and device and system for broadcast prereception type cache server

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101381661B1 (en) * 2013-04-03 2014-04-14 주식회사 우정아이티에스 Snap image transferring system in broadcasting streaming and snap image transferring method of using the same
KR20150080903A (en) * 2014-01-02 2015-07-10 유비투스 인코포레이션 System and method for transmitting media over the network

Also Published As

Publication number Publication date
WO2001065396A1 (en) 2001-09-07
JP3851975B2 (en) 2006-11-29
KR100384757B1 (en) 2003-05-22
JP2003525559A (en) 2003-08-26
AU2001237749A1 (en) 2001-09-12
WO2001065396A8 (en) 2001-11-22
KR20010085150A (en) 2001-09-07

Similar Documents

Publication Publication Date Title
JP6404912B2 (en) Live broadcasting system
EP1472871B1 (en) Remote server switching of video streams
CN1819559B (en) Multicast distribution of streaming multimedia content
US7068596B1 (en) Interactive data transmission system having staged servers
CN100385424C (en) Information processing apparatus and content information processing method
CN103067776B (en) Program push method, system and intelligent display device, cloud server
US20090089846A1 (en) System and method providing enhanced features for streaming video-on-demand
US20070180135A1 (en) Multimedia content exchange architecture and services
CN106534916B (en) A kind of video living transmission system for cafe environment based on three layers of service device framework
US20070067818A1 (en) Means and method for mobile television
JP2001507533A (en) Interactive audiovisual programs
JP6719166B2 (en) Live broadcasting system
KR100384757B1 (en) Distributed internet broadcasting method and system using camera and screen capture
CN100438621C (en) Method for managing system of living broadcast of programs
JP2005198313A (en) Digital real-time interactive program system
JP3789854B2 (en) Live distribution server and live distribution method
CN106817628A (en) A kind of network direct broadcasting platform
JP2001148841A (en) Method and system for forming television community
KR100393417B1 (en) Method for internet web broadcasting performance in local performing place and apparatus therefor
KR102163695B1 (en) Method for providing real-time engaging streaming service over internet and apparatus therefor
KR20020078320A (en) Apparatus providing of broadcast contents from user to user using the inernet and method thereof
WO2001018658A1 (en) Method and apparatus for sending slow motion video-clips from video presentations to end viewers upon request
CN108668140B (en) Audio and video interaction state synchronization method and device
CN108377397A (en) A method of realizing that networked video is interactive based on camera
KR20090040107A (en) Method for real-time personal broadcasting

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
G15R Request for early opening
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
J204 Request for invalidation trial [patent]
J301 Trial decision

Free format text: TRIAL DECISION FOR INVALIDATION REQUESTED 20061109

Effective date: 20070810

J2X1 Appeal (before the patent court)

Free format text: INVALIDATION

J122 Written withdrawal of action (patent court)
FPAY Annual fee payment

Payment date: 20090220

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee