録画/録音

マルチメディア ユーザー ガイド (UG1449)

Document ID
UG1449
Release Date
2022-04-21
Revision
1.4 日本語

入力ソースからのビデオを目的のファイル フォーマットに録画するには、次のパイプラインを使用します。

  • ビデオ ストリームのみを録画する場合:
    gst-launch-1.0 v4l2src device=/dev/video0 io-mode=4 ! \
    video/x-raw,format=NV12,width=3840,height=2160,framerate=60/1 ! \
    omxh265enc qp-mode=auto gop-mode=basic gop-length=60 b-frames=0 \
    target-bitrate=60000 num-slices=8 control-rate=constant prefetch-buffer=true \
    low-bandwidth=false filler-data=true cpb-size=1000 initial-delay=500 ! \
    queue ! video/x-h265, profile=main, alignment=au ! mpegtsmux alignment=7 name=mux ! \
    filesink location="/run/media/sda/test.ts"

    この例では、ライブ ソース デバイス リンクは /dev ディレクトリにあります。ビデオのエンコード フォーマットは H265 で、カラー フォーマットは NV12 です。ビデオ ストリームの解像度は 4k 60fps です。録画ファイル test.ts は、SATA ドライブに TS ファイル フォーマットで保存されます。

    注記:
    1. 解像度 1080p@60 の入力ソースの場合、width と height をそれぞれ 1920 と 1080 に置き換えてください。フレーム レートを 30 に変更することもできます。
    2. 入力ストリームを H264 ビデオ フォーマットにエンコードする場合、上記パイプラインの h265 の代わりに h264 を使用してください。
  • ビデオおよびオーディオストリームを録画/録音する場合:

    入力ソースからオーディオを含むビデオを必要なファイル フォーマットに録画するには、次のパイプラインを使用します。

    gst-launch-1.0 v4l2src device=/dev/video0 io-mode=4 ! \
    video/x-raw, format=NV12, width=3840, height=2160, framerate=60/1 ! \
    omxh265enc qp-mode=auto gop-mode=basic gop-length=60 b-frames=0 \
    target-bitrate=60000 num-slices=8 control-rate=constant prefetch-buffer=true \
    low-bandwidth=false filler-data=true cpb-size=1000 initial-delay=500 ! \
    video/x-h265, profile=main, alignment=au ! queue ! mux. alsasrc device=hw:2,1 ! \
    audio/x-raw, format=S24_32LE, rate=48000, channels=2 ! queue ! \
    audioconvert ! audioresample ! faac ! aacparse ! mpegtsmux name=mux ! \
    filesink location="/run/media/sda/test.ts"

    この例では、ビデオとオーディオを 1 つの GStreamer パイプラインを使用してエンコードして 1 つのファイルに録画/録音できます。エンコード後のオーディオ ストリームは AAC です。オーディオ キャプチャ デバイスは hw:2,1 で、録画ファイル test.ts は SATA にあります。ビデオ エンコードのパイプラインは、1 つ前の例と同じです。