KR101869360B1 - A system for streaming relay engine of efficient wireless networks using media buffer control - Google Patents

A system for streaming relay engine of efficient wireless networks using media buffer control Download PDF

Info

Publication number
KR101869360B1
KR101869360B1 KR1020160144671A KR20160144671A KR101869360B1 KR 101869360 B1 KR101869360 B1 KR 101869360B1 KR 1020160144671 A KR1020160144671 A KR 1020160144671A KR 20160144671 A KR20160144671 A KR 20160144671A KR 101869360 B1 KR101869360 B1 KR 101869360B1
Authority
KR
South Korea
Prior art keywords
media
media file
file
module
streaming
Prior art date
Application number
KR1020160144671A
Other languages
Korean (ko)
Other versions
KR20180047866A (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 KR1020160144671A priority Critical patent/KR101869360B1/en
Priority to PCT/KR2016/013915 priority patent/WO2018084360A1/en
Publication of KR20180047866A publication Critical patent/KR20180047866A/en
Application granted granted Critical
Publication of KR101869360B1 publication Critical patent/KR101869360B1/en

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/10Architectures or entities
    • H04L65/1013Network architectures, gateways, control or user entities
    • 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
    • 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]
    • 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/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/04Terminal devices adapted for relaying to or from another terminal or user

Abstract

본 발명은 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템에 관한 것으로서, 보다 구체적으로는 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템으로서, 원본 미디어를 제공하는 소스 기기; 상기 소스 기기에 미디어를 요청하여 스트림 방식으로 미디어를 다운로드 하여 디스크에 저장하고, 멤버 기기들의 미디어 요청에 대응하여 디스크에 저장된 미디어를 스트림 방식으로 중계하는 릴레이 기기; 및 상기 릴레이 기기에 파일로 저장된 미디어를 요청하여 스트림 방식으로 미디어를 다운로드 하여 재생하되, 스트림 데이터 버퍼링의 감시 제어에 기초하여 한 번에 다운로드할 미디어 파일의 크기 단위로 미디어 요청을 주기적으로 수행하는 멤버 기기들을 포함하는 것을 그 구성상의 특징으로 한다.
본 발명에서 제안하고 있는 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템에 따르면, 원본 미디어를 제공하는 소스 기기와, 소스 기기의 미디어를 제공받아 중계하는 릴레이 기기와, 릴레이 기기로부터 미디어를 요청하여 제공받아 재생하는 복수의 멤버 기기를 포함하되, 릴레이 기기와 멤버 기기들 간의 스트림 데이터 버퍼링을 제어하도록 구성함으로써, 멤버 기기들 간의 과도한 네트워크 점유를 방지하고, 버퍼 고갈로 인한 재생 화면 정지 문제가 최소화될 수 있도록 할 수 있다.
또한, 본 발명에 따르면, 릴레이 기기에 대한 멤버 기기들에서 미디어 요청 및 스트림 데이터 버퍼링을 제어하도록 구성함으로써, 당장 재생에 불필요한 네트워크 자원 경쟁을 감소시키고, 가용 대역폭이 효과적으로 확보될 수 있도록 할 수 있다.
뿐만 아니라, 본 발명은, 링크 계층 또는 운영 체제의 커널 수정이 필요한 기존과 달리, 응용계층에서 스트리밍 서비스를 구현함으로써, 적용 가능성이 높고, 클라이언트의 멤버 기기 측에서 대역폭 사용을 제어하기 때문에 미디어 서버로 기능하는 릴레이 기기에 대한 의존성이 낮고 확장성을 향상시킬 수 있도록 할 수 있다.
The present invention relates to an efficient wireless network streaming relay engine system using media buffer control, and more particularly, to an efficient wireless network streaming relay engine system using media buffer control, comprising: a source device for providing an original media; A relay device for requesting media from the source device and downloading the media in a streaming manner and storing the media in a disk, and relaying the media stored in the disk in a streaming manner in response to a media request of the member devices; And a requesting unit for requesting media stored in a file in the relay device and downloading and playing the media in a streaming manner and performing a media request periodically on the basis of the size of a media file to be downloaded at a time based on supervision and control of buffering of stream data. It is a feature of the present invention to include devices.
According to an efficient wireless network streaming relay engine system using the media buffer control proposed in the present invention, a source device for providing source media, a relay device for relaying the media provided by the source device, and media are requested from the relay device The relay device and the member devices are controlled to control the buffering of the stream data so as to prevent excessive network occupation among the member devices and to minimize the problem of the playback screen stop due to buffer exhaustion Can be done.
In addition, according to the present invention, it is possible to control the media request and the stream data buffering in the member devices for the relay device, thereby reducing the unnecessary network resource competition immediately and enabling the available bandwidth to be secured effectively.
In addition, since the present invention implements a streaming service at an application layer and is highly applicable and controls bandwidth usage at the member device side of a client, unlike the conventional case where a kernel layer of an operating system or a link layer is required, The dependency on the functioning relay device is low and the scalability can be improved.

Description

미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템{A SYSTEM FOR STREAMING RELAY ENGINE OF EFFICIENT WIRELESS NETWORKS USING MEDIA BUFFER CONTROL}TECHNICAL FIELD [0001] The present invention relates to an efficient wireless network streaming relay engine system using media buffer control,

본 발명은 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템에 관한 것으로서, 보다 구체적으로는 이종 무선 네트워크에서 릴레이 기기에 대한 멤버 기기들에서 스트림 데이터 버퍼링을 제어함으로써, 당장 재생에 불필요한 네트워크 자원 경쟁을 감소시키고, 가용 대역폭을 확보하여 미디어 재생의 화면 정지 현상이 방지될 수 있도록 하는 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템에 관한 것이다.The present invention relates to an efficient wireless network streaming relay engine system using media buffer control, and more particularly, to controlling stream data buffering in member devices for a relay apparatus in a heterogeneous wireless network, The present invention also relates to an efficient wireless network streaming relay engine system using the media buffer control for ensuring an available bandwidth and preventing a screen stop phenomenon of media playback.

최근 모바일 스마트 기기의 보급과 확산으로 개인용 컴퓨터 외의 다양한 모바일 기기에서 인터넷 서비스 제공이 가능하게 되고, 클라우드 서비스의 보급과 더불어 다수의 기기 간에 멀티미디어 콘텐츠를 공유하는 기술이 제공되고 있다. 특히 스마트 회의, 스마트 교육 등과 같은 응용 서비스는 다수의 모바일 스마트 기기들이 회의장, 강의실 등과 같은 단일 무선 랜 환경에 연결되어 기기 간 멀티미디어 콘텐츠를 공유하지만, 단일 무선 랜 환경에서 기존의 기술들을 적용할 경우, 무선 채널의 네트워크 대역폭 제약으로 인하여 규모 확장성이 낮아지는 문제가 발생하고 있다. 이러한 문제는 기기들이 무선 네트워크 자원을 공유함에 따라 다수의 기기가 필요한 네트워크 대역폭을 충분히 확보하지 못하기 때문에 발생하게 된다.
Recently, with the spread and spread of mobile smart devices, it has become possible to provide Internet services in various mobile devices other than personal computers, and a technology for sharing multimedia contents among a plurality of devices has been provided along with the spread of cloud services. Especially, application services such as smart conferencing and smart education are connected to a single wireless LAN environment such as a conference room, a lecture room, and the like to share multimedia contents among devices. However, when applying existing technologies in a single wireless LAN environment, Scale scalability is lowered due to the limitation of the network bandwidth of the wireless channel. This problem arises because devices do not have enough network bandwidth required by many devices as wireless network resources are shared.

이를 해결하기 위한 방안으로, 이종무선 네트워크를 계층적으로 구성하여 멀티미디어 스트리밍 서비스를 제공하는 방법이 제안되고 있으나, 이러한 방법은 스트리밍을 위해 구성된 네트워크에 공통으로 연결된 중계기기를 통하여 이종 네트워크 간 멀티미디어 데이터를 전달한다. 즉, 이와 같이 계층적 이종무선 네트워크를 구성하는 방법은 다중 무선 채널을 사용하는 단일 채널에 비해 대역폭이 향상되는 효과를 보였지만, 멀티미디어 스트리밍 중계를 진행할 경우, 중계기기에 다수의 멤버 기기가 연결되므로 멤버 기기 별 일시적 버퍼 고갈로 인한 재생 화면 정지 문제가 발생되는 문제가 있었다. 이러한 재생 화면 정지는 멤버 기기 간 과도한 경쟁으로 인해 순간적으로 해당 채널의 대역폭 사용의 공평성이 낮아지기 때문에 발생하게 된다. 즉, 기존 중계 방식은 원본 미디어를 보유하고 있는 소스 기기에 중계 기기가 미디어를 요청하여 다운로드 하고, 이와 동시에 스트리밍을 진행하면서 멤버 기기들이 중계 기기로 미디어를 요청하여 스트리밍을 진행하지만, 이 경우 멤버 기기들이 동시에 중계 기기에 미디어를 요청하고 재생하기 때문에 대역폭 경쟁으로 인한 일부 멤버 기기에서 미디어 스트림을 수신하지 못하는 버퍼 고갈 문제가 발생하게 된다. 결국, 미디어 스트림 데이터를 받아 버퍼에 채우는 작업인 버퍼링 작업이 빈번하게 발생하게 되고, 이로 인해 미디어 재생이 원활이 진행되지 못하여 화면 정지 현상이 발생하게 된다. 이는, 미디어 재생을 위해 미디어를 요청하여 다운로드 할 때, 해당 기기의 정해진 잔여 버퍼의 양만큼 요청하고 미디어를 다운로드 하여 재생을 시작하며, 점진적 다운로드 방법을 사용함으로써, 당장 필요하지 않은 과도한 양의 미디어 데이터를 요청하게 되고, 네트워크 사용량이 증가되어 네트워크 경쟁을 증가시키게 되는 문제로 작용하게 된다.
In order to solve this problem, a method of providing a multimedia streaming service by hierarchically configuring a heterogeneous wireless network has been proposed. In this method, multimedia data between heterogeneous networks is transmitted through a relay device commonly connected to a network configured for streaming. . That is, although the method of configuring the hierarchical heterogeneous wireless network has an effect of improving the bandwidth compared to a single channel using multiple wireless channels, when a multimedia streaming relay is performed, a plurality of member devices are connected to the relay device, There has been a problem that playback screen stops due to temporary buffer exhaustion per device. Such stopping of the reproduction screen occurs because the fairness of bandwidth use of the corresponding channel is instantaneously lowered due to excessive competition between member devices. That is, in the existing relaying method, the relay device requests the media to the source device having the original media and downloads the media. At the same time, while the streaming is being performed, the member devices request the media to the relay device and perform the streaming. The user requests and plays the media to the relay device at the same time, thereby causing a problem of buffer exhaustion that does not receive the media stream from some member devices due to bandwidth competition. As a result, a buffering operation, which is a job of receiving media stream data and filling it into a buffer, occurs frequently, and media playback is not smoothly performed, resulting in a picture stoppage phenomenon. This is because, when requesting and downloading a medium for media playback, a request is made for the amount of the predetermined remaining buffer of the corresponding device, the media is downloaded and the playback is started, and an excessive amount of media data And increases the amount of network usage, thereby increasing network competition.

