KR20170027332A - 메타데이터를 추출하여 전송하는 콘텐츠 제공 방법 및 장치 - Google Patents

메타데이터를 추출하여 전송하는 콘텐츠 제공 방법 및 장치 Download PDF

Info

Publication number
KR20170027332A
KR20170027332A KR1020170026167A KR20170026167A KR20170027332A KR 20170027332 A KR20170027332 A KR 20170027332A KR 1020170026167 A KR1020170026167 A KR 1020170026167A KR 20170026167 A KR20170026167 A KR 20170026167A KR 20170027332 A KR20170027332 A KR 20170027332A
Authority
KR
South Korea
Prior art keywords
content
metadata
file
terminal
api
Prior art date
Application number
KR1020170026167A
Other languages
English (en)
Inventor
이람
박장연
이건웅
Original Assignee
네이버 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 네이버 주식회사 filed Critical 네이버 주식회사
Priority to KR1020170026167A priority Critical patent/KR20170027332A/ko
Publication of KR20170027332A publication Critical patent/KR20170027332A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Landscapes

  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

메타데이터를 추출하여 전송하는 콘텐츠 제공 방법 및 장치가 제공된다. 사용자가 콘텐츠 파일을 업로드하면, 콘텐츠 파일로부터 콘텐츠의 메타데이터가 추출된다. 추출된 콘텐츠의 메타데이터는 사용자의 단말로 전송되며, 사용자는 메타데이터를 통해 콘텐츠를 선택한다. 업로드된 콘텐츠 파일을 사용함으로써 선택된 콘텐츠가 다운로드 또는 스트리밍을 통해 사용자에게 제공된다.

Description

