Giter Club home page Giter Club logo

yoondisk / mediasafe_hd_basic Goto Github PK

View Code? Open in Web Editor NEW
18.0 17.0 14.0 40.19 MB

윤디스크 개방형 OS 설치형 디지털 저작권 관리 및 지원하는 동영상 플레이어 개발

Home Page: http://yoondisk.github.io

License: GNU General Public License v2.0

CSS 4.71% JavaScript 32.36% HTML 1.01% C 11.46% Java 21.40% PHP 13.26% Makefile 0.03% Classic ASP 13.21% C++ 2.56%
open-os-player drm-player rtsp-player hls-player subtitle-player

mediasafe_hd_basic's Introduction

Build Status Build Status Build Status Build Status Build Status Build Status

MediaSAFE_HD_Basic

개방형OS(Operating System-운영체제) PC에 설치 후 서비스 이용이 가능한
Digital Rights Management (디지털 저작권 관리, 이하 DRM) 플레이어 플랫폼

목표

◦ 개방형OS PC에 설치형 DRM 플레이어를 개발
◦ 개방형OS DRM 플레이어 세부 기능

  • HTTP, RTSP 전송 프로토콜 지원 기능
  • 생방송 영상 중계 URL 암호화 기능
  • 볼륨 조절 기능 및 해상도 변경 기능
  • 콘텐츠 서버와 네트워크 패킹 암호화 통신 기능
  • 배속기능 및 임의 위치 재생 기능

설계

  • 개방형OS에 사용된 커널 버전(데미안 10.X) 분석
  • 개방형OS에 이용 가능한 SEED 128,256bit 암호화 및 복호화 기법 분석
  • 개방형OS에서 사용 가능한 영상 스트리밍 기법 분석
  • 개방형OS에서 동영상 콘텐츠 저작권 관리툴 적용(웹 기반)

효과

◦ 개방형OS를 이용하는 PC및 클라우드 환경에서 생방송, 영상 콘텐츠 서비스시에
콘텐츠의 안전한 보호와 불법적 유출을 방지

LICENSE

MediaSAFE_HD_Basic is licensed under the GPL, Version 2.0

참여방법

CONTRIBUTING.md

Wiki

mediasafe_hd_basic's People

Contributors

bomidev avatar cashbook avatar cdaegyun avatar geowiz21 avatar jwy0621 avatar kimdev1 avatar land-hana avatar leeinjae89 avatar lewelw avatar limdes avatar parkdev106 avatar seonghunl avatar sunhadev avatar wooinna avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mediasafe_hd_basic's Issues

브라우저 환경

개방형 OS마다 기본적으로 제공해주는 브라우저가 있습니다만, 그 외 리눅스, 데비안 환경에서 지원해주는

브라우저를 터미널에서 별도로 설치 해 진행해보려 합니다.

크롬 이 외에 지원이 되는 브라우저들이 있는 지 확인 부탁드립니다.

커밋 메시지 스타일 가이드

개요

커밋 메시지가 많이 누적 되가면서 각자의 스타일로 커밋메시지를 작성하게 되면 가독성이 떨어지고
협업에 있어서 어려움이 생길 염려가 있어 커밋 메시지 스타일 가이드를 정해두려 합니다.

메시지 구조

type: subject

body

footer

type : 커밋한 내용의 분류
subject : 커밋한 내용에 대해 작성
body: 긴 설명이 필요한 경우에 작성, 어떻게 했는지가 아니라, 무엇을 왜 했는지 작성, 최대 75글자
footer : issue tracker ID를 명시하고 싶은 경우에 작성

body와 footer는 선택이며 필수는 아닙니다.

타입 type

feat : 새로운 기능 추가
fix : 버그 수정
docs : 문서 수정
style : 스타일 변경(코드 수정 x)
refactor : 코드 리팩토링
test : Test 관련한 코드 변경항목
chore : 설정변경(코드 수정 x)

위의 타입은 예시일 뿐이며 다른 타입도 사용 가능합니다. ex) add: 파일 추가, mod: 파일 삭제 및 수정

참고사이트 Udacity Git Commit Message Style Guide

패키지 업데이트 내용 보완

#25 패키지 업데이트 항목의 보완내용

  • 패키지 설치 시 패키지 설치관리자 패스워드 인증란에서 유저 패스워드가 아닌 root 계정의 패스워드 입력 해야합니다.
  • 설치된 상태에서 재설치 진행 시
  1. 패키지 설치 관리자에서 같은 버전으로 설치 진행 시 아무런 변화가 없으므로 삭제 후 설치 진행을 해야합니다.
    그러나 하위버전, 상위버전 설치 시 변경사항이 적용됩니다.
  2. 터미널에서 명령어로 실행 시 버전과 관계없이 적용됩니다.

yoonagent 실행 관련

플레이어를 작동시키기 위해 모듈의 yoonagent를 실행함에 있어 터미널에서 직접 명령어를 통해 작동을 합니다.

그러나 종료할 때는 별다른 방법이 없어 강제종료를 하게됩니다. 별개의 모듈 off 기능은 따로 존재 하지 않아 보입니다.

플레이어 모듈의 on/off 기능에 대해 방식이 있는지 확인 부탁드립니다.

