我正在尝试编写一个服务器,该服务器将接收传入的RTMP视频并将其转码为HLS以进行实时流传输。我在服务器上使用ffmpeg进行转码。这是我正在运行的ffmpeg命令:
$recommendationQuery = DB::table('users')
->select('username')
->where('id', '!=', Auth::id()) // Can't be the current Auth User Details
->where('age', '=' , Auth::user()->recommendationAge) // This is a required where clause for all statements
->where('location', '=', Auth::user()->recommendationLocation) // This is a required where clause for all statements
->where(function ($query) {
$query->where('religion', '=', Auth::user()->recommendationReligion)
->orWhere('variable1', '=', Auth::user()->recommendationVariable1)
->orWhere('variable2', '=', Auth::user()->recommendationVariable2)
->orWhere('age', '=', Auth::user()->recommendationAge)
->orWhere('location', '=', Auth::user()->recommendationLocation)
->orWhere('country', '=', Auth::user()->recommendationCountry)
->orWhere('hairColor', '=', Auth::user()->recommendationHairColor)
})
->get();
我确信这是ffmpeg用于转码的正确用法,因为我了解了here。
当我运行服务器并尝试使用OBS(开放式广播软件)连接到服务器时,我从OBS收到一条错误消息,提示连接服务器失败。我从ffmpeg收到此错误:
RTMP_Connect0,无法连接套接字。 111(连接被拒绝) rtmp://127.0.0.1:1935 / test:发生未知错误
这里是应用程序之间发送的数据包的捕获。
编辑:当我从ffmpeg命令和OBS设置窗口中的网址中删除ffmpeg -i rtmp://127.0.0.1:1935/test -c:v libx264 -x264opts keyint=120:no-scenecut -s 1280x720 -r 60 -b:v 5M -profile:v main -preset veryfast -c:a libfdk_aac -sws_flags bilinear -hls_list_size 6 output.m3u8
时,得到以下信息: