나는 Raspberry Pi 카메라를 사용하여 비디오를 YouTube로 라이브 스트리밍하고 인터넷 연결이 끊어지는 경우 백업을 위해 SD 카드에 비디오를 저장하도록 Raspberry Pi를 설정하려고합니다. 저는 Alex Ellis의 가이드 를 사용 하여 설정했습니다. 기본적으로 누구나 다운로드하고 설정할 수있는 도커 이미지입니다. 그는 YouTube에 라이브 스트림을 설정하지만 비디오를 오프라인으로 저장하지 않습니다.
그래서 저는 그의 코드를 수정했고 그가 FFmpeg를 사용하여 YouTube로 스트리밍한다는 것을 발견했습니다. 다음 줄은 기본적으로 스트리밍 방법의 핵심입니다.
raspivid -o - -t 0 -w 1920 -h 1080 -fps 40 -b 8000000 -g 40 | ffmpeg -re -ar 44100 -ac 2 -acodec pcm_s16le -f s16le -ac 2 -i /dev/zero -f h264 -i pipe:0 -c:v copy -c:a aac -ab 128k -g 40 -strict experimental -f flv -r 30 rtmp://a.rtmp.youtube.com/live2/$1
나는 FFmpeg에 대해 읽었고 분명히이 스트림을 내 SD 카드에 저장하려면이 코드의 끝에 비디오를 저장할 디렉토리를 추가하기 만하면됩니다. 줄 끝에서 이렇게 수정했습니다.
raspivid -o - -t 0 -w 1920 -h 1080 -fps 40 -b 8000000 -g 40 | ffmpeg -re -ar 44100 -ac 2 -acodec pcm_s16le -f s16le -ac 2 -i /dev/zero -f h264 -i pipe:0 -c:v copy -c:a aac -ab 128k -g 40 -strict experimental -f flv -r 30 rtmp://a.rtmp.youtube.com/live2/$1 /home/pi/Desktop/my_video.mp4
그러나 이것을 실행했을 때 터미널에서 다음 오류가 발생했습니다.
/home/pi/Desktop/my_video.mp4: No such file or directory
그러나이 경로는 기본적으로 모든 Raspberry Pi에 확실히 존재합니다. 여기에서 무엇이 잘못되었는지 잘 모르겠습니다. 누군가 나를 도와 줄 수 있습니까?
추신 : 추가 부수 질문으로 FFmpeg에 대한 문서를 읽었으며 라이브 입력 소스를 사용할 때 -re 인수를 사용하지 말라고 구체적으로 말했지만 Alex는 어쨌든 그것을 사용합니다. 다른 것으로 대체해야합니까? 그래도 지금은 잘 작동합니다.
티 muxer 사용 :
raspivid -o - -t 0 -w 1920 -h 1080 -fps 40 -b 8000000 -g 40 | ffmpeg -i - -re -f lavfi -i anullsrc -map 0 -map 1 -c:v copy -c:a aac -f tee "[f=flv]rtmp://a.rtmp.youtube.com/live2/<stream key>|/home/pi/Desktop/my_video.mp4"
추신 : 추가 부수 질문으로 FFmpeg에 대한 문서를 읽었으며 라이브 입력 소스를 사용할 때 -re 인수를 사용하지 말라고 구체적으로 말했지만 Alex는 어쨌든 그것을 사용합니다. 다른 것으로 대체해야합니까? 그래도 지금은 잘 작동합니다.
-re
라이브 입력 에는 사용하지 마십시오 .-strict experimental
당신 ffmpeg
이 아주 오래 되지 않는 한 필요하지 않습니다 ./dev/zero
.-c:v copy
( 스트림 복사 )입니다. 이들은 상호 배타적이므로 비디오 인코딩 옵션이 무시됩니다.
-c:v copy
와 사용을 고려 -c:v h264_omx
하여이 경우 대신 ffmpeg
으로 구성되었다 --enable-omx-rpi
.fps
에서 raspivid
변경하는 대신 에서 원하는대로 설정하십시오 ffmpeg
.보다:
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다