메타데이터를 추출하여 전송하는 콘텐츠 제공 방법 및 장치{METHOD AND APPARATUS FOR PROVIDING CONTENT SENDING METADATA EXTRACTED FROM CONTENT}
아래의 실시예들은 콘텐츠를 제공하기 위한 방법 및 장치에 관한 것이다.
콘텐츠로부터 메타데이터를 추출하여 단말에게 제공하는 방법 및 장치가 개시된다.
클라우드 서비스(cloud service)는 사용자들이 중앙 서버에 파일 등을 저장해 놓고, 스마트폰(smartphone) 또는 개인용 컴퓨터(personal computer) 등과 같은 단말로 저장된 파일 등을 불러내어 사용하는 서비스를 의미한다.
클라우딩 서비스에 의해, 사용자는 유무선 네트워크(network)를 통해 자신의 계정에 접근함으로써 장소 및 사용하는 단말에 구애받지 않은 채 자신의 파일 등을 사용할 수 있다.
클라우딩 서비스를 제공하는 중앙 서버는 사용자의 파일을 저장한다. 저장된 파일은 일반적인 파일 전송뿐만 아니라, 스트리밍 서비스 등을 통해 사용자에게 제공될 수 있다.
또한, 클라우드 서비스의 서버는, 저장된 사용자의 파일을 저장 및 관리함으로써 부가적인 서비스를 제공할 수 있다.
본 발명의 일 실시예는 콘텐츠 파일 내의 메타데이터를 추출하여 단말에게 제공하는 콘텐츠 제공 장치 및 방법을 제공할 수 있다.
본 발명의 일 실시예는 메타데이터를 수신한 단말로부터 콘텐츠 제공 요청을 수신하고, 요청된 콘텐츠를 제공하는 장치 및 방법을 제공할 수 있다.
본 발명의 일 측에 따르면, 사용자 단말로부터 콘텐츠를 저장한 콘텐츠 파일을 수신하는 단계, 상기 콘텐츠 파일을 저장하는 단계, 상기 콘텐츠 파일의 메타데이터 영역 내의 데이터에 기반하여 상기 콘텐츠의 메타데이터를 추출하는 단계, 상기 메타데이터를 저장하는 단계, 상기 메타데이터를 상기 사용자 단말에게 전송하는 단계, 상기 사용자 단말로부터 상기 콘텐츠에 대한 요청을 수신하는 단계 및 상기 콘텐츠 파일을 사용하여 상기 콘텐츠를 상기 사용자 단말에게 제공하는 단계를 포함하는, 콘텐츠 제공 방법이 제공된다.
상기 요청은 상기 사용자 단말의 사용자가 상기 메타데이터에 기반하여 상기 콘텐츠를 식별 및 선택함으로써 생성될 수 있다.
상기 콘텐츠는 상기 콘텐츠 파일의 다운로드 또는 상기 콘텐츠의 스트리밍에 의해 상기 사용자 단말에게 제공될 수 있다.
상기 콘텐츠 파일을 수신하는 단계는, 복수 개의 API 서버들 중 상기 콘텐츠 파일을 수신할 API 서버를 결정하는 단계 및 상기 콘텐츠 파일을 수신하기로 결정된 API 서버가 상기 사용자 단말로부터 상기 콘텐츠 파일을 수신하는 단계를 포함할 수 있다.
상기 콘텐츠에 대한 요청을 수신하는 단계는, 상기 복수 개의 API 서버들 중 상기 콘텐츠에 대한 요청을 수신할 API 서버를 결정하는 단계 및 상기 콘텐츠에 대한 요청을 수신하기로 결정된 API 서버가 상기 사용자 단말로부터 상기 콘텐츠에 대한 요청을 수신하는 단계를 포함할 수 있다.
본 발명의 다른 측에 따르면, 제1 단말로부터 콘텐츠를 저장한 콘텐츠 파일을 수신하는 단계, 상기 콘텐츠 파일을 저장하는 단계, 상기 콘텐츠 파일의 메타데이터 영역 내의 데이터에 기반하여 상기 콘텐츠의 메타데이터를 추출하는 단계, 상기 메타데이터를 저장하는 단계, 상기 메타데이터를 제2 단말에게 전송하는 단계, 상기 제2 단말로부터 상기 콘텐츠에 대한 요청을 수신하는 단계 및 상기 콘텐츠 파일을 사용하여 상기 콘텐츠를 상기 제2 단말에게 제공하는 단계를 포함하는, 콘텐츠 제공 방법이 제공된다.
상기 요청은 상기 제2 단말의 사용자가 상기 메타데이터에 기반하여 상기 콘텐츠를 식별 및 선택함으로써 생성될 수 있다.
상기 콘텐츠 파일은 MP3 포멧의 파일일 수 있다.
상기 메타데이터 영역은 상기 MP3 포멧 파일의 ID3 영역일 수 있다.
상기 콘텐츠는 오디오 콘텐츠일 수 있다.
상기 메타데이터는 상기 콘텐츠의 명칭, 상기 콘텐츠의 음악가의 명칭, 상기 콘텐츠의 자켓 이미지 중 하나 이상을 포함할 수 있다.
상기 콘텐츠는 상기 콘텐츠 파일의 다운로드 또는 상기 콘텐츠의 스트리밍에 의해 상기 제2 단말에게 제공될 수 있다.
상기 콘텐츠의 메타데이터를 추출하는 단계는, 상기 메타데이터 영역 내에서 상기 메타데이터를 검색하는 단계 및 상기 메타데이터 영역 내에서 상기 메타데이터가 미검색된 경우 상기 콘텐츠 파일에 기반하여 상기 콘텐츠를 등록된 콘텐츠들과 비교함으로써 상기 메타데이터를 생성하는 단계를 포함할 수 있다.
상기 콘텐츠의 메타데이터를 추출하는 단계는, 상기 메타데이터 영역 내 특정 영역이 미리 정의된 형식에 부합하지 않는 경우 상기 콘텐츠 파일에 기반하여 상기 콘텐츠를 등록된 콘텐츠들과 비교함으로써 상기 메타데이터를 생성하는 단계를 포함할 수 있다.
상기 콘텐츠 파일을 수신하는 단계는, 복수 개의 API 서버들 중 상기 콘텐츠 파일을 수신할 API 서버를 결정하는 단계 및 상기 콘텐츠 파일을 수신하기로 결정된 API 서버가 상기 제1 단말로부터 상기 콘텐츠 파일을 수신하는 단계를 포함할 수 있다.
상기 콘텐츠에 대한 요청을 수신하는 단계는, 상기 복수 개의 API 서버들 중 상기 콘텐츠에 대한 요청을 수신할 API 서버를 결정하는 단계 및 상기 콘텐츠에 대한 요청을 수신하기로 결정된 API 서버가 상기 제2 단말로부터 상기 콘텐츠에 대한 요청을 수신하는 단계를 포함할 수 있다.본 발명의 또 다른 일 측에 따르면, 제1 단말로부터 콘텐츠를 저장한 콘텐츠 파일을 수신하고, 제2 단말로부터 상기 콘텐츠에 대한 요청을 수신하는 API 서버, 상기 콘텐츠 파일을 저장하고, 상기 콘텐츠 파일을 사용하여 상기 콘텐츠를 상기 제2 단말에게 제공하는 스토리지 서버, 상기 콘텐츠 파일의 메타데이터 영역 내의 데이터에 기반하여 상기 콘텐츠의 메타데이터를 추출하는 파일 프로세싱 서버 및 상기 추출된 메타데이터를 저장하고, 상기 저장된 메타데이터를 상기 제2 단말에게 제공하는 데이터베이스 서버를 포함하는, 콘텐츠 제공 시스템이 제공된다.
상기 파일 프로세싱 서버는, 상기 메타데이터 영역 내에서 상기 메타데이터가 미검색된 경우 상기 콘텐츠 파일에 기반하여 상기 콘텐츠를 등록된 콘텐츠들과 비교함으로써 상기 메타데이터를 생성할 수 있다.
상기 파일 프로세싱 서버는, 상기 메타데이터 영역 내 특정 영역이 미리 정의된 형식에 부합하지 않는 경우 상기 콘텐츠 파일에 기반하여 상기 콘텐츠를 등록된 콘텐츠들과 비교함으로써 상기 메타데이터를 생성할 수 있다.
상기 API 서버는 복수 개일 수 있다.
상기 콘텐츠 제공 시스템은 상기 복수 개의 API 서버들 중 상기 제1 단말로부터 상기 콘텐츠 파일을 수신할 제1 API 서버를 결정하고, 상기 제2 단말로부터 상기 메타데이터에 대한 요청을 수신할 제2 API 서버를 결정하는 L4 스위칭 서버를 더 포함할 수 있다.
상기 스토리지 서버는, 상기 콘텐츠 파일을 변경하지 않은 채 상기 제2 단말에게 제공할 수 있다.
본 발명의 또 다른 일측에 따르면, 제1 단말로부터 콘텐츠를 저장한 콘텐츠 파일을 수신하고, 제2 단말로부터 상기 콘텐츠에 대한 요청을 수신하는 API부, 상기 콘텐츠 파일을 저장하고, 상기 콘텐츠 파일을 사용하여 상기 콘텐츠를 상기 제2 단말에게 제공하는 파일 스토리지부, 상기 콘텐츠 파일의 메타데이터 영역 내의 데이터에 기반하여 상기 콘텐츠의 메타데이터를 추출하는 파일 프로세싱부 및 상기 추출된 메타데이터를 저장하고, 상기 저장된 메타데이터를 상기 제2 단말에게 제공하는 데이터베이스부를 포함하는, 서버가 제공된다.
상기 API부, 상기 파일 스토리지부, 상기 파일 프로세싱부 및 상기 데이터베이스부는 하나 이상의 서버들로 분리될 수 있다.
상기 하나 이상의 서버들은 내부 네트워크를 통해 통신할 수 있다.
상기 API부는 복수 개일 수 있다.
상기 서버는, 상기 복수 개의 API부들 중 상기 제1 단말로부터 상기 콘텐츠 파일을 수신할 제1 API부를 결정하고, 상기 제2 단말로부터 상기 메타데이터에 대한 요청을 수신할 제2 API부를 결정하는 L4 스위칭부를 더 포함할 수 있다.
콘텐츠 파일 내의 메타데이터를 추출하여 단말에게 제공하는 콘텐츠 제공 장치 및 방법이 제공된다.
단말의 사용자는 메타데이터를 통해 콘텐츠 파일 내의 콘텐츠를 식별할 수 있고, 콘텐츠를 제공해 줄 것을 콘텐츠 제공 서버 또는 시스템에게 요청할 수 있다.
콘텐츠 제공 서버 또는 시스템은 콘텐츠 파일 내의 메타데이터 영역의 내용에 기반하여 콘텐츠의 메타데이터를 추출하고, 추출한 메타데이터를 별개의 데이터베이스에 저장함으로써 콘텐츠 파일의 변경 없이 메타데이터를 단말의 사용자에게 제공할 수 있다.
도 1은 본 발명의 일 실시예에 따른 콘텐츠 제공 시스템(100)의 동작을 설명한다.
도 2는 본 발명의 일 실시예에 따른 콘텐츠 제공 방법의 흐름도이다.
도 3은 본 발명의 일 예에 따른 콘텐츠 파일(300)의 구조를 설명한다.
도 4는 본 발명의 일 예에 따른 메타데이터 영역 내의 데이터에 기반하여 콘텐츠의 메타데이터를 추출하는 방법을 설명한다.
도 5는 본 발명의 일 예에 따른 콘텐츠의 메타데이터를 결정하는 방법을 설명한다.
도 6은 본 발명의 일 예에 따른 메타데이터를 사용하여 콘텐츠를 요청하는 방법을 설명한다.
도 7은 본 발명의 일 실시예에 따른 서버(700)의 구조도이다.
도 8은 본 발명의 일 예에 따른 복수 개의 서버들 간의 로드 밸런싱(load balancing)을 설명한다.
이하에서, 본 발명의 일 실시예를, 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 일 실시예에 따른 콘텐츠 제공 시스템(100)의 동작을 설명한다.
콘텐츠 제공 시스템(100)(이하, 시스템(100)으로 약술한다.)은 어플리케이션 프로그래밍 인터페이스(Application Programming Interface; API) 서버(110), 스토리지 서버(120), 파일 프로세싱 서버(130) 및 데이터베이스 서버(140)를 포함할 수 있다.
API 서버(110)는 콘텐츠 제공 시스템(100)의 서버들 중 사용자의 단말과 통신하는, API를 제공하는 서버이다.
단말은 API 서버(110)를 통해 시스템(100)의 서비스를 제공받는다.
예컨대, API 서버(110)는 단말로부터 파일을 수신할 수 있으며, 수신된 파일을 스토리지 서버(120)로 전송할 수 있다.
예컨대, API 서버(110)는 단말로부터 특정한 파일 또는 콘텐츠에 대한 요청을 수신할 수 있으며, 수신된 요청을 스토리지 서버(120) 및 데이터베이스 서버(140)로 전송할 수 있다.
또한, API 서버(110)는 스토리지 서버(120) 및 데이터베이스 서버(140)로부터 특정한 파일 또는 콘텐츠를 수신하여, 수신된 파일 또는 콘텐츠를 단말에게 전송할 수 있다.
본 실시예에서의 파일은 콘텐츠 파일일 수 있다. 콘텐츠 파일은 콘텐츠를 포함한 파일일 수 있다. 즉, 콘텐츠 파일은 단말에서 재생(play)됨으로써 단말의 사용자에게 콘텐츠를 제공할 수 있는 파일일 수 있다.
스토리지 서버(120)는 단말로부터 제공된 사용자의 파일을 저장할 수 있고, 사용자의 요청에 따라 저장된 파일을 단말에게 제공할 수 있다. 스토리지 서버(120)는 파일 또는 콘텐츠를 직접 또는 API 서버(110)를 경유하여 단말에게 제공할 수 있다.
파일 프로세싱 서버(130)는 사용자의 파일로부터 메타데이터를 추출할 수 있다. 파일 프로세싱 서버(130)는 추출된 메타데이터를 데이터베이스 서버(140)에게 전송할 수 있다.
데이터베이스 서버(140)는 메타데이터를 저장할 수 있다. 데이터베이스 서버(140)는 사용자의 파일과 연관하여 메타데이터를 저장할 수 있다. 예컨대, 데이터베이스 서버(140)는 파일의 식별자 또는 파일의 접근 경로와 연관하여 파일의 메타데이터를 저장할 수 있다.
단말은 파일의 식별자 또는 파일의 경로를 사용하여 요청하는 파일을 특정할 수 있다. 파일의 경로는 계층적(hierarchical)인 구조를 가질 수 있다.
데이터베이스 서버(140)는 메타데이터를 직접 또는 API 서버(110)를 경유하여 단말에게 제공할 수 있다.
사용자는 하나 이상의 상이한 단말들을 사용하여 시스템(100)의 서비스를 제공받을 수 있다.
하나 이상의 상이한 단말들은 PC 또는 스마트폰과 같은 서로 상이한 기능 및 성능을 갖는 단말들일 수 있다.
도 1에서, 제1 단말(190)은 시스템(100)에 파일을 업로드하는 단말일 수 있다, 제2 단말(195)는 업로드된 파일에 대한 서비스를 제공받는 단말이다. 예컨대, 제2 단말(195)은 메타데이터 또는 파일을 시스템(100)에게 요청하는 단말을 나타낼 수 있다.
도 2는 본 발명의 일 실시예에 따른 콘텐츠 제공 방법의 흐름도이다.
도 2에서, 사용자는 제1 단말(190) 및 제2 단말(195)을 사용하여, API 서버(110)(즉, 시스템(100))에 접근할 수 있다.
여기서, 제1 단말(190)은 사용자가 콘텐츠 파일을 업로드하기 위해 사용되는 단말을 나타낼 수 있다. 제2 단말(195)은 사용자가 업로드된 콘텐츠 파일의 콘텐츠를 재생하기 위해 사용되는 단말을 나타낼 수 있다.
제1 단말(190) 및 제2 단말(195)은 PC 또는 스마트폰과 같은 서로 상이한 기능 및 성능을 갖는 단말들일 수 있다.
또한, 사용자는 동일한 단말을 사용하여 콘텐츠 파일을 시스템(100)에 업로드하고, 업로드된 콘텐츠 파일의 콘텐츠를 시스템(100)으로부터 전송 받아 사용할 수 있다. 따라서, 제1 단말(190) 및 제2 단말(195)은 동일한 단말일 수 있다.
단계(210)에서, 제1 단말(190)은 콘텐츠를 저장한 콘텐츠 파일을 API 서버(110)에게 전송할 수 있다. API 서버(110)는 제1 단말(190)로부터 콘텐츠를 저장한 콘텐츠 파일을 수신할 수 있다.
상기의 전송은 HTTP 프로토콜을 사용한 파일 업로드일 수 있다.
단계(220)에서, API 서버(110)는 콘텐츠 파일을 스토리지 서버(120)에게 전송할 수 있다. 스토리지 서버(120)는 API 서버(110)로부터 콘텐츠 파일을 수신할 수 있다. 즉, 스토리지 서버(120)는 API 서버(110)를 통해 제1 단말(195)로부터 콘텐츠를 저장한 콘텐츠 파일을 저장할 수 있다.
단계(230)에서, 스토리지 서버(120)는 전송된 콘텐츠 파일을 저장할 수 있다.
단계(240)에서, API 서버(110)는 콘텐츠 파일의 업로드가 완료되었음을 파일 프로세싱 서버(130)에게 통지할 수 있다.
이 때, API 서버(110)는 통지와 함께, 콘텐츠 파일을 식별하기 위한 정보를 프로세싱 서버(130)에게 전송할 수 있다. 콘텐츠 파일을 식별하기 위한 정보는 콘텐츠 파일의 식별자 또는 콘텐츠 파일의 경로일 수 있다.
단계(230) 및 단계(240)는 병렬 또는 순서가 바뀌어서 수행될 수 있다.
단계(250)에서, 통지를 수신한 파일 프로세싱 서버(130)는 스토리지 서버(120)에게 콘텐츠 파일을 요청할 수 있다. 파일 프로세싱 서버(130)는 콘텐츠 파일을 식별하기 위한 정보를 사용하여 스토리지 서버(120)에게 콘텐츠 파일을 요청할 수 있다.
단계(255)에서, 요청을 수신한 스토리지 서버(120)는 콘텐츠 파일을 스토리지 서버(120)에게 전송할 수 있다.
단계((260)에서, 파일 프로세싱 서버(130)는 콘텐츠 파일의 메타데이터 영역 내의 데이터에 기반하여 콘텐츠 파일의 콘텐츠의 메타데이터를 추출할 수 있다.
콘텐츠 파일의 메타데이터 영역 내의 데이터에 기반하여 콘텐츠의 메타데이터를 추출하는 방법이 도 4 및 도 5를 참조하여 하기에서 상세히 설명된다.
단계(265)에서, 파일 프로세싱 서버(130)는 추출된 메타데이터를 데이터베이스 서버(140)에게 전송할 수 있다.
이 때, 파일 프로세싱 서버(130)는 추출된 메타데이터와 함께, 콘텐츠 파일을 식별하기 위한 정보를 데이터베이스 서버(140)에게 전송할 수 있다.
단계(270)에서, 데이터베이스 서버(140)는 전송된 메타데이터를 저장할 수 있다.
이 때, 데이터베이스 서버(140)는 전송된 메타데이터를 콘텐츠 파일을 식별하기 위한 정보와 함께 연관하여 저장할 수 있다.
단계(280)에서, 제2 단말(195)은 API 서버(110)에게 메타데이터를 요청할 수 있고, 상기의 요청을 수신한 API 서버(110)는 데이터베이스 서버(140)에게 메타데이터를 요청할 수 있다. 즉, 제2 단말(195)은, API 서버(110)를 경유하여, 데이터베이스 서버(140)에게 메타데이터를 요청할 수 있다.
제2 단말(195)은 콘텐츠 파일을 식별하기 위한 정보를 사용하여 콘텐츠 파일의 메타데이터를 요청할 수 있다.
제2 단말(195)은 시스템(100) 내에 저장된 모든 파일들에 대한 메타데이터를 요청할 수 있다.
제2 단말(195)은 시스템(100) 내에 저장된 파일들 중 특정 조건을 만족시키는 파일들(예컨대, 특정 폴더 내에 있는 파일들, 특정 그룹의 파일들 등)에 대한 메타데이터를 요청할 수 있다.
단계(285)에서, 데이터베이스 서버(140)는 요청된 메타데이터를 API 서버(110)에게 전송할 수 있고, API 서버(110)는 수신한 메타데이터를 제2 단말(195)에게 전송할 수 있다. 즉, 데이터베이스 서버(140)는, API 서버(110)를 경유하여, 저장된 메타데이터를 제2 단말(195)에게 제공할 수 있다.
단계(285)에서, 데이터베이스 서버(140) 및 API 서버(110)는 메타데이터가 추출된 콘텐츠 파일을 식별하기 위한 정보를 메타데이터와 함께 전송할 수 있다.
단계(280)에서 요청된 메타데이터가 하나 이상의 파일들 또는 콘텐츠들의 메타데이터이면, 단계(285)에서 전송되는 메타데이터 또한 하나 이상의 파일들 또는 콘텐츠들의 메타데이터일 수 있다.
단계(288)에서, 제2 단말(195)의 사용자에 의해 콘텐츠가 선택될 수 있다.
제2 단말(195)은 전송된 메타데이터를 제2 단말(195)의 표시부 등에 출력할 수 있고, 사용자는 출력된 콘텐츠의 메타데이터를 보고, 메타데이터가 나타내는 콘텐츠를 선택할 수 있다.
단계(290)에서, 제2 단말(195)은 API 서버(110)에게 선택된 콘텐츠를 요청할 수 있다. API 서버(110)는 제2 단말(195)로부터 선택된 콘텐츠에 대한 요청을 수신할 수 있다. 요청을 수신한 API 서버(120)는 스토리지 서버(120)에게 선택된 콘텐츠를 요청할 수 있다. 즉, 제2 단말(195)은, API 서버(120)를 경유하여 스토리지 서버(120)에게 선택된 콘텐츠를 요청할 수 있다.
상기의 요청은 제2 단말(195)의 사용자가, 단계(288)에서, 전송된 메타데이터에 기반하여 메타데이터가 나타내는 콘텐츠를 식별하고, 상기 콘텐츠를 선택함으로써 생성된 것일 수 있다. 즉, 사용자는 콘텐츠 파일의 파일 명 또는 파일 경로 등이 아닌, 콘텐츠의 메타데이터만을 통해 자신이 원하는 콘텐츠를 선택할 수 있다.
제2 단말(195)은 콘텐츠 파일을 식별하기 위한 정보를 사용하여 콘텐츠를 요청할 수 있다.
단계(295)에서, 스토리지 서버(120)는 저장된 콘텐츠 파일을 사용하여 API 서버(110)에게 요청된 콘텐츠를 전송할 수 있다. API 서버(110)는 전송된 콘텐츠를 제2 단말(195)에게 전송할 수 있다. 즉, 스토리지 서버(120)는, API 서버(110)를 경유하여, 저장된 콘텐츠 파일을 사용하여 콘텐츠를 제2 단말(195)에게 제공할 수 있다.
스토리지 서버(120) 콘텐츠 파일을 식별하기 위한 정보를 사용하여 전송될 콘텐츠의 파일을 식별할 수 있다.
콘텐츠는 콘텐츠 파일의 다운로드 또는 콘텐츠의 스트리밍을 통해 제2 단말(195)에게 제공될 수 있다.
다운로드를 통해 콘텐츠가 전송될 경우, 스토리지 서버(120)는 저장된 콘텐츠 파일을 제2 단말(195)에게 제공할 수 있다.
스트리밍을 통해 콘텐츠가 전송될 경우, 스토리지 서버(120) 또는 API 서버(110)는 저장된 콘텐츠 파일을 스트리밍을 위한 형식으로 변환한 후, 변환된 형식의 데이터를 제2 단말(195)에게 제공할 수 있다.
제2 단말(195)은, 단계(290)에서, 단말의 사양, 단말의 성능 및 네트워크 특성 등의 정보를 콘텐츠의 요청과 함께 전송할 수 있다.
스토리지 서버(120) 또는 API 서버(110)는 전송된 단말의 사양, 단말의 성능 및 네트워크 특성에 적합하도록 콘텐츠 파일을 스트리밍을 위한 형식으로 변환할 수 있으며, 변환된 형식의 데이터를 제2 단말(195)에게 제공할 수 있다.
도 3은 본 발명의 일 예에 따른 콘텐츠 파일(300)의 구조를 설명한다.
콘텐츠 파일(300)은 메타데이터 영역(310) 및 콘텐츠 영역(320)을 포함할 수 있다.
메타데이터 영역(310)은 콘텐츠 파일(300)이 저장하는 콘텐츠의 메타데이터를 저장한 영역이다.
콘텐츠 영역(320)은 콘텐츠 파일(300)이 저장하는 콘텐츠의 내용을 저장한 영역이다.
콘텐츠 파일(300)은 음악 파일일 수 있다. 콘텐츠는 오디오 콘텐츠일 수 있다.
콘텐츠 파일(300)은 MP3 포멧의 파일일 수 있다. 메타데이터 영역은 MP3 포멧 파일의 ID3 영역일 수 있다.
메타데이터는 콘텐츠의 명칭, 콘텐츠의 음악가(예컨대, 가수, 연주자, 작곡가 및 작사가 등), 콘텐츠가 제공된 앨범의 자켓 이미지 중 하나 이상을 포함할 수 있다. 즉, 메타데이터는 수문자열, 음향 및 이미지 등의 포멧을 가질 수 있다.
도 4는 본 발명의 일 예에 따른 메타데이터 영역 내의 데이터에 기반하여 콘텐츠의 메타데이터를 추출하는 방법을 설명한다.
하기의 단계들(410 내지 480)은 파일 프로세싱 서버(130)에 의해 수행될 수 있다.
메타데이터가 추출되는 콘텐츠는 시스템(100)에 신규로 등록되는 콘텐츠일 수 있다. 따라서, 메타데이터가 추출되는 파일의 콘텐츠를 신규 콘텐츠로 명명한다.
단계(410)에서, 콘텐츠 파일(300)의 메타데이터 영역(310) 내에서 메타데이터가 검색될 수 있다.
단계(420)에서, 메타데이터가 존재하는지 여부가 검사될 수 있다. 메타데이터가 존재하는 경우 단계(430)가 수행될 수 있고, 메타데이터가 존재하지 않는 경우 단계(450)가 수행될 수 있다.
단계(430)에서, 메타데이터 영역(310) 내 특정 영역이 미리 정의된 형식에 부합하는지 여부가 검사될 수 있다. 메타데이터 영역(310) 내 특정 영역이 미리 정의된 형식에 부합하는 경우 단계(440)가 수행될 수 있고, 그렇지 않을 경우 단계(450)가 수행될 수 있다.
메타데이터 영역(310) 내 특정 영역이 미리 정의된 형식에 부합될 경우에만, 메타데이터가 시스템 내에서 사용될 수 있는 경우가 있다.
따라서, 시스템(100)은 하나 이상의 미리 정의된 형식들을 시스템(100)(예컨대, 파일 프로세싱 서버(130) 또는 데이터베이스 서버(140)) 내에 저장해 놓고, 메타데이터 영역(310) 내 특정 영역이 상기의 하나 이상의 미리 정의된 형식들 중 하나의 형식과 부합할 경우에만 상기의 메타데이터를 사용할 수 있다.
단계(440)에서, 검색된 메타데이터가 신규 콘텐츠의 메타데이터로서 사용되는 것으로 결정될 수 있다.. 즉, 콘텐츠 파일(300)로부터 추출된 메타데이터가 상기 콘텐츠의 메타데이터로서 사용될 수 있다.
단계들(450 내지 470)에서, 콘텐츠 파일(300)에 기반하여 콘텐츠를 등록된 콘텐츠들과 비교함으로써 메타데이터가 생성될 수 있다.
단계(450)에서, 콘텐츠 파일(300)의 콘텐츠가 시스템(100) 내에 등록된 콘텐츠들과 비교될 수 있다.
단계(460)에서, 시스탬(100) 내에 등록된 콘텐츠들 중 콘텐츠 파일(300)의 콘텐츠와 동일 또는 유사한 콘텐츠가 있는지 여부가 검사될 수 있다.
동일 또는 유사한 콘텐츠가 있는 경우 단계(470)이 수행될 수 있고, 그렇지 않은 경우 단계(480)이 수행될 수 있다.
단계(470)에서, 동일 또는 유사한 콘텐츠의 메타데이터가 콘텐츠 파일(300)의 콘텐츠의 메타데이터로서 사용되는 것으로 결정될 수 있다.
이 때, 콘텐츠 파일(300)의 메타데이터 영역(310)에서 검색된 메타데이터가 상기 콘텐츠의 메타데이터로 부분적으로 사용될 수 있다.
단계(480)에서, 콘텐츠 파일(300)의 콘텐츠의 메타데이터가 생성될 수 있다.
콘텐츠 파일(300)의 메타데이터 영역(310)에서 검색된 메타데이터가 상기 콘텐츠의 메타데이터로 부분적으로 사용될 수 있다.
콘텐츠의 메타데이터는 미지의 값(unknown)으로 결정될 수 있다. 예컨대, 콘텐츠의 명칭 및 음악가 등의 값이 "unknown"으로 설정될 수 있다.
콘텐츠의 메타데이터는 사용자의 입력 값에 기반하여 생성될 수 있다.
콘텐츠의 메타데이터는 콘텐츠 파일(300)의 파일 명에 기반하여 생성될 수 있다. 예컨대, 콘텐츠의 명칭 및 음악가 등의 값은 "-"와 같은 특정한 구분자로 분리되는, 콘텐츠 파일(300)의 파일 명의 일부일 수 있다.
도 5는 본 발명의 일 예에 따른 콘텐츠의 메타데이터를 결정하는 방법을 설명한다.
파일 프로세싱 서버(130)는 콘텐츠 파일(300)의 형식 영역(510)을 메타데이터 형식 데이터베이스(520)에 저장된 하나 이상의 형식들(522, 554 및 526) 각각과 비교할 수 있다.
형식 영역(510)은 단계(430)에서 전술된 메타데이터 영역(310) 내 특정 영역을 의미할 수 있다. 형식 데이터베이스(520)에 저장된 하나 이상의 형식들(522, 554 및 526)은 도 4에서 전술된 미리 정의된 형식일 수 있다.
즉, 파일 프로세싱 서버(130)는 콘텐츠 파일(300)로부터 형식 영역(510)을 추출할 수 있으며, 추출된 형식 영역이 메타데이터 형식 데이터베이스(520) 내에 저장된 형식에 부합하는지 여부를 검사할 수 있다.
부합되는 형식이 있을 경우, 파일 프로세싱 서버(130)는 단계(440)을 수행할 수 있고, 부합하는 형식이 없는 경우, 파일 프로세싱 서버(130)는 단계(450)을 수행할 수 있다.
형식 데이터베이스(520)는 파일 프로세싱 서버(130) 또는 데이터베이스 서버(140) 내에 저장될 수 있다.
파일 프로세싱 서버(130)는 콘텐츠 파일(300)의 콘텐츠 영역(320)으로부터 콘텐츠의 특성을 추출 및 분석할 수 있다.
파일 프로세싱 서버(130)는 추출 및 분석된 콘텐츠의 특성을, 콘텐츠 데이터베이스(540) 내에 저장된 하나 이상의 콘텐츠들(542, 544 및 546) 각각의 특성(552, 554 또는 556)과 비교할 수 있다.
상기의 비교에 의해, 파일 프로세싱 서버(130)는 콘텐츠 파일(300)의 콘텐츠와 동일 또는 유사한 등록된 콘텐츠가 있는지 여부를 검사할 수 있다. 즉, 콘텐츠 파일(300)의 콘텐츠의 특성이, 데이터베이스(540) 내에 저장된 콘텐츠(542, 544 또는 546)의 특성(552, 554 또는 556)과 동일 또는 유사한 경우, 양 콘텐츠들은 동일 또는 유사한 것으로 간주될 수 있다.
상기의 특성은 콘텐츠의 특성 정보일 수 있다. 상기의 특성은 콘텐츠의 특징 벡터일 수 있다.
또한, 상기의 특성은 콘텐츠 파일(300)의 파일명일 수 있다.
콘텐츠 파일(300)의 콘텐츠와 동일 또는 유사한 등록된 콘텐츠가 있는 경우, 파일 프로세싱 서버(130)는 단계(470)을 수행할 수 있다. 콘텐츠 파일(300)의 콘텐츠와 동일 또는 유사한 등록된 콘텐츠가 없는 경우, 파일 프로세싱 서버(130)는 단계(480)을 수행할 수 있다.
도 6은 본 발명의 일 예에 따른 메타데이터를 사용하여 콘텐츠를 요청하는 방법을 설명한다.
제2 단말(195)의 사용자는 하나 이상의 콘텐츠들에 대한 메타데이터를 시스템(100)에게 요청한다. 상기의 요청은 단계(280)에 의해 수행될 수 있다.
상기의 하나 이상의 콘텐츠들은 사용자가 접근 권한을 갖는 콘텐츠들일 수 있다.
시스템(100)은 상기의 요청에 따라, 하나 이상의 콘텐츠들의 메타데이터를 제2 단말(195)에게 전송한다.
전송된 메타데이터, 예컨대 가수(610) 및 곡명(620)은, 제2 단말(195)의 표시부에 표시된다.
가수(610)는 하나 이상의 콘텐츠들 각각의 가수의 목록이다.
곡명(620)는 하나 이상의 콘텐츠들 각각의 곡명의 목록이다.
사용자는 제2 단말(195)에 표시된 내용, 즉 하나 이상의 콘텐츠들의 메타데이터를 보고, 하나의 콘텐츠를 선택한다. 즉, 사용자는 하나 이상의 콘텐츠들의 파일명 또는 경로 등과는 무관하게, 콘텐츠 파일(300) 내에 저장된 메타데이터에 기반하여 콘텐츠를 선택할 수 있다.
제2 단말(195)는 선택된 콘텐츠(630)을 전송해줄 것을 시스템(100)에게 요청한다. 상기의 요청은 단계(290)에 의해 수행될 수 있다.
시스템(100)은 요청된 콘텐츠(630)를 제2 단말(195)에게 제공한다. 상기의 제공은 단계(295)에 의해 수행될 수 있다.
도 7은 본 발명의 일 실시예에 따른 서버(700)의 구조도이다.
도 1 내지 도 6을 참조하여 전술된 콘텐츠 제공 방법은 단일한 장치에 의해 제공될 수 있다.
서버(700)는 API부(710), 파일 스토리지부(720), 파일 프로세싱부(730) 및 데이터베이스부(740)를 포함할 수 있다.
API부(710)는 API 서버(110)에 대응할 수 있고, API 서버(110)의 기능을 수행할 수 있다.
예컨대, API부(710)는 제1 단말(190)로부터 콘텐츠를 저장한 콘텐츠 파일(300)을 수신할 수 있고, 제2 단말(195)로부터 콘텐츠에 대한 요청을 수신할 수 있다.
파일 스토리지부(720)는 스토리지 서버(120)에 대응할 수 있고, 스토리지 서버(120)의 기능을 수행할 수 있다.
예컨대, 파일 스토리지부(720)는 콘텐츠 파일(300)을 저장할 수 있고, 콘텐츠 파일(300)을 사용하여 콘텐츠를 제2 단말(195)에게 제공할 수 있다.
파일 프로세싱부(730)는 파일 프로세싱 서버(130)에 대응할 수 있고, 파일 프로세싱 서버(130)의 기능을 수행할 수 있다.
예컨대, 파일 프로세싱부(730)는 콘텐츠 파일(300)의 메타데이터 영역(310) 내의 데이터에 기반하여 콘텐츠의 메타데이터를 추출할 수 있다.
데이터베이스부(740)는 데이터베이스 서버(140)에 대응할 수 있고, 데이터베이서 서버(140)의 기능을 수행할 수 있다.
예컨대, 데이터서비스부(740)는 추출된 메타데이터를 저장할 수 있고, 저장된 메타데이터를 제2 단말(195)에게 제공할 수 있다.
또한, API부(710), 파일 스토리지부(720), 파일 프로세싱부(730) 및 데이터베이스부(740)는 하나 이상의 서버들로 분리될 수 있고, 하나 이상의 서버들은 내부 네트워크를 통해 통신할 수 있다.
앞서 도 1 내지 도 6을 참조하여 설명된 본 발명의 일 실시예에 따른 기술적 내용들이 본 실시예에도 그대로 적용될 수 있다. 따라서 보다 상세한 설명은 이하 생략하기로 한다.
도 8은 본 발명의 일 예에 따른 복수 개의 서버들 간의 로드 밸런싱(load balancing)을 설명한다.
일반적으로, 클라우드 서비스는 대규모의 서버 군을 통해 제공될 수 있다.
즉, 시스템(100)의 서버들(110, 120, 130 및 140)은 각각 복수 개일 수 있다.
예컨대, API 서버(110)는 복수 개일 수 있다. 도 8에서 3 개의 API 서버들(832, 834 및 836)이 도시되었다.
시스템(100)은 L4 스위칭 서버(820)를 포함할 수 있다.
L4 스위칭 서버(820)는 복수 개의 API 서버들(832, 834 및 836) 간의 로드 밸런싱을 수행할 수 있다.
단말(810)이 시스템(100)에 접근하고자 할 때, 상기 단말(810)에 대한 서비스를 처리할 API 서버(100)가 복수 개의 API 서버들(832, 834 및 836) 중에서 결정될 필요가 있다.
단계(210)에서, 제1 단말(190)이 콘텐츠 파일을 전송할 때, L4 스위칭 서버(820)는 단말(810)로부터 콘텐츠 파일을 수신할 API 서버(110)를 복수 개의 API 서버들(832, 834 및 836) 중에서 결정할 수 있다.
즉, 단계(210)는, 1) 복수 개의 API 서버들(832, 834 및 836) 중 콘텐츠 파일을 수신할 API 서버를 결정하는 단계 및 2) 콘텐츠 파일을 수신하기로 결정된 API 서버가 제1 단말(190)로부터 콘텐츠 파일을 수신하는 단계를 포함할 수 있다.
또한, 단계(280)에서, 제2 단말(195)이 메타데이터를 요청할 때, L4 스위칭 서버(820)는 메타데이터에 대한 요청을 수신할 API 서버(110)를 복수 개의 API 서버들(832, 834 및 836) 중에서 결정할 수 있다.
즉, 단계(280)는, 1) 복수 개의 API 서버들(832, 834 및 836) 중 콘텐츠에 대한 요청을 수신할 API 서버를 결정하는 단계 및 2) 콘텐츠에 대한 요청을 수신하기로 결정된 API 서버가 제2 단말(190)로부터 콘텐츠에 대한 요청을 수신하는 단계를 포함할 수 있다
또한, 도 7을 참조하여 전술된 서버(700)의 구성 요소들(710, 720, 730 및 740)은 각각 복수 개일 수 있다.
예컨대, API부(710)는 복수 개일 수 있으며, 서버(700)는 L4 스위칭부(도시되지 않음)를 더 포함할 수 있다.
L4 스위칭부는 복수 개의 구성 요소들(예컨대, 복수 개의 API부(710)들, 복수 개의 파일 스토리지부(720)들, 복수 개의 파일 프로세싱부(730)들 또는 복수 개의 데이터베이스부(740)들) 중 특정한 단계(210 내지 295)를 수행할 일 구성 요소를 선택할 수 있다.
예컨대, L4 스위칭부는 복수 개의 API부(710)들 중 제1 단말(190)로부터 콘텐츠 파일을 수신할 제1 API부(710)를 결정할 수 있고, 제2 단말(195)로부터 상기 메타데이터에 대한 요청을 수신할 제2 API부(710)를 결정할 수 있다.
앞서 도 1 내지 도 7을 참조하여 설명된 본 발명의 일 실시예에 따른 기술적 내용들이 본 실시예에도 그대로 적용될 수 있다. 따라서 보다 상세한 설명은 이하 생략하기로 한다.
본 발명의 일 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100: 콘텐츠 제공 시스템
110: API 서버
120: 스토리지 서버
130: 파일 프로세싱 서버
140: 데이터베이스 서버
300: 콘텐츠 파일
310: 메타데이터 영역
320: 콘텐츠 영역

