rtpdump-Dateien können unter Verwendung von rtpplay
und FFmpeg
in mp4 konvertiert werden.
Zum Beispiel, lassen Sie uns diese Dateien betrachten:
Analysieren sie:
$ 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 Ergebnisse:
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
Codec-Namen erfordern möglicherweise einige Ratespiele/Investitionen/nur alle versuchen.
Hafen 4646 für die Video- und 4848 für Audio zuordnen lassen und eine SDP-Datei erstellen:
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
Lassen Sie sich dann eine Befehlszeile vorbereiten FFmpeg zu starten, die diese Ports nach SDP speichern zu MP4-Datei hören:
FFmpeg beendet sich nach 10 Sekunden, wenn kein Paket empfangen werden kann. Starten Sie diese Befehlszeile also noch nicht.
Dann in einer anderen Konsole Registerkarte rtpplay Befehlszeilen vorbereiten:
rtpplay -T -f narwhals-video.rtpdump 127.0.0.1/4646 & rtpplay -T -f narwhals-audio.rtpdump 127.0.0.1/4848
auch nicht anfangen, es noch nicht. Beachten Sie, dass es zwei rtpplay
s gibt, die gleichzeitig gestartet werden sollten.
Jetzt starten Sie in schneller Abfolge die vorbereitete FFmpeg-Befehlszeile, dann die rtpplay
s. Warten Sie, bis rtpplays fertig sind (ungefähr eine Minute). FFmpeg sollte dann eine Zeitüberschreitung haben und Ihre Datei ist fertig.
Die mkv-Datei kann in MP4 konvertiert werden, erfordert jedoch Transcodierung, da VP8 in MP4 nicht unterstützt wird. Die Transcodierung kann auch mit FFmpeg erfolgen.
Leider kann Audio/Video-Synchronisierung ein Problem sein, das auch mit FFmpeg Trickery behoben werden kann; oder indem Sie die Abtastrate in SDP wie VP8/95000
anpassen.