[2020-11-12] [notice] 플레이어 종료

패키지명

  • yoonagent를 실행시킬 땐 강제종료가 가능하지만 패키지를 설치하면 별도의 명령어 없이 자동실행이 됩니다.
  • 기능을 멈추실 땐 패키지 삭제 또는 프로세스를 종료하시면 됩니다.
  • 패키지명 : yoonagent-player-openos
  • 프로세스명 : yoonagent

영상 정보를 받아오는 주소 값 관련

html5_player에서 index 파일에 개인의 IP가 기입이 되어있는 것 같아 해당 IP 변수를
localhost 또는 127.0.0.1로 바꾸는 것을 제안합니다.

저장소에서 Pull 받을 때 수정해야하는 번거로움이 있어 IP 변수에
localhost 또는 127.0.0.1로 교체해두면 다른 참여자들도 편리하게 이용할 수 있다고 생각합니다.

이벤트 메시지 출력 로그 관련

플레이어 하단 이벤트 메시지 창에서

플레이어 조작 시 출력되는 (Ready, Play, Waiting, Playing, pause)의 시간 값은

어떤 동작에 대한 시간인지 확인 부탁드립니다.

MediaSafe.deb 패키지 설치관련 이슈

MediaSafe.deb 설치 시 구성요소 중

preinst (패키지 설치 전 실행 스크립트)

invoke-rc.d yoonauto stop

yoonauto 파일이 존재안할 시 리턴값으로 인한 버그발생을 방지하기 위해
아래와 같이 수정요청 드립니다.

if [ -f /etc/init.d/yoonauto ]
then
  invoke-rc.d yoonauto stop
fi

MediaSafe 패키지 업데이트

MediaSafe

  • 기존 플레이어 재생 시 yoonagent 파일 실행 없이 MediaSafe 패키지 파일로 자동실행 가능
  • PC 실행 시 프로세스 자동실행
  • 자세한 구성 내용은 MediaSafe 패키지 설치 시 패키지 설치 관리자에서 확인 가능

설치

  1. 미설치 상태에서 플레이어 재생 시 출력되는 다운로드 안내 문구 클릭
  2. 패키지 다운로드 후 실행
  3. 패키지 설치 관리자 안내에 따라 설치 진행 (개방형 OS마다 다를 수 있음)

패키지 설치 관리자로 설치 진행이 안될 시 터미널에서 dpkg 명령어 이용해 설치 진행

php_player TC 관련

vod_player/live_player/dump_player의 페이지의 TC 값

관련이슈 #24

TC1~3의 수치는 플레이어 재생시 연관이 있어보이나, 해당 값이 나오는
구체적인 설명이 필요합니다.

그리고 TC4, TC5도 관련해서 내용 부탁드립니다.

dump_player.php 파일 비교방법

dump_player.php에서는 vod_player.php와 차이점이 있다면 각각의 TC의 값들이 나오는 항목이
다른 것으로 보입니다.

업데이트에서는 원본 파일, 암호화 파일 비교할 수 있다는 내용을 확인했습니다.
두 파일의 비교 방법이 정해진 방법이나 별도로 있는 지, 설명이 필요합니다.

깃허브 이슈 관리

깃허브 issue 게시판에서 이슈 작성 및 관리하는 방법을 공유합니다.

제목

자유로운 의견 반영을 위해 형식은 정해두지 않았습니다. 이슈 타이틀을 보고 어느 내용인지 파악할 수 있을 정도면 됩니다.
하지만 버그리포트, 프로젝트 진행 이슈 등 다양한 내용이 포함되기 때문에 어느정도의 분류할 수 있는 문구는 필요할 것
같습니다.
ex) "[subject] title"

코멘트

이슈의 버그 또는 프로젝트 진행도에 대해 답변해 줄 수 있으면 누구나 의견을 자유롭게 달아도 됩니다. 혹은 추가적으로 이슈의 관련된 사항이 있으면 추가적으로 덧붙여도 됩니다. 참여가 많을 수록 좋은 결과가 나올 것입니다.

라벨

현재 기존에 주어진 라벨은 9종류이며, 이슈를 분류하는데 사용됩니다. 추가적으로 라벨을 생성해서 사용해서 되지만 너무 많은 라벨은 효과적이지 못할 수도 있습니다. 분류가 된 이슈는 관련 있는 담당자가 지정되어야 합니다.
assignee 기능을 사용 해 분류별 관리를 할 수 있습니다.


관리하는 법은 언제나 바뀔 수 있으며, 이슈관리의 틀이 잡히면 CONTRIBUTING 문서에
반영할 수 있도록 하겠습니다.

MediaSafe 설치 후 apt-get 명령어 이슈

패키지 설치 후
apt-get install 명령어 사용 시 '잠금 파일을 얻을 수 없습니다' 오류 발생

패키지 삭제한 뒤에는 정상적으로 작동하며
패키지 구성요소인 postinst에서 yoonagent 실행방법에 대해 원인파악 필요

[2020-11-23] [notice] plyr.js

plyr.js

  • video.js의 라이선스 호환성 문제로 인한 이슈
  • 기존 video.js를 plyr.js로 교체 하였습니다.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.