한편, 중계 기기와 멤버 기기 사이의 대역폭 공평성 문제의 해결 방법으로는, 멀티미디어를 전달할 노드들에 가중치를 두어 그 가중치에 따라 서버에서 미디어를 전송하는 방식이 적용될 수 있지만, 이러한 방식을 사용할 경우에는 서버에 대한 의존성이 높아지고, 서비스의 참여 및 탈퇴가 상대적으로 빈번한 모바일 기기의 특성상 멤버 기기들에 대한 서버의 관리 비용이 증가하게 되는 문제가 있었다.As a method of solving the bandwidth fairness problem between the relay device and the member device, a method of transmitting media from the server according to the weight of the weighted value is applied to nodes to which multimedia is to be transmitted. However, And there is a problem that the management cost of the server for the member devices is increased due to the characteristics of the mobile device where the participation and withdrawal of the service are relatively frequent.

본 발명은 기존에 제안된 방법들의 상기와 같은 문제점들을 해결하기 위해 제안된 것으로서, 원본 미디어를 제공하는 소스 기기와, 소스 기기의 미디어를 제공받아 중계하는 릴레이 기기와, 릴레이 기기로부터 미디어를 요청하여 제공받아 재생하는 복수의 멤버 기기를 포함하되, 릴레이 기기와 멤버 기기들 간의 스트림 데이터 버퍼링을 제어하도록 구성함으로써, 멤버 기기들 간의 과도한 네트워크 점유를 방지하고, 버퍼 고갈로 인한 재생 화면 정지 문제가 최소화될 수 있도록 하는, 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템을 제공하는 것을 그 목적으로 한다.
Disclosure of Invention Technical Problem [8] The present invention has been proposed in order to solve the above-mentioned problems of the previously proposed methods, and it is an object of the present invention to provide a relay apparatus, The relay device and the member devices are controlled to control the buffering of the stream data so as to prevent excessive network occupation among the member devices and to minimize the problem of the playback screen stop due to buffer exhaustion And to provide an efficient wireless network streaming relay engine system using media buffer control.

또한, 본 발명은, 릴레이 기기에 대한 멤버 기기들에서 미디어 요청 및 스트림 데이터 버퍼링을 제어하도록 구성함으로써, 당장 재생에 불필요한 네트워크 자원 경쟁을 감소시키고, 가용 대역폭이 효과적으로 확보될 수 있도록 하는, 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템을 제공하는 것을 또 다른 목적으로 한다.
In addition, the present invention is configured to control media request and stream data buffering in member devices for a relay device, thereby reducing network resource contention unnecessary for immediate playback and effectively ensuring available bandwidth. The present invention also provides an efficient wireless network streaming relay engine system using the same.

뿐만 아니라, 본 발명은, 링크 계층 또는 운영 체제의 커널 수정이 필요한 기존과 달리, 응용계층에서 스트리밍 서비스를 구현함으로써, 적용 가능성이 높고, 클라이언트의 멤버 기기 측에서 대역폭 사용을 제어하기 때문에 미디어 서버로 기능하는 릴레이 기기에 대한 의존성이 낮고 확장성을 향상시킬 수 있도록 하는, 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템을 제공하는 것을 또 다른 목적으로 한다.In addition, since the present invention implements a streaming service at an application layer and is highly applicable and controls bandwidth usage at the member device side of a client, unlike the conventional case where a kernel layer of an operating system or a link layer is required, It is another object of the present invention to provide an efficient wireless network streaming relay engine system using media buffer control, which has low dependency on functioning relay devices and can improve scalability.

상기한 목적을 달성하기 위한 본 발명의 특징에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템은,According to an aspect of the present invention, there is provided an efficient wireless network streaming relay engine system using media buffer control,

미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템으로서,An efficient wireless network streaming relay engine system using media buffer control,

원본 미디어를 제공하는 소스 기기;A source device for providing source media;

상기 소스 기기에 미디어를 요청하여 스트림 방식으로 미디어를 다운로드 하여 디스크에 저장하고, 멤버 기기들의 미디어 요청에 대응하여 디스크에 저장된 미디어를 스트림 방식으로 중계하는 릴레이 기기; 및A relay device for requesting media from the source device and downloading the media in a streaming manner and storing the media in a disk, and relaying the media stored in the disk in a streaming manner in response to a media request of the member devices; And

상기 릴레이 기기에 파일로 저장된 미디어를 요청하여 스트림 방식으로 미디어를 다운로드 하여 재생하되, 스트림 데이터 버퍼링의 감시 제어에 기초하여 한 번에 다운로드할 미디어 파일의 크기 단위로 미디어 요청을 주기적으로 수행하는 멤버 기기들을 포함하는 것을 그 구성상의 특징으로 한다.
A relay device for requesting a media stored in a file as a file and downloading and playing the media in a streaming manner, wherein the relay device periodically performs a media request in units of a size of a media file to be downloaded at a time based on supervision and control of stream data buffering And the like.

바람직하게는, 상기 무선 네트워크 스트리밍 중계 엔진 시스템은,Advantageously, the wireless network streaming relay engine system comprises:

상기 소스 기기와 상기 릴레이 기기를 하나의 무선 AP(Access Point)를 통해 IEEE 802.11 인프라스트럭처 네트워크로 연결되어 접속되도록 구성하고, 상기 릴레이 기기와 상기 멤버 기기들은 Wi-Fi Direct 네트워크로 연결되어 접속되는 이종 네트워크를 구성할 수 있다.
Wherein the source device and the relay device are connected to each other through an IEEE 802.11 infrastructure network through a single wireless AP, and the relay device and the member devices are connected to each other via a Wi-Fi Direct network, The network can be configured.

더욱 바람직하게는, 상기 릴레이 기기는,More preferably, the relay device comprises:

미디어 스트리밍을 요청하는 상기 멤버 기기들을 Wi-Fi Direct 네트워크상에서 그룹 멤버로 묶어 상기 멤버 기기들의 그룹 소유자 역할을 수행할 수 있다.
The member devices requesting the media streaming may be grouped on the Wi-Fi Direct network to play the group owner role of the member devices.

바람직하게는, 상기 소스 기기는,Preferably, the source device further comprises:

원본 미디어 파일을 저장하고, 상기 릴레이 기기의 미디어 요청에 대응하여 저장된 미디어를 스트림 방식으로 제공할 수 있다.
Stores the original media file, and provides the streamed media in response to the media request of the relay device.

바람직하게는, 상기 릴레이 기기는,Preferably, the relay device further comprises:

상기 소스 기기에 미디어 파일을 요청하여 다운로드 한 후 디스크(Disk)에 저장하는 미디어 파일 매니저(MFM);A media file manager (MFM) for requesting and downloading a media file to the source device and storing the downloaded media file on a disk;

상기 미디어 파일 매니저가 디스크에 저장한 파일을 읽어와 재생할 수 있도록 하는 미디어 플레이어 매니저(MPM); 및A media player manager (MPM) for allowing the media file manager to read and play a file stored on a disk; And

상기 멤버 기기들로부터 미디어 파일을 요청받으면, 디스크에서 미디어 파일을 읽어와 해당하는 멤버 기기로 전송하는 HTTP 서버 매니저(HSM)를 포함하여 구성할 수 있다.
And an HTTP server manager (HSM) for receiving a media file from the member devices and reading the media file from the disk and transmitting the read media file to the corresponding member device.

더욱 바람직하게는, 상기 미디어 파일 매니저(MFM)는,More preferably, the media file manager (MFM)

상기 소스 기기에 미디어 파일을 요청하여 다운로드 하는 미디어 파일 다운로드 모듈(MFD Module); 및A media file download module (MFD Module) for requesting and downloading a media file to the source device; And

상기 미디어 파일 다운로드 모듈에서 상기 소스 기기로부터 다운로드한 미디어 파일을 디스크에 저장하는 미디어 파일 라이터(MFW)로 구성할 수 있다.
And a media file writer (MFW) for storing a media file downloaded from the source device in the media file download module on a disk.

더욱 바람직하게는, 상기 미디어 플레이어 매니저(MPM)는,More preferably, the media player manager (MPM)

상기 디스크에 저장된 파일을 읽어와 재생할 수 있도록 하는 미디어 플레이어 모듈(MP Module)을 포함할 수 있다.
And a media player module (MP Module) for reading and playing the file stored in the disc.

더욱 바람직하게는, 상기 HTTP 서버 매니저(HSM)는,More preferably, the HTTP server manager (HSM)

HTTP 프로토콜을 사용하여 상기 멤버 기기로부터 미디어의 스트리밍 요청을 받고, 오픈 소스로 제공되는 NanoHTTPD를 이용하여 구현될 수 있다.
It may be implemented using a NanoHTTPD which receives a request for streaming media from the member device using an HTTP protocol and is provided as an open source.

바람직하게는, 상기 멤버 기기들 각각은,Preferably, each of the member devices comprises:

상기 릴레이 기기에 미디어 파일의 크기 및 시간에 따라 미리 설정되는 한 번에 다운로드할 미디어 파일의 크기 단위로 미디어 파일을 요청하여 다운로드 한 후 디스크(Disk)에 저장하는 미디어 파일 매니저(MFM); 및A media file manager (MFM) for requesting and downloading a media file in units of a size of a media file to be downloaded, which is preset in accordance with the size and time of the media file, and storing the downloaded media file on a disk; And

