태그 보관물: video-streaming

video-streaming

ffmpeg로 webrtc와 같은 대기 시간을 얻으십니까? -fflags nobuffer udp://10.0.0.55:9002 그리고 다른 쪽에서는 ffplay를

Chrome과 휴대 전화간에이 기능을 사용하고 있습니다.

http://www.webrtc.org/demo

그리고 대기 시간은 실제로 1 초 미만입니다.

나는 내 컴퓨터에서 그것을 성공적으로 복제하려고 노력했습니다.

ffmpeg -f video4linux2 -i /dev/video0  -s 320x200 -r 50 -deadline realtime -vcodec libvpx -f webm -fflags nobuffer udp://10.0.0.55:9002

그리고 다른 쪽에서는 ffplay를 사용합니다.

여전히 몇 초의 지연이 있습니다.

결국 내 컴퓨터에서 Android 전화로 스트리밍하고 싶지만 지연 시간은 좋아야합니다.

편집 -이것은 훨씬 잘 작동합니다. 이 부분을 조금만 면도 할 수 있다면 기쁠 것입니다.

ffmpeg -vcodec rawvideo -f video4linux2 -i /dev/video0  -s 320x200 -r 25 -vcodec libvpx -f rtp -deadline realtime rtp://10.0.0.55:9002



답변

문제는 하드웨어 트랜스 코딩 대신 소프트웨어 트랜스 코딩을 사용한다는 사실에 기인합니다 .

일반적으로 변환에서 하드웨어 가속을 사용하는 경우 대기 시간은 1 초 미만 (보통 밀리 초)입니다. 소프트웨어에서 수행되는 경우 대기 시간은 1 초 이상입니다.

FFmpeg는 하드웨어 가속을 지원하지만 일반적으로 작동하도록하기가 까다 롭습니다.

https://trac.ffmpeg.org/wiki/HWAccelIntro

반면에 Chrome은 컴퓨터와 Android 휴대 전화에서 모두 VP8 및 H264 (사용 가능한 경우) 하드웨어 인코딩 / 디코딩을 지원합니다.

http://code.google.com/p/chromium/issues/detail?id=428223


답변