9

そのため、私はFFMPEGを使用して、RTPを使用してインターネットを介してあるコンピューターから別のコンピューターにビデオをストリーミングするプロジェクトに取り組んでいます。それをffmpegに取り込んで、ffserverを使用してローカルネットワークに表示したいと思います。

私が理解しているように、受信側のffmpegインスタンスがRTPストリームを解釈できるように、SDP情報が必要です。ウェブページに書かれていることにもかかわらず、コンソールに印刷された情報にSDP情報が見つかりません。

送信側のffmpegインスタンスにSDP情報を強制的に出力させて、受信側を構成できるようにするにはどうすればよいですか?

現在、私はWindows 7でテストしていますが、最終的な解決策はLinuxで行われます。

私がテストのために実行しているコマンドは

ffmpeg -fflags +genpts -i files\2005-SFSD-sample-mpeg1.mpg -threads 0 -r 10 -g 45
-s 352x240 -deinterlace -y 2005.mp4 -an -threads 0 -r 10 -g 45 -s 352x240 
-deinterlace -f rtp rtp://192.168.200.198:9008

私のffmpeg情報は...

ffmpeg version 0.8, Copyright (c) 2000-2011 the FFmpeg developers built on Jun 23 2011 14:22:23 with gcc 4.5.3 
configuration: 
--disable-static  
--enable-shared 
--enable-gpl  
--enable-version3 
--enable-memalign-hack  
--enable-runtime-cpudetect 
--enable-avisynth 
--enable-bzlib 
--enable-frei0r 
--enable-libopencore-amrnb 
--enable-libopencore-amrwb 
--enable-libfreetype 
--enable-libgsm 
--enable-libmp3lame 
--enable-libopenjpeg 
--enable-librtmp 
--enable-libschroedinger 
--enable-libspeex 
--enable-libtheora 
--enable-libvorbis 
--enable-libvpx 
--enable-libx264 
--enable-libxavs 
--enable-libxvid 
--enable-zlib 
--disable-outdev=sdl 
  libavutil    51.  9. 1 / 51.  9. 1 
  libavcodec   53.  7. 0 / 53.  7. 0 
  libavformat  53.  4. 0 / 53.  4. 0 
  libavdevice  53.  1. 1 / 53.  1. 1 
  libavfilter   2. 23. 0 /  2. 23. 0 
  libswscale    2.  0. 0 /  2.  0. 0 
  libpostproc  51.  2. 0 / 51.  2. 0 
4

4 に答える 4

5

https://stackoverflow.com/a/16469378/2097284.sdpでは、ファイルの作成方法と、それを に渡す方法について詳しく説明していますffplay

于 2013-05-09T19:45:35.340 に答える
3

誰かがffmpeg Cコードでこれを行う方法を探していた場合に備えて、sdp文字列av_sdp_createを生成するために使用できます

于 2016-11-20T13:21:54.670 に答える
1

通常、出力が 1 つの rtp ストリームである場合、ffmpeg はコンソールに sdp 情報を出力するため、リダイレクトするだけです (その後、 sdp を使用します)。

ffmpeg -fflags +genpts -i files\2005-SFSD-sample-mpeg1.mpg  -an -threads 0 -r 10 -g 45 -s 352x240 -deinterlace -f rtp rtp://192.168.200.198:9008 > config.sdp

しかし、あなたのコマンドから、2つの出力に対して1つのエンコードを行いたいようです...2つの出力がrtp(ビデオ+オーディオに役立つ)の場合、正常に動作しますが、1つの出力がrtpの場合、sdpを印刷できませんでしたそして他のmp4 ...可能かどうかわからない

とにかく、できることは、初めてsdpファイルを生成することです。ビデオの特性(解像度形式...)またはrtpアドレスを変更しない限り、このsdpファイルは有効であり、以前のコマンドはそれを使用してください!!

お役に立てれば

于 2012-04-06T16:14:37.727 に答える