2017-03-02 42 views
4

Viberは最近「ビデオプッシュツートーク」(vptt)と呼ばれる「インスタントビデオメッセージ」オプションを手に入れました。RTPDUMPビデオファイルをmp4に変換する方法

ディレクトリ "vptt"のviberデータの中には、vptt拡張子を持つファイルがあります。エンベロープ形式は古典的なZIPファイルで、抽出するとjpgサムネイルと 'ビデオ'ファイルが得られます。

動画ファイルは、最初の行内部の「#!rtpplay1.0」と言うので、... rtp-toolsのフォーマット、あまりにwiresharkのことで使用され、何らかの形で実際のWebRTCの動向に関連する必要があります

その場合は、映像コンテンツの内部このrtpdumpファイルは暗号化されていません(?)、「viberインスタントメッセージプッシュトークビデオを保存する方法」は「rtpdumpビデオをmp4に変換する方法」です。

rtpplayはいくつかのポートに送信できますが、ffmpeg/ffplay/vlcには正しいsdpファイルが必要です。

誰かがこれについてさらに知っていますか?

答えて

1

rtpdumpファイルはrtpplayFFmpegを使用してmp4に変換できます。例えば

、のは、これらのファイルを考えてみましょう:

はそれらを分析します

$ rtpdump -Fascii -f narwhals-audio.rtpdump | head -n 1 
     0.000000 RTP len=15 from=0.0.0.0:0 v=2 p=0 x=0 cc=0 m=1 pt=97 (????,0,0) seq=1679 ts=249986024 ssrc=0xf944ac63 
$ rtpdump -Fascii -f narwhals-audio.rtpdump | tail -n 1 
     65.570000 RTP len=15 from=0.0.0.0:0 v=2 p=0 x=0 cc=0 m=1 pt=97 (????,0,0) seq=4959 ts=253134824 ssrc=0xf944ac63 

Analyis結果:

Audio sample rate = (253134824 - 249986024)/(65.57 - 0) ~= 48000 
Audio codec: probably opus 
Audio payload type: 97 

Video sample rate: 90000 
Video codec : probably VP8 
Video payload type: 96 

コーデック名は、すべての推測/投資/すべてを試す必要があります。

のは、オーディオ用のビデオと4848のポート4646を割り当て、いくつかのSDPファイルを作成してみましょう:

v=0 
c=IN IP4 127.0.0.1 
m=video 4646 RTP/AVP 96 
a=rtpmap:96 VP8/90000 
m=audio 4848 RTP/AVP 97 
a=rtpmap:97 opus/48000 

さんはその後、MP4ファイルに保存するSDPによると、これらのポートをリッスンするようにFFmpegを開始するには、コマンドラインを準備してみましょう:

ffmpeg -v warning -protocol_whitelist file,udp,rtp -f sdp -i narwhals.sdp -copyts -c copy -y narwhals.mkv 

FFmpegは、パケットを受信できなかったので10秒後に終了するので、まだコマンドラインを起動しないでください。

その後、別のコンソール]タブで、rtpplayコマンドラインを準備します

rtpplay -T -f narwhals-video.rtpdump 127.0.0.1/4646 & rtpplay -T -f narwhals-audio.rtpdump 127.0.0.1/4848 

もまだそれを起動しないでください。同時に起動する必要があるのは2つです。

すぐに、準備されたFFmpegコマンドラインを起動し、次にrtpplayを起動します。 rtpplaysが終了するまで待ちます(約1分)。 FFmpegはタイムアウトしてファイルが完成します。

mkvファイルはMP4に変換される可能性がありますが、MP4ではVP8がサポートされていないため、トランスコードが必要です。トランスコードはFFmpegでも行うことができます。

残念ながら、オーディオ/ビデオ同期が問題となる可能性があります。これはFFmpegトリッキーを使用しても解決できます。またはSDPのサンプルレートをVP8/95000のように調整することによって調整できます。

関連する問題