KR20060013317A - System for providing joint viewing service of moving picture - Google Patents

System for providing joint viewing service of moving picture Download PDF

Info

Publication number
KR20060013317A
KR20060013317A KR1020040071274A KR20040071274A KR20060013317A KR 20060013317 A KR20060013317 A KR 20060013317A KR 1020040071274 A KR1020040071274 A KR 1020040071274A KR 20040071274 A KR20040071274 A KR 20040071274A KR 20060013317 A KR20060013317 A KR 20060013317A
Authority
KR
South Korea
Prior art keywords
broadcast
client
broadcaster
information
server
Prior art date
Application number
KR1020040071274A
Other languages
Korean (ko)
Inventor
문규동
Original Assignee
엔에이치엔(주)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엔에이치엔(주) filed Critical 엔에이치엔(주)
Priority to KR1020040071274A priority Critical patent/KR20060013317A/en
Publication of KR20060013317A publication Critical patent/KR20060013317A/en

Links

Images

Classifications

    • 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/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/29Arrangements for monitoring broadcast services or broadcast-related services
    • 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/21Server components or server architectures
    • H04N21/226Characteristics of the server or Internal components of the server
    • 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/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • H04N21/4351Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream involving reassembling additional data, e.g. rebuilding an executable program from recovered modules

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Health & Medical Sciences (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

본 발명은 개인 방송 시스템에 관한 것으로서, 본 발명에 의한 시스템은, 방송 프로그램이 설치되어 있는 방송자 또는 청취자 클라이언트로부터 방송 서버 할당 요청 정보를 수신하여 접속할 방송 서버의 주소 정보를 방송자 또는 청취자 클라이언트에 제공하는 정보관리서버; 방송자 클라이언트 또는 청취자 클라이언트의 접속 요청 정보에 응답하여 커넥션을 설정하고, 방송자 클라이언트가 전송하는 방송 스트림 데이터를 해당 청취자 클라이언트에 전송하는 방송 서버; 방송자 클라이언트 또는 청취자 클라이언트가 방송 서버에 접속하거나 접속을 해제할 경우 상기 방송 서버로부터 상태 정보를 수신하여 저장하는 데이터베이스를 포함하되; 방송자 클라이언트에 설치된 방송 프로그램은 방송자의 영상 데이터 또는 로컬 클라이언트에 저장된 영상 데이터와 방송으로 출력하려는 오디오 데이터를 동기 식별자를 포함하는 프로토콜 패킷으로 변환하여 방송 서버에 전송하고, 청취자 클라이언트에 설치된 방송 프로그램은 상기 프로토콜 패킷으로부터 데이터 신호 및 동기 식별자 정보를 추출하여 오디오 신호 및 영상 신호의 동기를 일치시켜 출력한다. The present invention relates to a personal broadcast system. The system according to the present invention receives broadcast server allocation request information from a broadcaster or listener client provided with a broadcast program, and transmits address information of a broadcast server to a broadcaster or listener client. Providing information management server; A broadcast server for establishing a connection in response to the connection request information of the broadcaster client or the listener client and transmitting broadcast stream data transmitted from the broadcaster client to the corresponding listener client; A database for receiving and storing state information from the broadcast server when the broadcaster client or the listener client connects to or disconnects from the broadcast server; The broadcast program installed in the broadcaster client converts the video data of the broadcaster or the video data stored in the local client and the audio data to be output to the broadcast into a protocol packet including a synchronization identifier, and transmits it to the broadcast server. Data signal and sync identifier information are extracted from the protocol packet, and the audio signal and the video signal are synchronized and output.

동기, 방송서버, 영상, 윈앰프Synchronous, Broadcast Server, Video, Winamp

Description

개인 방송 시스템{System for Providing Joint Viewing Service of Moving Picture} Personal broadcasting system {System for Providing Joint Viewing Service of Moving Picture}             

도 1a는 종래 방송 시스템의 일례를 도시한 도면.1A is a diagram showing an example of a conventional broadcast system.

도 1b는 종래의 또 다른 방송 시스템의 일례를 도시한 도면.1B is a view showing an example of another conventional broadcast system.

도 2는 본 발명의 바람직한 일 실시예에 따른 개인 방송 시스템의 구성을 도시한 도면.2 is a diagram illustrating a configuration of a personal broadcasting system according to an exemplary embodiment of the present invention.

도 3a는 본 발명의 바람직한 일 실시예에 따른 청취자 및 방송자 클라이언트에 설치되는 전용 프로그램의 모듈 구성을 도시한 도면.3A is a diagram illustrating a module configuration of a dedicated program installed in a listener and a broadcaster client according to an exemplary embodiment of the present invention.

도 3b는 본 발명의 바람직한 일 실시예에 따른 방송 송신 모듈의 구성을 도시한 블록도.3B is a block diagram showing the configuration of a broadcast transmission module according to an embodiment of the present invention.

도 3c는 본 발명의 바람직한 일 실시예에 따른 방송 수신 모듈의 구성을 도시한 블록도.3C is a block diagram illustrating a configuration of a broadcast receiving module according to an embodiment of the present invention.

도 4는 본 발명의 바람직한 일 실시예에 따른 방송 서버의 모듈 구성을 도시한 블록도.4 is a block diagram showing the module configuration of a broadcast server according to an embodiment of the present invention.

도 5는 본 발명의 바람직한 일 실시예에 따른 방송자 클라이언트가 접속할 방송 서버를 할당받는 과정을 도시한 도면. 5 is a diagram illustrating a process of receiving a broadcast server to which a broadcaster client accesses according to an embodiment of the present invention.                 

도 6은 본 발명의 바람직한 일 실시예에 따른 청취자 클라이언트가 접속할 방송 서버를 할당받는 과정을 도시한 도면.6 is a diagram illustrating a process of receiving a broadcast server to which a listener client connects according to an exemplary embodiment of the present invention.

도 7a 및 도 7b는 동기/프로토콜 변환 모듈에서 변환하는 패킷의 구성을 도시한 도면.7A and 7B are diagrams showing the configuration of a packet to be converted by the synchronization / protocol conversion module.

도 8은 본 발명에 의한 방송 시스템을 이용하여 방송 데이터와 외부 데이터를 동기화하는 시스템의 구성을 도시한 도면.
8 is a diagram showing the configuration of a system for synchronizing broadcast data and external data using a broadcast system according to the present invention;

본 발명은 개인 방송 시스템에 관한 것으로서, 더욱 상세하게는 음성 및 영상을 청취자에게 동시에 제공할 수 있는 개인 방송 시스템 및 방법에 관한 것이다. The present invention relates to a personal broadcast system, and more particularly, to a personal broadcast system and method capable of simultaneously providing audio and video to a listener.

도 1a는 종래 방송 시스템의 일례를 도시한 도면이다. 1A is a diagram illustrating an example of a conventional broadcast system.

도 1a에 도시된 바와 같이, 종래의 방송 시스템은 청취자 클라이언트(102) 및 방송자 클라이언트(100)가 인터넷과 같은 유선 네트워크를 통해 연결되어 있다. As shown in FIG. 1A, in the conventional broadcast system, the listener client 102 and the broadcaster client 100 are connected through a wired network such as the Internet.

종래에 있어서, 방송자 클라이언트(100)에는 음악 및 방송자의 멘트를 송출하기 위한 프로그램과 방송 스트림을 청취자에게 전송하기 위한 샤우트캐스트 서버 프로그램이 설치된다. 음악 및 방송자의 멘트를 송출하는 프로그램으로 대부분 윈앰프가 사용된다. In the related art, the broadcaster client 100 is provided with a program for transmitting music and a comment of a broadcaster and a shoutcast server program for transmitting a broadcast stream to the listener. As a program for transmitting music and broadcasters' comments, most of them use Winamp.

도 1a의 시스템에서 방송자 클라이언트(100)에 샤우트캐스트 서버 프로그램 이 설치되기 때문에 방송자 클라이언트가 방송 서버로서의 역할을 하게 된다. 방송자가 출력하는 음악 및 멘트는 윈앰프에 의해 합성되고, 합성된 오디오 신호는 샤우트캐스트 프로그램의 제어에 의해 네트워크로 송출된다. Since the shoutcast server program is installed in the broadcaster client 100 in the system of FIG. 1A, the broadcaster client serves as a broadcast server. The music and the words output by the broadcaster are synthesized by the winamp, and the synthesized audio signal is transmitted to the network under the control of the shoutcast program.

청취자 클라이언트(102)에는 방송 스트림을 수신하여 출력하기 위한 프로그램이 설치되며, 이 프로그램으로도 대부분 윈앰프가 사용된다. The listener client 102 is provided with a program for receiving and outputting a broadcast stream, and most of these programs use a winamp.

도 1a와 같은 시스템에서, 청취자 클라이언트가 방송자 클라이언트에 접속하려면 방송자 클라이언트의 IP 주소 및 포트 번호를 알아야 한다. 따라서, 청취가 원하는 방송자를 찾아 방송을 청취하는 것이 번거로운 면이 있으며, 방송자 입장에서도 효과적인 홍보를 할 수 없는 문제점이 있었다. 특히, 방송자가 유동 IP를 사용하는 경우, 방송할 때마다 IP 주소가 바뀌므로, 계속적으로 갱신된 IP를 알려야하는 번거로움이 있었다. In a system such as FIG. 1A, the listener client needs to know the IP address and port number of the broadcaster client to access the broadcaster client. Therefore, it is troublesome to find a broadcaster who wants to listen to the broadcast, and there is a problem in that the public cannot be effectively promoted. In particular, when a broadcaster uses a dynamic IP, the IP address changes every time it broadcasts, and there is a hassle to inform the updated IP continuously.

또한, 방송자 클라이언트가 방송 서버로서의 역할을 함께 하기 때문에, 대역폭의 한계로 인해 많은 청취자가 동시에 방송을 청취할 수 없는 문제점이 있었다. In addition, since the broadcaster client plays a role as a broadcast server, there is a problem that many listeners cannot simultaneously listen to the broadcast due to the limitation of bandwidth.

도 1b는 종래의 또 다른 방송 시스템의 일례를 도시한 도면이다. 1B is a diagram illustrating an example of another conventional broadcast system.

도 1b에 도시된 바와 같은 종래의 다른 방송 시스템은 방송자 클라이언트(110), 정보관리서버(112), 샤우트캐스트 서버(114) 및 청취자 클라이언트(116)를 포함한다. 도 1b는 도1a의 시스템을 개선한 시스템으로서, 방송자 클라이언트(110)로부터 출력되는 방송 스트림 데이터는 별도의 샤우트캐스트 서버(114)를 통해 청취자 클라이언트(116)로 전송된다. Another conventional broadcast system as shown in FIG. 1B includes a broadcaster client 110, an information management server 112, a shoutcast server 114, and a listener client 116. FIG. 1B is an improved system of FIG. 1A, in which broadcast stream data output from the broadcaster client 110 is transmitted to a listener client 116 through a separate shoutcast server 114.

도 1a의 경우, 방송자 클라이언트가 샤우트캐스트 서버로서의 역할을 함께 하기 때문에, 많은 청취자의 방송 요청을 수용할 수 없는 문제점이 있었다. 따라서, 도 1b의 시스템에서, 별도의 샤우트캐스트 서버(114)가 구비된다. 도1b의 시스템은 비교적 높은 대역폭을 가지는 샤우트캐스트 서버(114)가 방송 스트림을 중계하므로 도 1a의 시스템보다 많은 청취자를 수용할 수 있다. In the case of FIG. 1A, since a broadcaster client plays a role as a shoutcast server, there is a problem in that a broadcast request of many listeners cannot be accommodated. Thus, in the system of FIG. 1B, a separate shoutcast server 114 is provided. The system of FIG. 1B can accommodate more listeners than the system of FIG. 1A because the shoutcast server 114 with a relatively high bandwidth relays the broadcast stream.

도 1b의 시스템에서, 방송자 클라이언트에는 방송 스트림 송출을 위한 윈앰프가 설치되며, 샤우트캐스트 서버(114)와의 연동을 위한 플러그인 프로그램이 설치된다. In the system of FIG. 1B, a broadcaster client is provided with a winamp for broadcasting a broadcast stream, and a plug-in program for interworking with the shoutcast server 114 is installed.

정보관리서버(112)는 방송자 클라이언트들의 방송 개설 정보들을 샤우트캐스트 서버(114)와의 통신을 통해 다른 사용자들에게 제공한다. 청취자 클라이언트(116)는 정보관리서버(112)에 접속하여, 방송을 하고 있는 방송자들의 정보를 확인할 수 있으며, 원하는 방송자가 방송을 하고 있는 샤우트캐스트 서버(114)에 접속하여 방송 스트림을 수신할 수 있다. 도 1a의 경우와는 달리, 정보관리서버에서 방송자에 대한 정보를 제공하므로, 청취자는 방송자 클라이언트의 IP 주소 및 포트 번호를 모르더라도 방송 서비스를 제공받을 수 있다. The information management server 112 provides the broadcast establishment information of the broadcaster clients to other users through communication with the shoutcast server 114. The listener client 116 may access the information management server 112 to check the information of the broadcasters, and the desired broadcaster may access the shoutcast server 114 to receive the broadcast stream. Can be. Unlike the case of FIG. 1A, since the information management server provides information about the broadcaster, the listener can receive the broadcast service even if the IP address and port number of the broadcaster client are not known.

방송자 클라이언트(110) 및 청취자 클라이언트(116)에는 방송 스트림의 송신 또는 수신을 위한 윈앰프 프로그램이 설치된다. The broadcaster client 110 and the listener client 116 are provided with a winamp program for transmitting or receiving a broadcast stream.

위와 같은 종래의 방송 시스템들은 방송용 프로그램으로 윈앰프를 사용한다. 그러나, 윈앰프는 오디오 신호만을 제공할 뿐 영상 신호를 방송 신호로 제공하지 못하는 바, 방송자의 음성 및 방송자가 제공하는 음악을 들을 수 있을 뿐이었다. 최근 웹 카메라의 사용이 증가되고 있으며, 방송자의 영상 정보도 방송으로 제공하 고자 하는 요구가 증가하고 있으나, 종래의 윈앰프 프로그램 및 샤우트캐스트 서버로는 이러한 요구를 수용할 수 없는 문제점이 있었다. Conventional broadcast systems as described above use the Winamp as a broadcast program. However, the Winamp not only provided an audio signal but also provided an image signal as a broadcast signal, and thus could only listen to the broadcaster's voice and music provided by the broadcaster. Recently, the use of web cameras is increasing, and the demand for providing broadcaster's image information is also increasing. However, there is a problem that conventional winamp programs and shoutcast servers cannot accommodate such a request.

또한, 원할한 방송을 위해 부하가 적은 샤우트캐스트 서버에 방송자를 적절히 할당하는 것이 중요한데, 종래의 샤우트캐스트 서버는 상태 정보를 실시간으로 제공하지 않아 정보관리서버가 샤우트캐스트 서버와의 통신을 통해 상태 정보를 판단하였던 바 원할한 방송자 할당이 이루어질 수 없는 문제점이 있었다.
In addition, it is important to properly assign a broadcaster to a low-loading shoutcast server for smooth broadcasting. Conventional shoutcast servers do not provide status information in real time, so the information management server communicates with the shoutcast server. As a result of determining the problem, there was a problem in that no broadcaster assignment could be made.

본 발명에서는 상기한 바와 같은 종래 기술의 문제점을 해결하기 위해, 음성 및 영상을 동시에 제공할 수 있는 개인 방송 시스템을 제안하는 것이다. In order to solve the problems of the prior art as described above, the present invention proposes a personal broadcasting system capable of simultaneously providing audio and video.

본 발명의 다른 목적은 음성 및 영상의 동기를 일치시켜 방송으로 제공할 수 있는 개인 방송 시스템을 제안하는 것이다. Another object of the present invention is to propose a personal broadcasting system capable of providing broadcasting by synchronizing audio and video synchronization.

본 발명의 또 다른 목적은 방송 서버의 상태 정보를 실시간으로 갱신하여 방송자에게 보다 방송 서버를 보다 효율적으로 할당할 수 있는 개인 방송 시스템을 제안하는 것이다.
It is still another object of the present invention to propose a personal broadcasting system capable of more efficiently allocating a broadcast server to a broadcaster by updating state information of the broadcast server in real time.

상기한 바와 같은 목적을 달성하기 위하여, 본 발명의 바람직한 일 실시예에 따르면, 방송 프로그램이 설치되어 있는 방송자 또는 청취자 클라이언트로부터 방송 서버 할당 요청 정보를 수신하여 접속할 방송 서버의 주소 정보를 방송자 또는 청취자 클라이언트에 제공하는 정보관리서버; 방송자 클라이언트 또는 청취자 클라이언트의 접속 요청 정보에 응답하여 커넥션을 설정하고, 방송자 클라이언트가 전송하는 방송 스트림 데이터를 해당 청취자 클라이언트에 전송하는 방송 서버; 방송자 클라이언트 또는 청취자 클라이언트가 방송 서버에 접속하거나 접속을 해제할 경우 상기 방송 서버로부터 상태 정보를 수신하여 저장하는 데이터베이스를 포함하되; 방송자 클라이언트에 설치된 방송 프로그램은 방송자의 영상 데이터 또는 로컬 클라이언트에 저장된 영상 데이터와 방송으로 출력하려는 오디오 데이터를 동기 식별자를 포함하는 프로토콜 패킷으로 변환하여 방송 서버에 전송하고, 청취자 클라이언트에 설치된 방송 프로그램은 상기 프로토콜 패킷으로부터 데이터 신호 및 동기 식별자 정보를 추출하여 오디오 신호 및 영상 신호의 동기를 일치시켜 출력하는 것을 특징으로 하는 개인 방송 시스템이 제공된다. In order to achieve the above object, according to a preferred embodiment of the present invention, the broadcaster or the broadcaster to the address information of the broadcast server to be accessed by receiving the broadcast server allocation request information from the broadcaster or listener client is installed, the broadcaster or An information management server provided to the listener client; A broadcast server for establishing a connection in response to the connection request information of the broadcaster client or the listener client and transmitting broadcast stream data transmitted from the broadcaster client to the corresponding listener client; A database for receiving and storing state information from the broadcast server when the broadcaster client or the listener client connects to or disconnects from the broadcast server; The broadcast program installed in the broadcaster client converts the video data of the broadcaster or the video data stored in the local client and the audio data to be output to the broadcast into a protocol packet including a synchronization identifier, and transmits it to the broadcast server. There is provided a personal broadcasting system, which extracts data signal and sync identifier information from the protocol packet, and outputs the same synchronization of the audio signal and the video signal.

본 발명의 다른 실시예에 따르면, 방송자 스트림을 전송하는 방송자 클라이언트, 방송 스트림을 수신하는 청취자 클라이언트, 방송자 클라이언트와 청취자 클라이언트 사이에서 방송 스트림을 중계하는 방송 서버 및 정보관리서버로 이루어진 시스템에서 상기 방송자 클라이언트 및 청취자 클라이언트에 설치되는 개인 방송용 프로그램에 있어서, 상기 정보관리서버로부터 할당 받은 방송 서버의 주소 정보를 이용하여 해당 방송 서버로의 접속을 수행하는 접속 모듈; 방송될 오디오 신호 및 영상 신호에 동기 식별자를 부여하고, 상기 동기 식별자를 포함하는 미리 설정된 프로토콜 패킷을 생성하여 방송 서버에 전송하는 방송 송신 모듈; 상기 방송 서버를 통해 수신되는 상기 프로토콜 패킷들로부터 오디오 신호 및 영상 신호를 분리하 고, 분리된 신호에서 데이터 신호와 동기 식별자 정보를 추출하여 동기 식별자 정보에 상응하여 오디오 신호 및 영상 신호가 출력되도록 동기화를 제어하는 방송 수신 모들을 포함하는 개인 방송용 프로그램이 제공된다.
According to another embodiment of the present invention, a system comprising a broadcaster client for transmitting a broadcaster stream, a listener client for receiving the broadcast stream, a broadcast server for relaying the broadcast stream between the broadcaster client and the listener client, and an information management server. A personal broadcasting program installed in the broadcaster client and the listener client, comprising: an access module for accessing the broadcast server using address information of the broadcast server allocated from the information management server; A broadcast transmission module for assigning a synchronization identifier to an audio signal and a video signal to be broadcast, generating a preset protocol packet including the synchronization identifier, and transmitting the same to a broadcast server; The audio signal and the video signal are separated from the protocol packets received through the broadcast server, the data signal and the sync identifier information are extracted from the separated signal, and the audio signal and the video signal are synchronized according to the sync identifier information. There is provided a program for personal broadcasting including broadcast receiving modules for controlling.

이하에서, 첨부된 도면을 참조하여 본 발명에 의한 개인 방송 시스템의 바람직한 실시예를 상세하게 설명한다. Hereinafter, with reference to the accompanying drawings will be described in detail a preferred embodiment of a personal broadcast system according to the present invention.

도 2는 본 발명의 바람직한 일 실시예에 따른 개인 방송 시스템의 구성을 도시한 도면이다. 2 is a diagram illustrating a configuration of a personal broadcasting system according to an exemplary embodiment of the present invention.

도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 개인 방송 시스템은 방송 서버(200), 방송자 클라이언트(202), 상태 정보 데이터베이스(204), 정보관리서버(206) 및 청취자 클라이언트(208)를 포함할 수 있다. As shown in FIG. 2, a personal broadcasting system according to an exemplary embodiment of the present invention includes a broadcast server 200, a broadcaster client 202, a state information database 204, an information management server 206, and a listener client ( 208).

도 2에서, 정보관리서버(206)는 방송자로부터 방송 요청 정보를 수신할 경우, 방송자가 접속할 수 있는 방송 서버를 상태 정보 데이터베이스(204)에서 검색하여 접속할 방송 서버의 주소 정보를 제공한다. In FIG. 2, when receiving the broadcast request information from the broadcaster, the information management server 206 searches the state information database 204 for a broadcast server to which the broadcaster can access and provides address information of the broadcast server to be connected.

또한, 청취자로부터 방송 청취 요청 정보를 수신할 경우, 정보관리서버(206)는 상태 정보 데이터베이스를 검색하여 사용자가 요청한 방송이 제공되는 방송 서버의 주소 정보를 제공한다. In addition, when receiving broadcast listening request information from a listener, the information management server 206 searches the state information database and provides address information of a broadcast server provided with a broadcast requested by the user.

방송자 클라이언트는 정보관리서버(206)에 방송 요청 정보를 전송하여 접속할 방송 서버 주소 정보를 수신하며, 해당 방송 서버를 통해 방송 신호를 송출한다. The broadcaster client transmits broadcast request information to the information management server 206 to receive broadcast server address information to be connected, and transmits a broadcast signal through the broadcast server.                     

정보 관리 서버는 방송자 또는 청취자가 방송 서비스를 요청할 수 있는 웹페이지를 제공할 수도 있으며, 웹페이지는 다른 정보관리서버에 의해 제공될 수도 있다. 또한, 방송 요청을 위한 인터페이스는 웹페이지가 아닌 다른 형식으로, 예를 들어 전용 프로그램과 같은 형식으로 사용자에게 제공될 수도 있을 것이다. 웹페이지에는 방송을 요청하거나 방송의 청취를 요청할 수 있는 메뉴가 구비되며, 해당 메뉴를 통해 방송자 또는 청취자는 방송 서비스를 제공받을 수 있다. The information management server may provide a web page from which a broadcaster or listener can request a broadcast service, and the web page may be provided by another information management server. In addition, the interface for the broadcast request may be provided to the user in a format other than a web page, for example, in the form of a dedicated program. The web page includes a menu for requesting a broadcast or for listening to a broadcast, and a broadcaster or a listener can receive a broadcast service through the corresponding menu.

방송자 클라이언트(202)에는 방송 데이터 송출을 위한 프로그램 및 방송 서버와 연동하기 위한 플러그인 프로그램이 설치된다. The broadcaster client 202 is provided with a program for transmitting broadcast data and a plug-in program for interworking with a broadcast server.

종래에 있어서, 방송 프로그램으로 윈앰프가 사용되는 것이 일반적이었으나, 본 발명에서는 음성 및 영상을 동시에 전송할 수 있는 전용 방송 프로그램이 설치된다. 설치된 방송 프로그램은 음성 및 영상 신호에 대한 정보를 포함하는 패킷을 생성하여 방송 서버로 송출한다. 음성 및 영상 신호를 모두 방송 신호로 송출하므로, 방송 프로그램에서 생성하는 패킷 프로토콜 구조는 종래의 윈앰프의 패킷 프로토콜 구조와는 상이하며 이에 대해서는 별도의 도면을 통해 후술하기로 한다. In the past, a win amplifier was generally used as a broadcast program, but in the present invention, a dedicated broadcast program capable of simultaneously transmitting audio and video is provided. The installed broadcast program generates a packet including information on an audio and video signal and transmits the packet to the broadcast server. Since both audio and video signals are transmitted as broadcast signals, the packet protocol structure generated by the broadcast program is different from the packet protocol structure of the conventional winamp, which will be described later with a separate drawing.

또한, 방송 프로그램은 음성 및 영상 신호에 동기 식별자를 부가하는 기능을 한다. 영상 및 음성 신호가 모두 방송 서버를 통해 청취자 클라이언트로 전송이 되더라도 양 신호의 동기가 맞지 않을 경우 영상과 음성이 일관성이 없게 출력된다. 따라서, 방송 프로그램은 동기 식별자를 영상 및 음성 신호에 각각 부가한다. In addition, the broadcast program functions to add a synchronization identifier to audio and video signals. Although both video and audio signals are transmitted to the listener client through the broadcast server, video and audio are inconsistently output when the signals are not synchronized. Therefore, the broadcast program adds a synchronization identifier to the video and audio signals, respectively.

방송 서버(202)는 방송자 클라이언트로부터 제공되는 방송 스트림을 청취자 클라이언트에 제공하는 기능을 한다. 방송 서버는 방송자 클라이언트(200)와 청 취자 클라이언트의 커넥션을 유지하고, 방송 스트림이 안정적으로 청취자 클라이언트에 제공될 수 있도록 한다. The broadcast server 202 functions to provide a broadcast client with a broadcast stream provided from the broadcaster client. The broadcast server maintains a connection between the broadcaster client 200 and the listener client, and enables the broadcast stream to be stably provided to the listener client.

방송 서버(202)에서 방송자와 청취자의 커넥션을 유지하고 스트림을 제공하는 방식은 종래와 다르지 않다. 그러나, 본 발명에 의한 방송 서버(202)는 음성 정보 외에 영상 정보를 함께 방송 스트림 정보로 제공하기 때문에, 종래의 샤우트캐스트 서버가 사용될 수는 없다. 본 발명에 의한 방송 서버는 방송자 클라이언트로부터 전용 프로토콜 방식으로 전송되는 패킷을 분석하여 청취자에게 제공할 수 있는 모듈을 구비하고 있다. The manner in which the broadcast server 202 maintains the connection between the broadcaster and the listener and provides a stream is not different from the conventional method. However, since the broadcast server 202 according to the present invention provides image information in addition to audio information as broadcast stream information, a conventional shoutcast server cannot be used. The broadcast server according to the present invention includes a module capable of analyzing a packet transmitted from a broadcaster client in a dedicated protocol manner and providing the same to a listener.

또한, 본 발명에 의한 방송 서버(200)는 현재의 상태 정보를 상태 정보 데이터베이스에 실시간으로 제공한다. 방송자로부터 방송 요청이 오거나, 청취자로부터 청취 요청 등이 있을 경우, 방송 서버(200)는 요청 정보를 처리함과 동시에 상태 정보 데이터베이스(204)에 상태 변경 정보를 제공한다. In addition, the broadcast server 200 according to the present invention provides the current state information to the state information database in real time. When a broadcast request is received from a broadcaster or a request is received from a listener, the broadcast server 200 processes the request information and provides the state change information to the state information database 204.

종래의 샤우트캐스트 서버가 사용되는 방송 시스템 경우, 샤우트캐스트 서버는 상태 변경 정보를 자체적으로만 관리할 뿐 이를 다른 서버 등에 실시간으로 제공하지 못하였다. 따라서, 종래의 방송 시스템에서 방송 서버를 할당할 경우, 정보관리서버가 샤우트캐스트 서버와의 통신을 통해 상태 정보를 파싱(parsing)하여야 했다. 이와 같은 파싱 작업은 번거로운 절차일뿐만 아니라, 주기적으로 이루어지는 바, 실시간으로 방송 서버의 상태 정보를 파악할 수 없는 문제점이 있었다. 그러나, 본 발명에 의하면, 방송 서버(200)에서 상태 변경 정보를 실시간으로 데이터베이스(204)에 제공하므로 보다 효율적인 방송 서버 할당이 이루어질 수 있다. In a broadcast system using a conventional shoutcast server, the shoutcast server manages state change information only on its own and cannot provide it to other servers in real time. Therefore, when a broadcast server is assigned in a conventional broadcast system, the information management server has to parse state information through communication with a shoutcast server. This parsing operation is not only a cumbersome procedure, but also occurs periodically, there was a problem that can not grasp the state information of the broadcast server in real time. However, according to the present invention, since the broadcast server 200 provides the state change information to the database 204 in real time, more efficient broadcast server allocation can be achieved.                     

상태 정보 데이터베이스(204)에는 관리하는 방송 서버 각각의 상태 정보가 저장된다. 본 발명의 바람직한 일 실시예에 따르면, 상태 정보 데이터베이스(204)는 각 방송 서버별로 개설된 방송국의 수, 각 방송국에 접속한 청취자의 수, 방송 서버에 접속한 총 청취자의 수, 방송자의 정보 등을 관리한다. The state information database 204 stores state information of each broadcast server to be managed. According to a preferred embodiment of the present invention, the state information database 204 includes the number of broadcasting stations established for each broadcasting server, the number of listeners connected to each broadcasting station, the total number of listeners connected to the broadcasting server, the information of broadcasters, and the like. Manage.

청취자 클라이언트(208)는 정보관리서버(206)와의 통신을 통해 원하는 방송자가 방송을 하는 방송 서버에 대한 정보를 수신하고, 해당 방송 서버에 접속하여 방송 스트림을 제공받는다.The listener client 208 receives information about a broadcast server on which a desired broadcaster broadcasts through communication with the information management server 206, and accesses the broadcast server to receive a broadcast stream.

방송자 클라이언트(202)의 경우와 같이, 청취자 클라이언트(208)에는 영상 및 음성을 수신하여 출력할 수 있는 전용 방송 프로그램이 설치된다. 청취자 클라이언트(208)에 설치된 전용 프로그램은 수신한 영상 및 음성 정보의 동기를 맞추어 출력한다. As in the case of the broadcaster client 202, the listener client 208 is provided with a dedicated broadcast program capable of receiving and outputting video and audio. The dedicated program installed in the listener client 208 outputs the synchronized video and audio information in synchronization.

도 3a는 본 발명의 바람직한 일 실시예에 따른 청취자 및 방송자 클라이언트에 설치되는 전용 프로그램의 모듈 구성을 도시한 도면이다. 3A is a diagram illustrating a module configuration of a dedicated program installed in a listener and a broadcaster client according to an exemplary embodiment of the present invention.

본 발명의 일 실시예에 따른 전용 프로그램은 접속 모듈(300), 방송 송신 모듈(302) 및 방송 수신 모듈(304)을 포함할 수 있다. The dedicated program according to an embodiment of the present invention may include a connection module 300, a broadcast transmission module 302, and a broadcast reception module 304.

도 3a에서, 접속 모듈(300)은 방송자 또는 청취자 클라이언트가 정보관리서버로부터 할당받은 방송 서버에 접속하는 기능을 한다. In FIG. 3A, the access module 300 accesses a broadcast server assigned by a broadcaster or a listener client from an information management server.

본 발명의 일 실시예에 따르면, 정보관리서버는 방송 서버의 주소 정보로 방송 서버의 IP 주소 및 포트 번호 정보를 제공하며, 접속 모듈은 이 정보를 이용하여 방송 서버에 접속한다. 즉, 이 경우 방송 서버의 주소 식별 정보로 IP와 포트만 이 사용된다. According to an embodiment of the present invention, the information management server provides IP address and port number information of the broadcast server as address information of the broadcast server, and the access module uses this information to access the broadcast server. That is, in this case, only IP and port are used as address identification information of the broadcast server.

본 발명의 다른 실시예에 따르면, 정보관리서버는 주소 정보로 방송 서버의 IP 주소, 포트 번호 및 MP(Mount Point) 정보를 제공하고, 접속 모듈은 이 정보를 이용하여 방송 서버에 접속한다. 방송 서버의 방송 모듈로 아이스캐스트 방식이 이용될 경우, 포트보다 하위의 식별 수단인 MP 정보가 주소 정보에 포함될 수 있을 것이다. MP 정보를 방송자의 아이디로 할 경우, 방송자의 아이디만으로 방송자가 방송을 하고 있는 주소 정보를 쉽게 알 수 있는 장점이 있다.According to another embodiment of the present invention, the information management server provides IP address, port number and MP (Mount Point) information of the broadcast server as address information, and the access module uses this information to connect to the broadcast server. When the icecast method is used as the broadcast module of the broadcast server, the MP information, which is an identification means lower than the port, may be included in the address information. When the MP information is the ID of the broadcaster, there is an advantage that the broadcaster can easily know the address information that the broadcaster is using only the ID of the broadcaster.

방송 송신 모듈(302)은 방송자가 방송하고자 하는 정보를 방송 스트림 정보로 변환하고 이를 접속한 방송 서버에 전송하는 기능을 하며, 방송 수신 모듈(304)은 방송 서버로부터 방송 스트림 정보를 수신하여 이를 재생하는 기능을 한다. 방송 전송 모듈(302) 및 방송 수신 모듈(304)의 보다 상세한 구성을 도 3b 및 도 3c를 참조하여 설명하면 다음과 같다. The broadcast transmission module 302 converts the information that the broadcaster wants to broadcast into broadcast stream information and transmits it to the connected broadcast server. The broadcast reception module 304 receives broadcast stream information from the broadcast server and reproduces it. Function. The detailed configuration of the broadcast transmission module 302 and the broadcast reception module 304 will be described below with reference to FIGS. 3B and 3C.

도 3b는 본 발명의 바람직한 일 실시예에 따른 방송 송신 모듈의 구성을 도시한 블록도이다. 3B is a block diagram showing the configuration of a broadcast transmission module according to an embodiment of the present invention.

도 3b에 도시된 바와 같이, 본 발명의 바람직한 일 실시예에 따른 방송 송신 모듈은 외부 오디오 신호 변환 모듈(310), 내부 오디오 신호 변환 모듈(312), 오디오 신호 합성 모듈(314), 오디오 신호 변환 모듈(316), 영상 신호 수신 모듈(318), 동기/프로토콜 변환 모듈(320) 및 큐(322)를 포함할 수 있다. As shown in FIG. 3B, the broadcast transmission module according to the preferred embodiment of the present invention includes an external audio signal conversion module 310, an internal audio signal conversion module 312, an audio signal synthesis module 314, and an audio signal conversion. The module 316 may include a video signal receiving module 318, a sync / protocol conversion module 320, and a queue 322.

도 3b에서, 외부 오디오 신호 변환 모듈(310)은 마이크를 통해 수신되는 외부의 음원을 수신한다. 마이크를 통해 수신되는 외부 오디오 신호는 대부분 방송자 의 음성 정보일 것이며 외부 오디오 신호 변환 모듈(310)은 웨이브 형태의 압축되지 않은 신호로 이를 변환한다. In FIG. 3B, the external audio signal conversion module 310 receives an external sound source received through a microphone. Most of the external audio signal received through the microphone will be the voice information of the broadcaster, the external audio signal conversion module 310 converts it to an uncompressed signal in the form of a wave.

내부 오디오 신호 변환 모듈(312)은 방송자 클라이언트에 저장되어 있고 방송자가 방송을 통해 출력하려는 오디오 파일을 웨이브 형태의 데이터로 변환하는 기능을 한다. 개인 방송에서, 방송자의 음성 정보 등은 마이크를 통해 입력되나, 음악은 클라이언트에 저장되어 있는 음악 파일을 이용하여 방송자에게 제공되는 것이 일반적이다. 클라이언트에 저장되어 있는 음악 파일은 대부분 MP3와 같은 압축 파일이며, 이러한 압축 파일은 방송자의 음성 정보와 합성될 수 없다. 따라서, 내부 오디오 신호 변환 모듈(312)은 방송되는 음악 파일의 오디오 신호를 웨이브 형태의 정보로 변환하는 것이다. The internal audio signal conversion module 312 is stored in the broadcaster client and functions to convert the audio file that the broadcaster intends to output through broadcast into wave-shaped data. In personal broadcasting, voice information of the broadcaster is input through a microphone, but music is generally provided to the broadcaster using a music file stored in the client. Most music files stored on the client are compressed files such as MP3, and these compressed files cannot be synthesized with the voice information of the broadcaster. Therefore, the internal audio signal conversion module 312 converts the audio signal of the broadcast music file into wave information.

오디오 신호 합성 모듈(314)은 외부 오디오 신호 수신 모듈(310)에 의해 출력되는 외부 오디오 신호와 내부 오디오 신호 변환 모듈(312)에 의해 변환된 웨이브 형태의 내부 오디오 신호를 합성하는 기능을 한다. 웨이브 신호의 합성은 이미 공지된 기술이므로 이에 대한 상세한 설명은 생략하기로 한다. The audio signal synthesizing module 314 synthesizes an external audio signal output by the external audio signal receiving module 310 and an internal audio signal in a wave form converted by the internal audio signal conversion module 312. Since the synthesis of the wave signal is a known technique, a detailed description thereof will be omitted.

오디오 신호 변환 모듈(316)은 오디오 신호 합성 모듈(314)에서 출력되는 웨이브 형태의 신호를 미리 설정된 형식의 음악 파일로 변환하는 기능을 한다. 본 발명의 일 실시예에 따르면, 오디오 신호 변환 모듈(316)은 MP3 또는 ogg 형식의 음악 파일로 웨이브 신호를 변환한다. 웨이브 신호를 MP3 또는 ogg 형식의 정보로 변환하는 기술 역시 공지된 것이므로 이에 대한 상세한 설명은 생략하기로 한다. The audio signal conversion module 316 converts a wave signal output from the audio signal synthesis module 314 into a music file of a preset format. According to an embodiment of the present invention, the audio signal conversion module 316 converts a wave signal into a music file in MP3 or ogg format. Since a technique for converting a wave signal into MP3 or ogg format information is also known, a detailed description thereof will be omitted.

영상 수신 모듈(318)은 웹카메라 등으로부터 영상 정보를 수신하는 기능을 한다. 영상 수신 모듈(318)은 외부 영상의 수신뿐만 아니라 방송자 클라이언트에 저장된 영상 파일 정보를 방송을 통해 전송할 수 있는 형태로 변환하는 기능을 수행할 수도 있다. The image receiving module 318 serves to receive image information from a web camera or the like. The image receiving module 318 may also perform a function of converting image file information stored in a broadcaster client into a form that can be transmitted through broadcast as well as receiving an external image.

동기/프로토콜 변환 모듈(320)은 영상 수신 모듈(318)로부터 제공되는 영상 신호 및 오디오 신호 변환 모듈(316)로부터 제공되는 오디오 신호에 동기 식별자를 삽입하는 기능을 한다. 본 발명의 바람직한 실시예에 따르면, 동기/프로토콜 변환 모듈(320)에서 삽입하는 동기 식별자는 타임 스탬프(Time Stamp) 정보일 수 있다. The synchronization / protocol conversion module 320 functions to insert a synchronization identifier into the video signal provided from the image receiving module 318 and the audio signal provided from the audio signal conversion module 316. According to a preferred embodiment of the present invention, the synchronization identifier inserted in the synchronization / protocol conversion module 320 may be time stamp information.

동기/프로토콜 변환 모듈(320)은 영상 신호 또는 오디오 신호를 수신할 경우, 수신한 신호에 타임 스탬프 정보를 삽입하여 변환된 프로토콜 패킷을 생성한다. 동기/프로토콜 변환 모듈(320)은 도 7a 및 도 7b와 같은 구조의 프로토콜 패킷을 생성한다. When receiving a video signal or an audio signal, the synchronization / protocol conversion module 320 inserts time stamp information into the received signal to generate a converted protocol packet. The synchronization / protocol conversion module 320 generates a protocol packet having a structure as shown in FIGS. 7A and 7B.

도 7a 및 도 7b는 동기/프로토콜 변환 모듈(320)에서 변환하는 패킷의 구성을 도시한 도면이다. 7A and 7B are diagrams illustrating a configuration of a packet converted by the synchronization / protocol conversion module 320.

도 7a를 참조하면, 본 발명의 일 실시예에 따른 프로토콜 패킷은 타입 필드(700), 타임 스탬프 필드(702), 사이즈 필드(704) 및 데이터 필드(706)를 포함할 수 있다. Referring to FIG. 7A, a protocol packet according to an embodiment of the present invention may include a type field 700, a time stamp field 702, a size field 704, and a data field 706.

타입 필드(700)에는 패킷의 타입에 대한 정보가 포함된다. 패킷 타입에는 오디오 패킷, 비디오 패킷, 키프레임 패킷이 있다. 영상 신호는 키프레임을 기준으로 그 변화 정보가 비디오 패킷으로 제공되므로, 비디오 패킷과 키프레임 패킷으로 구분된다. 동기/프로토콜 변환 모듈(320)은 입력되는 신호가 오디오 신호인지, 일반 영상 신호인지 또는 키프레임 신호인지를 판단하여 해당 식별자를 타입 필드에 부가한다. The type field 700 includes information about the type of a packet. Packet types include audio packets, video packets, and keyframe packets. The video signal is classified into a video packet and a keyframe packet because the change information is provided as a video packet based on a keyframe. The synchronization / protocol conversion module 320 determines whether the input signal is an audio signal, a general video signal, or a keyframe signal, and adds the identifier to the type field.

타임 스탬프 필드(702)에는 동기/프로토콜 변환 모듈(320)에서 부여하는 타이 스탬프 정보가 기록된다. 본 발명의 일 실시예에 따르면, 동기/프로토콜 변환 모듈(320)은 방송자 클라이언트의 로컬 타임을 타임 스탬프 정보로 패킷에 기록한다. 그러나, 이와 다른 시간 값이 타임 스탬프 정보로 활용될 수 있다는 것은 당업자에게 있어 자명할 것이다. In the time stamp field 702, tie stamp information provided by the synchronization / protocol conversion module 320 is recorded. According to an embodiment of the present invention, the synchronization / protocol conversion module 320 records the local time of the broadcaster client as time stamp information in a packet. However, it will be apparent to those skilled in the art that other time values may be utilized as the time stamp information.

사이즈 필드(704)에는 데이터의 사이즈에 대한 정보가 포함되며, 사이즈 정보는 주로 에러를 체크할 때 이용된다. The size field 704 includes information on the size of data, and the size information is mainly used when checking an error.

데이터 필드(706)에는 오디오 신호 변환 모듈(316) 또는 영상 수신 모듈(318)에서 출력되는 오디도 또는 영상 데이터가 포함된다. The data field 706 includes audio data or image data output from the audio signal conversion module 316 or the image receiving module 318.

도 7b는 본 발명의 다른 실시예에 따른 프로토콜 패킷의 구성을 도시한 도면이다. 7B is a diagram illustrating a configuration of a protocol packet according to another embodiment of the present invention.

도 7b에는 프레임 카운트 필드(708)가 더 포함된 프로토콜 패킷이 도시되어 있다. 프레임 카운트 정보는 오디오 신호 및 영상 신호의 동기화 이외에 다른 데이터의 동기화에 이용되는데, 이에 대한 상세한 설명은 별도의 도면을 통해 후술하기로 한다. 7B shows a protocol packet further including a frame count field 708. The frame count information is used to synchronize other data in addition to the synchronization of the audio signal and the image signal, which will be described later with reference to a separate drawing.

도 3c는 본 발명의 바람직한 일 실시예에 따른 방송 수신 모듈의 구성을 도시한 블록도이다. 3C is a block diagram illustrating a configuration of a broadcast receiving module according to an embodiment of the present invention.

도 3c에 도시된 바와 같이, 본 발명의 일 실시예에 따른 방송 수신 모듈은 방승 스트림 수신 모듈(330), 신호 분리 모듈(332), 오디오 신호 디코딩 모듈(334), 동기화 모듈(336) 및 영상 신호 디코딩 모듈(338)을 포함할 수 있다. As shown in FIG. 3C, the broadcast reception module according to an embodiment of the present invention may include a scenic stream reception module 330, a signal separation module 332, an audio signal decoding module 334, a synchronization module 336, and an image. The signal decoding module 338 may be included.

방송 스트림 수신 모듈(330)은 방송 서버로부터 제공되는 방송 스트림 데이터를 수신하는 기능을 한다. 방송 서버에서 제공되는 스트림 데이터의 패킷 구조는 도 7a 또는 도 7b와 같은 구조를 가지며, 방송 서버는 오디오 신호의 메타 정보도 함께 전송한다. The broadcast stream receiving module 330 functions to receive broadcast stream data provided from a broadcast server. The packet structure of the stream data provided by the broadcast server has a structure as shown in FIG. 7A or 7B, and the broadcast server also transmits meta information of the audio signal.

신호 분리 모듈(332)은 방송 스트림 수신 모듈(330)이 수신한 방송 스트림 신호를 영상 신호 및 오디오 신호로 분리한다. 신호 분리 모듈은 수신한 패킷의 타입 정보를 통해 오디오 신호 및 영상 신호를 분리할 수 있을 것이다. 신호 분리 모듈(332)은 오디오 신호 및 비디오 신호를 분리하여 별도의 데이터 큐에 저장하고, 오디오 패킷 및 비디오 패킷에서 타임 스탬프 정보 및 데이터 정보만을 추출하여 오디오 신호 디코딩 모듈 및 영상 신호 디코딩 모듈에 각각 제공한다. The signal separation module 332 separates the broadcast stream signal received by the broadcast stream receiving module 330 into a video signal and an audio signal. The signal separation module may separate the audio signal and the video signal through the type information of the received packet. The signal separation module 332 separates the audio signal and the video signal into separate data queues, extracts only the time stamp information and the data information from the audio packet and the video packet, and provides them to the audio signal decoding module and the video signal decoding module, respectively. do.

오디오 신호 디코딩 모듈(334)은 신호 분리 모듈(332)로부터 수신한 오디오 신호를 디코딩한다. 오디오 신호는 일반적으로 MP3 또는 ogg 포맷으로 압축되며, 오디오 신호 디코딩 모듈(334)은 오디오 신호의 압축 포맷에 따라 이에 상응하는 디코딩 알고리즘으로 오디오 신호를 디코딩한다. The audio signal decoding module 334 decodes the audio signal received from the signal separation module 332. The audio signal is generally compressed in MP3 or ogg format, and the audio signal decoding module 334 decodes the audio signal with a corresponding decoding algorithm according to the compression format of the audio signal.

오디오 신호 디코딩 모듈(334)은 오디오 패킷의 디코딩 시 디코딩되는 패킷의 타임 스탬프 정보를 동기화 모듈(336)에 제공하고, 동기화 모듈(336)은 영상 신호 디코딩 모듈이 오디오 신호의 타임 스탬프에 상응하는 영상 신호만을 출력하도록 제어한다. The audio signal decoding module 334 provides the synchronization module 336 with time stamp information of the packet to be decoded when the audio packet is decoded. Control to output only signals.                     

영상 신호 디코딩 모듈(338)은 동기화 모듈(336)에 제어에 따라 해당 타임 스탬프의 영상 신호만을 디코딩하여 출력하며, 이와 같은 동작에 의해 오디오 신호와 영상 신호는 동기화되어 출력될 수 있다. The video signal decoding module 338 decodes and outputs only the video signal having a corresponding time stamp according to the control to the synchronization module 336. The audio signal and the video signal may be synchronized and output by the operation.

도 4는 본 발명의 바람직한 일 실시예에 따른 방송 서버의 모듈 구성을 도시한 블록도이다. 4 is a block diagram showing the module configuration of a broadcast server according to an embodiment of the present invention.

도 4에 도시된 바와 같이, 본 발명의 일 실시예에 따른 방송 서버는 방송자 접속 처리 모듈(400), 청취자 접속 처리 모듈(402), 프로토콜 변환/분석 모듈(404) 및 상태 정보 관리 모듈(406)을 포함한다. As shown in FIG. 4, the broadcast server according to an embodiment of the present invention includes a broadcaster connection processing module 400, a listener connection processing module 402, a protocol conversion / analysis module 404, and a state information management module ( 406).

방송자 접속 처리 모듈(400)은 방송자의 방송 요청에 응답하여 방송자 클라이언트와의 커넥션을 설정하고 방송 프로세스를 실행하는 기능을 한다. 본 발명의 바람직한 실시예에 따르면, 방송자 클라이언트는 주소, 포트, MP의 세 개의 주소 식별자를 이용하여 방송 서버에 접속하며, 방송자 접속 처리 모듈(400)은 하나의 포트에 복수의 방송 프로세스가 실행되도록 한다. 이와 달리, 주소 및 포트 정보만을 이용하여 방송자 클라이언트가 방송 서버에 접속하고, 포트별로 하나의 방송 프로세스가 실행될 수도 있다는 점은 당업자에게 있어 자명할 것이다. The broadcaster connection processing module 400 establishes a connection with the broadcaster client and executes a broadcast process in response to the broadcast request of the broadcaster. According to a preferred embodiment of the present invention, a broadcaster client connects to a broadcast server using three address identifiers of an address, a port, and an MP, and the broadcaster connection processing module 400 has a plurality of broadcast processes in one port. To be executed. Alternatively, it will be apparent to those skilled in the art that a broadcaster client may access a broadcast server using only address and port information, and one broadcast process may be executed for each port.

청취자 접속 처리 모듈(402)은 청취자의 접속 요청에 응답하여 청취자 클라이언트와의 커넥션을 설정하고 청취자가 요청한 방송자의 방송 스트림이 청취자 클라이언트로 제공될 수 있도록 한다. 전술한 바와 같이, 청취자 클라이언트는 주소, 포트 MP 정보를 이용하여 방송 서버에 접속할 수 있으며, 주소 및 포트 정보만을 이용하여 방송 서버에 접속할 수도 있다. The listener connection processing module 402 establishes a connection with the listener client in response to the listener's connection request and enables the broadcaster's broadcast stream requested by the listener to be provided to the listener client. As described above, the listener client may access the broadcast server using address and port MP information, or may access the broadcast server using only address and port information.                     

프로토콜 변환/분석 모듈(404)은, 방송 서버에 접속한 청취자 클라이언트가 도 7a 또는 도 7b와 같은 형태의 프로토콜 패킷을 처리할 수 있는 프로그램을 설치하지 않은 경우, 방송자 클라이언트에서 전송된 프로토콜 패킷을 일반적인 방송 스트림 패킷으로 변환하는 기능을 한다. 청취자 클라이언트에 본 발명에 따른 방송 프로그램이 아닌 일반적인 윈앰프 등의 프로그램이 설치되어 있을 경우, 청취자 클라이언트는 방송자 클라이언트에서 전송하는 패킷을 처리할 수 없다. 따라서, 프로토콜 변환/분석 모듈(404)은 방송자 클라이언트에서 전송되는 패킷을 영상 데이터가 제거하고 음성만으로 이루어진 일반적인 방송 패킷으로 변환한다. 청취자 클라이언트에 설치된 방송 프로그램의 종류는 방송 서버와 청취자 클라이언트의 연결 설정 시에 알 수 있다.  The protocol conversion / analysis module 404, when the listener client connected to the broadcast server does not install a program capable of processing protocol packets of the type shown in Fig. 7A or 7B, the protocol conversion / analysis module 404 sends the protocol packet transmitted from the broadcaster client. Converts into a general broadcast stream packet. When a listener client is provided with a program such as a general win-amp, not a broadcast program according to the present invention, the listener client cannot process a packet transmitted by the broadcaster client. Accordingly, the protocol conversion / analysis module 404 converts the packet transmitted from the broadcaster client into a general broadcast packet which is composed of only audio by removing video data. The type of broadcast program installed in the listener client may be known when the broadcast server and the listener client establish a connection.

또한, 프로토콜 변환/분석 모듈(404)은 패킷의 헤더 정보를 분석하여 메타 정보를 추출하고 이를 청취자 클라이언트에 전송한다. In addition, the protocol conversion / analysis module 404 analyzes the header information of the packet to extract the meta information and send it to the listener client.

상태 정보 관리 모듈(406)은 방송자 또는 청취자가 방송 서버와 접속하거나 또는 접속을 해제하는 경우 이를 감지하여 데이터베이스에 제공하는 기능을 한다. 상태 정보 관리 모듈(406)은 청취자 또는 방송자의 접속 또는 접속 해제 이벤트가 발생할 때마다 이벤트 발생 정보를 데이터베이스에 제공하며, 이로 인해 방송 서버의 상태를 실시간으로 확인할 수 있다. The state information management module 406 detects when a broadcaster or listener connects to or disconnects from a broadcast server and provides the detected information to a database. The state information management module 406 provides event occurrence information to a database whenever a connection or disconnection event of a listener or a broadcaster occurs, and thus, the state information management module 406 may check the state of the broadcast server in real time.

도 5는 본 발명의 바람직한 일 실시예에 따른 방송자 클라이언트가 접속할 방송 서버를 할당받는 과정을 도시한 도면이다. 5 is a diagram illustrating a process of receiving a broadcast server to which a broadcaster client accesses according to an embodiment of the present invention.

도 5를 참조하면, 방송자 클라이언트는 정보관리서버에 방송 서버 주소 요청 정보를 전송한다(S500). Referring to FIG. 5, the broadcaster client transmits broadcast server address request information to the information management server (S500).

방송자 클라이언트로부터 방송 서버 주소 요청 정보를 수신한 정보관리서버는 데이터베이스에 방송자가 접속할 수 있는 방송 서버 정보를 요청한다(S502). Upon receiving the broadcast server address request information from the broadcaster client, the information management server requests broadcast server information to which the broadcaster can access the database (S502).

정보관리서버의 요청을 받은 데이터베이스는 방송 서버들의 상태 정보를 판단하여 방송자 클라이언트가 접속할 서버의 주소 정보(IP, 포트, MP)를 제공한다(S504). 본 발명의 바람직한 실시예에 따르면, 이미 방송 프로세스가 실행중인 서버에 접속을 요청한 방송자 클라이언트를 할당하는 것이 바람직하며, 방송 프로세스가 실행중인 서버에 여유가 없을 경우 새로은 서버를 할당하도록 한다. The database receiving the request of the information management server determines the state information of the broadcast servers and provides address information (IP, port, MP) of the server to which the broadcaster client will access (S504). According to a preferred embodiment of the present invention, it is preferable to allocate a broadcaster client requesting a connection to a server which is already executing a broadcast process, and to allocate a new server when there is no room in the server where the broadcast process is running.

데이터베이스로부터 방송자 클라이언트가 접속할 서버의 주소 정보를 수신한 정보관리서버는 이를 방송자 클라이언트에 제공한다(S506). 방송자 클라이언트는 수신한 서버의 주소 정보를 이용하여 방송 서버에 연결하여 방송을 개시한다(S508). 방송 서버는 방송자 클라이언트가 접속할 경우, 방송자 클라이언트의 접속 정보를 데이터베이스에 실시간으로 전송한다. The information management server, which receives the address information of the server to which the broadcaster client accesses from the database, provides it to the broadcaster client (S506). The broadcaster client connects to the broadcast server by using the received address information of the server and starts broadcasting (S508). When the broadcaster client accesses, the broadcast server transmits the access information of the broadcaster client to the database in real time.

도 6은 본 발명의 바람직한 일 실시예에 따른 청취자 클라이언트가 접속할 방송 서버를 할당받는 과정을 도시한 도면이다. FIG. 6 is a diagram illustrating a process of receiving a broadcast server to which a listener client connects according to an exemplary embodiment of the present invention.

도 6을 참조하면, 청취자 클라이언트는 정보관리서버에 접속하여 방송 서버 주소 요청 정보를 전송한다(S600). Referring to FIG. 6, the listener client accesses the information management server and transmits broadcast server address request information (S600).

정보관리서버는 청취자 클라이언트로부터 제공받은 방송자 아이디 정보를 이용하여 해당 방송자가 방송을 하는 서버의 주소 정보를 데이터베이스에 요청한다(S602). The information management server requests the database for address information of a server on which the broadcaster broadcasts using the broadcaster ID information provided from the listener client (S602).                     

데이터베이스는 저장하고 있는 방송 서버들의 상태 정보를 조회하여 해당 방송자가 방송을 하고 있는 방송 서버의 주소 정보를 추출하고 이를 정보관리서버에 전송한다(S604). 도 6에는 도시되어 있지 않으나, 방송 서버와 데이터베이스 사이에는 중간 프록시 서버가 구비될 수 있으며, 중간 프록시 서버를 통해 정보관리서버와 데이터베이스 사이의 통신이 이루어질 수도 있을 것이다. The database inquires the state information of the stored broadcast servers, extracts the address information of the broadcast server broadcasted by the corresponding broadcaster, and transmits the information to the information management server (S604). Although not shown in FIG. 6, an intermediate proxy server may be provided between the broadcast server and the database, and communication between the information management server and the database may be performed through the intermediate proxy server.

데이터베이스로부터 해당 방송자가 방송을 하는 서버의 주소 정보를 수신한 정보관리서버는 이를 청취자 클라이언트에 전달하고(S606), 청취자 클라이언트는 수신한 주소 정보를 이용하여 방송 서버에 접속한다(S608). 방송 서버는 청취자의 접속 정보를 실시간으로 데이터베이스에 제공한다. The information management server, which receives the address information of the server that the broadcaster broadcasts from the database, delivers it to the listener client (S606), and the listener client accesses the broadcast server using the received address information (S608). The broadcast server provides the listener's connection information to the database in real time.

도 8은 본 발명에 의한 방송 시스템을 이용하여 방송 데이터와 외부 데이터를 동기화하는 시스템의 구성을 도시한 도면이다. 8 is a diagram illustrating a configuration of a system for synchronizing broadcast data and external data using the broadcast system according to the present invention.

도 8에 도시된 바와 같이, 본 발명에 따른 외부 데이터와 방송 데이터를 동기화하는 시스템은 방송자 클라이언트(800), 방송 서버(802), 데이터베이스(804), 외부 서버(806) 및 청취자 클라이언트(808)를 포함할 수 있다. As shown in FIG. 8, a system for synchronizing external data with broadcast data according to the present invention includes a broadcaster client 800, a broadcast server 802, a database 804, an external server 806, and a listener client 808. ) May be included.

