Я выполняю следующую команду.
#!/bin/sh
export DATETIME=`date +%Y%m%d%H%M`
export DATE=`date +%Y%m%d`
export MONT=`date +%Y%m`
mkdir -p /Users/User/Desktop/testFolder
ffmpeg -ss 2 -i rtsp://ip:554/user=myUser&password=myPassword&channel=2&stream=0.sdp?real_stream--rtp-caching=100 -y -f image2 -qscale 0 -frames 1 /Users/User/Desktop/testFolder/sample.jpeg
Однако я получаю следующую ошибку:
строка 7: -y: команда не найдена
И:
[rtsp @ 0x7fd55980da00] метод DESCRIBE не выполнен: 451 ОШИБКА rtsp://ip:554/user=myUser: Сервер вернул ошибку клиента 4XX, но не одну из 40{0,1,3,4}
Что я упускаю? У меня установлен ffmpeg со всеми доступными опциями.
решение1
Я просто хочу включить правильное предположение @rogerdpack в ответ, так как я застрял с той же проблемой, и это помогло.
Вам следует указать URL-адрес, заключенный в кавычки, чтобы он заработал, так как ffmpeg не поддерживает переключатели для спецификации учетных данных и рассматривает его как недействительный URL-адрес. Так что просто используйте так:
ffmpeg -ss 2 -i "rtsp://ip:554/user=myUser&password=myPassword&channel=2&stream=0.sdp?real_stream--rtp-caching=100" -y -f image2 -qscale 0 -frames 1 /Users/User/Desktop/testFolder/sample.jpeg