목록VideoCube (42)
VIDEOCUBE
사용자가 요구한 시간의 값으로 MP4 의 정보에서 stts 값으로 해당 시간값을 분석하였다. 해당 시간 값을 분석하여 샘플의 위치를 구하고 샘플의 사이즈를 구하고자 한다.mp4 는 chunk 단위로 샘플의 개수를 나타나는데, stts 의 샘플의 위치로 stsc의 sample_per_chunk 의 개수를 통해서 chunk_index 를 구해올 수 있다. 여기서 구해진 chunk_index 는 stco 의 배열의 위치를 가르키게 되는데 chunk_index 는 1번이지만 stco 의 위치는 배열의 첫번째 0 부터 시작한다 해서 chunk_index 의 값의 -1 을 하게 되면 stco 의 위치를 가르키게 됩니다. 샘플의 위치를 이용하여 stsz 에서 사이즈를 가져옵니다.chunk_index 의 값은 각 샘플..
이전 작업으로 MP4 를 이용한 분석을 통해서 샘플데이터를 추출해 볼 수 있습니다. 또한 HLS 를 이용하여 segment list 를 추출해 줄 수도 있습니다. 이제는 TS 를 만들어야 합니다.사용자로 하여금 요구된 시간만큼 TS 로 muxing 을 해야 합니다. 다음 조건을 충족해야 합니다. 해당 조건은 요구된 시간입니다.ㄴ 시간 정보를 통해서 샘플의 데이터를 가져와야 합니다. ㄴ 사용자가 요구하는 시간의 시작지점과 요구되는 duration 값을 받습니다. 예를 0초 부터 10초 10초 부터 20 초간격의 데이터를 요구하는 경우 다음과 같이 받도록 합니다. 0초 부터 10초 ( 0, 10 ) 10초 부터 20 초 ( 1, 10 ) 첫번째는 sequence, 두번째는 duration 으로 칭합니다. 저..
CentOS 6.3 으로 Python3 설치 1. CentOS 6.3 기본 설치 버전 - version 2.6.6 root@linux-03:/root> pythonPython 2.6.6 (r266:84292, Jun 18 2012, 14:18:47) [GCC 4.4.6 20110731 (Red Hat 4.4.6-3)] on linux2Type "help", "copyright", "credits" or "license" for more information. >>> exit() root@linux-03:/root> yum update pythonDependencies Resolved ====================================================================..
Cython 은 CPython 확장 모듈을 생성하고 이를 이용하여 외부 함수 인터페이스와 실행 속도 향상과 외부 라이브러리의 연동을 보다 향상 시킬 수 있도록 고안된 컴파일 언어이다 Cython 은 pyx 확장명을 사용하고, 컴파일 과정을 통하여 파이썬에서 import 형태로 사용될 수 있다. 컴파일은 다음 setup.py 를 이용하여 컴파일 할 수 있다 mathx.pyx 만들기def inverse(float x):cdef float yy = 1.0 / xreturn y setup.py 만들기#!/usr/bin/env python from distutils.core import setupfrom Cython.Build import cythonizesetup(name = 'Cython Library', e..
python 에서 쉽게 패키지를 설치할 수 있도록 도움을 주는 패키지 매니져를 설치해 보자현재 CentOS 6.3 에서는 yum 으로 설치를 진행 할 수 없다. root@linux-01:/data/source> yum install python-pipLoaded plugins: fastestmirrorLoading mirror speeds from cached hostfile * base: mirror.fairway.ne.jp * extras: mirror.fairway.ne.jp * updates: www.ftp.ne.jpTrying other mirror.Setting up Install ProcessNo package python-pip available.Error: Nothing to do EPE..
FFmpeg 이란 ㄴ 위키 백과에 따르면 디지털 음성 스트림과 영상 스트림에 대해서 다양한 종류의 형태로 기록하고 변환하는 컴퓨터 프로그램이라 한다.CLI 형태로 제공이 되며, 오픈소스 라이브러리로 구성이 된다. 공식 사이트는 다음과 같다.ㄴ http://ffmpeg.org FFmpeg 을 설치해보자. ㄴ http://ffmpeg.org/download.html각 OS 에 맞게 이미 빌드된 버전을 다운로드 받을 수 있으며, Git 로 현재 개발중인 버전 또는 여러 다양한 버전을 가진 소스를 귀하의 시스템에서 빌드 할 수 있도록 지원하고 있다 후자를 선택해보겠다. 작업 폴더를 만들기 위해 다음과 같이 폴더를 생성하자 mkdir ~/ffmpeg_sourcescd ~/ffmpeg_source FFMPEG Do..
MPEG TS 란MPEG transport stream : TS, TP, MPEG-TS 로 줄일 수 있다오디오, 비디오 데이터 전송을 위한 통신 프로토콜이다.PES( Packetized Elementary Streams ) 와 기타 데이터를 포함하는 디지털 컨테이너 포맷의 일종MPEG-2 part 1 ISO/IEC 표준 13818-1 규정 포맷구조8bits 1bit 1bit 1bit 13bits 2bits 2bits 4bits payload 1Byte + 2Byte + 1Byte = 4BytePES : 184Byte 8bits : SyncByte : 0x471bit : Transport Error Indicator ( 전송오류 표시기 ) ㄴ 에러 : 1, 정상 : 01bit : Payload Unit S..
메일 서버를 구축해 보자.. CentOS 6.3 환경에서 Mail Transfer Agent 로 sendmail, postfix 중에 postfix 로 설치를 진행하려고 한다. yum install postfix root@mail:/root> netstat -nlp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 878/sshd tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1568/master tcp 0 0 :::22 :::* LISTEN 878/sshd tcp..
linux 에서 flock 사용법은 동시에 두개 이상의 실행을 하지 않도록 파일에 Lock 설정을 할 수 있다. crontab 에 스크립트를 이용하여 지정된 시간에 동작하게 끔 등록을 하는데 일정한 주기 안에 해당 스크립트가 완료가 되지 않아 진행 중인 스크립트에 동일한 스크립트를 실행 시켜 원치 않은 작업 결과를 내곤 한다. -- [ 예시 ] -- * * * * * flock -n /tmp/test.lock ./{Script} -- [ Help ] -- Usage: flock [-sxun][-w #] fd# flock [-sxon][-w #] file [-c] command... flock [-sxon][-w #] directory [-c] command... Options: -s --shared Ge..
HLS (Http Live Streaming ) 는 Apple 이 만들었다고 한다.이는 Http 를 이용한 라이브 스트리밍 기술로서 HLS 이전에 RTSP/ RTP 등을 사용하던 라이브 스트리밍 기술은 서로 다른 네트워크를 이용하는 해당 기술들은 도입비용에 상대적으로 많이 소모가 되는 단점에 비해 Http 를 이용한다는 점에서 도입비용 면에서나 접근성에서 상당한 장점을 가지고 있다특히 캐시 CDN (Content Delivery Network) 서비스도 특별한 구조를 구성할 필요없이 단순 웹서비스로서 구현이 가능하다 iOS 3.0, Quick Time X 를 위해 2009년에 내놓은 구조로 MPEG-2 TS 를 세그먼팅 하여 M3U8에 해당 데이터의 인덱스를 표기 플레이어는 이를 분석하고재생하기에 이른..