Claims (20)

  1. 콘텐츠 파일의 메타데이터 영역 내의 데이터에 기반하여 상기 콘텐츠 파일에 포함된 콘텐츠의 메타데이터를 추출하는 단계;
    상기 메타데이터를 저장하는 단계;
    상기 메타데이터를 사용자 단말에게 전송하는 단계;
    상기 사용자 단말로부터 상기 전송된 메타데이터에 기반하여 식별 및 선택되는 콘텐츠에 대한 요청을 수신하는 단계; 및
    상기 콘텐츠 파일을 이용하여 상기 콘텐츠를 상기 사용자 단말에게 제공하는 단계
    를 포함하고,
    상기 콘텐츠의 메타데이터를 추출하는 단계는,
    상기 메타데이터 영역 내 특정 영역이 미리 정의된 형식에 부합하지 않는 경우 상기 콘텐츠 파일에 기반하여 상기 콘텐츠를 등록된 콘텐츠들과 비교함으로써 상기 메타데이터를 생성하는 것을 특징으로 하는 콘텐츠 제공 방법.
  2. 제1항에 있어서,
    상기 콘텐츠 파일은 MP3 포멧의 파일이며, 상기 메타데이터 영역은 상기 MP3 포멧 파일의 ID3 영역이며, 상기 콘텐츠는 오디오 콘텐츠인 것을 특징으로 하는 콘텐츠 제공 방법.
  3. 제2항에 있어서,
    상기 메타데이터는 상기 콘텐츠의 명칭, 상기 콘텐츠의 음악가의 명칭, 상기 콘텐츠의 자켓 이미지 중 하나 이상을 포함하는 것을 특징으로 하는 콘텐츠 제공 방법.
  4. 제1항에 있어서,
    상기 콘텐츠는 상기 콘텐츠 파일이 변경되지 않은 상태로 상기 콘텐츠의 스트리밍에 의해 상기 사용자 단말에게 제공되는 것을 특징으로 하는 콘텐츠 제공 방법.
  5. 제1항에 있어서,
    상기 콘텐츠의 메타데이터를 추출하는 단계는,
    상기 메타데이터 영역 내에서 상기 메타데이터를 검색하는 단계; 및
    상기 메타데이터 영역 내에서 상기 메타데이터가 미검색된 경우 상기 콘텐츠 파일에 기반하여 상기 콘텐츠를 등록된 콘텐츠들과 비교함으로써 상기 메타데이터를 생성하는 단계
    를 더 포함하는 것을 특징으로 하는 콘텐츠 제공 방법.
  6. 제1항에 있어서,
    복수 개의 API 서버들 중 상기 콘텐츠 파일을 수신할 API 서버를 결정하는 단계; 및
    상기 콘텐츠 파일을 수신하기로 결정된 API 서버가 상기 사용자 단말로부터 상기 콘텐츠 파일을 수신하는 단계
    를 포함하고,
    상기 콘텐츠에 대한 요청을 수신하는 단계는,
    상기 복수 개의 API 서버들 중 상기 콘텐츠에 대한 요청을 수신할 API 서버를 결정하는 단계; 및
    상기 콘텐츠에 대한 요청을 수신하기로 결정된 API 서버가 상기 사용자 단말로부터 상기 콘텐츠에 대한 요청을 수신하는 단계
    를 포함하는 것을 특징으로 하는 콘텐츠 제공 방법.
  7. 콘텐츠 파일의 메타데이터 영역 내의 데이터에 기반하여 상기 콘텐츠 파일에 포함된 콘텐츠의 메타데이터를 추출하는 단계;
    상기 메타데이터를 저장하는 단계;
    상기 메타데이터를 제1 단말에게 전송하는 단계;
    상기 제1 단말로부터 상기 전송된 메타데이터에 기반하여 식별 및 선택된 콘텐츠에 대한 요청을 수신하는 단계; 및
    상기 콘텐츠 파일을 사용하여 상기 콘텐츠를 상기 제1 단말에게 제공하는 단계
    를 포함하고,
    상기 콘텐츠의 메타데이터를 추출하는 단계는,
    상기 메타데이터 영역 내 특정 영역이 미리 정의된 형식에 부합하지 않는 경우 상기 콘텐츠 파일에 기반하여 상기 콘텐츠를 등록된 콘텐츠들과 비교함으로써 상기 메타데이터를 생성하는 것을 특징으로 하는 콘텐츠 제공 방법.
  8. 제7항에 있어서,
    상기 콘텐츠 파일은 MP3 포멧의 파일이며, 상기 메타데이터 영역은 상기 MP3 포멧 파일의 ID3 영역이며, 상기 콘텐츠는 오디오 콘텐츠인 것을 특징으로 하는, 콘텐츠 제공 방법.
  9. 제7항에 있어서,
    상기 콘텐츠는 상기 콘텐츠 파일이 변경되지 않은 상태로 상기 콘텐츠의 스트리밍에 의해 상기 제1 단말에게 제공되는 것을 특징으로 하는 콘텐츠 제공 방법.
  10. 제7항에 있어서,
    상기 콘텐츠의 메타데이터를 추출하는 단계는,
    상기 메타데이터 영역 내에서 상기 메타데이터를 검색하는 단계; 및
    상기 메타데이터 영역 내에서 상기 메타데이터가 미검색된 경우 상기 콘텐츠 파일에 기반하여 상기 콘텐츠를 등록된 콘텐츠들과 비교함으로써 상기 메타데이터를 생성하는 단계
    를 포함하는 것을 특징으로 하는 콘텐츠 제공 방법.
  11. 제7항에 있어서,
    복수 개의 API 서버들 중 상기 콘텐츠 파일을 수신할 API 서버를 결정하는 단계; 및
    상기 콘텐츠 파일을 수신하기로 결정된 API 서버가 제2 단말로부터 상기 콘텐츠 파일을 수신하는 단계
    를 포함하고,
    상기 콘텐츠에 대한 요청을 수신하는 단계는,
    상기 복수 개의 API 서버들 중 상기 콘텐츠에 대한 요청을 수신할 API 서버를 결정하는 단계; 및
    상기 콘텐츠에 대한 요청을 수신하기로 결정된 API 서버가 상기 제1 단말로부터 상기 콘텐츠에 대한 요청을 수신하는 단계
    를 포함하는 것을 특징으로 하는 콘텐츠 제공 방법.
  12. 제1항 내지 제11항 중 어느 한 항의 콘텐츠 제공 방법을 수행하는 프로그램을 수록한 컴퓨터 판독 가능 기록 매체.
  13. 제1 단말로부터 상기 제1 단말에 제공된 메타데이터에 기반하여 식별 및 선택된 콘텐츠에 대한 요청을 수신하는 API 서버;
    저장된 콘텐츠 파일을 이용하여 상기 요청된 콘텐츠를 상기 제1 단말에게 제공하는 스토리지 서버;
    상기 콘텐츠 파일의 메타데이터 영역 내의 데이터에 기반하여 상기 콘텐츠의 메타데이터를 추출하는 파일 프로세싱 서버; 및
    상기 추출된 메타데이터를 저장하고, 상기 저장된 메타데이터를 상기 제1 단말에게 제공하는 데이터베이스 서버
    를 포함하고,
    상기 파일 프로세싱 서버는, 상기 메타데이터 영역 내 특정 영역이 미리 정의된 형식에 부합하지 않는 경우 상기 콘텐츠 파일에 기반하여 상기 콘텐츠를 등록된 콘텐츠들과 비교함으로써 상기 메타데이터를 생성하는 것을 특징으로 하는 콘텐츠 제공 시스템.
  14. 제13항에 있어서,
    상기 콘텐츠 파일은 MP3 포멧의 파일이며, 상기 메타데이터 영역은 상기 MP3 포멧 파일의 ID3 영역이며, 상기 콘텐츠는 오디오 콘텐츠인 것을 특징으로 하는 콘텐츠 제공 시스템.
  15. 제13항에 있어서,
    상기 콘텐츠는 상기 콘텐츠 파일이 변경되지 않은 상태로 상기 콘텐츠의 스트리밍에 의해 상기 제1 단말에게 제공되는, 콘텐츠 제공 시스템.
  16. 제13항에 있어서,
    상기 파일 프로세싱 서버는, 상기 메타데이터 영역 내에서 상기 메타데이터가 미검색된 경우 상기 콘텐츠 파일에 기반하여 상기 콘텐츠를 등록된 콘텐츠들과 비교함으로써 상기 메타데이터를 생성하는 것을 특징으로 하는 콘텐츠 제공 시스템.
  17. 제13항에 있어서,
    상기 API 서버는 복수 개이고,
    상기 복수 개의 API 서버들 중 제2 단말로부터 상기 콘텐츠 파일을 수신할 제1 API 서버를 결정하고, 상기 제1 단말로부터 메타데이터에 대한 요청을 수신할 제2 API 서버를 결정하는 L4 스위칭 서버를 더 포함하는, 콘텐츠 제공 시스템.
  18. 제1 단말로부터 상기 제1 단말에 제공된 메타데이터에 기반하여 식별 및 선택된 콘텐츠에 대한 요청을 수신하는 API부;
    저장된 콘텐츠 파일을 이용하여 상기 요청된 콘텐츠를 상기 제1 단말에게 제공하는 파일 스토리지부;
    상기 콘텐츠 파일의 메타데이터 영역 내의 데이터에 기반하여 상기 콘텐츠의 메타데이터를 추출하는 파일 프로세싱부; 및
    상기 추출된 메타데이터를 저장하고, 상기 저장된 메타데이터를 제2 단말에게 제공하는 데이터베이스부
    를 포함하고,
    상기 파일 프로세싱부는, 상기 메타데이터 영역 내 특정 영역이 미리 정의된 형식에 부합하지 않는 경우 상기 콘텐츠 파일에 기반하여 상기 콘텐츠를 등록된 콘텐츠들과 비교함으로써 상기 메타데이터를 생성하는 것을 특징으로 하는 서버.
  19. 제18항에 있어서,
    상기 API부, 상기 파일 스토리지부, 상기 파일 프로세싱부 및 상기 데이터베이스부는 하나 이상의 서버들로 분리되고, 상기 하나 이상의 서버들은 내부 네트워크를 통해 통신하는 것을 특징으로 하는 서버.
  20. 제18항에 있어서,
    상기 API부는 복수 개이고,
    상기 복수 개의 API부들 중 상기 제2 단말로부터 상기 콘텐츠 파일을 수신할 제1 API부를 결정하고, 상기 제1 단말로부터 상기 메타데이터에 대한 요청을 수신할 제2 API부를 결정하는 L4 스위칭부를 더 포함하는 것을 특징으로 하는 서버.
