KR101954298B1 - 하이브리드 스트리밍 방법, 스트리밍 서버 및 시스템 - Google Patents
하이브리드 스트리밍 방법, 스트리밍 서버 및 시스템 Download PDFInfo
- Publication number
- KR101954298B1 KR101954298B1 KR1020150138557A KR20150138557A KR101954298B1 KR 101954298 B1 KR101954298 B1 KR 101954298B1 KR 1020150138557 A KR1020150138557 A KR 1020150138557A KR 20150138557 A KR20150138557 A KR 20150138557A KR 101954298 B1 KR101954298 B1 KR 101954298B1
- Authority
- KR
- South Korea
- Prior art keywords
- frame
- streaming
- change value
- terminal
- predetermined number
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 230000008859 change Effects 0.000 claims description 89
- 230000003247 decreasing effect Effects 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000007423 decrease Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234309—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2381—Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/438—Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
- H04N21/4385—Multiplex stream processing, e.g. multiplex stream decrypting
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
하이브리드 스트리밍 방법은 단말로 제 1 프레임을 이미지 스트리밍 방식으로 전송하는 단계, 상기 제 1 프레임 이후의 기설정된 개수의 프레임을 커맨드 스트리밍 방식으로 전송하는 단계 및 상기 기설정된 개수의 프레임 이후의 제 N 프레임(N은 3이상의 자연수)을 상기 이미지 스트리밍 방식으로 전송하는 단계를 포함한다.
Description
본 발명은 하이브리드 스트리밍 방법, 스트리밍 서버 및 시스템에 관한 것이다.
IPTV 서비스는 초고속 인터넷 망을 이용하여 영화와 방송 프로그램과 같은 동영상 컨텐츠와 인터넷 검색 등의 다양한 기능을 제공하는 양방향 방송 및 통신 서비스이다. 이러한 IPTV 서비스는 IPTV 사업자가 제공하는 단말을 통해서 제공된다.
최근, IPTV 서비스에서 셋톱 박스 상에 존재하던 기능들을 클라우드 서버로 옮기는 클라우드 스트리밍(Cloud Streaming) 기술 도입이 시도되고 있다. 클라우드 스트리밍 기술은 서버에서 프로그램을 구동하고 그 결과를 실시간으로 압축하여 단말에 전송하면, 단말에서 실시간으로 전송되는 데이터를 재생하여 보여주는 기술이다.
클라우드 스트리밍의 장점은 단말에서 스트리밍 재생 기능만을 요구하는 것이다. 네트워크를 통해 스트리밍되는 데이터를 재생할 수 있는 단말이라면, 운영 체제 및 하드웨어 성능에 관계없이 클라우드 스트리밍의 클라이언트가 될 수 있다. 따라서, 별도의 게임기를 필요로 하는 게임을 저 사양의 단말에서 경험할 수 있도록 하는 클라우드 게임에서 가장 먼저 상용화되었다.
한편, IPTV 서비스에서의 클라우드 스트리밍 방식에는 이미지 스트리밍(Image Streaming)과 커맨드 스트리밍(Command Streaming)이 있다. 이미지 스트리밍은 이미지 파일을 인코딩하고, 단말은 이미지를 디코딩하여 이를 출력한다. 이미지 스트리밍을 사용하면 네트워크 트래픽 및 서버 부하가 늘어나는 대신 단말 사양을 크게 낮출 수 있다.
반면에, 커맨드 스트리밍은 좌표, 크기, URL 및 텍스트를 단말로 전송하고, 단말은 단말의 그래픽 엔진에서 그래픽 처리하여 화면을 처리한다. 커맨드 스트리밍을 사용하면 네트워크 트래픽 및 서버 부하의 증가는 미미한 대신 단말 사양을 낮추는 데는 제한이 있다.
이와 관련하여, 공개특허공보 제2014-0133096호는 가상화 웹 IPTV 및 이를 이용한 동영상 스트리밍 방법에 관한 것으로, 가상화 서버는 웹 페이지에 스트리밍 동영상이 포함되어 있는지 판단하고, 스트리밍 동영상이 포함되어 있는 경우, 웹 데이터가 표시되는 영역과 스트리밍 동영상이 재생되는 영역으로 구분하고, 웹 데이터가 표시되는 영역만을 렌더링하여, 렌더링 결과 및 스트리밍 동영상의 주소를 클라이언트로 전송하는 기술을 개시하고 있다.
단말로 제 1 프레임을 이미지 스트리밍 방식으로 전송하고, 제 1 프레임 이후의 기설정된 개수의 프레임을 커맨드 스트리밍 방식으로 전송하고자 한다. 또한, 단말로 기설정된 개수의 프레임 이후의 제 N 프레임을 이미지 스트리밍 방식으로 전송하고자 한다.
이미지 스트리밍과 커맨드 스트리밍 방식을 동시에 사용함으로써 단말의 사양을 일부 낮추어 비용을 절감하는 한편 이미지 스트리밍에 비해 네트워크 부하의 증가를 감소시키고자 한다.
또한, 하나의 그룹에 포함된 프레임 수를 변동함으로써 클라우드 스트리밍 서비스의 질을 향상시키고자 한다. 다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일 실시예는 하이브리드 스트리밍 방법에 있어서, 단말로 제 1 프레임을 이미지 스트리밍 방식으로 전송하는 단계, 상기 제 1 프레임 이후의 기설정된 개수의 프레임을 커맨드 스트리밍 방식으로 전송하는 단계 및 상기 기설정된 개수의 프레임 이후의 제 N 프레임(N은 3이상의 자연수)을 상기 이미지 스트리밍 방식으로 전송하는 단계를 포함하는 스트리밍 방법을 제공할 수 있다.
또한, 본 발명의 다른 실시예는 하이브리드 스트리밍 서비스를 제공하는 서버에 있어서, 기설정된 개수의 프레임을 하나의 프레임 그룹으로 설정하는 프레임 그룹 생성부, 상기 그룹 프레임에 포함된 제 1 프레임 및 제 N 프레임을 이미지 스트리밍 방식으로 전송하는 이미지 스트리밍부 및 상기 제 1 프레임 및 상기 제 N 프레임의 사이의 복수의 중간 프레임을 커맨드 스트리밍 방식으로 전송하는 커맨드 스트리밍부를 포함하는 스트리밍 서버를 제공할 수 있다.
또한, 본 발명의 또 다른 실시예는 하이브리드 스트리밍 시스템에 있어서, 스트리밍 서버 및 단말을 포함하되, 상기 스트리밍 서버는, 상기 단말로 제 1 프레임을 이미지 스트리밍 방식으로 전송하고, 상기 제 1 프레임 이후의 기설정된 개수의 프레임을 커맨드 스트리밍 방식으로 전송하고, 상기 기설정된 개수의 프레임 이후의 제 N 프레임을 상기 이미지 스트리밍 방식으로 전송하도록 구성되고, 상기 단말은, 상기 제 1 프레임을 디코딩하여 출력하고, 상기 제 1 프레임 이후의 기설정된 개수의 프레임을 상기 단말의 그래픽 엔진을 통해 복원하여 출력하고, 상기 제 N 프레임(N은 3이상의 자연수)을 디코딩하여 출력하도록 구성되는 시스템을 제공할 수 있다.
단말로 제 1 프레임을 이미지 스트리밍 방식으로 전송하고, 제 1 프레임 이후의 기설정된 개수의 프레임을 커맨드 스트리밍 방식으로 전송하고자 한다. 또한, 단말로 기설정된 개수의 프레임 이후의 제 N 프레임을 이미지 스트리밍 방식으로 전송할 수 있다.
이미지 스트리밍과 커맨드 스트리밍 방식을 동시에 사용함으로써 단말의 사양을 일부 낮추어 비용을 절감하는 한편 이미지 스트리밍에 비해 네트워크 부하의 증가를 감소시킬 수 있다.
또한, 하나의 그룹에 포함된 프레임 수를 변동함으로써 클라우드 스트리밍 서비스의 질을 향상시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 하이브리드 스트리밍 시스템의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 스트리밍 서버의 블록도이다.
도 3은 본 발명의 일 실시예에 따른 이미지 스트리밍 및 커맨드 스트리밍을 설명하기 위한 도면이다,
도 4는 본 발명의 일 실시예에 따른 프레임 그룹의 프레임 개수를 조절하는 것을 설명하기 위한 도면이다.
도 5는 본 발명의 다른 실시예에 따른 프레임 그룹의 프레임 개수를 조절하는 것을 설명하기 위한 도면이다.
도 6은 본 발명의 다른 실시예에 따른 하이브리드 스트리밍 방법을 나타낸 흐름도이다.
도 2는 본 발명의 일 실시예에 따른 스트리밍 서버의 블록도이다.
도 3은 본 발명의 일 실시예에 따른 이미지 스트리밍 및 커맨드 스트리밍을 설명하기 위한 도면이다,
도 4는 본 발명의 일 실시예에 따른 프레임 그룹의 프레임 개수를 조절하는 것을 설명하기 위한 도면이다.
도 5는 본 발명의 다른 실시예에 따른 프레임 그룹의 프레임 개수를 조절하는 것을 설명하기 위한 도면이다.
도 6은 본 발명의 다른 실시예에 따른 하이브리드 스트리밍 방법을 나타낸 흐름도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미하며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다.
본 명세서에 있어서 단말 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말 또는 디바이스에서 수행될 수도 있다.
이하 첨부된 도면을 참고하여 본 발명의 일 실시예를 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 하이브리드 스트리밍 시스템의 구성도이다. 도 1을 참조하면, 하이브리드 스트리밍 시스템(1)은 스트리밍 서버(100) 및 단말(110)을 포함할 수 있다.
스트리밍 서버(100)는 단말(110)로 제 1 프레임을 이미지 스트리밍 방식으로 전송할 수 있다. 제 1 프레임은 어느 한 프레임을 지칭할 수 있다. 이미지 스트리밍 방식은 프레임을 이미지 파일로 인코딩하여 단말(110)로 전송하는 방식일 수 있다. 여기서, 이미지 파일은, 예를 들어, PNG(Portable Network Graphics) 파일일 수 있다.
스트리밍 서버(100)는 제 1 프레임 이후의 기설정된 개수의 프레임을 단말(110)로 커맨드 스트리밍 방식으로 전송할 수 있다. 여기서, 제 1 프레임, 기설정된 개수의 프레임 및 후술할 제 2 프레임은 하나의 프레임 그룹에 포함될 수 있다.
커맨드 스트리밍 방식은 좌표, 크기, URL 및 텍스트 중 적어도 하나를 단말(110)로 전송하는 방식일 수 있다. 스트리밍 서버(100)는 이전 프레임에 대한 현재 프레임의 변화값을 계산하고, 현재 프레임의 변화값을 단말(110)로 전송할 수 있다.
예를 들면, 스트리밍 서버(100)는 제 1 프레임에 대한 제 2 프레임의 변화값을 계산하고, 제 2 프레임의 변화값을 단말(110)로 전송할 수 있다. 또한, 스트리밍 서버(100)는 제 N-2 프레임에 대한 제 N-1 프레임의 변화값을 계산하고, 제 N-1 프레임의 변화값을 단말(110)로 전송할 수 있다. 예를 들면, 변화값은 위치 변화값 및 색상 변화값을 포함할 수 있다.
스트리밍 서버(100)는 기설정된 개수의 프레임 이후의 제 N 프레임(N은 3이상의 자연수)을 이미지 스트리밍 방식으로 단말(110)로 전송할 수 있다. 따라서, 이미지 스트리밍과 커맨드 스트리밍 방식을 동시에 사용함으로써 단말의 사양을 일부 낮추어 비용을 절감하는 한편 이미지 스트리밍에 비해 네트워크 부하의 증가를 감소시킬 수 있다.
스트리밍 서버(100)는 프레임 그룹에 포함된 커맨드 스트리밍을 통해 전송하는 프레임의 개수를 감소 또는 증가시킬 수 있다. 스트리밍 서버(100)는 제 N 프레임의 변화값과 제 N-1 프레임의 변화값에 기초하여 기설정된 개수를 감소 또는 증가시킬 수 있다.
예를 들면, 스트리밍 서버(100)는 제 N 프레임의 변화값과 상기 제 N-1 프레임의 변화값을 비교하고, 제 N 프레임의 변화값이 제 N-1 프레임의 변화값 보다 큰 경우, 커맨드 스트리밍을 통해 전송하는 프레임의 개수를 감소시키고, 제 N 프레임의 변화값이 제 N-1 프레임의 변화값 보다 작은 경우, 커맨드 스트리밍을 통해 전송하는 프레임의 개수를 증가시킬 수 있다.
이에 의하면, 프레임 그룹의 프레임 수를 변동함으로써 클라우드 스트리밍 서비스의 질을 향상시킬 수 있다.
이 후, 스트리밍 서버(100)는 단말(110)로 제 N+1 프레임을 이미지 스트리밍 방식으로 전송할 수 있다.
또한, 스트리밍 서버(100)는 제 N+1 프레임 이후의 증가 또는 감소된 기설정된 개수의 프레임을 커맨드 스트리밍 방식으로 전송할 수 있다. 여기서 제 N+1 프레임, 증가 또는 감소된 기설정된 개수의 프레임 및 후술할 제 M 프레임은 앞서 설명한 그룹 프레임의 다음 그룹 프레임에 포함될 수 있다.
단말(110)은 스트리밍 서버(100)로부터 이미지 스트리밍 방식으로 제 1 프레임 및 제 2 프레임을 수신할 수 있다. 또한, 단말(110)은 스트리밍 서버(100)로부터 커맨드 스트리밍 방식으로 제 1 프레임 이후의 기설정된 개수의 프레임을 수신할 수 있다.
단말(110)은 스트리밍 서버(100)로부터 수신한 제 1 프레임을 디코딩하여 출력할 수 있다. 또한, 단말(110)은 제 1 프레임 이후의 기설정된 개수의 프레임을 단말(110)의 그래픽 엔진을 통해 복원하여 출력할 수 있다.
네트워크(120)는 단말들 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 이러한 네트워크(120)의 일 예에는 인터넷(Internet), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), 3G, LTE(Long Term Evolution), 5G, WiFi(Wireless Fidelity), WiMAX(World Interoperability for Microwave Access), WiGig(Wireless Gigabit) 등이 포함되나 이에 한정되지는 않는다.
도 2는 본 발명의 일 실시예에 따른 스트리밍 서버의 블록도이다. 도 2를 참조하면, 스트리밍 서버(100)는 프레임 그룹 생성부(200), 이미지 스트리밍부(210), 커맨드 스트리밍부(220) 및 변화값 계산부(230)를 포함할 수 있다.
프레임 그룹 생성부(200)는 기설정된 개수의 프레임을 하나의 프레임 그룹으로 설정할 수 있다.
이미지 스트리밍부(210)는 그룹 프레임에 포함된 제 1 프레임 및 제 N 프레임을 이미지 스트리밍 방식으로 전송할 수 있다. 이미지 스트리밍 방식은 프레임을 이미지 파일로 인코딩하여 단말(110)로 전송하는 방식일 수 있다. 여기서, 이미지 파일은, 예를 들어, PNG(Portable Network Graphics) 파일일 수 있다.
커맨드 스트리밍부(220)는 제 1 프레임 및 제 N 프레임의 사이의 복수의 중간 프레임을 커맨드 스트리밍 방식으로 전송할 수 있다. 커맨드 스트리밍 방식은 좌표, 크기, URL 및 텍스트 중 적어도 하나를 단말(110)로 전송하는 방식일 수 있다.
따라서, 이미지 스트리밍과 커맨드 스트리밍 방식을 동시에 사용함으로써 단말의 사양을 일부 낮추어 비용을 절감하는 한편 이미지 스트리밍에 비해 네트워크 부하의 증가를 감소시킬 수 있다.
변화값 계산부(230)는 프레임 그룹에 포함된 어느 한 프레임의 변화값을 계산할 수 있다. 여기서, 어느 한 프레임의 변화값은 어느 한 프레임의 이전 프레임에 대한 어느 한 프레임의 변화값일 수 있다.
예를 들면, 변화값 계산부(230)는 복수의 중간 프레임의 변화값을 계산하고, 커맨드 스트리밍부(220)는 복수의 중간 프레임의 변화값 단말(110)로 전송할 수 있다.
예를 들면, 변화값은 위치 변화값 및 색상 변화값을 포함할 수 있다.
또한, 변화값 계산부(230)는 제 N-1 프레임의 변화값 및 제 N 프레임의 변화값을 계산하고, 프레임 그룹 생성부(200)는 제 N 프레임의 변화값과 제 N-1 프레임의 변화값에 기초하여 기설정된 개수를 감소 또는 증가시킬 수 있다.
프레임 그룹 생성부(200)는 제 N 프레임의 변화값과 제 N-1 프레임의 변화값에 기초하여 기설정된 개수를 감소 또는 증가시킬 수 있다.
예를 들면, 프레임 그룹 생성부(200)는 제 N 프레임의 변화값과 상기 제 N-1 프레임의 변화값을 비교하고, 제 N 프레임의 변화값이 제 N-1 프레임의 변화값 보다 큰 경우, 복수의 중간 프레임의 개수를 감소시키고, 제 N 프레임의 변화값이 제 N-1 프레임의 변화값 보다 작은 경우, 커맨드 복수의 중간 프레임의 개수를 증가시킬 수 있다.
이에 의하면, 프레임 그룹의 프레임 수를 변동함으로써 클라우드 스트리밍 서비스의 질을 향상시킬 수 있다.
이 후, 프레임 그룹 생성부(200)는 제 M 프레임, 변경된 개수의 중간 프레임 및 제 Q 프레임을 하나의 프레임 그룹으로 생성할 수 있다.
도 3은 본 발명의 일 실시예에 따른 이미지 스트리밍 및 커맨드 스트리밍을 설명하기 위한 도면이다,
프레임 그룹 1(300)에는 제 1 프레임(310), 제 2 프레임(320) 및 복수의 중간 프레임(330)이 포함될 수 있다.
제 1 프레임(310) 및 제 2 프레임(320)은 이미지 스트리밍 방식으로 단말(110)로 전송될 수 있다. 복수의 중간 프레임(330)은 커맨드 스트리밍 방식으로 단말(110)로 전송될 수 있다.
변화값 계산부(230)는 제 1 프레임(310)에 대한 제 1 중간 프레임(340)의 변화값(350)을 계산할 수 있다. 변화값은 위치 변화값 및 색상 변화값을 포함할 수 있다.
커맨드 스트리밍부(220)는 제 1 중간 프레임(340)의 변화값(350)을 커맨드 스트리밍 방식으로 단말(110)로 전송할 수 있다.
또한, 변화값 계산부(230)는 제 N-2 프레임(미도시)에 대한 제 N-1 프레임(360)의 변화값(370)을 계산할 수 있다.
커맨드 스트리밍부(220)는 제 N-1 프레임(360)의 변화값(370)을 커맨드 스트리밍 방식으로 단말(110)로 전송할 수 있다.
도 4는 본 발명의 일 실시예에 따른 프레임 그룹의 프레임 개수를 조절하는 것을 설명하기 위한 도면이다.
도 4를 참조하면, 프레임 그룹 1(400)은 제 1 프레임(410), 제 N 프레임(420) 및 세 개의 중간 프레임(430)을 포함할 수 있다.
프레임 그룹 생성부(220)는 제 N 프레임(420)의 변화값과 제 N-1 프레임의 변화값에 기초하여 프레임 그룹 1(400)에 포함된 복수의 중간 프레임의 개수를 감소 또는 증가시킬 수 있다.
예를 들면, 프레임 그룹 생성부(220)는 제 N 프레임(420)의 변화값이 제 N-1 프레임의 변화값 보다 큰 경우, 프레임 그룹 1(400)에 포함된 복수의 중간 프레임(430)의 개수를 1만큼 감소시킬 수 있다. 여기서 감소되는 개수는 본 발명의 일 실시예에 불과하므로, 이에 한정되지 않는다. 예를 들면, 감소되는 개수는 2, 3, 4 및 5 등 다양하게 설정되어 있을 수도 있고, 제 N 프레임(420)의 변화값이 제 N-1 프레임의 변화값 보다 큰 정도에 따라 비례 또는 반비례하여 가변될 수도 있다.
이 후, 프레임 그룹 생성부(220)는 제 N+1 프레임(440), 제 M 프레임(450)과 두 개의 중간 프레임(460)을 포함하는 프레임 그룹 2(470)를 생성할 수 있다.
도 5는 본 발명의 다른 실시예에 따른 프레임 그룹의 프레임 개수를 조절하는 것을 설명하기 위한 도면이다.
도 5를 참조하면, 프레임 그룹 1(400)은 제 1 프레임(410), 제 N 프레임(420) 및 세 개의 중간 프레임(430)을 포함할 수 있다.
프레임 그룹 생성부(220)는 제 N 프레임(420)의 변화값과 제 N-1 프레임의 변화값에 기초하여 프레임 그룹 1(400)에 포함된 복수의 중간 프레임의 개수를 감소 또는 증가시킬 수 있다.
예를 들면, 프레임 그룹 생성부(220)는 제 N 프레임(420)의 변화값이 제 N-1 프레임의 변화값 보다 작은 경우, 프레임 그룹 1(400)에 포함된 복수의 중간 프레임의 개수를 1만큼 증가시킬 수 있다. 여기서 증가되는 개수는 본 발명의 일 실시예에 불과하므로, 이에 한정되지 않는다. 예를 들면, 증가되는 개수는 2, 3, 4 및 5 등 다양하게 설정되어 있을 수도 있고, 제 N 프레임(420)의 변화값이 제 N-1 프레임의 변화값 보다 작은 정도에 따라 비례 또는 반비례하여 가변될 수도 있다.
이 후, 프레임 그룹 생성부(220)는 제 N+1 프레임(500), 제 M 프레임(510)과 네 개의 중간 프레임(520)을 포함하는 프레임 그룹 2(530)를 생성할 수 있다.
도 6은 본 발명의 다른 실시예에 따른 하이브리드 스트리밍 방법을 나타낸 흐름도이다.
도 6을 참조하면, 단계 S600에서 스트리밍 서버(100)는 단말(110)로 제 1 프레임을 이미지 스트리밍 방식으로 전송할 수 있다.
단계 S610에서 스트리밍 서버(100)는 단말(110)로 제 1 프레임 이후의 기설정된 개수의 프레임을 커맨드 스트리밍 방식으로 전송할 수 있다.
단계 S620에서 스트리밍 서버(100)는 단말(110)로 기설정된 개수의 프레임 이후의 제 N 프레임(N은 3이상의 자연수)을 이미지 스트리밍 방식으로 전송할 수 있다.
도 6을 통해 설명된 하이브리드 스트리밍 방법은 매체에 저장된 컴퓨터 프로그램의 형태로 구현되거나, 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100: 스트리밍 서버
110: 단말
110: 단말
Claims (18)
- 스트리밍 서버에서 수행되는 하이브리드 스트리밍 방법에 있어서,
단말로 제 1 프레임을 이미지 스트리밍 방식으로 전송하는 단계;
상기 단말로 상기 제 1 프레임 이후의 기설정된 개수의 프레임을 커맨드 스트리밍 방식으로 전송하는 단계; 및
상기 단말로 상기 기설정된 개수의 프레임 이후의 제 N 프레임(N은 3이상의 자연수)을 상기 이미지 스트리밍 방식으로 전송하는 단계
를 포함하는 것이되,
상기 커맨드 스트리밍 방식은 이미지를 제외한 좌표, 크기, URL 및 텍스트 중 적어도 하나를 상기 단말로 전송하는 방식이고,
상기 제 1 프레임 이후의 기설정된 개수의 프레임이 상기 커맨드 스트리밍 방식으로 상기 단말로 전송될 때, 상기 좌표, 크기, URL 및 텍스트 중 적어도 하나에 기초하여 상기 단말의 그래픽 엔진을 통해 상기 제 1 프레임 이후의 기설정된 개수의 프레임이 복원되어 출력되는 것인, 스트리밍 방법.
- 제 1 항에 있어서,
상기 이미지 스트리밍 방식은 프레임을 이미지 파일로 인코딩하여 상기 단말로 전송하는 방식인 것인, 스트리밍 방법.
- 삭제
- 제 1 항에 있어서,
상기 제 1 프레임 이후의 기설정된 개수의 프레임을 커맨드 스트리밍 방식으로 전송하는 단계는,
상기 제 1 프레임에 대한 제 2 프레임의 변화값을 계산하는 단계; 및
상기 제 2 프레임의 변화값을 상기 단말로 전송하는 단계
를 포함하는 것인, 스트리밍 방법.
- 제 1 항에 있어서,
상기 제 1 프레임 이후의 기설정된 개수의 프레임을 커맨드 스트리밍 방식으로 전송하는 단계는,
제 N-2 프레임에 대한 제 N-1 프레임의 변화값을 계산하는 단계; 및
상기 제 N-1 프레임의 변화값을 상기 단말로 전송하는 단계
를 더 포함하는 것인, 스트리밍 방법.
- 제 5 항에 있어서,
상기 기설정된 개수를 감소 또는 증가시키는 단계
를 더 포함하는 것인, 스트리밍 방법.
- 제 6 항에 있어서,
상기 기설정된 개수를 감소 또는 증가시키는 단계는,
상기 제 N-1 프레임에 대한 상기 제 N 프레임의 변화값을 계산하는 단계; 및
상기 제 N 프레임의 변화값과 상기 제 N-1 프레임의 변화값에 기초하여 상기 기설정된 개수를 감소 또는 증가시키는 단계
를 포함하는 것인, 스트리밍 방법.
- 제 7 항에 있어서,
상기 기설정된 개수를 감소 또는 증가시키는 단계는,
상기 제 N 프레임의 변화값과 상기 제 N-1 프레임의 변화값을 비교하는 단계; 및
상기 제 N 프레임의 변화값이 상기 제 N-1 프레임의 변화값 보다 큰 경우, 상기 기설정된 개수를 감소시키고, 상기 제 N 프레임의 변화값이 상기 제 N-1 프레임의 변화값 보다 작은 경우, 상기 기설정된 개수를 증가시키는 단계
를 더 포함하는 것인, 스트리밍 방법.
- 제 6 항에 있어서,
상기 단말로 제 N+1 프레임을 이미지 스트리밍 방식으로 전송하는 단계;
상기 제 N+1 프레임 이후의 상기 증가 또는 감소된 기설정된 개수의 프레임을 커맨드 스트리밍 방식으로 전송하는 단계; 및
상기 기설정된 개수의 프레임 이후의 제 M 프레임(M은 자연수)을 상기 이미지 스트리밍 방식으로 전송하는 단계
를 더 포함하는 것인, 스트리밍 방법.
- 제 8 항 또는 제 9 항에 있어서,
상기 변화값은 위치 변화값 및 색상 변화값을 포함하는 것인, 스트리밍 방법.
- 하이브리드 스트리밍 서비스를 제공하는 서버에 있어서,
기설정된 개수의 프레임을 하나의 프레임 그룹으로 설정하는 프레임 그룹 생성부;
상기 프레임 그룹에 포함된 제 1 프레임 및 제 N 프레임을 이미지 스트리밍 방식으로 전송하는 이미지 스트리밍부; 및
상기 제 1 프레임 및 상기 제 N 프레임의 사이의 복수의 중간 프레임을 커맨드 스트리밍 방식으로 전송하는 커맨드 스트리밍부
를 포함하되,
상기 커맨드 스트리밍 방식은 이미지를 제외한 좌표, 크기, URL 및 텍스트 중 적어도 하나를 단말로 전송하는 방식이고,
상기 제 1 프레임 이후의 기설정된 개수의 프레임이 상기 커맨드 스트리밍 방식으로 상기 단말로 전송될 때, 상기 좌표, 크기, URL 및 텍스트 중 적어도 하나에 기초하여 상기 단말의 그래픽 엔진을 통해 상기 제 1 프레임 이후의 기설정된 개수의 프레임이 복원되어 출력되는 것인, 스트리밍 서버.
- 제 11 항에 있어서,
상기 이미지 스트리밍 방식은 프레임을 이미지 파일로 인코딩하여 상기 단말로 전송하는 방식인 것인, 스트리밍 서버.
- 삭제
- 제 11 항에 있어서,
상기 프레임 그룹에 포함된 어느 한 프레임의 변화값을 계산하는 변화값 계산부
를 더 포함하되, 상기 어느 한 프레임의 변화값은 상기 어느 한 프레임의 이전 프레임에 대한 상기 어느 한 프레임의 변화값인 것인, 스트리밍 서버.
- 제 14 항에 있어서,
상기 변화값 계산부는 제 N-1 프레임의 변화값 및 상기 제 N 프레임의 변화값을 계산하고,
상기 프레임 그룹 생성부는 상기 제 N 프레임의 변화값과 상기 제 N-1 프레임의 변화값에 기초하여 상기 기설정된 개수를 감소 또는 증가시키는 것인, 스트리밍 서버.
- 제 15 항에 있어서,
상기 프레임 그룹 생성부는 상기 제 N 프레임의 변화값이 상기 제 N-1 프레임의 변화값 보다 큰 경우, 상기 기설정된 개수를 감소시키고, 상기 제 N 프레임의 변화값이 상기 제 N-1 프레임의 변화값 보다 작은 경우, 상기 기설정된 개수를 증가시키는 것인, 스트리밍 서버.
- 제 16 항에 있어서,
상기 변화값은 위치 변화값 및 색상 변화값을 포함하는 것인, 스트리밍 서버.
- 하이브리드 스트리밍 시스템에 있어서,
스트리밍 서버; 및
단말
을 포함하되,
상기 스트리밍 서버는,
상기 단말로 제 1 프레임을 이미지 스트리밍 방식으로 전송하고,
상기 제 1 프레임 이후의 기설정된 개수의 프레임을 커맨드 스트리밍 방식으로 전송하고,
상기 기설정된 개수의 프레임 이후의 제 N 프레임(N은 3이상의 자연수)을 상기 이미지 스트리밍 방식으로 전송하도록 구성되고,
상기 단말은,
상기 제 1 프레임을 디코딩하여 출력하고,
상기 제 1 프레임 이후의 기설정된 개수의 프레임을 상기 단말의 그래픽 엔진을 통해 복원하여 출력하고,
상기 제 N 프레임을 디코딩하여 출력하도록 구성되는 것이되,
상기 커맨드 스트리밍 방식은 이미지를 제외한 좌표, 크기, URL 및 텍스트 중 적어도 하나를 상기 단말로 전송하는 방식이고,
상기 제 1 프레임 이후의 기설정된 개수의 프레임이 상기 커맨드 스트리밍 방식으로 상기 단말로 전송될 때, 상기 좌표, 크기, URL 및 텍스트 중 적어도 하나에 기초하여 상기 단말의 그래픽 엔진을 통해 상기 제 1 프레임 이후의 기설정된 개수의 프레임이 복원되어 출력되는 것인, 시스템.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150138557A KR101954298B1 (ko) | 2015-10-01 | 2015-10-01 | 하이브리드 스트리밍 방법, 스트리밍 서버 및 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150138557A KR101954298B1 (ko) | 2015-10-01 | 2015-10-01 | 하이브리드 스트리밍 방법, 스트리밍 서버 및 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170039437A KR20170039437A (ko) | 2017-04-11 |
KR101954298B1 true KR101954298B1 (ko) | 2019-03-05 |
Family
ID=58580982
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150138557A KR101954298B1 (ko) | 2015-10-01 | 2015-10-01 | 하이브리드 스트리밍 방법, 스트리밍 서버 및 시스템 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101954298B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11997326B2 (en) | 2021-11-30 | 2024-05-28 | Samsung Electronics Co., Ltd. | Method of streaming image content between server and electronic device, server for streaming image content, and electronic device for streaming image content |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101012214B1 (ko) * | 2008-08-22 | 2011-02-08 | 주식회사 엘지유플러스 | 이동통신단말기의 웹 서비스 제공 방법 및 시스템 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101905621B1 (ko) * | 2012-02-16 | 2018-10-11 | 삼성전자 주식회사 | 카메라의 프레임 이미지 전송 장치 및 방법 |
-
2015
- 2015-10-01 KR KR1020150138557A patent/KR101954298B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101012214B1 (ko) * | 2008-08-22 | 2011-02-08 | 주식회사 엘지유플러스 | 이동통신단말기의 웹 서비스 제공 방법 및 시스템 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11997326B2 (en) | 2021-11-30 | 2024-05-28 | Samsung Electronics Co., Ltd. | Method of streaming image content between server and electronic device, server for streaming image content, and electronic device for streaming image content |
Also Published As
Publication number | Publication date |
---|---|
KR20170039437A (ko) | 2017-04-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10516903B2 (en) | Method and apparatus for transmitting video data | |
US20170103577A1 (en) | Method and apparatus for optimizing video streaming for virtual reality | |
US11153615B2 (en) | Method and apparatus for streaming panoramic video | |
US8898338B1 (en) | Traffic shaping for live media streaming | |
JP2021514167A (ja) | メディアコンテンツの配信および再生 | |
CN108063976B (zh) | 一种视频处理方法及装置 | |
US20200145736A1 (en) | Media data processing method and apparatus | |
KR20160034889A (ko) | 정보 처리 장치 및 방법 | |
US10869048B2 (en) | Method, device and system for transmitting and receiving pictures using a hybrid resolution encoding framework | |
CN112868229A (zh) | 用于流传输数据的方法和设备 | |
US11863841B2 (en) | Video playing control method and system | |
US10834161B2 (en) | Dash representations adaptations in network | |
US8935432B1 (en) | Clock locking for live media streaming | |
US20170127095A1 (en) | Method and device for managing multimedia data | |
US20200404241A1 (en) | Processing system for streaming volumetric video to a client device | |
US11159823B2 (en) | Multi-viewport transcoding for volumetric video streaming | |
WO2019128668A1 (zh) | 视频码流处理方法、装置、网络设备和可读存储介质 | |
US11375171B2 (en) | System and method for preloading multi-view video | |
CN108989905B (zh) | 媒体流控制方法、装置、计算设备及存储介质 | |
KR101954298B1 (ko) | 하이브리드 스트리밍 방법, 스트리밍 서버 및 시스템 | |
US20140376641A1 (en) | Picture Referencing Control for Video Decoding Using a Graphics Processor | |
US10298651B2 (en) | Encoding device, decoding device, computer program product, and streaming system | |
KR20170045633A (ko) | 파노라믹 비디오 제공 서버에서 수행되는 파노라믹 비디오 서비스 제공 방법, 파노라믹 비디오 제공 서버 및 시스템 | |
US11388455B2 (en) | Method and apparatus for morphing multiple video streams into single video stream | |
US20240236436A9 (en) | Bullet-screen comment display |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |