KR20240027435A - 실시간 데이터 송수신 방법 및 그 장치 - Google Patents

실시간 데이터 송수신 방법 및 그 장치 Download PDF

Info

Publication number
KR20240027435A
KR20240027435A KR1020220105640A KR20220105640A KR20240027435A KR 20240027435 A KR20240027435 A KR 20240027435A KR 1020220105640 A KR1020220105640 A KR 1020220105640A KR 20220105640 A KR20220105640 A KR 20220105640A KR 20240027435 A KR20240027435 A KR 20240027435A
Authority
KR
South Korea
Prior art keywords
data
message
information message
information
transmitting
Prior art date
Application number
KR1020220105640A
Other languages
English (en)
Inventor
강성일
김기령
Original Assignee
주식회사 팀그릿
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 팀그릿 filed Critical 주식회사 팀그릿
Priority to KR1020220105640A priority Critical patent/KR20240027435A/ko
Priority to PCT/KR2023/001923 priority patent/WO2024043420A1/ko
Publication of KR20240027435A publication Critical patent/KR20240027435A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/1108Web based protocols, e.g. webRTC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/764Media network packet handling at the destination 

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

실시간 데이터 송수신 방법 및 그 장치가 개시된다. 송신장치는 제1 데이터메시지의 데이터형태정보를 포함하는 제1 정보메시지를 텍스트 기반으로 전송하고, 복수의 제1 데이터메시지를 연속하여 전송한다. 제1 데이터메시지 및 제1 정보메시지는 적어도 하나 이상의 패킷으로 구성되어 어플리케이션에서 구분이 가능한 논리적 송수신 데이터 단위의 메시지이다.

Description