상기 미디어 파일 매니저가 디스크에 저장한 파일을 재생하며, 미디어 플레이의 버퍼를 계속 감시 확인하여 주기적으로 미디어 파일의 다운로드를 요청하는 미디어 플레이어 매니저(MPM)를 포함하여 구성할 수 있다.
And a media player manager (MPM) that plays the file stored on the disk by the media file manager and continuously requests the download of the media file by periodically checking the buffer of the media play.

더욱 바람직하게는, 상기 미디어 파일 매니저(MFM)는,More preferably, the media file manager (MFM)

상기 릴레이 기기에 미디어 파일의 크기 및 시간에 따라 미리 설정된 한 번에 다운로드할 미디어 파일의 크기 단위로 미디어 파일을 요청하여 다운로드 하는 미디어 파일 다운로드 모듈(MFD Module); 및A media file download module (MFD Module) for requesting and downloading a media file to the relay device in units of size of a media file to be downloaded at a preset time according to the size and time of the media file; And

상기 미디어 파일 다운로드 모듈에서 상기 릴레이 기기로부터 한 번에 다운로드할 미디어 파일의 크기 단위로 다운로드한 미디어 파일 조각을 디스크에 저장하는 미디어 파일 라이터(MFW)로 구성될 수 있다.
And a media file writer (MFW) for storing a piece of the media file downloaded in the media file download module by the size of the media file to be downloaded at a time from the relay device, on a disk.

더욱 더 바람직하게는, 상기 미디어 파일 다운로드 모듈(MFD Module)은,Still more preferably, the media file download module (MFD Module)

HTTP 프로토콜 통신을 이용하여 상기 릴레이 기기로부터 한 번에 다운로드할 미디어 파일의 크기 단위로 미디어 파일 조각을 미디어 재생이 완료될 때 까지 주기적으로 다운로드 할 수 있다.
It is possible to periodically download pieces of media files in units of sizes of media files to be downloaded at a time from the relay device using HTTP protocol communication until the media reproduction is completed.

더더욱 바람직하게는, 상기 미디어 파일 다운로드 모듈(MFD Module)은,Even more preferably, the media file download module (MFD Module)

상기 한 번에 다운로드할 미디어 파일의 크기 단위로 미디어 파일 조각을 주기적으로 반복하여 다운로드 하되, 미디어 파일 조각들이 순차로 연속되도록 할 수 있다.
The media file fragments may be periodically repeatedly downloaded in units of the sizes of the media files to be downloaded at a time, and the pieces of the media file fragments may be successively sequenced.

더더욱 바람직하게는, 상기 미디어 파일 다운로드 모듈(MFD Module)은,Even more preferably, the media file download module (MFD Module)

HTTP 프로토콜 통신을 이용하여 상기 릴레이 기기로부터 한 번에 다운로드할 미디어 파일의 크기 단위로 미디어 파일 조각을 미디어 재생이 완료될 때 까지 주기적으로 다운로드 하되, 미디어 재생 중 사용자가 미디어 재생을 중지하는 경우에는 미디어 파일 조각의 다운로드 요청을 중지하거나 대기상태를 유지할 수 있다.
A piece of the media file is downloaded periodically until the media reproduction is completed by the size of the media file to be downloaded at a time from the relay device by using the HTTP protocol communication. However, if the user stops the media reproduction during the media reproduction, The download request of the file fragment can be stopped or the standby state can be maintained.

더욱 더 바람직하게는, 상기 미디어 파일 다운로드 모듈(MFD Module)은,Still more preferably, the media file download module (MFD Module)

스트리밍 받고자 하는 미디어 파일에 대해 HTTP 프로토콜의 Range 헤더를 이용하여 한 번에 다운로드할 미디어 파일의 크기 단위로 스트림 미디어 파일 조각을 요청할 수 있다.
For a media file to be streamed, a stream media file fragment can be requested in units of the size of the media file to be downloaded at a time using the HTTP header of the HTTP protocol.

더욱 더 바람직하게는, 상기 미디어 파일 라이터(MFW)는,Still more preferably, the media file writer (MFW)

상기 미디어 파일 다운로드 모듈에서 상기 릴레이 기기로부터 한 번에 다운로드할 미디어 파일의 크기 단위로 다운로드한 미디어 파일 조각을 디스크에 저장할 때, RandomAccessFile을 이용하여 임의의 위치부터 미디어 파일 조각이 다운로드 될 수 있도록 구현될 수 있다.
When the media file download module saves a piece of media file downloaded in units of the size of a media file to be downloaded at a time from the relay device, the piece of media file can be downloaded from an arbitrary position by using RandomAccessFile .

더욱 바람직하게는, 상기 미디어 플레이어 매니저(MPM)는,More preferably, the media player manager (MPM)

상기 디스크에 저장된 파일을 읽어와 재생할 수 있도록 하는 미디어 플레이어 모듈(MP Module); 및A media player module (MP Module) for reading and playing a file stored on the disk; And

상기 미디어 플레이어 모듈을 통한 미디어의 재생 중에 미디어 플레이어의 버퍼를 계속 감시 확인하는 버퍼 관리 모듈(BM Module)을 포함하여 구성할 수 있다.
And a buffer management module (BM Module) for continuously monitoring and checking the buffer of the media player during the playback of the media through the media player module.

더욱 더 바람직하게는, 상기 버퍼 관리 모듈(BM Module)은,Still more preferably, the buffer management module (BM Module)

미디어 플레이어의 스트림 데이터 버퍼링의 감시 확인에 기초하여 버퍼의 미디어 양을 확인하고, 잔여 미디어 양이 충분하지 않을 때 다음 재생할 미디어 파일 조각의 다운로드를 미디어 파일 다운로드 모듈(MFD Module)에 요청하고, 미디어 파일 다운로드 모듈에서 미디어 파일을 수신하도록 제어할 수 있다.
The amount of the media in the buffer is checked based on the monitoring check of the buffering of the stream data of the media player, the download of the piece of media file to be played next is requested to the media file downloading module (MFD Module) The download module can be controlled to receive the media file.

더욱 더 바람직하게는, 상기 미디어 플레이어 모듈(MP Module)은,Still more preferably, the media player module (MP Module)

상기 디스크에 저장된 파일을 읽어와 재생할 수 있는 미디어 플레이어로서, 안드로이드에서 제공하는 VideoView 또는 MidiaPlayer를 이용하여 구현될 수 있다.
A media player that can read and play a file stored on the disk, and can be implemented using a VideoView or MidiaPlayer provided by Android.

더더욱 바람직하게는, 상기 미디어 플레이어 모듈(MP Module)은,Even more preferably, the media player module (MP Module)

상기 버퍼 관리 모듈을 통해 주기적으로 새로 다운로드한 부분을 재생할 수 있도록 VideoView 또는 MidiaPlayer의 현재의 재생 위치 값을 초 단위로 받아 현재 설정된 미디어 파일을 통해 더는 미디어 파일이 재생될 수 없을 때, 다시 해당 재생 위치로 재생 위치를 갱신시킬 수 있다.
When the media file can not be played back through the currently set media file by receiving the current playback position value of the VideoView or MidiaPlayer in units of seconds so that the newly downloaded portion can be played periodically through the buffer management module, It is possible to update the reproduction position to the position.

더욱 바람직하게는, 상기 멤버 기기는,More preferably, the member device further comprises:

각각의 멤버 기기들이, 미디어 재생이 시작된 이후 주기적인 버퍼 확인과 파일을 다운로드 하는 과정이 미디어 파일이 재생되는 동안 반복적으로 수행될 수 있도록 상기 릴레이 기기에 대하여 미디어 요청과 스트림 데이터 버퍼링을 제어함으로써, 현재의 미디어 재생에 필요하지 않은 미디어 스트리밍을 감소시켜 네트워크 사용량 및 네트워크의 혼잡도를 줄이고, 네트워크에서의 멤버 기기 간의 과도한 네트워크 자원 경쟁 및 대역폭의 공정성 저하가 방지되도록 기능할 수 있다.Each of the member devices controls the media request and the stream data buffering to the relay device so that the periodic buffer check and the downloading of the file after the start of the media playback can be repeatedly performed during the playback of the media file, The media streaming that is not necessary for media playback of the media stream can be reduced to reduce the amount of network usage and the congestion of the network and to prevent excessive network resource contention among the member devices in the network and decrease in fairness of the bandwidth.

본 발명에서 제안하고 있는 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템에 따르면, 원본 미디어를 제공하는 소스 기기와, 소스 기기의 미디어를 제공받아 중계하는 릴레이 기기와, 릴레이 기기로부터 미디어를 요청하여 제공받아 재생하는 복수의 멤버 기기를 포함하되, 릴레이 기기와 멤버 기기들 간의 스트림 데이터 버퍼링을 제어하도록 구성함으로써, 멤버 기기들 간의 과도한 네트워크 점유를 방지하고, 버퍼 고갈로 인한 재생 화면 정지 문제가 최소화될 수 있도록 할 수 있다.
According to an efficient wireless network streaming relay engine system using the media buffer control proposed in the present invention, a source device for providing source media, a relay device for relaying the media provided by the source device, and media are requested from the relay device The relay device and the member devices are controlled to control the buffering of the stream data so as to prevent excessive network occupation among the member devices and to minimize the problem of the playback screen stop due to buffer exhaustion Can be done.

또한, 본 발명에 따르면, 릴레이 기기에 대한 멤버 기기들에서 미디어 요청 및 스트림 데이터 버퍼링을 제어하도록 구성함으로써, 당장 재생에 불필요한 네트워크 자원 경쟁을 감소시키고, 가용 대역폭이 효과적으로 확보될 수 있도록 할 수 있다.
In addition, according to the present invention, it is possible to control the media request and the stream data buffering in the member devices for the relay device, thereby reducing the unnecessary network resource competition immediately and enabling the available bandwidth to be secured effectively.

뿐만 아니라, 본 발명은, 링크 계층 또는 운영 체제의 커널 수정이 필요한 기존과 달리, 응용계층에서 스트리밍 서비스를 구현함으로써, 적용 가능성이 높고, 클라이언트의 멤버 기기 측에서 대역폭 사용을 제어하기 때문에 미디어 서버로 기능하는 릴레이 기기에 대한 의존성이 낮고 확장성을 향상시킬 수 있도록 할 수 있다.In addition, since the present invention implements a streaming service at an application layer and is highly applicable and controls bandwidth usage at the member device side of a client, unlike the conventional case where a kernel layer of an operating system or a link layer is required, The dependency on the functioning relay device is low and the scalability can be improved.