KR1020170026167A 2017-02-28 2017-02-28 메타데이터를 추출하여 전송하는 콘텐츠 제공 방법 및 장치 KR20170027332A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170026167A KR20170027332A (ko) 2017-02-28 2017-02-28 메타데이터를 추출하여 전송하는 콘텐츠 제공 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170026167A KR20170027332A (ko) 2017-02-28 2017-02-28 메타데이터를 추출하여 전송하는 콘텐츠 제공 방법 및 장치

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020110060171A Division KR101713988B1 (ko) 2011-06-21 2011-06-21 메타데이터를 추출하여 전송하는 콘텐츠 제공 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20170027332A true KR20170027332A (ko) 2017-03-09

Family

ID=58402810

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170026167A KR20170027332A (ko) 2017-02-28 2017-02-28 메타데이터를 추출하여 전송하는 콘텐츠 제공 방법 및 장치

Country Status (1)

Country Link
KR (1) KR20170027332A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190079609A (ko) * 2017-12-27 2019-07-05 주식회사 펍플 전자책 파일 생성 방법 및 장치
KR102603724B1 (ko) * 2022-12-05 2023-11-17 주식회사 데이터메이커 인공지능 학습을 위한 데이터 관리 시스템 및 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190079609A (ko) * 2017-12-27 2019-07-05 주식회사 펍플 전자책 파일 생성 방법 및 장치
KR102603724B1 (ko) * 2022-12-05 2023-11-17 주식회사 데이터메이커 인공지능 학습을 위한 데이터 관리 시스템 및 방법