실시간 데이터 송수신 방법 및 그 장치{Real-time data transmitting/receiving method and apparatus therefor}
본 발명의 실시 예는 데이터를 송수신하는 방법 및 그 장치에 관한 것으로, 보다 상세하게는 다양한 형식의 데이터를 실시간으로 송수신하는 방법 및 그 장치에 관한 것이다.
영상이나 음성 등과 같은 멀티미디어 데이터를 실시간으로 전송하기 위해 사용하는 다양한 프로토콜이 존재한다. 예를 들어, CCTV(Closed Circuit Television)에서 주로 사용되는 RTSP(Real-Time Streaming Protocol), 화상회의에서 사용되는 WebRTC(Web Real-Time Communication), 초저지연 방송을 위한 SRT(Secure Reliable Transport) 또는 RIST(Reliable Internet Stream Transport) 등 다양한 프로토콜이 존재한다. 종래의 다양한 프로토콜은 특정 데이터 형식의 전송이나 어플리케이션의 전송에 적합하도록 최적화되어 있으므로, 하나의 프로토콜을 여러 형식의 데이터를 전송하기는 힘들다.
여러 종류의 프로토콜을 혼용하여 사용하면 상호 연동시 프로토콜 변환, 포맷변환, 코덱변환 등에 따른 처리 부담이 증가하여 시스템의 요구성능이 높아지거나 운영의 복잡성이 증가하는 단점이 있다. 예를 들어, 최근 실시간 프로토콜로 주목받고 있는 WebRTC는 지원하는 코덱의 사양이 높거나 웹표준의 특성상 무료이고 표준화된 코덱으로 사용이 제한되어 있어 새로운 코덱을 WebRTC에 빠르게 적용하여 사용하지 못하며, 또한 WebRTC는 전송 데이터를 경량화된 형태로 최적화하여 사용할 수 없기 때문에 성능이 낮은 저사항 IoT 기기에 적용하기 어려운 단점이 있다.
본 발명의 실시 예가 이루고자 하는 기술적 과제는, 하드웨어의 사양과 그 수에 구애받지 않고 다양한 형식의 데이터를 실시간으로 전송할 수 있는 실시간 데이터 송수신 방법 및 그 장치를 제공하는 데 있다.
상기의 기술적 과제를 달성하기 위한, 본 발명의 실시 예에 따른 실시간 데이터 전송 방법의 일 예는, 송신장치가 수행하는 실시간 데이터 전송 방법에 있어서, 제1 데이터메시지의 데이터형태정보를 포함하는 제1 정보메시지를 텍스트 기반으로 전송하는 단계; 및 복수의 제1 데이터메시지를 연속하여 전송하는 단계;를 포함하고, 상기 제1 데이터메시지 및 상기 제1 정보메시지는 적어도 하나 이상의 패킷으로 구성되어 어플리케이션에서 구분이 가능한 논리적 송수신 데이터 단위의 메시지이다.
상기의 기술적 과제를 달성하기 위한, 본 발명의 실시 예에 따른 실시간 데이터 수신 방법의 일 예는, 수신장치가 수행하는 실시간 데이터 수신 방법에 있어서, 텍스트 기반으로 전송되는 제1 정보메시지를 수신하면, 상기 제1 정보메시지를 통해 데이터형태정보를 파악하는 단계; 및 상기 데이터형태정보를 기반으로 상기 제1 정보메시지의 수신 이후에 수신하는 데이터메시지를 처리하는 단계;를 포함한다.
본 발명의 실시 예에 따르면, 다양한 형식의 데이터를 실시간으로 전송할 수 있다. 다른 실시 예로, 새로운 코덱이나 새로운 전송기법이 도입되어도 코덱변환이나 포맷변환없이 그대로 수용하여 전송할 수 있으므로, 코덱변환이나 포맷변환 등에 따른 정보손실이나 처리지연 등의 문제를 최소화하면서 다양한 프로토콜에서 사용되는 데이터 형식을 수용할 수 있다. 또 다른 실시 예로, 새로운 프로토콜을 API(appliction programming interface) 형태로 다양하게 정의하여 사용할 수 있어 새로운 프로토콜 수용에 대한 확장성도 우수하다.
도 1은 본 발명의 실시 예에 따른 데이터 송수신 장치의 일 예를 도시한 도면,
도 2는 본 발명의 실시 예에 따른 스트리밍 데이터의 전송 방법의 일 예를 도시한 도면,
도 3 및 도 4는 본 발명의 실시 예에 따른 정보메시지의 표시형식의 일 예를 도시한 도면,
도 5는 본 발명의 실시 예에 따른 다양한 종류의 스트리밍 데이터를 전송하는 방법의 일 예를 도시한 도면,
도 6은 본 발명의 실시 예에 따른 정보메시지를 주기적으로 전송하는 방법의 일 예를 도시한 도면,
도 7은 본 발명의 실시 예에 따른 송신장치가 실시간으로 데이터를 송신하는 방법의 일 예를 도시한 흐름도,
도 8은 본 발명의 실시 예에 따른 수신장치가 실시간으로 데이터를 수신하는 방법의 일 예를 도시한 흐름도, 그리고,
도 9는 본 발명의 실시 예에 따른 스트리밍 데이터 처리를 위한 상태천이도의 일 예를 도시한 도면이다.
이하에서, 첨부된 도면들을 참조하여 본 발명의 실시 예에 따른 실시간 데이터 송수신 방법 및 그 장치에 대해 상세히 살펴본다.
도 1은 본 발명의 실시 예에 따른 데이터 송수신 장치의 일 예를 도시한 도면이다.
도 1을 참조하면, 송신장치(100)는 스트리밍 데이터를 전송하는 주체이고, 수신장치(110)는 스트리밍 데이터를 수신하는 주체이다. 송신장치(100) 및 수신장치(110)는 모두 인터넷 통신이 가능한 단말이며, 일반 컴퓨터, 서버, 스마트폰 등 다양한 종류일 수 있다. 예를 들어, 송신장치(100)는 방송이나 광고 등을 위하여 멀티미디어 데이터를 송신하는 장치일 수 있다.
본 실시 예는 설명의 편의를 위하여 하나의 수신장치(110)를 도시하고 있으나, 복수의 수신장치(110)가 송신장치(100)에 연결될 수 있다. 즉, 송신장치(100)는 복수의 수신장치(110)에 스트리밍 데이터를 브로드캐스팅 또는 멀티캐스팅 등 다양한 방법으로 전송할 수 있다.
송신장치(100) 및 수신장치(110)는 웹 기반의 전송프로토콜을 이용하여 스트리밍 데이터를 송수신할 수 있다. 예를 들어, 송수신장치(100,110)는 웹트랜스포트(WebTransport)나 웹소켓(Web Socket) 등을 이용하여 스트리밍 데이터를 송수신할 수 있다.
스트리밍 데이터는 송신장치(100)가 실시간으로 전송하는 데이터이다. 스트리밍 데이터는 이미지 데이터, 비디오 데이터, 오디오 데이터, 텍스트 데이터 등 그 종류가 다양할 수 있으며 특정한 종류로 한정되는 것은 아니다. 수신장치(100)는 스트리밍 데이터를 수신하면 실시간으로 재생할 수 있다.
스트리밍 데이터는 다양한 코덱이나 다양한 압축 형식의 데이터일 수 있다. 예를 들어, 제1 비디오 데이터는 제1 코덱으로 압축되고 제2 비디오 데이터는 제2 코덱으로 압축될 수 있다. 이미지 데이터, 오디오 데이터, 텍스트 데이터 등도 그 종류는 동일하여도 사용되는 코덱이나 압축방법 등이 서로 다를 수 있다.
종래에는 데이터를 전송할 때 데이터의 종류에 맞는 최적의 프로토콜을 사용하였다. 예를 들어, 송신장치가 CCTV를 전송하는 경우에는 RTSP를 사용하고 화상회의 동영상을 전송하는 경우에는 WebRTC 등을 사용한다. 따라서 종래에는 송신장치가 전송하는 스트리밍 데이터의 종류에 따라 각각 서로 다른 전송 프로토콜을 사용하여야 하는 불편함이 존재한다.
이에 본 실시 예는 송신장치(100)와 수신장치(110)를 웹 기반의 전송 프로토콜로 연결한 후 다양한 종류의 스트리밍 데이터를 전송할 수 있는 방법을 제시한다. 이에 대해서 도 2 이하에서 구체적으로 살펴본다.
도 2는 본 발명의 실시 예에 따른 스트리밍 데이터의 전송 방법의 일 예를 도시한 도면이다.
도 2를 참조하면, 송신장치는 정보메시지(210)와 데이터메시지(220)의 플로우(220)를 수신장치에게 전송한다. 정보메시지(210) 및 데이터메시지(220)는 어플리케이션이 구분 가능한 논리적 송수신 데이터 단위의 메시지이고, 적어도 하나 이상의 패킷으로 구성된다. 패킷은 TCP(Transmission Control Protocol), UDP(User Datagram Protocol) 등과 같은 하위 전송층의 송수신 데이터 단위이다. 패킷은 다양한 코덱이나 다양한 압축 프로토콜(예를 들어, JPEP 등) 또는 다양한 전송 프로토콜(예를 들어, WebRTC, RTSP 등)의 형식일 수 있다.
일 실시 예로, 정보메시지(210)와 데이터메시지(220)를 구분하기 위하여 데이터메시지(220)는 바이너리(binary) 메시지 형식을 사용하고, 정보메시지(210)는 텍스트(text) 메시지 형식을 사용할 수 있다. 다른 실시 예로, 하위 전송층의 패킷에 두 메시지(210,220)를 구분하기 위한 추가 헤더나 타입을 정의하여 사용할 수 있다. 이하에서는 데이터메시지(220)는 바이너리 메시지 형식으로 전송하고, 정보메시지(210)는 텍스트 메시지 형식으로 전송하여 수신장치(110)가 양 메시지를 구분하는 경우를 가정하여 설명한다.
송신장치(100)가 전송하는 스트리밍 데이터는 복수의 데이터메시지(220) 단위로 전송된다. 정보메시지(210)는 데이터메시지(220)의 데이터형태정보를 포함한다. 예를 들어, 데이터메시지(220)가 VP8 코덱으로 압축된 비디오 데이터인 경우에, 정보메시지(210)는 데이터메시지(220)의 데이터형태가 '비디오 데이터'이고 코덱은 'VP8'이라는 정보를 포함한다. 송신장치(100)는 스트리밍 데이터를 구성하는 패킷의 포맷을 변경할 필요없이 스트리밍 데이터의 패킷 그 자체를 데이터메시지 단위로 전송하면 된다.
송신장치(100)와 수신장치(110)는 상호 간에 어떤 종류의 스트리밍 데이터를 전송할지 미리 협의하지 않고, 송신장치(100)가 일방적으로 다양한 종류의 스트리밍 데이터를 전송한다. 수신장치(110)가 정보메시지(210)를 용이하게 해석할 수 있도록, 정보메시지(210)는 텍스트 기반으로 전송된다. 정보메시지(210)를 텍스트 기반으로 전송하는 방법의 예로 MIME(Multipurpose Internet Mail Extensions) 형식을 사용할 수 있다. 이 외에도 정보메시지(210)를 텍스트 기반으로 전송하는 다양한 방법이 본 실시 예에 적용될 수 있다. 다만, 이하에서는 설명의 편의를 위하여 정보메시지(210)를 MIME 형식을 이용하여 정의하고 전송하는 경우를 가정하여 설명한다.
일 실시 예로, 송신장치(100)는 스트리밍 데이터를 전송할 때 새로운 수신장치가 전송 중간부터 스트리밍 데이터를 수신하여 재생할 수 있도록 정보메시지(210)를 일정 주기로 반복하여 전송할 수 있다. 이에 대해서는 도 6에서 다시 살펴본다.
다른 실시 예로, 송신장치(100)는 수신장치(110)와 새로운 연결을 설정할 필요없이 연결을 그대로 유지한 채 다양한 종류의 스트리밍 데이터를 실시간으로 전송할 수 있다. 이를 위하여 송신장치(100)는 전송하는 스트리밍 데이터의 종류가 변경될 때마다 정보메시지(210)를 전송할 수 있다. 이에 대해서는 도 5에서 다시 살펴본다.
도 3 및 도 4는 본 발명의 실시 예에 따른 정보메시지의 표시형식의 일 예를 도시한 도면이다.
도 3을 참조하면, 정보메시지(210)는 MIME 형식을 이용하여 전송하는 데이터메시지(220)의 데이터형태정보를 정의할 수 있다. 예를 들어, 정보메시지(210)는 스트리밍 데이터의 종류 및 형식이나 코덱 등의 정보를 포함할 수 있다. 예를 들어, 스트리밍 데이터가 JPEG으로 압축된 이미지 데이터이면, 정보메시지(210)는 이미지 데이터를 나타내는 'image'와 그 이미지의 크기, 그리고 압축코덱이 JPEG 임을 나타내는 정보를 포함할 수 있다. 정보메시지(210)는 텍스트 형식으로 정의되므로 옵션을 확장하거나 데이터형태(즉, 새로운 미디어)를 새로 추가로 정의하여 사용할 수 있다.
도 4를 참조하면, 정보메시지(210)는 스트리밍 데이터를 구성하는 패킷이 어떤 프로토콜의 형식에 따른 데이터인지 구분하는 정보를 포함할 수 있다. 예를 들어, 도 3에서 스트리밍 데이터가 비디오 데이터 형태이면, 정보메시지에는 "packet=" 옵션을 사용하여 스트리밍 데이터를 구성하는 패킷의 형식을 정의할 수 있다. 패킷 형식으로 RTP(Real-Time Transport Protocol), TS(Transport Stream), GDP(Gstreamer Data Protocol), raw 등 다양한 형식이 존재한다. 정보메시지는 스트리밍 데이터의 패킷이 코덱결과로 나온 데이터이면 "packet=codec"를 포함하고, 스트리밍 데이터의 패킷이 RTP 형식에 따른 데이터이면 "packet=rtp"를 포함할 수 있다. "packet=codec"과 같이 효율성을 위하여 별도의 헤더를 추가하지 않고 압축 코덱 등으로 생성된 패킷 그 자체를 바로 전송할 수 있다. 즉, 스트리밍 데이터가 다양한 코덱이나 RTP, RTCP 등 다양한 프로토콜에 의해 만들어진 데이터인 경우에, 스트리밍 데이터의 패킷 그 자체를 변경할 필요없이 패킷 그 자체를 도 2의 전송방법을 통해 그대로 전송할 수 있다. 수신장치(110)는 정보메시지(210)를 통해 스트리밍 데이터가 RTP, RTCP 등의 패킷 형식인지 알 수 있으며, 이를 통해 수신한 데이터메시지를 해당 프로토콜로 처리하여 재생할 수 있다.
본 실시 예는 웹 호환성과 가독성을 고려하여 텍스트 기반의 MIME 형식의 규칙을 이용할 뿐이므로 정보메시지(210)가 반드시 MIME와 일치할 필요는 없다. 예를 들어, 송신장치(100)는 표준 HTTP MIME 정보의 형식을 따르되 다양한 스트리밍 데이터와 패킷의 형식 등을 사용자가 정의하여 사용할 수 있는 API를 제공할 수 있다.
본 실시 예는 정보메시지(210)를 이용하여 다양한 형태의 스트리밍 데이터를 전송할 수 있으므로, 다양한 프로토콜의 데이터 형식을 내부적으로 수용하는 것이 가능하므로 서로 다른 프로토콜을 연동할 때 변환의 부담없이 효율성을 잃지 않고 편리하게 사용할 수 있다. 또한 가장 복잡한 WebRTC 형식의 데이터부터 가장 간단한 형태의 데이터 형식의 데이터를 전송할 수 있어 매우 폭넓은 스트리밍 어플리케이션을 지원할 수 있다. 즉, 본 실시 예의 데이터 송수신 방법을 적용하여 저사양의 IoT 기기에서도 멀티미디어 스트리밍을 구현할 수 있고 고사양의 기기에서도 보다 최적화된 전송기법으로 고품질의 저지연 스트리밍을 구현할 수 있다.
도 5는 본 발명의 실시 예에 따른 다양한 종류의 스트리밍 데이터를 전송하는 방법의 일 예를 도시한 도면이다.
도 5를 참조하면, 송신장치(100)는 수신장치(110)와 통신이 연결된 상태에서 이미지 데이터(510), 영상 데이터(512), 오디오 데이터(514) 등을 순차적으로 실시간 전송할 수 있다. 송신장치(100)는 수신장치(110)에게 전송하는 스트리밍 데이터의 데이터형태가 무엇인지 알려주시기 위하여 스트리밍 데이터를 전송하기 전에 먼저 정보메시지(500,502,504)를 전송한다.
예를 들어, 송신장치(100)는 이미지 데이터(510)를 전송하기 전에 스트리밍 데이터의 데이터형태가 이미지임을 나타내는 제1 정보메시지(500)를 전송한다. 또한 송신장치(100)는 영상데이터(512)를 전송하기 전에 스트리밍 데이터의 데이터형태가 영상임을 나타내는 제2 정보메시지(502)를 전송하고, 오디오데이터(514)를 전송하기 전에 스트리밍 데이터의 데이터형태가 오디오임을 나타내는 제3 정보메시지(504)를 전송한다. 따라서 수신장치(110)는 제1 정보메시지(500), 제2 정보메시지(502) 및 제3 정보메시지(503)를 통해 수신되는 스트리밍 데이터가 어떤 종류의 데이터인지 파악할 수 있다. 정보메시지(500,502,504)는 텍스트 기반으로 전송되므로 수신장치(110)는 정보메시지를 그대로 읽어 그 내용을 확인할 수 있다.
다른 예로, 송신장치(100)는 제1 데이터메시지를 전송하는 도중에 잠시 제2 데이터메시지를 전송하고, 다시 제1 데이터메이지를 이어서 전송할 수 있다. 이를 위해, 송신장치(100)는 제1 데이터메시지에 대한 제1 정보메시지, 제2 데이터메시지에 대한 제2 정보메시지, 다시 제1 데이터메시지에 대한 제1 정보메시지를 각 데이터메시지의 전송 전에 전송할 수 있다.
도 6은 본 발명의 실시 예에 따른 정보메시지를 주기적으로 전송하는 방법의 일 예를 도시한 도면이다.
도 6을 참조하면, 송신장치(100)는 한 종류의 스트리밍 데이터의 데이터메시지들(610,612,614)을 전송하면서 주기적으로 제1 정보메시지(600)를 전송할 수 있다. 제1 정보메시지(600)의 반복 전송 주기는 어플리케이션 등에 따라 다양하게 설저오딜 수 있다.
새로운 제2 수신장치(미도시)는 스트리밍 데이터의 전송 중에 송신장치(100)에 접속하여 중간 부분부터 스트리링 데이터를 수신할 수 있다. 그러나 제2 수신장치(미도시)는 중간 부분부터 수신한 데이터메시지가 어떤 종류의 스트리밍 데이터인지 알 수 없어 이를 재생할 수 없다. 제2 수신장치(미도시)는 스트리밍 데이터의 종류를 파악하기 위하여 제1 정보메시지(600)를 수신할 때까지 기다린다. 예를 들어, 제2 수신장치(미도시)는 두 번째 전송된 제1 정보메시지(600)를 수신하면 스트리밍 데이터의 데이터형태를 파악하고, 그 다음 수신하는 데이터메시지(614)를 파악된 데이터형태에 따라 처리하여 재생할 수 있다. 제2 수신장치(미도시)는 제1 정보메시지(600)의 수신 전에 수신한 데이터메시지는 모두 폐기할 수 있다.
도 7은 본 발명의 실시 예에 따른 송신장치가 실시간으로 데이터를 송신하는 방법의 일 예를 도시한 흐름도이다.
도 7을 참조하면, 송신장치(100)는 제1 데이터메시지의 데이터형태정보를 포함하는 제1 정보메시지를 텍스트 기반으로 전송한다(S700). 송신장치(100)는 제1 정보메시지의 전송 이후에 복수의 제1 데이터메시지를 연속하여 전송할 수 있다(S710). 여기서, 제1 데이터메시지 및 상기 제1 정보메시지는 적어도 하나 이상의 패킷으로 구성되어 어플리케이션에서 구분이 가능한 논리적 송수신 데이터 단위의 메시지이다. 제1 정보메시지는 MIME 형식으로 정의되어 있으며, 일 예가 도 3 및 도 4에 도시되어 있다.
다른 실시 예로, 송신장치(100)는 중간에 스트리밍 데이터를 수신하는 수신장치를 위하여 일정 주기로 제1 정보메시지를 반복 전송할 수 있다. 이에 대한 예가 도 6에 도시되어 있다.
제1 데이터메시지의 데이터형태와 다른 제2 데이터메시지를 전송하고자 할때, 송신장치(100)는 제2 데이터메시지의 데이터형태를 나타내는 제2 정보메시지를 전송한다(S720). 송신장치(100)는 제2 정보메시지 전송 후에 제2 데이터메시지를 전송한다(S730). 다른 실시 예로, 송신장치(100)는 제2 정보메시지를 일정 주기로 반복하여 전송할 수 있다.
송신장치(100)와 수신장치(110)는 웹 연결을 그대로 유지한 채 서로 다른 종류의 스트리밍 데이터를 실시간으로 송수신할 수 있다. 예를 들어, 송신장치(100)는 앞서 살핀 제1 정보메시지, 적어도 하나 이상의 제1 데이터메시지, 제2 정보메시지, 적어도 하나 이상의 제2 데이터메시지를 하나의 연결을 통해 순차적으로 전송할 수 있다.
도 8은 본 발명의 실시 예에 따른 수신장치가 실시간으로 데이터를 수신하는 방법의 일 예를 도시한 흐름도이다.
도 8을 참조하면, 수신장치(110)는 텍스트 기반으로 전송되는 제1 정보메시지를 수신하면(S800), 제1 정보메시지를 통해 스트리밍 데이터의 데이터형태를 파악한다(S810). 수신장치(110)는 데이터형태정보를 기반으로 제1 정보메시지의 수신 이후에 수신하는 데이터메시지를 처리하고 재생한다(S820). 예를 들어, 스트리밍 데이터가 특정 코덱이나 RTP에 의해 생성된 패킷을 포함하는 경우에, 수신장치(110)는 제1 정보메시지를 기반으로 스트리밍 데이터의 패킷을 특정 코덱 또는 RTP 등으로 디코딩하고 해석할 수 있다. 수신장치(110)는 스트리밍 데이터(예를 들어, 비디오, 오디오 등)를 데이터 형태에 맞는 각자의 재생장치(비디오재생 어플리케이션, 오디오재생 어플리케이션 등)로 전달하여 재생할 수 있다.
다른 실시 예로, 수신장치(110)는 송신장치(100)가 전송하는 스트리밍 데이터를 처음부터 수신하지 않고 중간에 송신장치(100)에 접속하여 중간부터 스트리밍 데이터를 수신할 수 있다. 이때 수신장치(110)는 제1 정보메시지를 수신하기 전에 수신한 제1 데이터메시지를 폐기하고, 제1 정보메시지를 수신한 이후에 수신한 제1 데이터메시지를 처리하여 재생할 수 있다.
도 9는 본 발명의 실시 예에 따른 스트리밍 데이터 처리를 위한 상태천이도의 일 예를 도시한 도면이다.
도 9를 참조하면, 수신장치(110)는 초기상태(900)에서 정보메시지를 수신하기 위하여 대기한다. 텍스트 기반의 정보메시지를 수신하면, 수신장치(110)는 정보메시지 해독 상태(910)로 천이한다. 만약 정보메시지의 해독에 오류가 있으면 수신장치(110)는 다시 초기상태(900)로 돌아가서, 새로운 정보메시지를 수신할 때까지 대기한다.
정보메시지의 해독이 정상적으로 완료되면, 수신장치(110)는 데이터메시지 수신 및 처리 상태(920)로 천이한다. 데이터메시지의 수신 및 처리 중에 정보메시지를 수신하면, 수신장치(110)는 정보메시지 해독 상태(910)로 다시 천이한다. 해독에 오류가 발생하면, 수신장치(110)는 새로운 정보메시지를 수신할 때까지 초기상태(900)로 대기한다. 또한 수신장치(110)는 데이터메시지의 수신 및 처리 상태(920)에서 전송 오류나 전송 중단 등이 발생하면, 초기상태(900)가 되어 정보메시지의 수신을 대기한다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, SSD, 광데이터 저장장치 등이 있다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시 예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.

