KR20220050104A - 스트리밍 미디어 전송 방법, 스트리밍 미디어 서버 및 스트리밍 미디어 시스템 - Google Patents

스트리밍 미디어 전송 방법, 스트리밍 미디어 서버 및 스트리밍 미디어 시스템 Download PDF

Info

Publication number
KR20220050104A
KR20220050104A KR1020220041980A KR20220041980A KR20220050104A KR 20220050104 A KR20220050104 A KR 20220050104A KR 1020220041980 A KR1020220041980 A KR 1020220041980A KR 20220041980 A KR20220041980 A KR 20220041980A KR 20220050104 A KR20220050104 A KR 20220050104A
Authority
KR
South Korea
Prior art keywords
streaming media
server
receiver
packaged
streaming
Prior art date
Application number
KR1020220041980A
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 아폴로 인텔리전트 커넥티비티 (베이징) 테크놀로지 씨오., 엘티디.
Publication of KR20220050104A publication Critical patent/KR20220050104A/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/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
    • H04L65/608
    • 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/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • H04L61/20
    • H04L65/1003
    • 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/40Support for services or applications
    • H04L65/4061Push-to services, e.g. push-to-talk or push-to-video
    • H04L65/602
    • 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/756Media network packet handling adapting media to device capabilities
    • 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 
    • H04L67/2842
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/53Network services using third party service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 개시는 스트리밍 미디어 전송 방법, 스트리밍 미디어 서버 및 스트리밍 미디어 시스템을 제공하며, 인공지능 기술 분야에 관한 것으로, 구체적으로 스마트 교통, 컴퓨터 시각 기술 분야에 관한 것이다. 구체적인 구현 수단은 스트리밍 미디어 서버를 통해 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하고, 스트리밍 미디어 요청 중의 유형에 대응되는 스트리밍 미디어 프로토콜에 따라, 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송한다. 따라서, 스트리밍 미디어 수신기는 패키징된 스트리밍 미디어를 직접 처리할 수 있으므로, 스트리밍 미디어의 실시간 성능을 향상시킨다.

Description