Similar Documents

Publication Publication Date Title
US10643610B2 (en) Voice interaction based method and apparatus for generating multimedia playlist
CA2661066C (en) Auto-selection of media files
US9319487B2 (en) Server device, client device, information processing system, information processing method, and program
CA2660224C (en) Managing media files from multiple sources
US7461122B2 (en) Music delivery system
US20040019658A1 (en) Metadata retrieval protocols and namespace identifiers
KR101713988B1 (ko) 메타데이터를 추출하여 전송하는 콘텐츠 제공 방법 및 장치
US10628385B2 (en) Virtual collection of entities in sync process
KR20060002868A (ko) 정보 처리 장치, 및 정보 처리 방법, 및 컴퓨터 프로그램
KR20140126556A (ko) 감성 기반 멀티미디어 재생을 위한 장치, 서버, 단말, 방법, 및 기록 매체
US20110087965A1 (en) Method for setting up a list of audio files for a mobile device
US8214564B2 (en) Content transfer system, information processing apparatus, transfer method, and program
KR20170027332A (ko) 메타데이터를 추출하여 전송하는 콘텐츠 제공 방법 및 장치
CN106411975B (zh) 一种数据输出方法、装置及计算机可读取存储介质
TWI808038B (zh) 媒體檔案選擇方法及服務系統與電腦程式產品
KR101407334B1 (ko) 음원 서비스를 제공하는 방법, 단말 및 서버
KR102255156B1 (ko) 복수의 음악 파일들을 관리하는 장치 및 방법
KR20130103695A (ko) 최신 콘텐츠 알림 서비스를 제공하는 방법, 시스템 및 기록매체
JP2009020571A (ja) 楽曲検索装置、楽曲検索方法、及び楽曲検索プログラム
KR20130022910A (ko) 최신 콘텐츠 알림 서비스를 제공하는 방법, 시스템 및 기록매체
KR20090044320A (ko) P2p 방식에 의한 컨텐츠 파일 제공 시스템 및 방법
CN108763425A (zh) 存储和读取音频文件的方法和装置
JP2004246480A (ja) 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP2003323434A (ja) 映像マルチメディアデータ関連付け装置およびその方法ならびにプログラム

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application
E601 Decision to refuse application
E801 Decision on dismissal of amendment