Claims (9)

  1. 송신장치가 수행하는 실시간 데이터 전송 방법에 있어서,
    제1 데이터메시지의 데이터형태정보를 포함하는 제1 정보메시지를 텍스트 기반으로 전송하는 단계; 및
    복수의 제1 데이터메시지를 연속하여 전송하는 단계;를 포함하고,
    상기 제1 데이터메시지 및 상기 제1 정보메시지는 적어도 하나 이상의 패킷으로 구성되어 어플리케이션에서 구분이 가능한 논리적 송수신 데이터 단위의 메시지인 것을 특징으로 하는 실시간 데이터 전송 방법.
  2. 제1 항에 있어서,
    상기 제1 정보메시지는 상기 데이터형태정보를 MIME(Multipurpose Internet Mail Extensions) 형식으로 정의하는 것을 특징으로 하는 실시간 데이터 전송 방법.
  3. 제 1항에 있어서, 상기 제1 정보메시지를 전송하는 단계는,
    일정 주기로 반복하여 제1 정보메시지를 전송하는 단계;를 포함하는 것을 특징으로 하는 실시간 데이터 전송 방법.
  4. 제 1항에 있어서,
    새로운 데이터형태정보를 포함하는 제2 정보메시지를 전송하는 단계; 및
    상기 제2 정보메시지의 전송 이후에 새로운 데이터형태의 제2 데이터메시지를 전송하는 단계;를 더 포함하는 것을 특징으로 하는 실시간 데이터 전송 방법.
  5. 제 4항에 있어서,
    적어도 하나 이상의 수신자와 웹 기반의 전송프로토콜을 이용하여 연결된 상태를 그대로 유지하면서 상기 제1 정보메시지, 상기 제1 데이터메시지, 상기 제2 정보메시지, 상기 제2 데이터메시지를 전송하는 것을 특징으로 하는 실시간 데이터 전송 방법.
  6. 수신장치가 수행하는 실시간 데이터 수신 방법에 있어서,
    텍스트 기반으로 전송되는 제1 정보메시지를 수신하면, 상기 제1 정보메시지를 통해 데이터형태정보를 파악하는 단계; 및
    상기 데이터형태정보를 기반으로 상기 제1 정보메시지의 수신 이후에 수신하는 데이터메시지를 처리하는 단계;를 포함하는 것을 특징으로 하는 실시간 데이터 수신 방법.
  7. 제 6항에 있어서,
    상기 제1 정보메시지와 상이한 제2 정보메시지를 수신하면, 상기 제2 정보메시지 이후에 수신한 제2 데이터메시지를 상기 제2 정보메시지에 포함된 데이터형태정보를 이용하여 처리하는 단계;를 더 포함하는 것을 특징으로 하는 실시간 데이터 수신 방법.
  8. 제 6항에 있어서,
    상기 제1 정보메시지는 상기 데이터형태정보를 MIME(Multipurpose Internet Mail Extensions) 형식으로 정의하는 것을 특징으로 하는 실시간 데이터 전송 방법.
  9. 제 1항 내지 제 8항 중 어느 한 항에 기재된 방법을 수행하기 위한 컴퓨터 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020220105640A 2022-08-23 2022-08-23 실시간 데이터 송수신 방법 및 그 장치 KR20240027435A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220105640A KR20240027435A (ko) 2022-08-23 2022-08-23 실시간 데이터 송수신 방법 및 그 장치
