목록분석 (11)
VIDEOCUBE
FFmpeg 은 무료 오픈 소스 소프트웨어 로 영상 또는 음성 파일을 변환 또는 추출, 생성을 위해 사용하는 유틸리티로서 많은 영상관련 개발자 또는 영상 작업자가 한번 쯤은 익히 들어본 경험이 있을 것이다. FFmpeg 은 다음 라이브러리를 활용하기 위한 Application 이며, 다음 라이브러리를 이용하여 Player ( ffplay ), 미디어 분석기 ( ffprobe ), 미디어 서버 ( ffserver ) 와 같이 제작 배포 되어 지고 있다. 라이브러리는 다음과 같다. libavutil 프로그래밍을 단순화 하기 위한 유틸리티 라이브러리 libavcodec 오디오/ 비디오 인코더와 디코더가 포함된 라이브러리 libavformat demuxer와 muxer 가 포함된 라이브러리 libavdevice..
현 게시된 글은 FFMpeg 에 게시된 글은 MinGW, MSYS을 사용하지 않고, WSL 을 이용한 윈도우 빌드를 기반으로 작성되었습니다. 1. 준비하기 1) WSL 을 설치 하도록 합니다. 자세한 내용은 다음 글을 참조하여 주시면 됩니다. Window10 WSL 로 Ubuntu 설치하기 (tistory.com) Window10 WSL 로 Ubuntu 설치하기 기존 Ubuntu 설치는 Multi OS로 설치가 진행이 되어 윈도우와는 별개의 OS 로 재부팅을 거쳐Grub 를 통하여 OS 진입 점을 선택하였으나, 세상이 참 좋아졌다. 우선 윈도우에서 Ubuntu 재부팅을 하지 않고 videocube.tistory.com 2) Visual Studio 설치하기 필자는 기존 OBS Studio 빌드를 해봄으로..
OBS Studio 분석 (2) - 빌드 OBS 빌드 방법에 대해서 설명하고자 합니다. OBS 빌드는 이전 블로그에서 작성한 내용을 기반으로 준비가 진행된 이후 부터 진행을 합니다. OBS Studio 분석 (1) - 준비 코로나로 인해서 videocube.tistory.com 이전 블로그에서는 빌드 방법에 따라 정상적으로 인스톨 파일을 생성하는 것 까지 실습해 보았다. 이번 블로그는 1. 시작 지점은 어디서 부터 시작이 되는지 2. 화면 생성은 어떻게 하며, 해당 화면 UI 는 어떻게 사용을 하는지. 3. 폴더는 어떻게 구성이 되어 있는지 4. 플러그인들은 어떤 것들을 사용하고 있는지 1. 어디서 부터 시작이 되는가. 설치 파일로 설치를 하게 되면, 우선 단축아이콘을 확인해 보자. "C:\Program..
OBS 빌드 방법에 대해서 설명하고자 합니다. OBS 빌드는 이전 블로그에서 작성한 내용을 기반으로 준비가 진행된 이후 부터 진행을 합니다. OBS Studio 분석 (1) - 준비 코로나로 인해서 많은 사람들이 비대면을 선호하고 이로 인해 많은 이들로 하여금, 라이브 방송을 접하고 있다. 라이브커머스(Live Commerce), 웨비나(WEBINAR) 등 비대면 상품들이 등장 videocube.tistory.com 필자는 윈도우 OS 를 기반으로 빌드한 내용을 기록하였습니다. 1. 소스를 깃을 이용하여 내려받습니다. git clone --recursive https://github.com/obsproject/obs-studio.git --recursive Option 을 이용하여 서브모듈까지 내려받습니..
코로나로 인해서 많은 사람들이 비대면을 선호하고 이로 인해 많은 이들로 하여금, 라이브 방송을 접하고 있다. 라이브커머스(Live Commerce), 웨비나(WEBINAR) 등 비대면 상품들이 등장을 하게 되고, 이로 인해 YouTube, Twitch, Facebook 등의 서비스를 접하는 사람들도 점차 증가하고 있다. 라이브를 하기 위해서는 다양한 상품이 있지만, 이에 사용자는 카메라 장비 외에도 영상을 송출 할 수 있는 장비가 필요하다. 여기에 몇몇 좋은 소프트웨어와 하드웨어들이 있지만, 무료로 사용이 가능한 오픈 소스 소프트웨어 중에 OBS Studio를 분석해보려고 한다. 필자가 분석하려고 하는 부분은 1. 소스를 빌드하는 방법을 통해서, 2. 해당 소스가 어떻게 프로젝트를 구성을 했고, 3. 어..
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..
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에 해당 데이터의 인덱스를 표기 플레이어는 이를 분석하고재생하기에 이른..
MP4 파일 미디어 샘플과 시간 정보를 구하는 방법 미디어 샘플의 정보는 샘플 테이블 박스에서 얻을 수 있다.샘플 테이블 박스는 Sample Table Atom : stbl 이다.stbl 을 찾아보자.. moov 내 Type 정보moov > track > mdia > stbl 정보를 찾아보자 ftyp : 20moov : 17708moov > mvhd : 108----------------- [ mvhd ] ----------------- Version 0Flags 000000CreateTime 2036-01-02 00:00:00Durtaion 65536--------------------------------------------- moov > trak : 5870----------------- [ tr..
Wiki 에 따르면MP4 는 공식적으로 ISO/IEC 14496-14:2003 MPEG-4의 일부 규정된 멀티미디어 컨테이너 포맷이다.ㄴ 디지털 비디오, 디지털 오디오 스트림을 저장 하기 위해서 사용함ㄴ 자막, 스틸 이미지 따위의 기타 데이터 저장ㄴ 인터넷을 통한 스트리밍 지원ㄴ 스트리밍 정보 > hint track 이 존재ㄴ 확장명 ( .mp4 ) 압축된 영상의 데이터를 감싸 장치로 부터 압축된 영상의 정보를 가지고 재생을 할 수 있도록 그 정보를 담고 있다해당 영상의 정보를 분석하여 압축된 영상 데이터를 FLV, TS 등으로 변환도 가능하다. 많은 비디어 영상 재생 기술 방식을 보면, 보통은 지원되는 포맷이 아닙니다. 라든지와 같은 .. 오류 정보를 볼 수 있다.해당 기기에서 압축방식에 따라 재생이 ..
GitLab 활용하기 편에서 ping 소스를 업로드 해놓았다. 새로 Branches 를 생성하자 개발서버에 접속하자 root@linux-01:/data/source/ping> git fetch Username for 'http://git.videocube.lab': pluto90k Password for 'http://pluto90k@git.videocube.lab': http://git.videocube.lab/network/ping URL에서 * [새로운 브랜치] develop -> origin/develop develop 모드로 전환한 후 root@linux-01:/data/source/ping> git checkout develop develop 브랜치가 리모트의 develop 브랜치를 (orig..