大师兄:
1、用ffplay -f alsa -i hw:0,0 直接播放没有延迟。
2、推流:ffmpeg -f alsa -channel_layout stereo -i hw:0,0 -codec copy -vn -f ADTS udp://192.168.73.168:1234
拉流:ffplay udp://192.168.73.168:1234报错“udp://192.168.73.168:1234: Invalid data found when processing input”
3、推流时转编码aac
ffmpeg -f alsa -channel_layout stereo -i hw:0,0 -codec aac -b:a 32k -vn -f ADTS udp://192.168.73.168:1234
ffplay可以拉流播放,但延迟超过1.5秒
4、推流时再增加-ac 1
ffmpeg -f alsa -channel_layout stereo -i hw:0,0 -codec aac -ac 1 -b:a 32k -vn -f ADTS udp://192.168.73.168:1234
竟然没有延迟了!?
5、同样的思路用rtmp推:
ffmpeg -f alsa -i hw:0,0 -acodec aac -ar 8000 -ac 1 -b:a 32k -f flv rtmp://192.168.73.168:1935/live/abc
ffplay拉流报错:“SDL_OpenAudio (1 channels, 8000 Hz): ALSA: Couldn't set audio channels
No more combinations to try, audio open failed
Failed to open file 'rtmp://192.168.73.168:1935/live/aba live=1' or configure filtergraph”
不知道什么原因,rtmp不能识别单声道,所以无法测试延迟是否真的跟单双声道有关。。。 |