PCT/KR2023/001923 WO2024043420A1 (ko) 2022-08-23 2023-02-09 실시간 데이터 송수신 방법 및 그 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220105640A KR20240027435A (ko) 2022-08-23 2022-08-23 실시간 데이터 송수신 방법 및 그 장치

Publications (1)

Publication Number Publication Date
KR20240027435A true KR20240027435A (ko) 2024-03-04

Family

ID=90013345

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220105640A KR20240027435A (ko) 2022-08-23 2022-08-23 실시간 데이터 송수신 방법 및 그 장치

Country Status (2)

Country Link
KR (1) KR20240027435A (ko)
WO (1) WO2024043420A1 (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005027068A1 (en) * 2003-09-12 2005-03-24 Canon Kabushiki Kaisha Streaming non-continuous video data
KR101701742B1 (ko) * 2010-06-24 2017-02-02 삼성전자주식회사 이동통신 단말기 간 실시간 스트리밍을 위한 장치 및 방법
KR20120138604A (ko) * 2011-06-14 2012-12-26 삼성전자주식회사 멀티미디어 시스템에서 복합 미디어 컨텐츠를 송수신하는 방법 및 장치
JP2015136058A (ja) * 2014-01-17 2015-07-27 ソニー株式会社 通信装置、通信データ生成方法、および通信データ処理方法
KR102299004B1 (ko) * 2014-03-10 2021-09-09 삼성전자주식회사 메시지들을 대쉬 클라이언트로 송신하는 방법 및 장치

Also Published As

Publication number Publication date
WO2024043420A1 (ko) 2024-02-29

Similar Documents

Publication Publication Date Title
KR100926007B1 (ko) 스트리밍 및 제어 처리를 위한 별도의 구성을 이용한미디어 데이터 프로세싱
US20160337424A1 (en) Transferring media data using a websocket subprotocol
US7162533B2 (en) Session description message extensions
JP2005110244A (ja) マルチメディアストリーミングサービスシステム及びその方法
CN106941629B (zh) 基于sip+rtp与rtmp协议互通的实时直播方法
US20180176278A1 (en) Detecting and signaling new initialization segments during manifest-file-free media streaming
US8959240B2 (en) Method, apparatus and system for rapid acquisition of multicast realtime transport protcol sessions
Lei et al. Design and implementation of streaming media processing software based on RTMP
EP2827596A1 (en) Transmitting and receiving method of multimedia video data and corresponding device
CN101789956A (zh) 一种实现数字家庭远程通讯服务的***及方法
US10924524B2 (en) Communication devices, communication data generation method, and communication data processing method
CN109327435B (zh) 媒体资源获取方法、装置及网关设备
CN112771876B (zh) 检索媒体数据的方法和设备以及发送媒体数据的方法和设备
CN114221909B (zh) 数据传输方法、装置、终端及存储介质
CN112565247B (zh) 基于IPv6的移动终端实时多媒体数据流传输***及方法
CN109361671A (zh) 一种基于sip协议的流媒体传输架构方法
CN110611639A (zh) 流媒体会议的音频数据处理方法和装置
CN104469538A (zh) 面向画面画质较小损失的rtp视频流数据包重组方法
KR20240027435A (ko) 실시간 데이터 송수신 방법 및 그 장치
US20170055006A1 (en) Receiver, transmitter, data communication method, and data processing method
CN110087020B (zh) 一种iOS设备进行视联网会议的实现方法及***
TWI523461B (zh) 通訊系統和方法
JP4876427B2 (ja) 通信システム、送信装置、送信方法、受信装置、受信方法、およびプログラム
CN110602431A (zh) 配置参数修改方法、装置
Paik et al. Media-aware scheduling method for transmitting signalling message over MPEG media transport-based broadcast

Legal Events

Date Code Title Description
E902 Notification of reason for refusal