Chapter 5. Mux/demux Examples
이 섹션에서는 가장 일반적으로 사용되는 mux와 demux 플러그인과 각 플러그인을 올바르게 사용하는 방법에 대한 몇 가지 예제를 보여준다.
5.1. Mux Plugins
5.1.1. qtmux
이 유형의 muxer는 비디오와(또는) 오디오를 QuickTime (.mov) 파일로 변환한다.
$ gst-launch-1.0 v4l2src num-buffers=500 ! video/x-raw,width=320,height=240 ! \
videoconvert ! qtmux ! filesink location=video.mov
위의 파이프라인은 카메라 비디오를 .mov 파일에 기록한다.
5.1.2. matroskamux
이 유형의 muxer는 비디오와(또는) 오디오를 Matroska (.MKV) 파일로 변환한다.
$ gst-launch-1.0 filesrc location=<AUDIO_FILE>.mp3 ! \
mpegaudioparse ! matroskamux ! filesink location=test.mkv
위의 파이프라인은 MP3 파일을 MKV 파일로 muxing한다.
5.1.3. mp4mux
이 유형의 muxer는 비디오와(또는) 오디오를 ISO MPEG-4 (.mp4) 파일로 변환한다.
$ gst-launch-1.0 v4l2src num-buffers=50 ! queue ! vpudec ! mp4mux ! filesink location=video.mp4
위의 파이프라인은 v4l2 디바이스에서 비디오를 입력 받고 H.264 형식으로 인코딩하고 .mp4 파일로 muxing하여 녹화하는 프로세스를 보여준다.
5.1.4. flvmux
이 유형의 muxer는 비디오와(또는) 오디오를 flash video (.FLV) 파일로 변환한다.
$ gst-launch-1.0 filesrc location=<AUDIO_FILE>.mp3 ! decodebin ! queue ! \
flvmux name=mux ! filesink location=test.flv \
filesrc location=<VIDEO_FILE>.mp4 ! decodebin ! queue ! mux.
위의 파이프라인은 비디오와 오디오파일을 .FLV로 디코딩한다.
5.1.5. avimux
이 유형의 muxer는 비디오와(또는) 오디오를 .AVI 파일로 변환한다.
$ gst-launch-1.0 videotestsrc num-buffers=300 ! \
'video/x-raw,format=I420,width=640,height=480,framerate=30/1' \
avimux ! filesink location=test.avi
5.2. Demux Plugins
5.2.1. aiurdemux
이 유형의 demuxer는 파일 인코딩을 자동으로 감지해서 파싱되지 않은 로우(raw) 파일로 변환하는 NXP 독점 플러그인이다.
$ gst-launch-1.0 filesrc location=<VIDEO_FILE>.mp4 ! video/quicktime ! \
aiurdemux ! queue max-size-time=0 ! vpudec ! autovideosink
5.2.2. qtdemux
이 유형의 demuxer는 .mov 파일을 파싱되지 않은 로우(raw) 파일로 변환한다.
$ gst-launch-1.0 filesrc location=<VIDEO_FILE>.mov ! qtdemux name=demux \
demux.audio_0 ! queue ! decodebin ! audioconvert ! audioresample ! autoaudiosink \
demux.video_0 ! queue ! decodebin ! videoconvert ! videoscale ! autovideosink
5.2.3. matroskademux
이 유형의 demuxer는 .mkv 파일을 파싱되지 않은 로우(raw) 파일로 변환한다.
$ gst-launch-1.0 filesrc location=<VIDEO_FILE>.mkv ! matroskademux ! \
vorbisdec ! audioconvert ! audioresample ! autoaudiosink
5.2.4. flvdemux
이 유형의 demuxer는 .flv 파일을 파싱되지 않은 로우(raw) 파일로 변환한다.
$ gst-launch-1.0 filesrc location=<VIDEO_FILE>.flv ! flvdemux ! \
audioconvert ! autoaudiosink
5.2.5. avidemux
이 유형의 demuxer는 .avi 파일을 파싱되지 않은 로우(raw) 파일로 변환한다.
$ gst-launch-1.0 filesrc location=<VIDEO_FILE>.avi ! avidemux name=demux \
demux.audio_0 ! decodebin ! audioconvert ! audioresample ! autoaudiosink \
demux.video_0 ! decodebin ! videoconvert ! videoscale ! autovideosink
'NXP i.MX SoC Family > i.MX 8 GStreamer User Guide' 카테고리의 다른 글
i.MX 8 GStreamer User Guide - Audio Examples (0) | 2022.04.20 |
---|---|
i.MX 8 GStreamer User Guide - Camera Examples (0) | 2022.04.20 |
i.MX 8 GStreamer User Guide - Encode Examples (0) | 2022.04.20 |
i.MX 8 GStreamer User Guide - Decode Examples (0) | 2022.04.18 |
i.MX 8 GStreamer User Guide - GStreamer-1.0 Plugin Reference (0) | 2022.04.18 |