web-dev-qa-db-ja.com

VLCIPカメラストリームを生のH264データに抽出する

VLCからファイルへのストリーミングは初めてですが、インターネットで自分がやろうとしていることを検索していて、関連する情報が見つかりませんでした。私は現在、再生時にビデオファイルをストリーミングするカメラシミュレーターを開発しています(シミュレーションであるため)。

カメラ自体は、RTSP overUDPでH264VGA(640x480)でストリーミングします。

基本的に私がやろうとしているのは、VLCを介して実際のカメラのストリーム(10秒)を保存し、このビデオファイルを後でシミュレーターで使用できるようにすることです。私たちのシミュレーターでは、H264ストリームからのすべてのビデオファイルの拡張子はH264です(例:Stream1.h264)。

ビデオファイルが正しくエンコードされていることを確認するために、MediaInfoを使用してファイルのプロパティを確認していますが、必要なプロパティを取得できないようです。

たとえば、カプセル化メソッドMPEG-TSを試してみたところ、次のプロパティが得られました。

General 
ID : xxxxxxx 
Complete name : xxx 
Format : MPEG-TS 
Format/Info : This information doesn't appear, why?
File size : xx 
Duration : xx 

Format : AVC 
Format/Info : Advanced Video Codec 
Format profile : [email protected] 
Format settings, CABAC : Yes 
Format settings, ReFrames : 4 frames 

しかし、私が探しているプロパティは次のとおりです。

General 
Complete name : xxx 
Format : AVC 
Format/Info : Advanced Video Codec 
File size : xx  

Format : AVC 
Format/Info : Advanced Video Codec 
Format profile : [email protected] 
Format settings, CABAC : No 
Format settings, ReFrames : 1 frame 
2
PRacicot

カプセル化されたファイルから生のH.264ストリームをいつでも抽出できます。 MP4にカプセル化することをお勧めします。その後、 MP4Box を使用して次のことを実行できます。

mp4box -raw 1 video.mp4

これにより、ファイルvideo_track1.h264が作成されます。これは、仕様に一致する必要があります。私が持っていた1つのファイルでこれを試しましたが、これが私の結果でした–それがあなたが探しているavc1表現だと思います。

一般
完全な名前:xxx 
形式: AVC
フォーマット/情報: 高度なビデオコーデック
ファイルサイズ:... 
 
ビデオ
フォーマット:AVC 
フォーマット/情報:高度なビデオコーデック
フォーマットプロファイル: [email protected] 
フォーマット設定、CABAC:はい
フォーマット設定、ReFrames:5フレーム
1
slhck

OpenRTSP(RTSPメディアストリームを記録するコマンドラインプログラム)プログラムを使用して、RTSPストリーミングパケットをローカルフォルダーに保存できます。このプログラムは、ソースからRAWストリームをダウンロードするのに役立ちます。

たとえば、カメラからストリームを取得してローカルフォルダーに記録するサンプルコマンドを指定します。/openRTSP.exertsp://:554/h264/video.sdp?camera = 1

注:上記のコマンドは、ストリームを.264ファイルに保存します。

ソース: http://www.live555.com/openRTSP/

0