스트리밍 미디어 전송 방법, 스트리밍 미디어 서버 및 스트리밍 미디어 시스템{METHOD FOR TRANSMITTING STREAM, STREAMING SERVER AND STREAMING SYSTEM}
본 개시는 인공지능 기술 분야에 관한 것으로, 구체적으로 스마트 교통, 컴퓨터 시각 기술 분야에 관한 것으로, 특히 스트리밍 미디어 전송 방법, 스트리밍 미디어 서버 및 스트리밍 미디어 시스템에 관한 것이다.
스마트 교통 신호제어 프로젝트에서, 다수의 교차로 보안 감시 카메라에 액세스하여 스트리밍 미디어 데이터(예컨대 동영상 이미지 데이터)를 획득하여, 후속 AI 알고리즘 처리 및 브라우저 쪽에서 스트리밍 미디어에 대한 처리(예컨대 차선 표기를 위한 동영상 재생 등)에 사용한다.
관련 기술에서, 주로 사유적인 스트리밍 미디어 서버를 사용하며, 다양한 제조사의 SDK(Software Development Kit, 소프트웨어 개발 키트)를 통합하여, 다른 제조사의 스트리밍 미디어 서비스로부터 스트리밍 미디어(예컨대 동영상 스트림)를 가져온다. 그러나, 많은 수의 카메라 공급업체로 인해 액세스 프로토콜이 크게 다르며, 서로 다른 제조사의 SDK로 구현될 경우, 품질이 고르지 않고, 프로토콜이 서로 호환되지 않아, 스트리밍 미디어를 브라우저 쪽에서 직접 처리할 수 없으므로, 스트리밍 미디어의 실시간 성능이 저하된다.
본 개시는 스트리밍 미디어 전송 방법, 스트리밍 미디어 서버 및 스트리밍 미디어 시스템을 제공한다.
본 개시의 일 측면에 따르면, 스트리밍 미디어 전송 방법을 제공하며, 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하는 단계 - 상기 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 상기 스트리밍 미디어 수신기의 유형을 포함함 -; 상기 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 상기 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 상기 스트리밍 미디어를 획득하는 단계; 및 패키징된 상기 스트리밍 미디어를 상기 스트리밍 미디어 수신기에 전송하는 단계;를 포함한다.
본 개시의 다른 측면에 따르면, 스트리밍 미디어 서버를 제공하며, 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하는 제1 수신 모듈 - 상기 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 상기 스트리밍 미디어 수신기의 유형을 포함함 -; 상기 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 상기 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 상기 스트리밍 미디어를 획득하는 패키징 모듈; 및 패키징된 상기 스트리밍 미디어를 상기 스트리밍 미디어 수신기에 전송하는 전송 모듈;을 포함한다.
본 개시의 다른 측면에 따르면, 스트리밍 미디어 시스템을 제공하며, 스트리밍 미디어 서버 클러스터 및 시그널링 서버 클러스터를 포함하며; 상기 스트리밍 미디어 서버 클러스터는 상기 시그널링 서버 클러스터, 스트리밍 미디어 수신기 및 제3자 플랫폼에 각각 연결되어 전술한 스트리밍 미디어 전송 방법을 수행할 수 있도록 한다.
본 개시의 다른 측면에 따르면, 전자 기기를 제공하며, 적어도 하나의 프로세서; 및 상기 적어도 하나의 프로세서와 통신 가능하게 연결되는 메모리;를 포함하고, 상기 메모리에 상기 적어도 하나의 프로세서에 의해 수행 가능한 명령이 저장되어 있고, 상기 명령은 상기 적어도 하나의 프로세서에 의해 수행되어, 상기 적어도 하나의 프로세서가 전술한 스트리밍 미디어 전송 방법을 수행하도록 한다.
본 개시의 다른 측면에 따르면, 컴퓨터 명령이 저장되어 있는 비일시적 컴퓨터 판독 가능 저장 매체를 제공하며, 상기 컴퓨터 명령은 상기 컴퓨터가 전술한 스트리밍 미디어 전송 방법을 수행하는 데 사용된다.
본 개시의 다른 측면에 따르면, 컴퓨터 판독 가능 저장 매체에 저장되어 있는컴퓨터 프로그램을 제공하며, 상기 컴퓨터 프로그램이 프로세서에 의해 수행되어, 전술한 스트리밍 미디어 전송 방법을 구현한다.
이해 가능한 바로는, 본 부분에서 설명된 내용은 본 개시의 실시예의 핵심 또는 중요한 특징을 식별하기 위한 것이 아니며, 본 개시의 범위를 한정하지도 않는다. 본 개시의 기타 특징들은 하기의 명세서에 의해 쉽게 이해될 것이다.
첨부된 도면은 본 개시의 수단을 더 잘 이해하기 위한 것으로, 본 개시에 대한 한정이 구성되지 않는다.
도 1은 본 개시의 제1 실시예에 따른 개략도이다.
도 2는 본 개시의 제2 실시예에 따른 개략도이다.
도 3은 본 개시의 실시예에 따른 스트리밍 미디어의 전송 타이밍 다이어그램이다.
도 4는 본 개시의 제3 실시예에 따른 개략도이다.
도 5는 본 개시의 제4 실시예에 따른 개략도이다.
도 6은 본 개시의 제5 실시예에 따른 개략도이다.
도 7은 본 개시의 제6 실시예에 따른 개략도이다.
도 8은 본 개시의 제7 실시예에 따른 개략도이다.
도 9는 본 개시의 제8 실시예에 따른 개략도이다.
도 10은 본 개시의 제9 실시예에 따른 개략도이다.
도 11은 본 개시의 실시예에 따른 스트리밍 미디어 시스템의 구조 개략도이다.
도 12는 본 개시의 실시예의 스트리밍 미디어 전송 방법을 구현하기 위한 전자 기기의 블록도이다.
이하, 첨부된 도면을 결합하여 본 개시의 예시적인 실시예에 대해 설명하며, 여기에는 이해를 돕기 위해 본 개시의 실시예의 다양한 세부 사항을 포함하므로, 이는 단지 예시적인 것으로 이해해야 한다. 따라서, 당업자는 본 개시의 범위 및 사상을 벗어나지 않는 한 여기에 설명된 실시예에 대해 다양한 변경 및 수정이 이루어질 수 있음을 인식해야 한다. 마찬가지로, 명확성과 간결성을 위해, 하기의 설명에서는 공지된 기능 및 구조에 대한 설명을 생략한다.
스마트 교통 신호제어 프로젝트에서, 다수의 교차로 보안 감시 카메라에 액세스하여 스트리밍 미디어 데이터(예컨대 동영상 이미지 데이터)를 획득하여, 후속 AI 알고리즘 처리 및 브라우저 쪽에서 스트리밍 미디어에 대한 처리(예컨대 차선 표기를 위한 동영상 재생 등)에 사용한다.
동영상 감지를 기반한 스마트 교통 신호제어 시스템이 데이터 지원으로 고정밀도 교통 지표를 요구하기 때문에 스트리밍 미디어의 실시간 성능에 대한 요구가 매우 높고, 또한 스마트 교통 신호제어 프로젝트가 일반적으로 다수의 고화질 및 고해상도 카메라에 액세스하기 때문에, 스트리밍 미디어의 포워딩을 위해 높은 동시성 및 고성능 스트리밍 미디어 서버가 요구된다.
관련 기술에서, 스트리밍 미디어 서버는 주로 하기의 세 가지 방식으로 스트리밍 미디어를 획득하되, 첫번째 방식은 RTSP(Real Time Streaming Protocol, 실시간 스트림 전송 프로토콜) 프로토콜을 통해 프런트 엔드 카메라에 직접 연결되어, 프런트 엔드 카메라의 RTSP 스트리밍 미디어(예컨대 동영상 스트림)를 직접 획득하는 것이며; 두번째 방식은 보안 제조업체 사유적인 프로토콜을 기반으로 SDK를 통해 제3자 스트리밍 미디어 플랫폼에 연결되어, 제3자 스트리밍 미디어 플랫폼 관련 SDK를 사용하고, TCP 및 사유적인 프로토콜을 사용하여 제3자 스트리밍 미디어 플랫폼과 인터랙션하여 스트리밍 미디어를 가져오는 것이며; 세번째 방식은 GB28181 프로토콜을 통해 제3자 제조업체 플랫폼에 연결되어, RTSP 프로토콜을 기반한 실시간 동영상 스트림 포워딩 서비스를 제공한다.
그러나, 상기 첫번째 방식은 소수의 기기 제조업체가 액세스되는 시나리오에서만 적용될 수 있고, 스트리밍 미디어 서버와 프런트 엔드 기기는 연통된 네트워크에 있어야 하고, 네트워크가 격리되어 있는 경우, 스트리밍 미디어 서버와 프런트 엔드 카메라는 직접 연결될 수 없으므로 스트리밍 미디어를 획득할 수 없고, 또한 프런트 엔드 기기의 대역폭과 처리 능력이 제한되어 있으므로, 동일한 기기에 병행 액세스할 경우, 프런트 엔드 기기는 종종 응답하지 못한 문제 등이 있다. 상기 두번째 방식은 많은 수의 보안 제조업체, 복잡한 프로토콜 및 긴 개발 주기로 인해, SDK 출력 코드 스트림 포맷은 주로 사유적인 프로토콜이므로 전용 해석 라이브러리가 요구되고, 스트리밍 미디어를 재생하기 위해 특수 클라이언트를 설치해야 하며, 브라우저 쪽에서 재생할 수 없다. 상기 세번째 방식은 브라우저 쪽 재생 프로토콜을 제공할 수 없으며, IE 브라우저를 기반한 재생 플러그인은 메인 스트림 브라우저에서 차선 표기 등 조작을 수행할 수 없다.
전술한 많은 수의 카메라 공급업체로 인해 액세스 프로토콜이 크게 다르고, 서로 다른 제조사의 SDK로 구현될 경우, 품질이 고르지 않고, 프로토콜이 서로 호환되지 않아, 스트리밍 미디어를 브라우저 쪽에서 처리할 수 없고, 스트리밍 미디어의 실시간 성능이 저하되는 문제를 해결하기 위해, 본 개시에서 스트리밍 미디어 전송 방법, 스트리밍 미디어 서버 및 스트리밍 미디어 시스템을 제공한다.
도 1은 본 개시의 제1 실시예에 따른 개략도이다. 설명해야 하는 바로는, 본 개시의 실시예의 스트리밍 미디어 전송 방법은 스트리밍 미디어 서버에 적용될 수 있으며, 즉 본 개시의 실시예의 스트리밍 미디어 전송 방법을 스트리밍 미디어 서버 측에서 설명한다.
도 1에 도시된 바와 같이, 당해 스트리밍 미디어 전송 방법은 하기의 단계를 포함한다.
단계 101, 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하며, 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 스트리밍 미디어 수신기의 유형을 포함한다.
본 개시의 실시예에서, 스트리밍 미디어 수신기가 스트리밍 미디어를 획득하기 위해, 스트리밍 미디어 수신기는 스트리밍 미디어 요청을 스트리밍 미디어 서버에 송신할 수 있고, 스트리밍 미디어 서버는 스트리밍 미디어 수신기가 송신한 스트리밍 미디어 요청을 수신할 수 있다. 설명해야 하는 바로는, 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 스트리밍 미디어 수신기의 유형을 포함할 수 있지만, 이에 제한되지 않는다.
스트리밍 미디어 식별자는 스트리밍 미디어를 식별하는 데 적용될 수 있으며, 예컨대 스트리밍 미디어 식별자는 스트리밍 미디어 ID(Identity document, 신원 식별자 번호)일 수 있으며, 스트리밍 미디어 수신기의 유형은 브라우저 유형, 비브라우저 유형 등을 포함할 수 있지만, 이에 제한되지 않는다.
단계 102, 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 획득한다.
이해 가능한 바로는, 스트리밍 미디어 수신기의 유형이 다를 경우, 대응되는 스트리밍 미디어 프로토콜도 다르며, 예컨대 브라우저 유형에 대응되는 스트리밍 미디어 프로토콜은 RTMP(Real Time Messaging Protocol, 실시간 메세지 전송 프로토콜), HTTP-FLV(일종의 라이브 방송 프로토콜) 등일 수 있고, 비브라우저 유형에 대응되는 스트리밍 미디어 프로토콜은 RTSP(Real Time Streaming Protocol, 실시간 스트림 전송 프로토콜) 등일 수 있다.
스트리밍 미디어 서버가 다양한 프로토콜의 스트리밍 미디어를 제공하여 스트리밍 미디어 수신기로 하여금 스트리밍 미디어 서버에서 포워딩한 스트리밍 미디어를 직접 처리할 수 있도록, 본 개시의 실시예의 가능한 구현 방식으로서, 스트리밍 미디어 서버는 스트리밍 미디어 수신기의 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행할 수 있다.
예를 들어, 동영상 스트림의 이미지 정보를 식별하기 편리하도록 동영상 스트림을 RTSP 프로토콜을 통해 패키징하고; 브라우저 쪽에서 재생 가능한 표준 동영상 스트림을 제공하기 위해 RTMP, HTTP-FLV 프로토콜을 통해 패키징한다.
단계 103, 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송한다.
스트리밍 미디어 수신기가 스트리밍 미디어를 처리하여 스트리밍 미디어의 실시간 성능을 향상시키기 위해, 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 제공한다. 본 개시의 실시예에서, 스트리밍 미디어 서버가 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송한다. 스트리밍 미디어 수신기는 스트리밍 미디어를 직접 처리할 수 있으며, 예컨대, 스트리밍 미디어 수신기는 브라우저이고, 스트리밍 미디어가 동영상 스트림인 경우를 예로 들어, 브라우저는 패키징된 동영상 스트림을 수신한 후, 당해 동영상을 직접 재생할 수 있다. 다른 예를 들면, 스트리밍 미디어 수신기는 비브라우저 유형이고, 스트리밍 미디어 수신기가 RTSP 프로토콜을 통해 패키징된 동영상 스트림을 수신할 경우, RTSP 프로토콜을 통해 패키징된 동영상 스트림에 대해 이미지 정보 식별 및 표기를 수행할 수 있다.
요약하면, 스트리밍 미디어 서버를 통해 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하고, 스트리밍 미디어 요청 중의 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송한다. 따라서, 스트리밍 미디어 수신기는 패키징된 스트리밍 미디어를 직접 처리할 수 있으므로, 스트리밍 미디어의 실시간 성능을 향상시킨다.
이해 가능한 바로는, 스트리밍 미디어 서버가 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신한 후, 스트리밍 미디어 요청에 따라 스트리밍 미디어를 패키징하여, 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송하기 때문에, 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하기 전에, 스트리밍 미디어 서버는 스트리밍 미디어를 미리 획득해야 한다. 도 2에 도시된 바와 같이, 도 2는 본 개시의 제2 실시예에 따른 개략도이다. 본 개시의 실시예에서, 스트리밍 미디어 서버는 시그널링 서버와 인터랙션하여 스트리밍 미디어를 수신할 어드레스 및 포트를 결정할 수 있고, 제3자 플랫폼은 스트리밍 미디어를 수신할 어드레스 및 포트에 따라 스트리밍 미디어를 스트리밍 미디어 서버에 푸시한다. 도 2에 도시된 실시예의 단계는 다음과 같다.
단계 201, 시그널링 서버의 스트리밍 미디어 어드레스 신청 요청을 수신할 경우, 스트리밍 미디어 서버에서 스트리밍 미디어를 수신할 어드레스 및 포트를 결정한다.
이해해야 하는 바로는, 제3자 플랫폼에서 제공한 스트리밍 미디어를 획득하기 위해, 시그널링 서버는 국가 표준에 규정된 프로토콜(예컨대 GB28181)에 따라 제3자 플랫폼, 스트리밍 미디어 서버와 인터랙션할 수 있고, 스트리밍 미디어 서버는 국가 표준에 규정된 프로토콜에 따라 제3자 플랫폼과 인터랙션할 수 있다. 스트리밍 미디어 서버는 국제 표준 프로토콜에 따라 스트리밍 미디어 수신기와 인터랙션할 수 있다.
스트리밍 미디어 서버가 스트리밍 미디어를 정확하게 수신할 수 있도록, 스트리밍 미디어 수신기가 스트리밍 미디어 요청을 스트리밍 미디어 서버에 송신할 경우, 시그널링 서버는 스트리밍 미디어 어드레스 신청 요청을 스트리밍 미디어 서버에 송신할 수 있고, 스트리밍 미디어 서버는 스트리밍 미디어 어드레스 신청 요청에 따라 스트리밍 미디어를 수신하기 위한 어드레스 및 포트를 결정한다.
단계 202, 어드레스 및 포트를 시그널링 서버에 송신하여, 제3자 플랫폼에서 스트리밍 미디어 푸시를 수행하도록 요청한다.
다음, 스트리밍 미디어 서버는 스트리밍 미디어를 수신하기 위한 어드레스 및 포트를 시그널링 서버에 송신하며, 시그널링 서버는 제3자 플랫폼과 인터랙션하여 제3자 플랫폼에서 스트리밍 미디어를 스트리밍 미디어 서버에 푸시하도록 요청할 수 있다.
단계 203, 제3자 플랫폼에서 어드레스 및 포트에 따라 푸시한 스트리밍 미디어를 수신한다.
나아가, 제3자 플랫폼은 스트리밍 미디어 서버가 스트리밍 미디어를 수신하기 위한 어드레스 및 포트에 따라 스트리밍 미디어를 스트리밍 미디어 서버에 푸시한다.
단계 204, 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하며, 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 스트리밍 미디어 수신기의 유형을 포함한다.
단계 205, 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 획득한다.
단계 206, 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송한다.
본 개시의 실시예에서, 단계 204-206은 각각 본 개시의 각 실시예 중 임의의 방식을 사용하여 구현될 수 있으나, 본 개시의 실시예에서 이에 대해 한정하지 않고, 반복적으로 설명하지도 않는다.
본 개시의 실시예를 보다 명확하게 설명하기 위해, 이하 예를 들어 설명한다.
예를 들어 설명하면, 도 3에 도시된 바와 같이, 도 3에서, 국가 표준 서버가 본 개시의 실시예의 시그널링 서버에 해당되고, Client가 본 개시의 실시예 중의 스트리밍 미디어 수신기에 해당되며, 국가 표준 서버가 스트리밍 미디어 어드레스 신청 요청을 스트리밍 미디어 서버에 송신하기 전에, 제3자 플랫폼은 국가 표준 서버를 통해 등록 센터로 등록을 요청하여, 국가 표준 서버는 제3자 플랫폼의 플랫폼 리스트를 캐시 서버에 송신하며, 등록 성공 후 국가 표준 서버는 제3자 플랫폼의 채널 리스트(예컨대 카메라 리스트)를 획득하여 채널 리스트를 캐시 서버에 송신할 수 있다. 이 외에, 스트리밍 미디어 서버의 병행 능력을 향상시키기 위해, 국가 표준 서버는 또한 등록 센터를 통해 스트리밍 미디어 서버의 리스트를 획득하여, 스트리밍 미디어 서버 리스트를 캐시 서버에 송신할 수 있다. Client는 국가 표준 서버를 통해 캐시 서버로 채널에 대응되는 스트리밍 미디어 어드레스를 조회할 수 있다. 예를 들어, Client는 국가 표준 서버를 통해 채널 및 스트리밍 미디어 프로토콜으로서 RTMP에 대응되는 스트리밍 미디어 어드레스를 조회하고, 캐시 서버는 스트리밍 미디어 어드레스를 반환하되, 대응되는 스트리밍 미디어 어드레스가 존재하지 않을 경우, 비움을 반환할 수 있다. 또한, 국가 표준 서버는 새로운 채널을 위해 스트리밍 미디어 서버에서 스트리밍 미디어를 수신할 어드레스 및 포트를 신청할 수 있다. 예컨대, 국가 표준 서버는 스트리밍 미디어 어드레스 신청 요청을 스트리밍 미디어 서버에 송신하여, 스트리밍 미디어 서버에서 스트리밍 미디어를 수신할 어드레스 및 포트를 결정하고, 스트리밍 미디어 서버는 어드레스 및 포트를 국가 표준 서버에 송신하고, 국가 표준 서버는 Play 명령 요청을 송신하여, 제3자 플랫폼에서 스트리밍 미디어 푸시를 수행하도록 요청한다. Play 명령 요청에는 스트리밍 미디어를 수신할 어드레스 및 포트를 포함하며, 제3자 플랫폼은 어드레스 및 포트에 따라 스트리밍 미디어를 스트리밍 미디어 서버에 푸시하고, 스트리밍 미디어 서버는 Client의 스트리밍 미디어 요청을 수신하며, 당해 스트리밍 미디어 요청에는 Client의 유형으로서 브라우저 유형 및 스트리밍 미디어 식별자를 포함하고, 브라우저에 대응되는 프로토콜은 RTMP이고, 스트리밍 미디어 서버는 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 획득하고, 패키징된 스트리밍 미디어(실시간 동영상 스트림)를 Client에 송신한다. Client는 당해 패키징된 스트리밍 미디어를 직접 처리할 수 있다.
요약하면, 시그널링 서버의 스트리밍 미디어 어드레스 신청 요청을 수신할 경우, 스트리밍 미디어 서버에서 스트리밍 미디어를 수신할 어드레스 및 포트를 결정하고; 어드레스 및 포트를 시그널링 서버에 송신하여, 제3자 플랫폼에서 스트리밍 미디어 푸시를 수행하도록 요청하고; 제3자 플랫폼에서 어드레스 및 포트에 따라 푸시한 스트리밍 미디어를 수신하고; 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하는 바, 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 스트리밍 미디어 수신기의 유형을 포함하고; 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 획득하고; 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송한다. 따라서, 스트리밍 미디어 서버는 스트리밍 미디어를 정확하게 획득할 수 있고, 스트리밍 미디어를 스트리밍 미디어 수신기에 포워딩하며, 스트리밍 미디어 수신기는 패키징된 스트리밍 미디어를 직접 처리할 수 있으므로, 스트리밍 미디어의 실시간 성능을 향상시킨다.
스트리밍 미디어의 시간 지연을 줄이고, 스트리밍 미디어의 실시간 성능을 더 향상시키기 위해, 도 4에 도시된 바와 같이, 도 4는 본 개시의 제3 실시예에 따른 개략도이며, 본 개시의 실시예에서, 스트리밍 미디어 서버가 제3자 플랫폼에서 어드레스 및 포트에 따라 푸시한 스트리밍 미디어를 수신할 경우, 스트리밍 미디어 서버의 캐시 대기열의 용량을 조정하여, 스트리밍 미디어의 실시간 성능을 더 향상시킬 수 있다. 도 4에 도시된 실시예는 하기의 단계를 포함한다.
단계 401, 시그널링 서버의 스트리밍 미디어 어드레스 신청 요청을 수신할 경우, 스트리밍 미디어 서버에서 스트리밍 미디어를 수신할 어드레스 및 포트를 결정한다.
단계 402, 어드레스 및 포트를 시그널링 서버에 송신하여, 제3자 플랫폼에서 스트리밍 미디어 푸시를 수행하도록 요청한다.
단계 403, 스트리밍 미디어의 유형에 따라, 캐시 대기열의 용량을 조정한다.
본 개시의 실시예에서, 스트리밍 미디어의 유형이 다르면, 상응하게 스트리밍 미디어의 실시간 성능에 대한 요구도 다르다. 따라서, 상이한 스트리밍 미디어의 실시간 성능에 대한 요구에 대해, 스트리밍 미디어의 유형에 따라, 캐시 대기열의 용량을 동적으로 조정할 수 있다.
예시로서, 스트리밍 미디어 유형이 감시형 스트리밍 미디어일 경우, 스트리밍 미디어의 실시간 성능에 대한 요구가 상대적으로 높으며, 캐시 대기열의 용량을 줄일 수 있다. 예를 들어, 브라우저 쪽에서 동영상에 대해 도로 감시를 수행할 경우, GOP-cache(프레임 간 캐시)를 취소하여, 스트리밍 미디어 서버의 캐시 대기열의 용량을 줄이고, 동영상 프레임 속도를 낮추고, 스트리밍 미디어의 시간 지연을 줄이며, 스트리밍 미디어의 실시간 성능을 향상시킬 수 있다.
다른 예시로서, 스트리밍 미디어 유형이 비감시형 스트리밍 미디어일 경우, 스트리밍 미디어의 실시간 성능에 대한 요구가 상대적으로 낮으며, 스트리밍 미디어 서버의 캐시 대기열의 용량을 조정하지 않아도 된다.
단계 404, 제3자 플랫폼에서 어드레스 및 포트에 따라 푸시한 스트리밍 미디어 데이터 패킷을 수신하여, 스트리밍 미디어 데이터 패킷을 캐시 대기열에 캐시한다.
스트리밍 미디어 서버의 성능을 향상시키고, 관련 자원의 소비를 감소하기 위해, 본 개시의 실시예에서, 제3자 플랫폼에서 어드레스 및 포트에 따라 푸시한 스트리밍 미디어 데이터 패킷을 수신할 경우, 스트리밍 미디어 서버는 스트리밍 미디어 데이터 패킷을 캐시 대기열에 캐시할 수 있다.
단계 405, 캐시 대기열의 스트리밍 미디어 데이터 패킷이 용량을 만족할 경우, 캐시 대기열의 복수의 스트리밍 미디어 데이터 패킷을 하나의 스트리밍 미디어 세그먼트로 통합하고, 캐시 대기열을 비운다.
관련 자원의 소비를 더 감소하기 위해, 본 개시의 실시예에서, 캐시 대기열의 스트리밍 미디어 데이터 패킷이 용량을 만족할 경우, 캐시 대기열의 복수의 스트리밍 미디어 데이터 패킷을 하나의 스트리밍 미디어 세그먼트로 통합하여, 스트리밍 미디어 서버가 스트리밍 미디어를 포워딩하는 동시에, 캐시 대기열을 비우므로, 관련 자원을 절약하는 데 편리하다.
단계 406, 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하며, 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 스트리밍 미디어 수신기의 유형을 포함한다.
단계 407, 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 획득한다.
단계 408, 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송한다.
본 개시의 실시예에서, 단계 401-402, 406-408은 각각 본 개시의 각 실시예 중 임의의 방식을 사용하여 구현될 수 있으나, 본 개시의 실시예에서 이에 대해 한정하지 않고, 반복적으로 설명하지도 않는다.
요약하면, 시그널링 서버의 스트리밍 미디어 어드레스 신청 요청을 수신할 경우, 스트리밍 미디어 서버에서 스트리밍 미디어를 수신할 어드레스 및 포트를 결정하고; 어드레스 및 포트를 시그널링 서버에 송신하여, 제3자 플랫폼에서 스트리밍 미디어 푸시를 수행하도록 요청하고; 스트리밍 미디어의 유형에 따라, 캐시 대기열의 용량을 조정하고; 제3자 플랫폼에서 어드레스 및 포트에 따라 푸시한 스트리밍 미디어 데이터 패킷을 수신하여, 스트리밍 미디어 데이터 패킷을 캐시 대기열에 캐시하고; 캐시 대기열의 스트리밍 미디어 데이터 패킷이 용량을 만족할 경우, 캐시 대기열의 복수의 스트리밍 미디어 데이터 패킷을 하나의 스트리밍 미디어 세그먼트로 통합하고, 캐시 대기열을 비우고; 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하며, 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 스트리밍 미디어 수신기의 유형을 포함하고; 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 획득하고; 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송한다. 따라서, 스트리밍 미디어 유형에 따라, 캐시 대기열의 길이를 조정하여, 스트리밍 미디어의 시간 지연을 줄이고, 스트리밍 미디어 수신기가 패키징된 스트리밍 미디어를 직접 처리할 수 있으므로, 스트리밍 미디어의 실시간 성능을 보다 향상시킨다.
스트리밍 미디어 서버의 성능을 향상시키는 동시에, 스트리밍 미디어의 실시간 성능을 향상시키기 위해, 도 5에 도시된 바와 같이, 도 5는 본 개시의 제4 실시예에 따른 개략도이다. 본 개시의 실시예에서, 스트리밍 미디어 서버는 복수의 멀티미디어 데이터 패킷을 배치에 따라 스트리밍 미디어 수신기에 전송할 수 있으며, 도 5에 도시된 실시예는 하기의 단계를 포함한다.
단계 501, 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하며, 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 스트리밍 미디어 수신기의 유형을 포함한다.
단계 502, 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 획득한다.
단계 503, 패키징된 스트리밍 미디어에 따라, 스트리밍 미디어 수신기에 전송할 복수의 스트리밍 미디어 데이터 패킷을 결정한다.
이해해야 하는 바로는, 스트리밍 미디어 서버가 스트리밍 미디어를 전송할 때, 스트리밍 미디어를 복수의 스트리밍 미디어 데이터 패킷으로 분할할 수 있으며, 스트리밍 미디어 서버가 하나의 스트리밍 미디어 데이터 패킷을 송신할 때마다, 스트리밍 미디어 수신기는 스트리밍 미디어 데이터 패킷을 수신할 경우, ACK(Acknowledge character, 인식 문자)를 송신하여 스트리밍 미디어 서버에 피드백한다. 스트리밍 미디어 수신기가 ACK를 송신하는 횟수를 감소하고, 스트리밍 미디어 서버의 관련 자원의 소비를 줄이기 위해, 본 개시의 실시예에서, 패키징된 스트리밍 미디어를 획득한 후, 스트리밍 미디어 서버가 배치에 따라 스트리밍 미디어를 스트리밍 미디어 수신기에 전송하기 위해, 스트리밍 미디어 서버는 스트리밍 미디어 수신기에 전송할 복수의 스트리밍 미디어 데이터 패킷을 캐시할 수 있다. 예를 들어, 스트리밍 미디어 서버는 MSG_MORE 표기를 설정하여, 각 배치에서 스트리밍 미디어 수신기에 전송한 데이터 패킷의 개수를 표기할 수 있다.
단계 504, 복수의 스트리밍 미디어 데이터 패킷을 배치에 따라 스트리밍 미디어 수신기에 전송한다.
나아가, 스트리밍 미디어 서버의 처리량을 향상시키기 위해, 스트리밍 미디어 서버는 캐시한 복수의 스트리밍 미디어 데이터 패킷을 배치에 따라 스트리밍 미디어 수신기에 전송할 수 있다.
본 개시의 실시예에서, 단계 501-502는 각각 본 개시의 각 실시예 중 임의의 방식을 사용하여 구현될 수 있으나, 본 개시의 실시예에서 이에 대해 한정하지 않고, 반복적으로 설명하지도 않는다.
요약하면, 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하며, 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 스트리밍 미디어 수신기의 유형을 포함하고, 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 획득하고, 패키징된 스트리밍 미디어에 따라, 스트리밍 미디어 수신기에 전송할 복수의 스트리밍 미디어 데이터 패킷을 결정하여, 복수의 스트리밍 미디어 데이터 패킷을 배치에 따라 스트리밍 미디어 수신기에 전송한다. 따라서, 스트리밍 미디어 서버는 패키징된 스트리밍 미디어를 복수의 스트리밍 미디어 데이터 패킷으로 분할하여, 배치에 따라 스트리밍 미디어 수신기에 전송하고, 또한 스트리밍 미디어 수신기는 패키징된 스트리밍 미디어를 직접 처리할 수 있으므로, 스트리밍 미디어 서버의 성능을 향상시키고, 관련 자원의 소비를 감소하는 동시에, 스트리밍 미디어의 실시간 성능을 향상시킨다.
스트리밍 미디어 서버의 성능을 향상시키는 동시에, 스트리밍 미디어의 실시간 성능을 향상시키기 위해, 도 6에 도시된 바와 같이, 도 6은 본 개시의 제5 실시예에 따른 개략도이다. 본 개시의 실시예에서, 스트리밍 미디어 서버는 응답 지시를 닫는 방식으로 복수의 스트리밍 미디어 데이터 패킷을 스트리밍 미디어 수신기에 전송할 수 있다. 도 6에 도시된 실시예는 하기의 단계를 포함할 수 있다.
단계 601, 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하며, 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 스트리밍 미디어 수신기의 유형을 포함한다.
단계 602, 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 획득한다.
단계 603, 패키징된 스트리밍 미디어에 따라, 스트리밍 미디어 수신기에 전송할 복수의 스트리밍 미디어 데이터 패킷을 결정한다.
단계 604, 응답 지시를 닫는 방식으로 복수의 스트리밍 미디어 데이터 패킷을 스트리밍 미디어 수신기에 전송한다.
스트리밍 미디어의 실시간 성능을 향상시키고, 전송 효율을 향상시키기 위해, 스트리밍 미디어 서버는 응답 지시를 닫는 방식으로 복수의 스트리밍 미디어 데이터 패킷을 스트리밍 미디어 수신기에 전송할 수 있다. 예를 들어, TCP_NODELAY를 닫아, 복수의 스트리밍 미디어 데이터 패킷을 스트리밍 미디어 수신기에 전송할 수 있다.
본 개시의 실시예에서, 단계 601-603은 각각 본 개시의 각 실시예 중 임의의 방식을 사용하여 구현될 수 있으나, 본 개시의 실시예에서 이에 대해 한정하지 않고, 반복적으로 설명하지도 않는다.
요약하면, 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하며, 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 스트리밍 미디어 수신기의 유형을 포함하고, 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 획득하고, 패키징된 스트리밍 미디어에 따라, 스트리밍 미디어 수신기에 전송할 복수의 스트리밍 미디어 데이터 패킷을 결정하여, 응답 지시를 닫는 방식으로 복수의 스트리밍 미디어 데이터 패킷을 스트리밍 미디어 수신기에 전송한다. 따라서, 스트리밍 미디어 서버는 패키징된 스트리밍 미디어를 복수의 스트리밍 미디어 데이터 패킷으로 분할하여, 응답 지시를 닫는 방식으로 복수의 스트리밍 미디어 데이터 패킷을 스트리밍 미디어 수신기에 전송한다. 스트리밍 미디어 서버의 전송 효율을 향상시키고, 스트리밍 미디어 수신기는 패키징된 스트리밍 미디어를 직접 처리할 수 있으므로, 스트리밍 미디어의 실시간 성능을 향상시킨다.
스트리밍 미디어 서버의 성능을 향상시키고, 전송 효율을 향상시키는 동시에, 스트리밍 미디어의 실시간 성능을 향상시키기 위해, 도 7에 도시된 바와 같이, 도 7은 본 개시의 제6 실시예에 따른 개략도이다. 본 개시의 실시예에서, 스트리밍 미디어 서버는 복수의 멀티미디어 데이터 패킷을 배치에 따라 스트리밍 미디어 수신기에 전송하는 동시에, 응답 지시를 닫는 방식으로 복수의 스트리밍 미디어 데이터 패킷을 스트리밍 미디어 수신기에 전송할 수 있다. 도 7에 도시된 실시예는 하기의 단계를 포함할 수 있다.
단계 701, 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하며, 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 스트리밍 미디어 수신기의 유형을 포함한다.
단계 702, 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 획득한다.
단계 703, 패키징된 스트리밍 미디어에 따라, 스트리밍 미디어 수신기에 전송할 복수의 스트리밍 미디어 데이터 패킷을 결정한다.
단계 704, 복수의 스트리밍 미디어 데이터 패킷을 배치에 따라 스트리밍 미디어 수신기에 전송하고; 및 응답 지시를 닫는 방식으로 복수의 스트리밍 미디어 데이터 패킷을 스트리밍 미디어 수신기에 전송한다.
예를 들어, 스트리밍 미디어 서버는 MSG_MORE 표기를 설정하여, 각 배치에서 스트리밍 미디어 수신기에 전송한 데이터 패킷의 개수를 표기할 수 있다. MSG_MORE 표기를 열어, 복수의 스트리밍 미디어 데이터 패킷을 배치에 따라 스트리밍 미디어 수신기에 전송하고, 동시에, TCP_NODELAY를 닫아, 복수의 스트리밍 미디어 데이터 패킷을 스트리밍 미디어 수신기에 전송할 수 있다.
본 개시의 실시예에서, 단계 701-703은 각각 본 개시의 각 실시예 중 임의의 방식을 사용하여 구현될 수 있으나, 본 개시의 실시예에서 이에 대해 한정하지 않고, 반복적으로 설명하지도 않는다.
요약하면, 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하며, 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 스트리밍 미디어 수신기의 유형을 포함하고; 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 획득하고; 패키징된 스트리밍 미디어에 따라, 스트리밍 미디어 수신기에 전송할 복수의 스트리밍 미디어 데이터 패킷을 결정하고; 복수의 스트리밍 미디어 데이터 패킷을 배치에 따라 스트리밍 미디어 수신기에 전송하고; 및 응답 지시를 닫는 방식으로 복수의 스트리밍 미디어 데이터 패킷을 스트리밍 미디어 수신기에 전송한다. 따라서, 스트리밍 미디어 서버가 스트리밍 미디어를 전송하는 효율을 향상시키고, 동시에 스트리밍 미디어 서버의 성능을 향상시키고, 관련 자원의 소비를 줄이고, 또한 스트리밍 미디어 수신기는 패키징된 스트리밍 미디어를 직접 처리할 수 있으므로, 스트리밍 미디어의 실시간 성능을 향상시킨다.
스트리밍 미디어 서버의 성능을 향상시키는 동시에, 스트리밍 미디어의 실시간 성능을 향상시키기 위해, 도 8에 도시된 바와 같이, 도 8은 본 개시의 제7 실시예에 따른 개략도이다. 본 개시의 실시예에서, 스트리밍 미디어 전송 과정의 스레드 전환 횟수를 감소하여 스트리밍 미디어 서버의 성능을 향상시킬 수 있다. 도 8에 도시된 실시예는 하기의 단계를 포함할 수 있다.
단계 801, 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하며, 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 스트리밍 미디어 수신기의 유형을 포함한다.
단계 802, 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 획득한다.
단계 803, 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송하며, 스트리밍 미디어 전송의 스레드는 복수이고; 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송하는 과정에서, 복수의 스레드의 전환 방식은 한번의 스레드 스케줄링을 통해 복수의 스레드에 대해 스레드 전환 처리를 수행하는 것이다.
이해해야 하는 바로는, 스트리밍 미디어 서버가 스레드 전환 방식으로 스트리밍 미디어 수신기에 전송하여, 스레드 스케줄링의 소모가 상대적으로 크기 때문에, 스레드가 한번 전환될 때마다 한번의 스레드 스케줄링을 수행할 경우, 스트리밍 미디어 서버의 성능에 영향을 크게 줄 것이다. 따라서, 스트리밍 미디어 서버의 성능을 향상시키기 위해, 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송하는 과정에서, 한번의 스레드 스케줄링을 통해 복수의 스레드에 대해 스레드 전환 처리를 수행할 수 있다. 예를 들어, 당해 10K의 사용자가 32개의 CPU(Central Processing Unit, 중앙 처리 장치) 코어에 분포되어 있을 경우, 최대 32번의 스레드 전환을 수행하고, 한번에 복수의 스레드의 전환 처리에 대해 스레드 스케줄링을 수행하여, 스레드 스케줄링의 횟수를 감소하고, 스트리밍 미디어 서버의 성능을 향상시킨다.
본 개시의 실시예에서, 단계 801-802는 각각 본 개시의 각 실시예 중 임의의 방식을 사용하여 구현될 수 있으나, 본 개시의 실시예에서 이에 대해 한정하지 않고, 반복적으로 설명하지도 않는다.
요약하면, 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하며, 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 스트리밍 미디어 수신기의 유형을 포함하고; 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 획득하고; 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송하며, 스트리밍 미디어 전송의 스레드는 복수이고; 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송하는 과정에서, 복수의 스레드의 전환 방식은 한번의 스레드 스케줄링을 통해 복수의 스레드에 대해 스레드 전환 처리를 수행하는 것이다. 따라서, 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송하는 과정에서, 한번의 스레드 스케줄링을 통해 복수의 스레드에 대해 스레드 전환 처리를 수행할 수 있고, 스트리밍 미디어 수신기는 패키징된 스트리밍 미디어를 직접 처리할 수 있으므로, 스트리밍 미디어 서버의 성능을 향상시키고, 동시에 스트리밍 미디어의 실시간 성능을 향상시킨다.
스트리밍 미디어 서버의 성능을 향상시키는 동시에, 스트리밍 미디어의 실시간 성능을 향상시키기 위해, 도 9에 도시된 바와 같이, 도 9는 본 개시의 제8 실시예에 따른 개략도이다. 본 개시의 실시예에서, 스트리밍 미디어에 대한 복사가 존재할 경우, 스트리밍 미디어에 대한 반복적인 복사를 중지시켜, 스트리밍 미디어 서버의 성능을 향상시키는 동시에, 스트리밍 미디어의 실시간 성능을 향상시킬 수 있다. 도 9에 도시된 실시예는 하기의 단계를 포함한다.
단계 901, 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하며, 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 스트리밍 미디어 수신기의 유형을 포함한다.
단계 902, 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 획득한다.
단계 903, 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송한다. 스트리밍 미디어 전송의 스레드는 복수이고; 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송하는 과정에서, 복수의 스레드의 전환 방식은 한번의 스레드 스케줄링을 통해 복수의 스레드에 대해 스레드 전환 처리를 수행하는 것이다. 스레드 전환 처리 과정에서, 스트리밍 미디어에 대한 복사가 존재할 경우, 스트리밍 미디어에 대한 반복적인 복사를 중지시킨다.
이해해야 하는 바로는, 스레드 전환 처리 과정에서, 스레드 안전을 확보하기 위해, 스트리밍 미디어를 복사하여 스레드 안전을 확보할 수 있는데, 매번 스레드 전환 처리에서 모두 전송되는 스트리밍 미디어를 복사할 경우, 스트리밍 미디어 서버의 성능 소모가 상대적으로 크다. 스트리밍 미디어 서버의 성능 소모를 줄이기 위해, 스레드 전환 처리 과정에서, 스트리밍 미디어에 대한 복사가 존재할 경우, 스트리밍 미디어에 대한 반복적인 복사를 중지시키며, 복수의 스레드가 동일한 스트리밍 미디어를 공유할 수 있다. 스트리밍 미디어가 동영상 스트림인 경우를 예로 들어, 동일한 동영상 스트림을 복수의 클라이언트에 포워딩할 경우, C++11의 인용 기술을 사용하여 수를 계산할 수 있고, 당해 동영상 스트림에 대한 복사가 이미 존재할 경우, 당해 동영상 스트림에 대한 반복적인 복사를 중지시키며, 복수의 클라이언트가 동일한 동영상 스트림을 공유한다.
본 개시의 실시예에서, 단계 901-902는 각각 본 개시의 각 실시예 중 임의의 방식을 사용하여 구현될 수 있으나, 본 개시의 실시예에서 이에 대해 한정하지 않고, 반복적으로 설명하지도 않는다.
요약하면, 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하며, 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 스트리밍 미디어 수신기의 유형을 포함하고; 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 획득하고; 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송하며, 스트리밍 미디어 전송의 스레드는 복수이고; 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송하는 과정에서, 복수의 스레드의 전환 방식은 한번의 스레드 스케줄링을 통해 복수의 스레드에 대해 스레드 전환 처리를 수행하는 것이다. 스레드 전환 처리 과정에서, 스트리밍 미디어에 대한 복사가 존재할 경우, 스트리밍 미디어에 대한 반복적인 복사를 중지시킨다. 따라서, 스트리밍 미디어 서버의 성능 소모를 줄이고, 스트리밍 미디어 서버의 성능을 향상시키며, 스트리밍 미디어 수신기는 패키징된 스트리밍 미디어를 직접 처리할 수 있으므로, 스트리밍 미디어의 실시간 성능을 향상시킨다.
본 개시의 실시예의 스트리밍 미디어 전송 방법은, 스트리밍 미디어 서버를 통해 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하고, 스트리밍 미디어 요청 중의 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송한다. 따라서, 스트리밍 미디어 수신기는 패키징된 스트리밍 미디어를 직접 처리할 수 있으므로, 스트리밍 미디어의 실시간 성능을 향상시킨다.
상기 실시예를 구현하기 위해, 본 개시의 실시예는 또한 스트리밍 미디어 서버를 제공한다.
도 10은 본 개시의 제9 실시예에 따른 개략도이며, 도 10에 도시된 바와 같이, 당해 스트리밍 미디어 서버(1000)는 제1 수신 모듈(1010), 패키징 모듈(1020), 전송 모듈(1030)을 포함할 수 있다.
제1 수신 모듈(1010)은 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하는 데 사용되며, 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 스트리밍 미디어 수신기의 유형을 포함한다. 패키징 모듈(1020)은 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 획득하는 데 사용된다. 전송 모듈(1030)은 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송하는 데 사용된다.
본 개시의 실시예의 가능한 구현 방식으로서, 스트리밍 미디어 서버(1000)는 결정 모듈, 푸시 모듈, 제2 수신 모듈을 더 포함한다.
결정 모듈은 시그널링 서버의 스트리밍 미디어 어드레스 신청 요청을 수신할 경우, 스트리밍 미디어 서버에서 스트리밍 미디어를 수신할 어드레스 및 포트를 결정하는 데 사용되고; 푸시 모듈은 어드레스 및 포트를 상기 시그널링 서버에 송신하여, 제3자 플랫폼에서 스트리밍 미디어 푸시를 수행하도록 요청하는 데 사용되고; 제2 수신 모듈은 제3자 플랫폼에서 어드레스 및 포트에 따라 푸시한 스트리밍 미디어를 수신하는 데 사용된다.
본 개시의 실시예의 가능한 구현 방식으로서, 제2 수신 모듈은 구체적으로 스트리밍 미디어의 유형에 따라, 캐시 대기열의 용량을 조정하고; 제3자 플랫폼에서 어드레스 및 포트에 따라 푸시한 스트리밍 미디어 데이터 패킷을 수신하여, 스트리밍 미디어 데이터 패킷을 캐시 대기열에 캐시하고; 캐시 대기열의 스트리밍 미디어 데이터 패킷이 상기 용량을 만족할 경우, 캐시 대기열의 복수의 스트리밍 미디어 데이터 패킷을 하나의 스트리밍 미디어 세그먼트로 통합하고, 캐시 대기열을 비우는 데 사용된다.
본 개시의 실시예의 가능한 구현 방식으로서, 전송 모듈(1030)은 구체적으로 패키징된 스트리밍 미디어에 따라, 스트리밍 미디어 수신기에 전송할 복수의 스트리밍 미디어 데이터 패킷을 결정하는 것; 복수의 스트리밍 미디어 데이터 패킷을 배치에 따라 스트리밍 미디어 수신기에 전송하는 것; 및, 응답 지시를 닫는 방식으로 복수의 스트리밍 미디어 데이터 패킷을 스트리밍 미디어 수신기에 전송하는 것 중 적어도 하나에 사용된다.
본 개시의 실시예의 가능한 구현 방식으로서, 스트리밍 미디어 전송의 스레드는 복수이고; 상기 스트리밍 미디어 서버는 전환 처리 모듈을 더 포함한다.
전환 처리 모듈은 패키징된 상기 스트리밍 미디어를 상기 스트리밍 미디어 수신기에 전송하는 과정에서, 한번의 스레드 스케줄링을 통해 복수의 상기 스레드에 대해 스레드 전환 처리를 수행하는 데 사용된다.
본 개시의 실시예의 가능한 구현 방식으로서, 전환 처리 모듈은 또한 스레드 전환 처리 과정에서, 스트리밍 미디어에 대한 복사가 존재할 경우, 스트리밍 미디어에 대한 반복적인 복사를 중지시키는 데 사용된다.
본 개시의 실시예의 스트리밍 미디어 서버는, 스트리밍 미디어 서버를 통해 스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하고, 스트리밍 미디어 요청 중의 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 스트리밍 미디어를 스트리밍 미디어 수신기에 전송한다. 따라서, 스트리밍 미디어 수신기는 패키징된 스트리밍 미디어를 직접 처리할 수 있으므로, 스트리밍 미디어의 실시간 성능을 향상시킨다.
상기 실시예를 구현하기 위해, 본 개시의 실시예는 또한 스트리밍 미디어 시스템을 제공한다. 상기 스트리밍 미디어 시스템은 스트리밍 미디어 서버 클러스터 및 시그널링 서버 클러스터를 포함하며; 스트리밍 미디어 서버 클러스터는 시그널링 서버 클러스터, 스트리밍 미디어 수신기 및 제3자 플랫폼에 각각 연결되어 본 개시의 실시예에 따른 상기 스트리밍 미디어 전송 방법을 수행한다.
본 개시의 실시예의 가능한 구현 방식으로서, 시그널링 서버는 국가 표준에 규정된 제3자 플랫폼과 인터랙션하는 프로토콜에 따라 제3자 플랫폼과 인터랙션하고; 스트리밍 미디어 서버는 국가 표준에 규정된 제3자 플랫폼과 인터랙션하는 프로토콜에 따라 제3자 플랫폼과 인터랙션한다.
예를 들어 설명하면, 도 11에 도시된 바와 같이, 도 11은 본 개시의 실시예에 따른 스트리밍 미디어 시스템의 구조 개략도이다. 도 11에서 제3자 국가 표준 플랫폼은 본 개시의 실시예의 제3자 플랫폼에 해당되고, 국가 표준 서버 클러스터는 본 개시의 실시예의 시그널링 서버 클러스터에 해당되고, 클라이언트는 스트리밍 미디어 수신기에 해당된다. 스트리밍 미디어 서버 클러스터는 국가 표준 서버 클러스터(시그널링 서버 클러스터), 클라이언트(스트리밍 미디어 수신기) 및 제3자 국가 표준 플랫폼(제3자 플랫폼)에 각각 연결될 수 있으며, 시그널링 서버 클러스터는 국가 표준에 규정된 제3자 국가 표준 플랫폼과 인터랙션하는 프로토콜에 따라 제3자 국가 표준 플랫폼과 인터랙션하고; 스트리밍 미디어 서버 클러스터는 국가 표준에 규정된 제3자 국가 표준 플랫폼과 인터랙션하는 프로토콜에 따라 제3자 국가 표준 플랫폼과 인터랙션한다.
본 개시의 실시예에 따르면, 본 개시는 또한 전자 기기, 판독 가능 저장 매체 및 컴퓨터 프로그램을 제공한다.
도 12는 본 개시의 실시예를 실시하기 위한 예시적인 전자 기기(1200)의 개략적인 블록도이다. 전자 기기는 랩톱 컴퓨터, 데스크톱 컴퓨터, 워크 스테이션, 개인용 디지털 비서, 서버, 블레이드 서버, 메인 프레임워크 컴퓨터 및 기타 적합한 컴퓨터와 같은 다양한 형태의 디지털 컴퓨터를 나타내기 위한 것이다. 전자 기기는 또한 개인용 디지털 처리, 셀룰러 폰, 스마트 폰, 웨어러블 기기 및 기타 유사한 컴퓨팅 장치와 같은 다양한 형태의 모바일 장치를 나타낼 수도 있다. 본 명세서에서 제시된 구성 요소, 이들의 연결 및 관계, 또한 이들의 기능은 단지 예일 뿐이며 본문에서 설명되거나 및/또는 요구되는 본 개시의 구현을 제한하려는 의도가 아니다.
도 12에 도시된 바와 같이, 기기(1200)는 컴퓨팅 유닛(1201)을 포함하며, 읽기 전용 메모리(ROM)(1202)에 저장된 컴퓨터 프로그램에 의해 또는 저장 유닛(1208)으로부터 랜덤 액세스 메모리(RAM)(1203)에 로딩된 컴퓨터 프로그램에 의해 수행되어 각종 적절한 동작 및 처리를 수행할 수 있다. RAM(1203)에, 또한 기기(1200)가 작업을 수행하기 위해 필요한 각종 프로그램 및 데이터가 저장되어 있다. 컴퓨팅 유닛(1201), ROM(1202) 및 RAM(1203)은 버스(1204)를 통해 서로 연결되어 있다. 입력/출력(I/O) 인터페이스(1205)도 버스(1204)에 연결되어 있다.
키보드, 마우스 등과 같은 입력 유닛(1206); 각종 유형의 모니터, 스피커 등과 같은 출력 유닛(1207); 자기 디스크, 광 디스크 등과 같은 저장 유닛(1208); 및 네트워크 카드, 모뎀, 무선 통신 트랜시버 등과 같은 통신 유닛(1209)을 포함하는 기기(1200) 중의 복수의 부품은 I/O 인터페이스(1205)에 연결된다. 통신 유닛(1209)은 장치(1200)가 인터넷과 같은 컴퓨터 네트워크 및/또는 다양한 통신 네트워크를 통해 다른 기기와 정보/데이터를 교환하는 것을 허락한다.
컴퓨팅 유닛(1201)은 프로세싱 및 컴퓨팅 능력을 구비한 다양한 범용 및/또는 전용 프로세싱 컴포넌트일 수 있다. 컴퓨팅 유닛(1201)의 일부 예시는 중앙 처리 유닛(CPU), 그래픽 처리 유닛(GPU), 다양한 전용 인공 지능(AI) 컴퓨팅 칩, 기계 러닝 모델 알고리즘을 수행하는 다양한 컴퓨팅 유닛, 디지털 신호 처리기(DSP), 및 임의의 적절한 프로세서, 컨트롤러, 마이크로 컨트롤러 등을 포함하지만, 이에 제한되지 않는다. 컴퓨팅 유닛(1201)은 예를 들어 스트리밍 미디어 전송 방법과 같은 윗글에서 설명된 각 방법 및 처리를 수행한다. 예를 들어, 일부 실시예에서, 스트리밍 미디어 전송 방법은 저장 유닛(1208)과 같은 기계 판독 가능 매체에 유형적으로 포함되어 있는 컴퓨터 소프트웨어 프로그램으로 구현될 수 있다. 일부 실시예에서, 컴퓨터 프로그램의 일부 또는 전부는 ROM(1202) 및/또는 통신 유닛(1209)을 통해 기기(1200)에 로드 및/또는 설치될 수 있다. 컴퓨터 프로그램이 RAM(1203)에 로딩되고 컴퓨팅 유닛(1201)에 의해 수행되는 경우, 전술한 스트리밍 미디어 전송 방법의 하나 또는 하나 이상의 단계를 수행할 수 있다. 대안적으로, 다른 실시예에서, 컴퓨팅 유닛(1201)은 임의의 다른 적절한 방식을 통해(예를 들어, 펌웨어에 의해) 구성되어 스트리밍 미디어 전송 방법을 수행하도록 한다.
여기서 설명되는 시스템 및 기술의 다양한 실시 방식은 디지털 전자 회로 시스템, 집적 회로 시스템, 필드 프로그래머블 게이트 어레이(FPGA), 주문형 집적 회로(ASIC), 특정 용도 표준 제품(ASSP), 시스템온칩(SOC), 복합 프로그래머블 논리 소자(CPLD), 컴퓨터 하드웨어, 펌웨어, 소프트웨어 및 이들의 조합 중의 적어도 하나로 구현될 수 있다. 이러한 다양한 실시 방식은 하나 또는 하나 이상의 컴퓨터 프로그램에서의 구현을 포함할 수 있으며, 당해 하나 또는 하나 이상의 컴퓨터 프로그램은 적어도 하나의 프로그램 가능 프로세서를 포함하는 프로그램 가능 시스템에서 수행 및/또는 해석될 수 있고, 당해 프로그램 가능 프로세서는 전용 또는 일반용일 수 있고, 저장 시스템, 적어도 하나의 입력 장치 및 적어도 하나의 출력 장치로부터 데이터 및 명령를 수신하고 또한 데이터 및 명령를 당해 저장 시스템, 당해 적어도 하나의 입력 장치 및 당해 적어도 하나의 출력 장치에 전송할 수 있다.
본 개시의 방법을 구현하기 위해 사용되는 프로그램 코드는 하나 또는 하나 이상의 프로그래밍 언어의 임의의 조합으로 작성될 수 있다. 이러한 프로그램 코드는 범용 컴퓨터, 전용 컴퓨터 또는 기타 프로그래머블 데이터 처리 장치의 프로세서 또는 컨트롤러에 제공될 수 있으므로, 프로그램 코드가 프로세서 또는 컨트롤러에 의해 수행되는 경우, 흐름도 및/또는 블록도에서 규정한 기능/조작을 구현하도록 한다. 프로그램 코드는 전체적으로 기계에서 수행되거나, 부분적으로 기계에서 수행되거나, 독립 소프트웨어 패키지로서 부분적으로 기계에서 수행되고 부분적으로 원격 기계에서 수행되거나 또는 전체적으로 원격 기계 또는 서버에서 수행될 수 있다.
본 개시의 문맥에서, 기계 판독 가능 매체는 자연어 수행 시스템, 장치 또는 기기에 의해 사용되거나 자연어 수행 시스템, 장치 또는 기기와 결합하여 사용되는 프로그램을 포함하거나 저장할 수 있는 유형의 매체일 수 있다. 기계 판독 가능 매체는 기계 판독 가능 신호 매체 또는 기계 판독 가능 저장 매체일 수 있다. 기계 판독 가능 매체는 전자, 자기, 광학, 전자기, 적외선 또는 반도체 시스템, 장치 또는 기기, 또는 상기 내용의 임의의 적절한 조합을 포함할 수 있지만 이에 제한되지 않는다. 기계 판독 가능 저장 매체의 더 구체적인 예시는 하나 또는 하나 이상의 전선을 기반하는 전기 연결, 휴대용 컴퓨터 디스크, 하드 디스크, 랜덤 액세스 메모리(RAM), 읽기 전용 메모리(ROM), 지울 수 있는 프로그래머블 읽기 전용 메모리(EPROM 또는 플래시 메모리), 광섬유, 휴대용 컴팩트 디스크 읽기 전용 메모리(CD-ROM), 광학 저장 기기, 자기 저장 기기 또는 상기 내용의 임의의 적절한 조합을 포함할 수 있지만 이에 제한되지 않는다.
사용자와의 인터랙션을 제공하기 위해 여기에 설명된 시스템 및 기술은 컴퓨터에서 실시될 수 있다. 당해 컴퓨터는 사용자에게 정보를 디스플레이하기 위한 디스플레이 장치(예를 들어, CRT(음극선관) 또는 LCD(액정 디스플레이) 모니터); 및 키보드 및 포인팅 장치(예를 들어, 마우스 또는 트랙볼)를 구비하며, 사용자는 당해 키보드 및 당해 포인팅 장치를 통해 컴퓨터에 입력을 제공할 수 있다. 다른 유형의 장치를 사용하여 사용자와의 인터랙션을 제공할 수도 있으며, 예를 들어, 사용자에게 제공되는 피드백은 임의의 형태의 감지 피드백(예를 들어, 시각적 피드백, 청각적 피드백 또는 촉각적 피드백)일 수 있고; 임의의 형태(소리 입력, 음성 입력 또는 촉각 입력을 포함)로 사용자로부터의 입력을 수신할 수 있다.
여기서 설명된 시스템 및 기술은 백엔드 부품을 포함하는 컴퓨팅 시스템(예를 들어, 데이터 서버로서), 또는 미들웨어 부품을 포함하는 컴퓨팅 시스템(예를 들어, 응용 서버), 또는 프런트 엔드 부품을 포함하는 컴퓨팅 시스템(예를 들어, 그래픽 사용자 인터페이스 또는 네트워크 브라우저를 구비하는 사용자 컴퓨터인 바, 사용자는 당해 그래픽 사용자 인터페이스 또는 네트워크 브라우저를 통해 여기서 설명된 시스템 및 기술의 실시 방식과 인터랙션할 수 있음), 또는 이러한 백엔드 부품, 미들웨어 부품 또는 프런트 엔드 부품의 임의의 조합을 포한하는 컴퓨팅 시스템에서 실시될 수 있다. 시스템의 부품은 임의의 형태 또는 매체의 디지털 데이터 통신(예를 들어, 통신 네트워크)을 통해 서로 연결될 수 있다. 통신 네트워크의 예시는 근거리 통신망(LAN), 광역 통신망(WAN), 인터넷 및 블록체인 네트워크를 포함한다.
컴퓨터 시스템은 클라이언트 및 서버를 포함할 수 있다. 클라이언트 및 서버는 일반적으로 서로 멀리 떨어져 있고, 통신 네트워크를 통해 인터랙션한다. 서로 클라이언트-서버 관계를 가지는 컴퓨터 프로그램을 대응되는 컴퓨터에서 수행하여 클라이언트와 서버 간의 관계를 생성한다. 서버는 또한 분산 시스템의 서버, 또는 블록체인을 결합한 서버일 수 있다.
설명해야 하는 바로는, 인공지능은 인간의 특정 사유 과정 및 지능 행위(예컨대, 러닝, 추리, 사고, 계획 등)를 컴퓨터로 시뮬레이션하기 위해 연구하는 학과이며, 하드웨어 층면의 기술 뿐만 아니라 소프트웨어 층면의 기술도 포함한다. 인공지능 하드웨어 기술은 일반적으로 센서, 전용 인공지능 칩, 클라우드 컴퓨팅, 분산 저장, 빅데이터 처리 등과 같은 기술을 포함하고; 인공지능 소프트웨어 기술은 주로 컴퓨터 시각 기술, 음성 인식 기술, 자연어 처리 기술 및 기계 학습/딥러닝, 빅데이터 처리 기술, 지식 그래프 기술 등 몇 가지 주요 방향을 포함한다.
이해 가능한 바로는, 전술한 다양한 형식의 프로세스에 있어서 단계 재정렬, 추가 또는 삭제를 할 수 있다. 예를 들어, 본 개시에 개시된 기술 솔루션이 이루고자 하는 결과를 구현할 수 있는 한, 본 개시에 기재된 각 단계들은 병렬로, 순차적으로 또는 다른 순서로 수행될 수 있으나, 본 명세서에서 이에 대해 한정하지 않는다.
전술한 구체적인 실시 방식들은 본 개시의 보호 범위에 대한 한정을 구성하지 않는다. 당업자라면 본 개시의 설계 요건 및 기타 요인에 따라 다양한 수정, 조합, 서비스 조합 및 대체가 이루어질 수 있음을 이해해야 한다. 본 개시의 정신과 원칙 내에서 이루어진 모든 수정, 동등한 대체 및 개선은 본 개시의 보호 범위에 포함된다.