도 1은 본 발명의 일실시예에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템의 이종 무선 네트워크 구조 및 미디어 스트림 데이터 중계의 개념도 구성을 도시한 도면.
도 2는 본 발명의 일실시예에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템의 스트리밍 릴레이 기기의 미디어 요청 과정을 개략적으로 도시한 도면.
도 3은 본 발명의 일실시예에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템의 구성을 기능블록으로 도시한 도면.
도 4는 본 발명의 일실시예에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템의 릴레이 기기에 적용되는 스트리밍 중계 엔진 구조를 도시한 도면.
도 5는 본 발명의 일실시예에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템의 멤버 기기들에 적용되는 스트리밍 중계 엔진 구조를 도시한 도면.
도 6은 본 발명의 일실시예에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템의 구현 결과를 일례로 도시한 도면.
도 7은 본 발명의 일실시예에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템의 성능 평가 결과로서, 비트전송률별 평균 재생화면 정지횟수를 도시한 도면.
도 8은 본 발명의 일실시예에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템의 성능 평가 결과로서, 비트전송률별 재생화면 정지 평균 및 최소/최대 시간을 도시한 도면.
Brief Description of the Drawings Fig. 1 is a conceptual diagram of a heterogeneous wireless network structure and a media stream data relay in an efficient wireless network streaming relay engine system using a media buffer control according to an embodiment of the present invention.
BACKGROUND OF THE INVENTION 1. Field of the Invention [0002] The present invention relates to a streaming relay system, and more particularly,
3 is a functional block diagram illustrating a configuration of an efficient wireless network streaming relay engine system using media buffer control according to an embodiment of the present invention.
4 is a diagram illustrating a structure of a streaming relay engine applied to a relay device of an efficient wireless network streaming relay engine system using a media buffer control according to an embodiment of the present invention.
5 is a diagram illustrating a streaming relay engine structure applied to member devices of an efficient wireless network streaming relay engine system using media buffer control according to an embodiment of the present invention.
6 is a diagram illustrating an exemplary implementation result of an efficient wireless network streaming relay engine system using a media buffer control according to an embodiment of the present invention.
FIG. 7 is a diagram illustrating the number of times of stopping an average playback screen for each bit rate as a result of performance evaluation of an efficient wireless network streaming relay engine system using a media buffer control according to an embodiment of the present invention. FIG.
FIG. 8 is a diagram illustrating a playback screen stop average and minimum / maximum time for each bit rate as a result of performance evaluation of an efficient wireless network streaming relay engine system using media buffer control according to an embodiment of the present invention. FIG.

이하, 첨부된 도면을 참조하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 바람직한 실시예를 상세히 설명한다. 다만, 본 발명의 바람직한 실시예를 상세하게 설명함에 있어, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다. 또한, 유사한 기능 및 작용을 하는 부분에 대해서는 도면 전체에 걸쳐 동일한 부호를 사용한다.
Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings, in order that those skilled in the art can easily carry out the present invention. In the following detailed description of the preferred embodiments of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear. In the drawings, like reference numerals are used throughout the drawings.

덧붙여, 명세서 전체에서, 어떤 부분이 다른 부분과 ‘연결’ 되어 있다고 할 때, 이는 ‘직접적으로 연결’ 되어 있는 경우뿐만 아니라, 그 중간에 다른 소자를 사이에 두고 ‘간접적으로 연결’ 되어 있는 경우도 포함한다. 또한, 어떤 구성요소를 ‘포함’ 한다는 것은, 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다.
In addition, in the entire specification, when a part is referred to as being 'connected' to another part, it may be referred to as 'indirectly connected' not only with 'directly connected' . Also, to "include" an element means that it may include other elements, rather than excluding other elements, unless specifically stated otherwise.

도 1은 본 발명의 일실시예에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템의 이종 무선 네트워크 구조 및 미디어 스트림 데이터 중계의 개념도 구성을 도시한 도면이고, 도 2는 본 발명의 일실시예에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템의 스트리밍 릴레이 기기의 미디어 요청 과정을 개략적으로 도시한 도면이며, 도 3은 본 발명의 일실시예에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템의 구성을 기능블록으로 도시한 도면이고, 도 4는 본 발명의 일실시예에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템의 릴레이 기기에 적용되는 스트리밍 중계 엔진 구조를 도시한 도면이며, 도 5는 본 발명의 일실시예에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템의 멤버 기기들에 적용되는 스트리밍 중계 엔진 구조를 도시한 도면이다. 도 1 내지 도 5에 각각 도시된 바와 같이, 본 발명의 일실시예에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템은, 소스 기기(100), 릴레이 기기(200), 및 복수의 멤버 기기(300)로 구성될 수 있다.
FIG. 1 is a diagram illustrating a configuration of a heterogeneous wireless network structure and media stream data relay in an efficient wireless network streaming relay engine system using media buffer control according to an embodiment of the present invention. FIG. FIG. 3 is a block diagram of an efficient wireless network streaming relay system using a media buffer control according to an exemplary embodiment of the present invention. FIG. 4 is a block diagram of a streaming relay engine applied to a relay device of an efficient wireless network streaming relay engine system using a media buffer control according to an embodiment of the present invention. Fig. 5 A diagram showing a stream structure of a relay the engine applied to the efficient wireless network streaming members of the relay device engine system using a media buffer control according to an embodiment of the present invention. 1 to 5, an efficient wireless network streaming relay engine system using media buffer control according to an embodiment of the present invention includes a source device 100, a relay device 200, and a plurality of members And may be constituted by a device 300.

본 발명의 일실시예에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템은 도 1에 도시된 바와 같이, 소스 기기(100)와 릴레이 기기(200)를 하나의 무선 AP(Access Point)를 통해 IEEE 802.11 인프라스트럭처 네트워크로 연결되어 접속되도록 구성하고, 릴레이 기기(200)와 멤버 기기(300)들은 Wi-Fi Direct 네트워크로 연결되어 접속되는 이종 네트워크를 구성할 수 있다. 여기서, 릴레이 기기(200)는 미디어 스트리밍을 요청하는 멤버 기기(300)들을 Wi-Fi Direct 네트워크상에서 그룹 멤버로 묶어 멤버 기기들의 그룹 소유자 역할을 수행할 수 있도록 한다. 이하에서는 본 발명에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템에 대해 첨부된 도면을 참조하여 상세히 설명하기로 한다.
1, an efficient wireless network streaming relay engine system using a media buffer control according to an embodiment of the present invention includes a source AP 100 and a relay AP 200 as a single wireless access point And the relay device 200 and the member devices 300 may be connected to the Wi-Fi Direct network to form a heterogeneous network. Here, the relay device 200 groups the member devices 300 requesting media streaming as a group member on the Wi-Fi Direct network so that the relay device 200 can play a role of a group owner of member devices. Hereinafter, an efficient wireless network streaming relay engine system using media buffer control according to the present invention will be described in detail with reference to the accompanying drawings.

소스 기기(100)는, 원본 미디어를 제공하는 구성이다. 이러한 소스 기기(100)는 원본 미디어 파일을 저장하고, 후술하게 될 릴레이 기기(200)의 미디어 요청에 대응하여 저장된 미디어를 스트림 방식으로 제공하는 역할을 한다.
The source device 100 is a configuration for providing an original medium. The source device 100 stores the original media file and provides the stored media in a stream format corresponding to the media request of the relay device 200, which will be described later.

릴레이 기기(200)는, 소스 기기(100)에 미디어를 요청하여 스트림 방식으로 미디어를 다운로드 하여 디스크(201)에 저장하고, 후술하게 될 멤버 기기(300)들의 미디어 요청에 대응하여 디스크(201)에 저장된 미디어를 스트림 방식으로 중계하는 구성이다. 이러한 릴레이 기기(200)는 도 3에 도시된 바와 같이, 소스 기기(100)에 미디어 파일을 요청하여 다운로드 한 후 디스크(Disk)(201)에 저장하는 미디어 파일 매니저(MFM)(210)와, 미디어 파일 매니저(210)가 디스크(201)에 저장한 파일을 읽어와 재생할 수 있도록 하는 미디어 플레이어 매니저(MPM)(220)와, 멤버 기기(300)들로부터 미디어 파일을 요청받으면, 디스크(201)에서 미디어 파일을 읽어와 해당하는 멤버 기기(300)로 전송하는 HTTP 서버 매니저(HSM)(230)를 포함하여 구성될 수 있다.
The relay device 200 requests the media to the source device 100 to download the media in a streaming manner and stores the media in the disk 201. The relay device 200 records the media 201 on the disk 201 in response to a media request of the member devices 300, In a streaming manner. 3, the relay device 200 includes a media file manager (MFM) 210 for requesting and downloading a media file to the source device 100 and storing the downloaded media file on a disk 201, A media player manager (MPM) 220 for allowing the media file manager 210 to read and play the files stored on the disc 201; and a media player manager 220 for receiving media files from the member devices 300, And an HTTP server manager (HSM) 230 for reading the media file from the corresponding member device 300 and transmitting the read media file to the corresponding member device 300.

또한, 미디어 파일 매니저(MFM)(210)는 도 4에 도시된 바와 같이, 소스 기기(100)에 미디어 파일을 요청하여 다운로드 하는 미디어 파일 다운로드 모듈(MFD Module)(211)과, 미디어 파일 다운로드 모듈(211)에서 소스 기기(100)로부터 다운로드한 미디어 파일을 디스크(201)에 저장하는 미디어 파일 라이터(MFW)(212)로 구성될 수 있다. 또한, 미디어 플레이어 매니저(MPM)(220)는 디스크(201)에 저장된 파일을 읽어와 재생할 수 있도록 하는 미디어 플레이어 모듈(MP Module)(221)을 포함하여 구성될 수 있다. 또한, HTTP 서버 매니저(HSM)(230)는 HTTP 프로토콜을 사용하여 멤버 기기(300)로부터 미디어의 스트리밍 요청을 받고, 오픈 소스로 제공되는 NanoHTTPD를 이용하여 구현될 수 있다.
4, the media file manager (MFM) 210 includes a media file download module (MFD module) 211 for requesting and downloading a media file to the source device 100, a media file download module (MFW) 212 for storing the media file downloaded from the source device 100 in the disk 211 in the disk 201. The media file writer (MFW) In addition, the media player manager (MPM) 220 may include a media player module (MP module) 221 for reading and playing a file stored on the disc 201. In addition, the HTTP server manager (HSM) 230 may be implemented using a NanoHTTPD which receives a request for streaming media from the member device 300 using the HTTP protocol and is provided as an open source.

