목록알쓸전컴 (343)
알쓸전컴(알아두면 쓸모있는 전자 컴퓨터)
[ffmpeg] 툴 분석 (1) http://www.ffmpeg.org/ffmpeg.html 사이트의 내용을 분석하여 어떠한 기능들이 툴에서 제공되는지 알아보겠습니다. 먼저 기본적인 사용 문법 입니다. 1 Synopsis ffmpeg [global_options] {[input_file_options] -i input_url} ... {[output_file_options] output_url} .. 2. 설명 ffmpeg 는 매우 빠른 video audio converter(변환기) 이고 video/audio 소스 로부터 사용 할수 있습니다. 변환 할때 rate 조절과 사이즈 조절과 여러개 고품질의 필터를 사용할수 있습니다. -i 옵션 명렁어를 통해서 input 영상을 정할수 있습니다. 여기서 정할수 ..
[Qt Multimedia] 임시 중단 안내 오픈 소스를 직접 분석 하고 있습니다만. 구조를 모르고 맨땅에 해딩하니 너무 서두가 없고 이해도 측면에서 점점 오리무중으로 가는 상태가 발생하여 다른 공부 방법을 찾아 봐야 할것 같습니다. QT Mutimedia 에서 low 소스부터 건들어 미디어을 위한 개발을 하기 보단 기본적으로 예제에서 나와 제공 하는 API 들을 사용하고 추가 필요한 기능은 opencv + ffmpeg 라이브러리 학습을 통해 Qtmutimedia + opencv + ffmpeg 로 가는게 옮은 방법이고 효율적으로 생각 됩니다. 이로인해 분석을 임시중단하고 opencv 와 ffmpeg 학습을 먼저 하고자 합니다. 지금까지 해온 소스 분석 내용은 혹시 모르니 공개로 해 놓겟습니다.
ffmpeg 라이브러리 구조 참조 사이트 http://d2.naver.com/helloworld/8794 정리가 잘되어 있어서 남깁니다.
HLS를 위한 m3u8 메타 파일 만들기[ffmpeg] 사용 먼저 https://ffmpeg.org/download.html m3u8 메타 파일을 만들수 있는 ffmpeg 프로그램을 다운 받아야 합니다. 이미 빌드가 되어 바로 사용할수 있는 프로그램으로 다운 받겠습니다. 다운을 받고 나면 ffmpeg-3.3.3-win64-static\bin 에 들어가면 위와 같은 파일이 있습니다. 여기서 저희가 사용할것은 ffmpeg.exe 파일입니다. 제가 사용할 파일은 샘플 비디오 파일은 입니다. 윈도우 CMD 커맨더로 ffmpeg 가 있는 폴더로 들어 갑니다. 그리고 명령어로 D:\ffmpeg-3.3.3-win64-static\bin>ffmpeg.exe -i D:\samplevideo.mkv -profile:v b..
FFMPEG 를 이용한 m3u8 참조 사이트 http://egloos.zum.com/muzie/v/7258588 [mpeg ts 파일을 어떻게 만드는지 참조 자료] http://www.bogotobogo.com/VideoStreaming/ffmpeg_http_live_streaming_hls.php [mpeg ts 파일을 어떻게 만드는지 참조 자료] https://www.ffmpeg.org/download.html [ts 로만들어주는 프로그램 ] 직접 샘플 파일과 패킷 분석으로 어떻게 작동 하는지 알아 보도록함. ffmpeg 명령어 분석 준비
LINE Notify 사용하기 https://notify-bot.line.me/my/ 들어가서 로그인 하고 나면 을 눌러서 토큰을 받습니다. 토큰을 만들나고 나면 해당 토큰 값을 복사해 둡니다. 그리고 라인에 선택한 그룹에 LINE Notify 를 멤버로 초대 하여 추가 합니다. 그리고 HTTP post 통신을 하면 메시지를 보낼수 있습니다. 저 같은 경우 테스트 프로그램으로 크롬의 https://chrome.google.com/webstore/detail/restlet-client-rest-api-t/aejoelaoggembcahagimdiliamlcdmfm 을 사용 하였습니다. LINE Notify API 문서 내용을 기반으로 테스트 하였습니다. send 를 하면 라인 메신저에 메세지가 오게 됩니다.
QAudioRoleControl 일단 소스를 보겠습니다. qaudiorolecontrol.h class Q_MULTIMEDIA_EXPORT QAudioRoleControl : public QMediaControl { Q_OBJECT public: virtual ~QAudioRoleControl(); virtual QAudio::Role audioRole() const = 0; virtual void setAudioRole(QAudio::Role role) = 0; virtual QList supportedAudioRoles() const = 0; Q_SIGNALS: void audioRoleChanged(QAudio::Role role); protected: explicit QAudioRoleContro..
QMediaPlayerControl 일단 소스를 보겠습니다. class QMediaPlaylist; class Q_MULTIMEDIA_EXPORT QMediaPlayerControl : public QMediaControl { Q_OBJECT public: ~QMediaPlayerControl(); virtual QMediaPlayer::State state() const = 0; virtual QMediaPlayer::MediaStatus mediaStatus() const = 0; virtual qint64 duration() const = 0; virtual qint64 position() const = 0; virtual void setPosition(qint64 position) = 0; vir..
QMediaServiceProvider 일단 소스를 보겠습니다. class QMediaService; class Q_MULTIMEDIA_EXPORT QMediaServiceProvider : public QObject { Q_OBJECT public: virtual QMediaService* requestService(const QByteArray &type, const QMediaServiceProviderHint &hint = QMediaServiceProviderHint()) = 0; virtual void releaseService(QMediaService *service) = 0; virtual QMediaServiceProviderHint::Features supportedFeatures(co..
QMediaPlayer QMediaPlayer의 기본 구조는 아래 그림 정도가 될것 같습니다. 이제 생성자 소스를 보겠습니다. QMediaPlayer::QMediaPlayer(QObject *parent, QMediaPlayer::Flags flags): QMediaObject(*new QMediaPlayerPrivate, parent, playerService(flags)) { Q_D(QMediaPlayer); d->provider = QMediaServiceProvider::defaultServiceProvider(); if (d->service == 0) { d->error = ServiceMissingError; } else { d->control = qobject_cast(d->service->..