Claims (17)

  1. 스트리밍 미디어 서버에 적용되는 스트리밍 미디어 전송 방법에 있어서,
    스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하는 단계 - 상기 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 상기 스트리밍 미디어 수신기의 유형을 포함함 -;
    상기 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 상기 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 상기 스트리밍 미디어를 획득하는 단계; 및
    패키징된 상기 스트리밍 미디어를 상기 스트리밍 미디어 수신기에 전송하는 단계;를 포함하는,
    것을 특징으로 하는 스트리밍 미디어 전송 방법.
  2. 제1항에 있어서,
    스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하기 전에,
    시그널링 서버의 스트리밍 미디어 어드레스 신청 요청을 수신할 경우, 상기 스트리밍 미디어 서버에서 스트리밍 미디어를 수신할 어드레스 및 포트를 결정하는 단계;
    상기 어드레스 및 상기 포트를 상기 시그널링 서버에 송신하여, 제3자 플랫폼에서 스트리밍 미디어 푸시를 수행하도록 요청하는 단계; 및
    상기 제3자 플랫폼에서 상기 어드레스 및 상기 포트에 따라 푸시한 상기 스트리밍 미디어를 수신하는 단계;를 더 포함하는,
    것을 특징으로 하는 스트리밍 미디어 전송 방법.
  3. 제2항에 있어서,
    상기 제3자 플랫폼에서 상기 어드레스 및 상기 포트에 따라 푸시한 상기 스트리밍 미디어를 수신하는 단계는,
    상기 스트리밍 미디어의 유형에 따라, 캐시 대기열의 용량을 조정하는 단계;
    상기 제3자 플랫폼에서 상기 어드레스 및 상기 포트에 따라 푸시한 스트리밍 미디어 데이터 패킷을 수신하여, 상기 스트리밍 미디어 데이터 패킷을 상기 캐시 대기열에 캐시하는 단계; 및
    상기 캐시 대기열의 스트리밍 미디어 데이터 패킷이 상기 용량을 만족할 경우, 상기 캐시 대기열의 복수의 스트리밍 미디어 데이터 패킷을 하나의 상기 스트리밍 미디어 세그먼트로 통합하고, 상기 캐시 대기열을 비우는 단계;를 포함하는,
    것을 특징으로 하는 스트리밍 미디어 전송 방법.
  4. 제1항에 있어서,
    상기 패키징된 상기 스트리밍 미디어를 상기 스트리밍 미디어 수신기에 전송하는 단계는,
    패키징된 상기 스트리밍 미디어에 따라, 상기 스트리밍 미디어 수신기에 전송할 복수의 스트리밍 미디어 데이터 패킷을 결정하는 단계;
    상기 복수의 스트리밍 미디어 데이터 패킷을 배치에 따라 상기 스트리밍 미디어 수신기에 전송하는 단계;
    및,
    응답 지시를 닫는 방식으로 상기 복수의 스트리밍 미디어 데이터 패킷을 상기 스트리밍 미디어 수신기에 전송하는 단계; 중 적어도 하나를 포함하는,
    것을 특징으로 하는 스트리밍 미디어 전송 방법.
  5. 제1항에 있어서,
    스트리밍 미디어 전송의 스레드는 복수이고;
    패키징된 상기 스트리밍 미디어를 상기 스트리밍 미디어 수신기에 전송하는 과정에서, 복수의 상기 스레드의 전환 방식은 한번의 스레드 스케줄링을 통해 복수의 상기 스레드에 대해 스레드 전환 처리를 수행하는,
    것을 특징으로 하는 스트리밍 미디어 전송 방법.
  6. 제5항에 있어서,
    스레드 전환 처리 과정에서, 상기 스트리밍 미디어에 대한 복사가 존재할 경우, 상기 스트리밍 미디어에 대한 반복적인 복사를 중지시키는,
    것을 특징으로 하는 스트리밍 미디어 전송 방법.
  7. 스트리밍 미디어 서버에 있어서,
    스트리밍 미디어 수신기의 스트리밍 미디어 요청을 수신하는 제1 수신 모듈 - 상기 스트리밍 미디어 요청은 스트리밍 미디어 식별자 및 상기 스트리밍 미디어 수신기의 유형을 포함함 -;
    상기 유형에 대응되는 스트리밍 미디어 프로토콜에 따라 상기 스트리밍 미디어 식별자에 대응되는 스트리밍 미디어에 대해 프로토콜 패키징을 수행하여, 패키징된 상기 스트리밍 미디어를 획득하는 패키징 모듈; 및
    패키징된 상기 스트리밍 미디어를 상기 스트리밍 미디어 수신기에 전송하는 전송 모듈;을 포함하는,
    것을 특징으로 하는 스트리밍 미디어 서버.
  8. 제7항에 있어서,
    시그널링 서버의 스트리밍 미디어 어드레스 신청 요청을 수신할 경우, 상기 스트리밍 미디어 서버에서 스트리밍 미디어를 수신할 어드레스 및 포트를 결정하는 결정 모듈;
    상기 어드레스 및 상기 포트를 상기 시그널링 서버에 송신하여, 제3자 플랫폼에서 스트리밍 미디어 푸시를 수행하도록 요청하는 푸시 모듈; 및
    상기 제3자 플랫폼에서 상기 어드레스 및 상기 포트에 따라 푸시한 상기 스트리밍 미디어를 수신하는 제2 수신 모듈;을 더 포함하는,
    것을 특징으로 하는 스트리밍 미디어 서버.
  9. 제8항에 있어서,
    상기 제2 수신 모듈은, 구체적으로,
    상기 스트리밍 미디어의 유형에 따라, 캐시 대기열의 용량을 조정하고;
    상기 제3자 플랫폼에서 상기 어드레스 및 상기 포트에 따라 푸시한 스트리밍 미디어 데이터 패킷을 수신하여, 상기 스트리밍 미디어 데이터 패킷을 상기 캐시 대기열에 캐시하고;
    상기 캐시 대기열의 스트리밍 미디어 데이터 패킷이 상기 용량을 만족할 경우, 상기 캐시 대기열의 복수의 스트리밍 미디어 데이터 패킷을 하나의 상기 스트리밍 미디어 세그먼트로 통합하고, 상기 캐시 대기열을 비우는 데 사용되는,
    것을 특징으로 하는 스트리밍 미디어 서버.
  10. 제7항에 있어서,
    상기 전송 모듈은, 구체적으로,
    패키징된 상기 스트리밍 미디어에 따라, 상기 스트리밍 미디어 수신기에 전송할 복수의 스트리밍 미디어 데이터 패킷을 결정하고;
    상기 복수의 스트리밍 미디어 데이터 패킷을 배치에 따라 상기 스트리밍 미디어 수신기에 전송하는 것;
    및,
    응답 지시를 닫는 방식으로 상기 복수의 스트리밍 미디어 데이터 패킷을 상기 스트리밍 미디어 수신기에 전송하는 것; 중 적어도 하나에 사용되는,
    것을 특징으로 하는 스트리밍 미디어 서버.
  11. 제7항에 있어서,
    스트리밍 미디어 전송의 스레드는 복수이고; 상기 스트리밍 미디어 서버는,
    패키징된 상기 스트리밍 미디어를 상기 스트리밍 미디어 수신기에 전송하는 과정에서, 한번의 스레드 스케줄링을 통해 복수의 상기 스레드에 대해 스레드 전환 처리를 수행하는 전환 처리 모듈을 더 포함하는,
    것을 특징으로 하는 스트리밍 미디어 서버.
  12. 제11항에 있어서,
    상기 전환 처리 모듈은, 또한
    스레드 전환 처리 과정에서, 상기 스트리밍 미디어에 대한 복사가 존재할 경우, 상기 스트리밍 미디어에 대한 반복적인 복사를 중지시키는 데 사용되는,
    것을 특징으로 하는 스트리밍 미디어 서버.
  13. 스트리밍 미디어 시스템에 있어서,
    스트리밍 미디어 서버 클러스터 및 시그널링 서버 클러스터를 포함하며;
    상기 스트리밍 미디어 서버 클러스터는 상기 시그널링 서버 클러스터, 스트리밍 미디어 수신기 및 제3자 플랫폼에 각각 연결되어, 제1항 내지 제6항 중 어느 한 항에 따른 방법을 수행하는,
    것을 특징으로 하는 스트리밍 미디어 시스템.
  14. 제13항에 있어서,
    상기 시그널링 서버 클러스터는 국가 표준에 규정된 상기 제3자 플랫폼과 인터랙션하는 프로토콜에 따라, 상기 제3자 플랫폼과 인터랙션하고;
    상기 스트리밍 미디어 서버 클러스터는 국가 표준에 규정된 상기 제3자 플랫폼과 인터랙션하는 프로토콜에 따라, 상기 제3자 플랫폼과 인터랙션하는,
    것을 특징으로 하는 스트리밍 미디어 시스템.
  15. 전자 기기에 있어서,
    적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서와 통신 가능하게 연결되는 메모리;를 포함하고,
    상기 메모리에 상기 적어도 하나의 프로세서에 의해 수행 가능한 명령이 저장되어 있고, 상기 명령은 상기 적어도 하나의 프로세서에 의해 수행되어, 상기 적어도 하나의 프로세서가 제1항 내지 제6항 중 어느 한 항에 따른 방법을 수행하는,
    것을 특징으로 하는 전자 기기.
  16. 컴퓨터 명령이 저장되어 있는 비일시적 컴퓨터 판독 가능 저장 매체에 있어서,
    상기 컴퓨터 명령은 상기 컴퓨터가 제1항 내지 제6항 중 어느 한 항에 따른 방법을 수행하는 데 사용되는,
    것을 특징으로 하는 비일시적 컴퓨터 판독 가능 저장 매체.
  17. 컴퓨터 판독 가능 저장 매체에 저장되어 있는 컴퓨터 프로그램에 있어서,
    상기 컴퓨터 프로그램이 프로세서에 의해 수행되어, 제1항 내지 제6항 중 어느 한 항에 따른 방법을 구현하는,
    것을 특징으로 하는 컴퓨터 판독 가능 저장 매체에 저장되어 있는 컴퓨터 프로그램.