복수의 멤버 기기(300)는, 릴레이 기기(200)에 파일로 저장된 미디어를 요청하여 스트림 방식으로 미디어를 다운로드 하여 재생하되, 스트림 데이터 버퍼링의 감시 제어에 기초하여 한 번에 다운로드할 미디어 파일의 크기 단위로 미디어 요청을 주기적으로 수행하는 구성이다. 이러한 멤버 기기(300)는 각각의 멤버 기기(300)들이, 미디어 재생이 시작된 이후 주기적인 버퍼 확인과 파일을 다운로드 하는 과정이 미디어 파일이 재생되는 동안 반복적으로 수행될 수 있도록 릴레이 기기(200)에 대하여 미디어 요청과 스트림 데이터 버퍼링을 제어함으로써, 현재의 미디어 재생에 필요하지 않은 미디어 스트리밍을 감소시켜 네트워크 사용량 및 네트워크의 혼잡도를 줄이고, 네트워크에서의 멤버 기기 간의 과도한 네트워크 자원 경쟁 및 대역폭의 공정성 저하가 방지되도록 기능하게 된다. 아래의 [수학식 1]은 멤버 기기(300)가 릴레이 기기(200)에 미디어 스트림 데이터를 요청할 때 요청할 스트림 데이터의 크기를 구하는 수식이다.A plurality of member devices (300) request media stored in a file in the relay device (200) and download and play the media in a streaming manner, wherein the size of the media file to be downloaded at one time And periodically performs a media request in units of units. The member device 300 transmits the periodic buffer check and file downloading process to the relay device 200 so that each member device 300 can be repeatedly performed during the playback of the media file. By controlling media requests and stream data buffering, media streaming that is not required for current media playback is reduced, reducing network usage and network congestion, preventing excessive network resource contention among member devices in the network and lowering fairness of bandwidth . Equation (1) below is a formula for obtaining the size of stream data to be requested when the member device 300 requests the relay device 200 for media stream data.

Figure 112016106817712-pat00001
Figure 112016106817712-pat00001

위의 수학식에서, Stotal은 원본 미디어의 전체 크기를 의미하고, Dtotal은 원본 미디어의 전체 재생 시간을 의미한다. 즉, Stotal을 Dtotal로 나누면 대략 1초 동안 미디어를 재생할 때 필요한 스트림 데이터의 크기를 추정할 수 있게 된다. 또한, Drange 값은 멤버 기기(300)가 요청하는 스트림 데이터의 최소 재생 시간을 의미한다. 예를 들어, 미디어 재생을 위해 최소 10초 단위의 스트림 데이터 조각을 요청하여 다운로드 하고자 하면, 이 값을 10으로 주어 대략 10초 동안 재생할 수 있는 미디어 스트림 데이터 조각을 요청할 수 있게 된다. 최근 대부분의 멀티미디어는 가변 비트전송률(Variable Bitrate, VBR)을 가지므로, 특정 시점의 비트 전송률이 미디어 전체의 평균 비트전송률보다 높을 수 있으며, 이 경우에 상대적으로 더 큰 크기의 Sdownload 값이 요구될 수 있다. 이와 같이 가변 비트 전송률에 따른 Sdownload 값의 보정을 위해서 α값을 사용한다. 만약 Sdownload 값이 보정되지 않을 경우, 다음 스트림 데이터를 요청하여 다운로드 하는 시점이 오기 전에 스트림 데이터의 부족으로 인하여 미디어 재생이 중단되는 오류가 발생할 수 있으므로, 가변 비트전송률을 가진 멀티미디어에서 Drange 만큼의 재생 시간을 보장하기 위한 스트림 데이터 양인 Sdownload 값은 실험을 통해 얻은 α값을 2로 설정하도록 한다. 즉, 수학식에서의 Sdownload 값은 멤버 기기(300)가 릴레이 기기(200)에게 미디어를 요청하였을 때, Drange 시간 동안 미디어를 재생하기 위하여 주기적으로 요청할 미디어 스트림 데이터 조각의 용량을 나타내게 된다.
In the above equation, S total denotes the total size of the original media, and D total denotes the total playback time of the original media. That is, dividing S total by D total enables estimation of the size of the stream data required for reproducing the media for approximately one second. The D range value indicates the minimum playback time of the stream data requested by the member device 300. For example, if a user wants to download and request a piece of stream data for a minimum of 10 seconds for media playback, it can request a piece of media stream data that can be played for about 10 seconds given this value as 10. Since most multimedia has a variable bit rate (VBR), the bit rate at a specific point in time may be higher than the average bit rate of the entire media. In this case, a relatively large S download value is required . As described above, the alpha value is used for correcting the S download value according to the variable bit rate. If the S download value is not corrected, as the D range in multimedia with a variable bit rate since the time of download requests and then stream data can cause errors due to the lack of stream data because the media playback is interrupted before the The S download value, which is the amount of stream data for ensuring the playback time, is set to 2, which is obtained from the experiment. That is, when the member device 300 requests the media to the relay device 200, the S download value in the equation represents the capacity of the piece of media stream data to be periodically requested to play the media during the D range time.

또한, 멤버 기기(300)들 각각은 도 3에 도시된 바와 같이, 릴레이 기기(200)에 미디어 파일의 크기 및 시간에 따라 미리 설정되는 한 번에 다운로드할 미디어 파일의 크기 단위로 미디어 파일을 요청하여 다운로드 한 후 디스크(Disk)(301)에 저장하는 미디어 파일 매니저(MFM)(310)과, 미디어 파일 매니저(310)가 디스크(301)에 저장한 파일을 재생하며, 미디어 플레이의 버퍼를 계속 감시 확인하여 주기적으로 미디어 파일의 다운로드를 요청하는 미디어 플레이어 매니저(MPM)(320)를 포함하여 구성할 수 있다.
3, each of the member devices 300 requests the relay device 200 to request a media file in units of the size of a media file to be downloaded at a time, which is preset in accordance with the size and time of the media file A media file manager (MFM) 310 for downloading the media file and storing the downloaded file on a disc 301, a file manager 310 for reproducing the file stored in the disc 301, And a media player manager (MPM) 320 for monitoring and periodically requesting download of a media file.

미디어 파일 매니저(MFM)(310)는 도 5에 도시된 바와 같이, 릴레이 기기(200)에 미디어 파일의 크기 및 시간에 따라 미리 설정된 한 번에 다운로드할 미디어 파일의 크기 단위로 미디어 파일을 요청하여 다운로드 하는 미디어 파일 다운로드 모듈(MFD Module)(311)과, 미디어 파일 다운로드 모듈(311)에서 릴레이 기기(200)로부터 한 번에 다운로드할 미디어 파일의 크기 단위로 다운로드한 미디어 파일 조각을 디스크(301)에 저장하는 미디어 파일 라이터(MFW)(312)로 구성될 수 있다. 여기서, 미디어 파일 다운로드 모듈(MFD Module)(311)은 HTTP 프로토콜 통신을 이용하여 릴레이 기기(200)로부터 한 번에 다운로드할 미디어 파일의 크기 단위로 미디어 파일 조각을 미디어 재생이 완료될 때 까지 주기적으로 다운로드 할 수 있다. 또한, 미디어 파일 다운로드 모듈(MFD Module)(311)은 한 번에 다운로드할 미디어 파일의 크기 단위로 미디어 파일 조각을 주기적으로 반복하여 다운로드 하되, 미디어 파일 조각들이 순차로 연속되도록 할 수 있다. 또한, 미디어 파일 다운로드 모듈(MFD Module)(311)은 HTTP 프로토콜 통신을 이용하여 릴레이 기기(200)로부터 한 번에 다운로드할 미디어 파일의 크기 단위로 미디어 파일 조각을 미디어 재생이 완료될 때 까지 주기적으로 다운로드 하되, 미디어 재생 중 사용자가 미디어 재생을 중지하는 경우에는 미디어 파일 조각의 다운로드 요청을 중지하거나 대기상태를 유지할 수도 있다. 이러한 미디어 파일 다운로드 모듈(MFD Module)(311)은 스트리밍 받고자 하는 미디어 파일에 대해 HTTP 프로토콜의 Range 헤더를 이용하여 한 번에 다운로드할 미디어 파일의 크기 단위로 스트림 미디어 파일 조각을 요청할 수 있다.
5, the media file manager (MFM) 310 requests a media file to the relay device 200 in units of the size of a media file to be downloaded at a predetermined time according to the size and time of the media file A media file downloading module 311 for downloading a media file and a media file download module 311 for downloading a piece of media file downloaded in units of size of a media file to be downloaded at a time from the relay device 200, And a media file writer (MFW) Here, the media file download module (MFD Module) 311 periodically scans the pieces of media files in size units of the media files to be downloaded at one time from the relay device 200 using the HTTP protocol communication until the media playback is completed You can download it. In addition, the media file download module (MFD Module) 311 may repeatedly download media file fragments periodically in units of size of a media file to be downloaded at one time, so that pieces of media file fragments may be successively sequenced. In addition, the media file download module (MFD Module) 311 periodically scans the pieces of media files in size units of the media files to be downloaded at one time from the relay device 200 using HTTP protocol communication If the user stops playing the media during the media playback, the download request of the media file fragment may be suspended or the standby state may be maintained. The media file download module (MFD module) 311 can request a stream media file fragment in units of size of a media file to be downloaded at a time using a range header of the HTTP protocol for the media file to be streamed.

미디어 파일 라이터(MFW)(312)는 미디어 파일 다운로드 모듈(311)에서 릴레이 기기(200)로부터 한 번에 다운로드할 미디어 파일의 크기 단위로 다운로드한 미디어 파일 조각을 디스크에 저장할 때, RandomAccessFile을 이용하여 임의의 위치부터 미디어 파일 조각이 다운로드 될 수 있도록 구현될 수 있다.
When the media file writer (MFW) 312 stores a piece of the media file downloaded in units of the size of the media file to be downloaded at once from the relay device 200 in the media file downloading module 311, the media file writer 312 uses RandomAccessFile A piece of media file can be downloaded from an arbitrary position.

미디어 플레이어 매니저(MPM)(320)는 도 5에 도시된 바와 같이, 디스크(301)에 저장된 파일을 읽어와 재생할 수 있도록 하는 미디어 플레이어 모듈(MP Module)(321)과, 미디어 플레이어 모듈(321)을 통한 미디어의 재생 중에 미디어 플레이어의 버퍼를 계속 감시 확인하는 버퍼 관리 모듈(BM Module)(322)을 포함하여 구성할 수 있다. 여기서, 미디어 플레이어 모듈(MP Module)(321)은 디스크(301)에 저장된 파일을 읽어와 재생할 수 있는 미디어 플레이어로서, 안드로이드에서 제공하는 VideoView 또는 MidiaPlayer를 이용하여 구현될 수 있다. 또한, 미디어 플레이어 모듈(MP Module)(321)은 버퍼 관리 모듈(322)을 통해 주기적으로 새로 다운로드한 부분을 재생할 수 있도록 VideoView 또는 MidiaPlayer의 현재의 재생 위치 값을 초 단위로 받아 현재 설정된 미디어 파일을 통해 더는 미디어 파일이 재생될 수 없을 때, 다시 해당 재생 위치로 재생 위치를 갱신시킬 수 있게 된다. 또한, 버퍼 관리 모듈(BM Module)(322)은 미디어 플레이어의 스트림 데이터 버퍼링의 감시 확인에 기초하여 버퍼의 미디어 양을 확인하고, 잔여 미디어 양이 충분하지 않을 때 다음 재생할 미디어 파일 조각의 다운로드를 미디어 파일 다운로드 모듈(MFD Module)(311)에 요청하고, 미디어 파일 다운로드 모듈(311)에서 미디어 파일을 수신하도록 제어할 수 있다.
5, the media player manager (MPM) 320 includes a media player module (MP module) 321 for reading and playing a file stored in the disc 301, a media player module 321, And a buffer management module (BM Module) 322 that continuously monitors and confirms the buffer of the media player during playback of the media through the buffer module. Here, the media player module (MP module) 321 is a media player that can read and play a file stored in the disc 301, and can be implemented using a VideoView or MidiaPlayer provided by Android. In addition, the media player module (MP module) 321 receives the current playback position value of the VideoView or MidiaPlayer in units of seconds so as to periodically play back the newly downloaded portion through the buffer management module 322, When the media file can not be played back, the playback position can be updated again to the corresponding playback position. In addition, the buffer management module (BM Module) 322 checks the amount of media in the buffer based on the monitoring confirmation of buffering of the stream data of the media player, and downloads a piece of the next media file to be played back when the amount of remaining media is insufficient Requesting the file download module (MFD Module) 311, and controlling the media file download module 311 to receive the media file.

도 6은 본 발명의 일실시예에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템의 구현 결과를 일례로 도시한 도면이다. 도 6은 본 발명의 일실시예에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템에 구현되는 릴레이 기기(200)와 멤버 기기(300)들에 구현된 스트리밍 릴레이 엔진을 통해 이종 무선 네트워크상에서 미디어 스트리밍 릴레이를 진행한 모습을 나타낸다. 즉, 소스 기기(100)가 미디어 스트리밍을 시작한 후 릴레이 기기(200)가 소스 기기(100)에 미디어를 요청하여 다운로드 하면서 미디어 재생을 진행하면, 멤버 기기(300)가 릴레이 기기(200)에 미디어를 요청하여 Sdownload 만큼씩 미디어를 다운로드하면서 미디어 재생을 진행하는 화면을 나타낸다.
6 is a diagram illustrating an exemplary implementation result of an efficient wireless network streaming relay engine system using media buffer control according to an embodiment of the present invention. FIG. 6 is a flow diagram illustrating a method of transmitting and receiving data over a heterogeneous wireless network through a relay device 200 implemented in an efficient wireless network streaming relay engine system using media buffer control according to an embodiment of the present invention and a streaming relay engine implemented in member devices 300 It shows the progress of media streaming relay. That is, when the relay device 200 requests media to the source device 100 after the source device 100 starts media streaming, and the media device 300 plays the media while downloading the media, the relay device 200 transmits media And downloads the media by S download to display the screen for playing the media.

도 7은 본 발명의 일실시예에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템의 성능 평가 결과로서, 비트전송률별 평균 재생화면 정지횟수를 도시한 도면이고, 도 8은 본 발명의 일실시예에 따른 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템의 성능 평가 결과로서, 비트전송률별 재생화면 정지 평균 및 최소/최대 시간을 도시한 도면이다. 도 7은 버퍼링 제어를 하지 않는 기존 중계 방식과, 본 발명의 버퍼링 제어를 통한 중계 방식의 멤버 기기(300)별 평균 화면 정지 횟수를 비트전송률별로 측정하여 나타낸 그래프이다. 도 7에서는 기존의 중계 방식보다 본 발명의 중계 방식이 더 적은 횟수의 재생 화면 정지가 발생하였음을 알 수 있다. 특히, 가장 높은 비트전송률인 4000Kbps의 미디어 재생 시, 기존 중계 방식은 8.83회의 화면 정지가 발생한 반면에 본 발명의 중계 방식은 2.45회로 매우 적은 횟수의 화면 정지가 발생하였다. 도 8은 기존 중계 방식과 본 발명에 따른 버퍼링 제어를 통한 중계 방식의 멤버 기기(300)별 화면 정지 1회 시의 최소/최대/평균 시간을 비트전송률별로 평균하여 그래프로 나타내고 있다. 도 8은 본 발명에 따른 중계 방식이 기존의 중계 방식에 비해 화면 정지가 발생하였을 때, 버퍼링이 완료되어 다시 재생이 시작되기까지 더 적은 시간이 소요됨을 알 수 있다. 특히, 4000Kbps 비트전송률을 가진 미디어 중계 시 본 발명에 따른 버퍼링 제어의 중계 방식이 약 5.52초 빠르게 재생이 회복됨을 알 수 있다. 이와 같은 실험 결과를 통해 기존 중계 방식보다 본 발명에 따른 버퍼링 제어를 통한 중계 방식의 재생 화면 정지 횟수와 화면 정지 시간이 현저하게 감소하였음을 알 수 있다. 이는 멤버 기기에서 미디어 스트림 데이터에 대한 버퍼링을 제어하여 멤버 기기 간 발생하는 과도한 대역폭 경쟁을 방지하고, 네트워크 대역폭 사용에 대한 공평성 저하를 방지하기 때문이다. 즉, 중계 버퍼링 제어를 통해서 스트리밍 중계가 이루어지는 무선 채널 내에서 발생하는 프레임 충돌과 경쟁을 감소시키고, 대역폭을 확보하여 스트림 버퍼링 대기로 인한 지연시간을 감소시킴으로써, 멤버 기기들의 재생 화면 정지 횟수 및 화면 정지 시간이 감소되어 서비스 사용자가 체감하는 멀티미디어 스트리밍의 품질을 향상시킬 수 있게 된다.
FIG. 7 is a graph illustrating a result of performance evaluation of an efficient wireless network streaming relay engine system using media buffer control according to an embodiment of the present invention, FIG. 5 is a graph showing average playback time and minimum / maximum time for a bit rate, as a result of performance evaluation of an efficient wireless network streaming relay engine system using media buffer control according to an embodiment. FIG. 7 is a graph showing the average number of screen stops for each of the member devices 300 of the relaying method through the buffering control of the present invention measured for each bit rate, according to the conventional relaying method without buffering control. In FIG. 7, it can be seen that the relay method of the present invention has a lesser number of playback screen stops than the conventional relay method. Especially, in the media reproduction of 4000 Kbps, which is the highest bit rate, the conventional relay method has a picture stopping 8.83 times, while the relaying method of the present invention has a very small number of picture stopping times of 2.45 times. FIG. 8 is a graph illustrating the average of the minimum, maximum, and average time of one screen shot for each member device 300 of the relay system through buffering control according to the conventional relaying method and the present invention. FIG. 8 shows that when the relaying method according to the present invention generates a screen stop as compared with the conventional relaying method, it takes less time until buffering is completed and reproduction is started again. Particularly, in the case of media relay having a bit rate of 4000 Kbps, it can be seen that the reproduction method of the buffering control according to the present invention is restored to the reproduction speed of about 5.52 seconds. It can be seen from the experiment result that the number of times of stopping the playback screen and the screen stopping time of the relaying method through the buffering control according to the present invention are remarkably reduced as compared with the existing relaying method. This is because the member device controls the buffering of the media stream data to prevent excessive bandwidth competition occurring between the member devices and to prevent the fairness degradation in the use of the network bandwidth. That is, frame collision and contention occurring in the wireless channel in which the streaming relay is performed through relay buffering control is reduced, and the bandwidth is ensured to reduce the delay time due to stream buffering waiting, The time can be reduced and the quality of the multimedia streaming experienced by the service user can be improved.

이상 설명한 본 발명은 본 발명이 속한 기술분야에서 통상의 지식을 가진 자에 의하여 다양한 변형이나 응용이 가능하며, 본 발명에 따른 기술적 사상의 범위는 아래의 특허청구범위에 의하여 정해져야 할 것이다.The present invention may be embodied in many other specific forms without departing from the spirit or essential characteristics and scope of the invention.

100: 소스 기기(Source Device)
200: 릴레이 기기(Relay Device)
201: 디스크(Disk)
210: 미디어 파일 매니저
211: 미디어 파일 다운로드 모듈
212: 미디어 파일 라이터
220: 미디어 플레이어 매니저
221: 미디어 플레이어 모듈
230: HTTP 서버 매니저
300: 멤버 기기(Member Device)
301: 디스크(Disk)
310: 미디어 파일 매니저
311: 미디어 파일 다운로드 모듈
312: 미디어 파일 라이터
320: 미디어 플레이어 매니저
321: 미디어 플레이어 모듈
322: 버퍼 관리 모듈
100: Source Device
200: Relay Device
201: Disk
210: Media file manager
211: Media file download module
212: Media file writer
220: Media Player Manager
221: Media Player Module
230: HTTP Server Manager
300: Member Device
301: Disk
310: Media file manager
311: Media file download module
312: Media file writer
320: Media Player Manager
321: Media Player Module
322: Buffer Management Module