도 8과 같은 시스템은 바둑, 전략 게임과 같은 게임 정보를 수신하면서 방송자의 게임 해설 정보를 함께 수신할 경우에 특히 유용하게 활용될 수 있다. 이외에도 도 8과 같은 시스템은 프리젠테이션과 같은 문서 데이터 등과 동기를 맞추어 강의를 하는 경우에도 적용될 수 있을 것이다. The system as shown in FIG. 8 may be particularly useful when receiving game commentary information of a broadcaster while receiving game information such as Go and strategy games. In addition, the system as shown in FIG. 8 may be applied to a lecture in synchronization with document data such as a presentation.

설명의 편의를 위해, 온라인 바둑이 대국실 내에서 제공되고 있고, 바둑 관전자 중 1인이 해설을 하고 있다고 가정하고 도 8에 대한 시스템을 설명하기로 한 다. For convenience of explanation, a system of FIG. 8 will be described on the assumption that online Go is provided in the game room, and one of the Go spectators is providing commentary.

방송자(해설자) 클라이언트(800)의 방송 프로그램은 온라인 대국실에서 진행되는 바둑의 해설을 담당하는 해설자의 음성 및 영상 정보를 도 7b와 같은 프로토콜 포맷으로 변경하여 방송 서버(802)에 전송한다. 영상 및 음성 정보가 바둑 기보와 같은 외부 데이터와 동기를 맞추려면 타임 스탬프 정보보다 프레임 카운트 정보를 이용하는 것이 효율적이다. 따라서, 방송 데이터와 외부 데이터의 동기를 맞추어야 하는 경우, 방송 프로그램은 도 7b와 같은 프로토콜 포맷의 패킷을 생성한다. The broadcast program of the broadcaster (commenter) client 800 transmits the audio and video information of the commentator in charge of commentary, which is performed in the online game room, to the broadcast server 802 by changing the protocol format as shown in FIG. 7B. It is more efficient to use frame count information than time stamp information to synchronize video and audio information with external data such as Baduk notation. Therefore, when synchronization between broadcast data and external data is to be synchronized, the broadcast program generates a packet having a protocol format as shown in FIG. 7B.

또한, 방송자(해설자) 클라이언트(800)는 바둑 기보 정보를 외부 서버(806)-여기서 외부 서버는 바둑 대국 서비스를 제공하는 서버이다-를 통해 청취자 클라이언트(802)로 전송한다. 이때, 바둑 기보 정보에는 해설자의 영상 및 음성 정보와 동기를 맞추기 위한 프레임 카운트 정보가 포함되어 있다. 바둑 기보 정보는 바둑 대국/관전 프로그램을 통해 외부 서버(806)로 전송될 수 있다. 바둑 대국/관전 프로그램과 방송 프로그램은 통합된 프로그램일 수도 있으며, 각각 별개의 프로그램일 수도 있다.In addition, the broadcaster (narrator) client 800 transmits the Go notation information to the listener client 802 through the external server 806, where the external server is a server providing the Go game service. At this time, the Go notation information includes frame count information for synchronizing with the video and audio information of the commentator. Go notation information may be transmitted to the external server 806 through the Go game / watching program. Go game / watching program and broadcasting program may be an integrated program, or may be a separate program.

청취자 클라이언트(808)는 방송 서버(802)를 통해 해설자의 영상 및 음성 정보를 수신하고, 외부 서버(806)를 통해 바둑 기보 데이터를 수신한다. 청취자 클라이언트의 방송 프로그램은 음성 신호의 타임 스탬프 정보 및 프레임 카운트 신호를 기준으로 음성 신호가 출력될 때 해당 영상 신호가 출력되거나 해당 기보 데이터가 출력되도록 제어한다. The listener client 808 receives the commentator's video and audio information through the broadcast server 802, and the Go notation data through the external server 806. The broadcast program of the listener client controls to output the corresponding video signal or the corresponding notation data when the audio signal is output based on the time stamp information and the frame count signal of the audio signal.