KR1020220041980A 2021-05-12 2022-04-05 스트리밍 미디어 전송 방법, 스트리밍 미디어 서버 및 스트리밍 미디어 시스템 KR20220050104A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110518316.X 2021-05-12
CN202110518316.XA CN113285931B (zh) 2021-05-12 2021-05-12 流媒体的传输方法、流媒体服务器及流媒体系统

Publications (1)

Publication Number Publication Date
KR20220050104A true KR20220050104A (ko) 2022-04-22

Family

ID=77278850

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220041980A KR20220050104A (ko) 2021-05-12 2022-04-05 스트리밍 미디어 전송 방법, 스트리밍 미디어 서버 및 스트리밍 미디어 시스템

Country Status (5)

Country Link
US (1) US11601489B2 (ko)
EP (1) EP4013018A3 (ko)
JP (1) JP2022110064A (ko)
KR (1) KR20220050104A (ko)
CN (1) CN113285931B (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115314738A (zh) * 2022-08-15 2022-11-08 城云科技(中国)有限公司 对hook的数据添加标签处理拉流的方法及装置
CN115633016A (zh) * 2022-10-17 2023-01-20 维沃移动通信有限公司 数据传输方法、装置、系统、电子设备及介质
CN117560231A (zh) * 2024-01-12 2024-02-13 安徽科大擎天科技有限公司 一种视频流安全传输方法、装置、电子设备及存储介质

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114157827A (zh) * 2021-11-29 2022-03-08 北京房江湖科技有限公司 媒体流的传输方法、装置、电子设备及存储介质
CN114500436B (zh) * 2021-12-22 2024-07-05 天翼云科技有限公司 一种数据传输方法及装置、电子设备
CN114401254B (zh) 2022-03-22 2022-11-25 北京百度网讯科技有限公司 流媒体服务的处理方法、装置、电子设备及存储介质

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8838772B2 (en) * 2003-08-29 2014-09-16 Ineoquest Technologies, Inc. System and method for analyzing the performance of multiple transportation streams of streaming media in packet-based networks
US8135850B2 (en) * 2008-11-25 2012-03-13 Citrix Systems, Inc. Systems and methods for load balancing real time streaming
EP2197153B1 (en) * 2008-12-15 2012-07-04 Koninklijke KPN N.V. Method and device for reliable multicast using UDP
US9485299B2 (en) * 2009-03-09 2016-11-01 Arris Canada, Inc. Progressive download gateway
CN101707615B (zh) * 2009-12-03 2012-05-23 武汉烽火众智数字技术有限责任公司 一种基于公共移动通信的视频多链路传输的实现方法
JP2011146998A (ja) * 2010-01-15 2011-07-28 Hitachi Consumer Electronics Co Ltd コンテンツ受信機及びコンテンツ受信機における受信パケットデータの処理方法
US8521899B2 (en) * 2010-05-05 2013-08-27 Intel Corporation Multi-out media distribution system and method
JP2011259114A (ja) * 2010-06-08 2011-12-22 Hitachi Ltd データ配信装置
KR20140126195A (ko) * 2013-04-22 2014-10-30 삼성전자주식회사 배치 쓰레드 처리 기반의 프로세서, 그 프로세서를 이용한 배치 쓰레드 처리 방법 및 배치 쓰레드 처리를 위한 코드 생성 장치
GB2513344B (en) * 2013-04-23 2017-03-15 Gurulogic Microsystems Oy Communication system utilizing HTTP
CN103581699B (zh) * 2013-11-04 2015-01-21 广州华工信元通信技术有限公司 视频播放方法、流媒体服务器及流媒体播放系统
KR102439521B1 (ko) * 2014-11-07 2022-09-05 소니그룹주식회사 송신 장치, 송신 방법, 수신 장치 및 수신 방법
CN104539596A (zh) * 2014-12-18 2015-04-22 华为技术有限公司 流媒体传输的方法、装置及系统
CN105391968B (zh) * 2015-11-03 2019-05-24 浙江大华技术股份有限公司 一种视频会话分配方法及装置
CN107529097A (zh) * 2016-06-20 2017-12-29 北京信威通信技术股份有限公司 一种自适应调整视频缓冲大小的方法及装置
CN111225222A (zh) * 2018-11-26 2020-06-02 北京奇虎科技有限公司 基于rtmp的屏幕数据的视频流播放方法、装置和系统
CN109814996B (zh) * 2019-01-04 2024-03-22 平安科技(深圳)有限公司 流媒体传输控制方法、装置及存储介质、计算机设备
CN111818360B (zh) * 2020-09-14 2021-04-27 平安国际智慧城市科技股份有限公司 一种媒体点播方法、系统及装置
CN112073423A (zh) * 2020-09-15 2020-12-11 杭州二更网络科技有限公司 基于WebRTC进行浏览器推流的方法及系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115314738A (zh) * 2022-08-15 2022-11-08 城云科技(中国)有限公司 对hook的数据添加标签处理拉流的方法及装置
CN115633016A (zh) * 2022-10-17 2023-01-20 维沃移动通信有限公司 数据传输方法、装置、系统、电子设备及介质
CN117560231A (zh) * 2024-01-12 2024-02-13 安徽科大擎天科技有限公司 一种视频流安全传输方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
US11601489B2 (en) 2023-03-07
JP2022110064A (ja) 2022-07-28
CN113285931B (zh) 2022-10-11
EP4013018A2 (en) 2022-06-15
EP4013018A3 (en) 2022-10-12
CN113285931A (zh) 2021-08-20
US20220232058A1 (en) 2022-07-21

Similar Documents

Publication Publication Date Title
KR20220050104A (ko) 스트리밍 미디어 전송 방법, 스트리밍 미디어 서버 및 스트리밍 미디어 시스템
US10868767B2 (en) Data transmission method and apparatus in optoelectronic hybrid network
US6747949B1 (en) Register based remote data flow control
US9270600B2 (en) Low-latency lossless switch fabric for use in a data center
US9774651B2 (en) Method and apparatus for rapid data distribution
US11403253B2 (en) Transport protocol and interface for efficient data transfer over RDMA fabric
WO2015096692A1 (zh) 数据接收流量控制方法及其系统、计算机存储介质
CN110830460B (zh) 一种连接建立方法、装置、电子设备及存储介质
US11212368B2 (en) Fire-and-forget offload mechanism for network-based services
WO2020026018A1 (zh) 文件的下载方法、装置、设备/终端/服务器及存储介质
US20220417154A1 (en) Data transmission method and apparatus, device, storage medium, and computer program product
US20120166585A1 (en) Apparatus and method for accelerating virtual desktop
CN114513472A (zh) 网络拥塞控制方法及装置
CN114363643B (zh) 用于智慧高速的大屏实时视频流播放方法以及装置
CN116319569A (zh) 网络参数更新方法、网络参数更新装置、介质及电子设备
WO2015085794A1 (en) Data transmission method, related apparatus, and communications system
WO2024001266A1 (zh) 视频流传输的控制方法及装置、设备、介质
CN113824689B (zh) 边缘计算网络、数据传输方法、装置、设备和存储介质
WO2021103822A1 (zh) 用于获取共用最大分段大小mss的方法及装置
CN113242446B (zh) 视频帧的缓存方法、转发方法、通信服务器及程序产品
US20220217098A1 (en) Streaming communication between devices
US20120317316A1 (en) System to manage input/output performance and/or deadlock in network attached storage gateway connected to a storage area network environment
US9674282B2 (en) Synchronizing SLM statuses of a plurality of appliances in a cluster
US20240171810A1 (en) Application cache acceleration using device content cache
US20230362856A1 (en) Data transmission method, data transmission apparatus, computer-readable medium, and electronic device

Legal Events

Date Code Title Description
E902 Notification of reason for refusal