GeekHub

【笔记】RTMP推流相关

RTSP流转推RTMP服务器:

ffmpeg -i rtsp://admin:12345@127.0.0.1:554/h264/ch33/main/av_stream -vcodec copy -acodec copy -f flv rtmp://rtmp_server_ip:1935/live/ch0

查看系统麦克风设备:

cat /proc/asound/cards

将麦克风音频编码为RTMP并推送RTMP服务器:

ffmpeg -f alsa -ar 22050 -ac 2 -i hw:0,0 -f flv rtmp://rtmp_server_ip:1935/live/ch1

经过简单的摸索,大致得知其中几个参数的含义:

-f alsa 表示使用ALSA(Advanced Linux Sound Architecture)访问输入设备

-ar 22050 表示audio rate为22050,即音频采样率为22050

-ac 2 表示audio channel为2,即两声道

-i hw:0,0 表示输入设备为hw:0,0,具体的设备号可以通过cat /proc/asound/pcm进行查看,其中hw表示直接从硬件编码,对应的还有plughw,表示经过采样率和格式转换

-f flv表示输出类型,这里是rtmp协议对应的flv格式

从RTMP服务器无buffer拉流:

ffplay "rtmp://rtmp_server_ip:1935/live/ch1" -fflags nobuffer

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注