도 8과 같은 시스템이 이용될 경우, 바둑 해설 정보가 방송 서버를 통해 관 전자들에게 제공되므로 대역폭의 큰 제한을 받지 않고 바둑 해설 서비스를 제공할 수 있어 비교적 많은 사용자가 해설 서비스를 제공받을 수 있으며, 기보 데이터와 해설자의 해설 정보의 동기가 어긋나지 않고 정확히 제공될 수 있다.
When the system as shown in FIG. 8 is used, the Go commentary information is provided to the observers through the broadcast server, so that the Go commentary service can be provided without a large limitation of the bandwidth, so that a relatively large number of users can receive the commentary service. For example, the synchronization of the notation data and the commentary information of the commentator can be provided accurately without deviation.

이상에서 설명한 바와 같이, 본 발명에 따른 개인 방송 시스템에 의하면, 음성 및 영상을 동시에 제공할 수 있을 뿐만 아니라 음성 및 영상의 동기를 일치시켜 방송으로 제공할 수 있는 장점이 있다. As described above, according to the personal broadcasting system according to the present invention, it is possible not only to provide audio and video at the same time, but also to provide synchronization by synchronizing audio and video.

또한, 본 발명에 의하면, 방송 서버의 상태 정보를 실시간으로 갱신하여 방송자에게 보다 방송 서버를 보다 효율적으로 할당할 수 있는 장점이 있다. In addition, according to the present invention, there is an advantage that the broadcast server can be allocated to the broadcaster more efficiently by updating the state information of the broadcast server in real time.