Claims (20)

미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템으로서,
원본 미디어를 제공하는 소스 기기(100);
상기 소스 기기(100)에 미디어를 요청하여 스트림 방식으로 미디어를 다운로드 하여 디스크(201)에 저장하고, 멤버 기기(300)들의 미디어 요청에 대응하여 디스크(201)에 저장된 미디어를 스트림 방식으로 중계하는 릴레이 기기(200); 및
상기 릴레이 기기(200)에 파일로 저장된 미디어를 요청하여 스트림 방식으로 미디어를 다운로드 하여 재생하되, 스트림 데이터 버퍼링의 감시 제어에 기초하여 한 번에 다운로드할 미디어 파일의 크기 단위로 미디어 요청을 주기적으로 수행하는 멤버 기기(300)들을 포함하되,
상기 무선 네트워크 스트리밍 중계 엔진 시스템은,
상기 소스 기기(100)와 상기 릴레이 기기(200)를 하나의 무선 AP(Access Point)를 통해 IEEE 802.11 인프라스트럭처 네트워크로 연결되어 접속되도록 구성하고, 상기 릴레이 기기(200)와 상기 멤버 기기(300)들은 Wi-Fi Direct 네트워크로 연결되어 접속되는 이종 네트워크를 구성하며,
상기 릴레이 기기(200)는,
상기 소스 기기(100)에 미디어 파일을 요청하여 다운로드 한 후 디스크(Disk)(201)에 저장하는 미디어 파일 매니저(MFM)(210)와, 상기 미디어 파일 매니저(210)가 디스크(201)에 저장한 파일을 읽어와 재생할 수 있도록 하는 미디어 플레이어 매니저(MPM)(220)와, 상기 멤버 기기(300)들로부터 미디어 파일을 요청받으면, 디스크(201)에서 미디어 파일을 읽어와 해당하는 멤버 기기(300)로 전송하는 HTTP 서버 매니저(HSM)(230)를 포함하여 구성하고,
상기 미디어 파일 매니저(MFM)(210)는,
상기 소스 기기(100)에 미디어 파일을 요청하여 다운로드 하는 미디어 파일 다운로드 모듈(MFD Module)(211)과, 상기 미디어 파일 다운로드 모듈(211)에서 상기 소스 기기(100)로부터 다운로드한 미디어 파일을 디스크(201)에 저장하는 미디어 파일 라이터(MFW)(212)로 구성하며,
상기 미디어 플레이어 매니저(MPM)(220)는,
상기 디스크(201)에 저장된 파일을 읽어와 재생할 수 있도록 하는 미디어 플레이어 모듈(MP Module)(221)을 포함하고,
상기 HTTP 서버 매니저(HSM)(230)는,
HTTP 프로토콜을 사용하여 상기 멤버 기기(300)로부터 미디어의 스트리밍 요청을 받고, 오픈 소스로 제공되는 NanoHTTPD를 이용하여 구현되며,
상기 멤버 기기(300)들 각각은,
상기 릴레이 기기(200)에 미디어 파일의 크기 및 시간에 따라 미리 설정되는 한 번에 다운로드할 미디어 파일의 크기 단위로 미디어 파일을 요청하여 다운로드 한 후 디스크(Disk)(301)에 저장하는 미디어 파일 매니저(MFM)(310)와, 상기 미디어 파일 매니저(310)가 디스크(301)에 저장한 파일을 재생하며, 미디어 플레이의 버퍼를 계속 감시 확인하여 주기적으로 미디어 파일의 다운로드를 요청하는 미디어 플레이어 매니저(MPM)(320)를 포함하여 구성하고,
상기 미디어 파일 매니저(MFM)(310)는,
상기 릴레이 기기(200)에 미디어 파일의 크기 및 시간에 따라 미리 설정된 한 번에 다운로드할 미디어 파일의 크기 단위로 미디어 파일을 요청하여 다운로드 하는 미디어 파일 다운로드 모듈(MFD Module)(311)과, 상기 미디어 파일 다운로드 모듈(311)에서 상기 릴레이 기기(200)로부터 한 번에 다운로드할 미디어 파일의 크기 단위로 다운로드한 미디어 파일 조각을 디스크(301)에 저장하는 미디어 파일 라이터(MFW)(312)로 구성되며,
상기 미디어 파일 다운로드 모듈(MFD Module)(311)은,
HTTP 프로토콜 통신을 이용하여 상기 릴레이 기기(200)로부터 한 번에 다운로드할 미디어 파일의 크기 단위로 미디어 파일 조각을 미디어 재생이 완료될 때 까지 주기적으로 다운로드 하고,
상기 미디어 파일 다운로드 모듈(MFD Module)(311)은,
스트리밍 받고자 하는 미디어 파일에 대해 HTTP 프로토콜의 Range 헤더를 이용하여 한 번에 다운로드할 미디어 파일의 크기 단위로 스트림 미디어 파일 조각을 요청하며,
상기 미디어 플레이어 매니저(MPM)(320)는,
상기 디스크(301)에 저장된 파일을 읽어와 재생할 수 있도록 하는 미디어 플레이어 모듈(MP Module)(321)과, 상기 미디어 플레이어 모듈(321)을 통한 미디어의 재생 중에 미디어 플레이어의 버퍼를 계속 감시 확인하는 버퍼 관리 모듈(BM Module)(322)을 포함하여 구성하되, 상기 버퍼 관리 모듈(BM Module)(322)은 미디어 플레이어의 스트림 데이터 버퍼링의 감시 확인에 기초하여 버퍼의 미디어 양을 확인하고, 잔여 미디어 양이 충분하지 않을 때 다음 재생할 미디어 파일 조각의 다운로드를 미디어 파일 다운로드 모듈(MFD Module)(311)에 요청하고, 미디어 파일 다운로드 모듈(311)에서 미디어 파일을 수신하도록 제어하는 것을 특징으로 하는, 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템.
An efficient wireless network streaming relay engine system using media buffer control,
A source device (100) for providing source media;
Requests the media to the source device 100 to download the media in a streaming manner and stores the downloaded media in the disk 201 and relays the media stored in the disk 201 in a streaming manner in response to the media request of the member devices 300 A relay device (200); And
Requests the media stored in the file as a file to the relay device 200, and downloads and plays the media in a streaming manner. In response to monitoring and controlling the buffering of the stream data, a media request is periodically performed (300), wherein the member devices (300)
The wireless network streaming relay engine system comprising:
The relay device 200 and the member device 300 are connected to the source device 100 and the relay device 200 through an IEEE 802.11 infrastructure network through a single wireless AP, Wi-Fi Direct network, which is connected to the Wi-Fi Direct network,
The relay device (200)
A media file manager (MFM) 210 for requesting and downloading a media file to the source device 100 and storing the downloaded media file on a disk 201; A media player manager (MPM) 220 for reading and playing a file and a media player 300 for reading a media file from the disc 201 when receiving a media file from the member devices 300, And an HTTP server manager (HSM)
The media file manager (MFM)
A media file download module 211 for requesting and downloading a media file to the source device 100 and a media file download module 211 for downloading the media file downloaded from the source device 100 to the disc 100 And a media file writer (MFW) 212 for storing the media file writer (MFW)
The media player manager (MPM)
And a media player module (MP Module) 221 for reading and playing a file stored in the disk 201,
The HTTP server manager (HSM) 230,
A streaming request of the media is received from the member device 300 using the HTTP protocol and is implemented using the NanoHTTPD provided as an open source,
Each of the member devices 300,
A media file manager for requesting and downloading a media file in units of a size of a media file to be downloaded at a time preset in accordance with the size and time of the media file to the relay device 200, A media player manager 310 for playing back files stored in the disk 301 by the media file manager 310 and for periodically checking for a buffer of the media play and periodically downloading the media files, (MPM) 320,
The media file manager (MFM)
A media file download module (MFD module) 311 for requesting and downloading a media file in units of the size of a media file to be downloaded at a predetermined time according to the size and time of the media file to the relay device 200, And a media file writer (MFW) 312 for storing pieces of media files downloaded in units of the sizes of the media files to be downloaded at once from the relay device 200 in the file download module 311 in the disc 301 ,
The media file download module (MFD module) 311,
A piece of media file is periodically downloaded from the relay device 200 in units of the size of a media file to be downloaded at a time until the media playback is completed using the HTTP protocol communication,
The media file download module (MFD module) 311,
Request a piece of stream media file in units of size of a media file to be downloaded at a time using a range header of the HTTP protocol for a media file to be streamed,
The media player manager (MPM)
A media player module (MP module) 321 for reading and playing a file stored in the disk 301, a buffer for continuously monitoring and checking the buffer of the media player during playback of the media through the media player module 321, (BM Module) 322, which checks the amount of media in the buffer based on monitoring confirmation of buffering of stream data of the media player, (MFD Module) 311 to download a piece of media file to be played next, and to receive a media file from the media file download module 311 when the media file download module 311 is not enough An efficient wireless network streaming relay engine system using control.
삭제delete 제1항에 있어서, 상기 릴레이 기기(200)는,
미디어 스트리밍을 요청하는 상기 멤버 기기(300)들을 Wi-Fi Direct 네트워크상에서 그룹 멤버로 묶어 상기 멤버 기기들의 그룹 소유자 역할을 수행하는 것을 특징으로 하는, 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템.
The relay device (200) according to claim 1, wherein the relay device (200)
Wherein the member devices 300 requesting media streaming are grouped on a Wi-Fi Direct network to serve as a group owner of the member devices.
제1항에 있어서, 상기 소스 기기(100)는,
원본 미디어 파일을 저장하고, 상기 릴레이 기기(200)의 미디어 요청에 대응하여 저장된 미디어를 스트림 방식으로 제공하는 것을 특징으로 하는, 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템.
The apparatus of claim 1, wherein the source device (100)
And stores the original media file and provides the stored media in a stream format in response to the media request of the relay device (200).
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 제1항에 있어서, 상기 미디어 파일 다운로드 모듈(MFD Module)(311)은,
상기 한 번에 다운로드할 미디어 파일의 크기 단위로 미디어 파일 조각을 주기적으로 반복하여 다운로드 하되, 미디어 파일 조각들이 순차로 연속되도록 하는 것을 특징으로 하는, 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템.
The method of claim 1, wherein the media file download module (MFD Module)
Wherein the media file fragment is periodically repeatedly downloaded in units of the size of the media file to be downloaded at a time, and the pieces of media file are sequentially sequenced.
제1항에 있어서, 상기 미디어 파일 다운로드 모듈(MFD Module)(311)은,
HTTP 프로토콜 통신을 이용하여 상기 릴레이 기기(200)로부터 한 번에 다운로드할 미디어 파일의 크기 단위로 미디어 파일 조각을 미디어 재생이 완료될 때 까지 주기적으로 다운로드 하되, 미디어 재생 중 사용자가 미디어 재생을 중지하는 경우에는 미디어 파일 조각의 다운로드 요청을 중지하거나 대기상태를 유지하는 것을 특징으로 하는, 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템.
The method of claim 1, wherein the media file download module (MFD Module)
A piece of the media file is downloaded periodically until the media playback is completed by the size of the media file to be downloaded at a time from the relay device 200 using the HTTP protocol communication, Wherein the media file is a streaming media file, and wherein the media file is a streaming media file.
삭제delete 제1항에 있어서, 상기 미디어 파일 라이터(MFW)(312)는,
상기 미디어 파일 다운로드 모듈(311)에서 상기 릴레이 기기(200)로부터 한 번에 다운로드할 미디어 파일의 크기 단위로 다운로드한 미디어 파일 조각을 디스크에 저장할 때, RandomAccessFile을 이용하여 임의의 위치부터 미디어 파일 조각이 다운로드 될 수 있도록 구현되는 것을 특징으로 하는, 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템.
The method of claim 1, wherein the media file writer (MFW)
When the media file download module 311 saves a piece of media file downloaded in units of the size of a media file to be downloaded at a time from the relay device 200 on a disk, a piece of media file is extracted from an arbitrary position using RandomAccessFile And wherein the media buffer control is implemented so as to be downloadable.
삭제delete 삭제delete 제1항에 있어서, 상기 미디어 플레이어 모듈(MP Module)(321)은,
상기 디스크(301)에 저장된 파일을 읽어와 재생할 수 있는 미디어 플레이어로서, 안드로이드에서 제공하는 VideoView 또는 MidiaPlayer를 이용하여 구현되는 것을 특징으로 하는, 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템.
The method of claim 1, wherein the media player module (MP module)
A media player capable of reading and playing back a file stored in the disk (301), wherein the media player is implemented using a VideoView or a MidiaPlayer provided by Android, and an efficient wireless network streaming relay engine system using media buffer control.
제18항에 있어서, 상기 미디어 플레이어 모듈(MP Module)(321)은,
상기 버퍼 관리 모듈(322)을 통해 주기적으로 새로 다운로드한 부분을 재생할 수 있도록 VideoView 또는 MidiaPlayer의 현재의 재생 위치 값을 초 단위로 받아 현재 설정된 미디어 파일을 통해 더는 미디어 파일이 재생될 수 없을 때, 다시 해당 재생 위치로 재생 위치를 갱신시키는 것을 특징으로 하는, 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템.
19. The system of claim 18, wherein the media player module (MP module)
When the media file can not be reproduced through the currently set media file by receiving the current playback position value of the VideoView or MidiaPlayer in seconds so that the newly downloaded portion can be periodically reproduced through the buffer management module 322, And then updates the reproduction position to the reproduction position again. ≪ Desc / Clms Page number 19 >
제1항에 있어서, 상기 멤버 기기(300)는,
각각의 멤버 기기(300)들이, 미디어 재생이 시작된 이후 주기적인 버퍼 확인과 파일을 다운로드 하는 과정이 미디어 파일이 재생되는 동안 반복적으로 수행될 수 있도록 상기 릴레이 기기(200)에 대하여 미디어 요청과 스트림 데이터 버퍼링을 제어함으로써, 현재의 미디어 재생에 필요하지 않은 미디어 스트리밍을 감소시켜 네트워크 사용량 및 네트워크의 혼잡도를 줄이고, 네트워크에서의 멤버 기기 간의 과도한 네트워크 자원 경쟁 및 대역폭의 공정성 저하가 방지되도록 기능하는 것을 특징으로 하는, 미디어 버퍼 제어를 이용한 효율적인 무선 네트워크 스트리밍 중계 엔진 시스템.
The apparatus of claim 1, wherein the member device (300)
Each of the member devices 300 transmits the media request and the stream data to the relay device 200 so that the process of downloading the file and the periodic buffer check after the media playback is started can be repeatedly performed during the playback of the media file. By controlling the buffering, it is possible to reduce the amount of network usage and congestion of the network by reducing the media streaming that is not necessary for the current media playback, and to prevent excessive network resource contention between the member devices in the network and decrease in fairness of the bandwidth An efficient wireless network streaming relay engine system using media buffer control.
KR1020160144671A 2016-11-01 2016-11-01 A system for streaming relay engine of efficient wireless networks using media buffer control KR101869360B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020160144671A KR101869360B1 (en) 2016-11-01 2016-11-01 A system for streaming relay engine of efficient wireless networks using media buffer control
PCT/KR2016/013915 WO2018084360A1 (en) 2016-11-01 2016-11-29 Efficient wireless network streaming relay engine system using media buffer control

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160144671A KR101869360B1 (en) 2016-11-01 2016-11-01 A system for streaming relay engine of efficient wireless networks using media buffer control