Claims (1)

방송 프로그램이 설치되어 있는 방송자 또는 청취자 클라이언트로부터 방송 서버 할당 요청 정보를 수신하여 접속할 방송 서버의 주소 정보를 방송자 또는 청취자 클라이언트에 제공하는 정보관리서버;An information management server receiving broadcast server allocation request information from a broadcaster or listener client provided with a broadcast program and providing address information of a broadcast server to be connected to the broadcaster or listener client; 방송자 클라이언트 또는 청취자 클라이언트의 접속 요청 정보에 응답하여 커넥션을 설정하고, 방송자 클라이언트가 전송하는 방송 스트림 데이터를 해당 청취자 클라이언트에 전송하는 방송 서버;A broadcast server for establishing a connection in response to the connection request information of the broadcaster client or the listener client and transmitting broadcast stream data transmitted from the broadcaster client to the corresponding listener client; 방송자 클라이언트 또는 청취자 클라이언트가 방송 서버에 접속하거나 접속을 해제할 경우 상기 방송 서버로부터 상태 정보를 수신하여 저장하는 데이터베이스를 포함하되;A database for receiving and storing state information from the broadcast server when the broadcaster client or the listener client connects to or disconnects from the broadcast server; 방송자 클라이언트에 설치된 방송 프로그램은 방송자의 영상 데이터 또는 로컬 클라이언트에 저장된 영상 데이터와 방송으로 출력하려는 오디오 데이터를 동기 식별자를 포함하는 프로토콜 패킷으로 변환하여 방송 서버에 전송하고,The broadcast program installed in the broadcaster client converts the broadcaster's video data or the video data stored in the local client and the audio data to be output to the broadcast into a protocol packet including a synchronization identifier, and transmits it to the broadcast server 청취자 클라이언트에 설치된 방송 프로그램은 상기 프로토콜 패킷으로부터 데이터 신호 및 동기 식별자 정보를 추출하여 오디오 신호 및 영상 신호의 동기를 일치시켜 출력하되,The broadcast program installed in the listener client extracts the data signal and the synchronization identifier information from the protocol packet, and outputs the data signal by synchronizing the synchronization with the audio signal. 상기 방송 프로그램은 상기 정보관리서버로부터 할당 받은 방송 서버의 주소 정보를 이용하여 해당 방송 서버로의 접속을 수행하는 접속 모듈;The broadcast program may include: a connection module for accessing a corresponding broadcast server using address information of a broadcast server allocated from the information management server; 방송자 클라이언트가 출력하는 오디오 및 영상 신호를 미리 설정된 프로토콜 패킷으로 변환하여 상기 방송 서버에 전송하는 방송 송신 모듈;A broadcast transmission module for converting an audio and video signal output from a broadcaster client into a predetermined protocol packet and transmitting it to the broadcast server; 상기 방송 서버로부터 수신되는 프로토콜 패킷에서 오디오 신호와 영상 신호 및 동기 식별자 정보를 추출하여 오디오 신호와 비디오 신호의 동기를 맞추어 오디오 및 영상 신호를 출력하는 방송 수신 모듈을 포함하고, 상기 주소 정보는 아이피, 포트 및 MP 정보를 포함하며, 상기 MP 정보는 사용자 아이디에 상응하는 것을 특징으로 하는 개인 방송 시스템And a broadcast receiving module extracting an audio signal, a video signal, and a synchronization identifier information from the protocol packet received from the broadcast server, and outputting an audio and video signal in synchronization with the audio signal and the video signal. A port and MP information, wherein the MP information corresponds to a user ID.
KR1020040071274A 2004-09-07 2004-09-07 System for providing joint viewing service of moving picture KR20060013317A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040071274A KR20060013317A (en) 2004-09-07 2004-09-07 System for providing joint viewing service of moving picture

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040071274A KR20060013317A (en) 2004-09-07 2004-09-07 System for providing joint viewing service of moving picture

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020040061756A Division KR100507340B1 (en) 2004-08-05 2004-08-05 System for providing joint viewing service of moving picture

Publications (1)

Publication Number Publication Date
KR20060013317A true KR20060013317A (en) 2006-02-09

Family

ID=37122753

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040071274A KR20060013317A (en) 2004-09-07 2004-09-07 System for providing joint viewing service of moving picture

Country Status (1)

Country Link
KR (1) KR20060013317A (en)

Similar Documents

Publication Publication Date Title
US8477950B2 (en) Home theater component for a virtualized home theater system
JP4649091B2 (en) Communication terminal, server device, relay device, broadcast communication system, broadcast communication method, and program
CN106034262B (en) Adaptive streaming media processing method and device
US10341672B2 (en) Method and system for media synchronization
EP2690876A2 (en) Heterogeneous network-based linked broadcast content transmitting/receiving device and method
KR101934200B1 (en) Method and system for media synchronization
JP2013179664A (en) Broadcast data transmission method and apparatus therefor
CN111147362B (en) Multi-user instant messaging method, system, device and electronic equipment
JP5841715B2 (en) VIDEO / AUDIO OUTPUT DEVICE, VIDEO / AUDIO OUTPUT SYSTEM, AND MASTER DEVICE
CN111107390B (en) Live broadcast service system and live broadcast connection establishment method
US11792254B2 (en) Use of in-band metadata as basis to access reference fingerprints to facilitate content-related action
WO2015012063A1 (en) Information processing device
JP7377352B2 (en) Multi-member instant messaging method, system, device, electronic device, and computer program
KR100507340B1 (en) System for providing joint viewing service of moving picture
KR20060013317A (en) System for providing joint viewing service of moving picture
KR100640918B1 (en) Method for manufacturing Stream File in Internet Streaming Service
KR100563719B1 (en) Method for controlling the multichannel streaming of mobile phone
JP2002314960A (en) Multi-view broadcasting service system and device or method or recording medium or its program related therewith
JP5843480B2 (en) Receiver and program
JP5859223B2 (en) Receiver and program
US10531136B2 (en) Data processing device, data processing method, and program
KR101810883B1 (en) Live streaming system and streaming client thereof
KR20170043396A (en) A method and apparatus for service provisioning using a bitstream including metadata
JP2004158919A (en) Network camera system, network camera thereof, and data transmission method
EP2894868B1 (en) Information processing device, information processing method, program, and content sharing system

Legal Events

Date Code Title Description
A107 Divisional application of patent
WITN Withdrawal due to no request for examination