Publications (2)

Publication Number Publication Date
KR20180047866A KR20180047866A (en) 2018-05-10
KR101869360B1 true KR101869360B1 (en) 2018-06-20

Family

ID=62076983

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160144671A KR101869360B1 (en) 2016-11-01 2016-11-01 A system for streaming relay engine of efficient wireless networks using media buffer control

Country Status (2)

Country Link
KR (1) KR101869360B1 (en)
WO (1) WO2018084360A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11153112B2 (en) 2018-08-30 2021-10-19 Samsung Electronics Co., Ltd Electronic device and method for continuously reproducing multimedia content in external electronic device

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007336396A (en) * 2006-06-16 2007-12-27 Brother Ind Ltd Content distribution system, content distribution method, terminal device and program therefor

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7783773B2 (en) * 2006-07-24 2010-08-24 Microsoft Corporation Glitch-free media streaming
JP2011530137A (en) * 2008-08-04 2011-12-15 オパンガ ネットワークス インコーポレイテッド Device-dependent delivery in local area networks
CA2755774C (en) * 2009-03-19 2015-01-06 Azuki Systems, Inc. Method for scalable live streaming delivery for mobile audiences
US8996719B2 (en) * 2011-04-03 2015-03-31 Jeremiah Condon System and method of adaptive transport of multimedia data
EP2747348A1 (en) * 2012-12-20 2014-06-25 Thomson Licensing Apparatus adapted for connecting a home network with a service provider network

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007336396A (en) * 2006-06-16 2007-12-27 Brother Ind Ltd Content distribution system, content distribution method, terminal device and program therefor

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
모바일 스마트 기기들 간의 확장성 있는 미디어 스트리밍을 위한 자율적인 Ad hoc 네트워크 형성 기법, 한국통신학회논문지, 2015.03. *
모바일 스마트 기기들 간의 확장성 있는 미디어 스트리밍을 위한 자율적인 Ad hoc 네트워크 형성 기법, 한국통신학회논문지, 2015.03.*
미디어 스트리밍을 위한 적응적 동기 지연시간을 이용한 그룹 동기화 기법, 한국통신학회논문지, 2015.03. *
미디어 스트리밍을 위한 적응적 동기 지연시간을 이용한 그룹 동기화 기법, 한국통신학회논문지, 2015.03.*

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11153112B2 (en) 2018-08-30 2021-10-19 Samsung Electronics Co., Ltd Electronic device and method for continuously reproducing multimedia content in external electronic device
US11595224B2 (en) 2018-08-30 2023-02-28 Samsung Electronics Co., Ltd Electronic device and method for continuously reproducing multimedia content in external electronic device

Also Published As

Publication number Publication date
WO2018084360A1 (en) 2018-05-11
KR20180047866A (en) 2018-05-10

Similar Documents

Publication Publication Date Title
US10764610B2 (en) Media user client, a media user agent and respective methods performed thereby for providing media from a media server to the media user client
US9609370B2 (en) Video delivery modification based on network availability
CA2752468C (en) System and method of pacing real time media transmission over a broadband channel using micro bursting
US9596323B2 (en) Transport accelerator implementing client side transmission functionality
KR102123439B1 (en) CONGESTION MITIGATION METHOD AND APPARATUS TO MAXIMIZE QoE OF VIEOD TRAFFIC IN MOBILE NETWORKS
CN102598628A (en) Adaptive Chunked And Content-aware Pacing Of Multi-media Delivery Over Http Transport And Network Controlled Bit Rate Selection
US10887363B1 (en) Streaming decision in the cloud
EP2391953A1 (en) Application, usage&radio link aware transport network scheduler
KR102185876B1 (en) Apparatus and method for http adaptive streaming in wireless network environment
WO2017125017A1 (en) Method for adjusting cache content, device, and system
EP2797319B1 (en) Content delivery system
JPWO2017135181A1 (en) Client, server, reception method and transmission method
TWI666928B (en) Delivery control apparatus and delivery control method for abr streaming of content delivery
EP3286967B1 (en) Technique for scheduling transmission of content in an access network
WO2013185547A1 (en) Caching server service method, caching server and system thereof
KR100683893B1 (en) Data distribution device capable of distributing a content
KR101869360B1 (en) A system for streaming relay engine of efficient wireless networks using media buffer control
US11218412B2 (en) Method and system for managing the download of data
KR101837637B1 (en) Streaming method based on Client-side ACK-regulation and apparatus thereof
KR20140105297A (en) Method and Apparatus of Dynamic Buffering for Providing Streaming Service
JP2015104075A (en) Medium reproduction control device, medium reproduction control method and program
Casey et al. Delivery of high definition video content over bandwidth constrained links in heterogeneous wireless networks
KR20210077841A (en) Method and apparatus for providing high quality real time media streaming service with low latency
JP2004180192A (en) Stream control method and packet transferring device that can use the method
KR102390522B1 (en) Blockchain based reliable quality of experience accelerator for adaptive video streaming service

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right