FFmpeg 推流 AVC1 格式视频
时间: 2023-02-25 09:43:34 浏览: 26
您好!可以使用以下命令推送 AVC1 格式视频:
```
ffmpeg -i input_file.mp4 -c:v libx264 -b:v 1000k -f flv rtmp://your-streaming-server-url/app/stream
```
其中,`-i input_file.mp4` 表示输入文件,`-c:v libx264` 表示使用 H.264 编码,`-b:v 1000k` 表示视频码率为 1000kbps,`-f flv` 表示输出格式为 FLV,`rtmp://your-streaming-server-url/app/stream` 表示目标流媒体服务器的 URL。
请注意,您需要替换 `your-streaming-server-url` 为您的流媒体服务器的 URL。
相关问题
根据你前面的回答,你推流的是ts封装格式,我不需要封装直接用264
确实,H.264编码(也称为MPEG-4 Part 10,简称AVC)可以直接用于实时流媒体,无需额外封装成TS(Transport Stream)。在FFmpeg中,你可以直接使用`-c:v h264`来指定H.264编码,并通过RTP或RTSP发送。例如,如果你想将H.264视频推送到RTSP,可以这样做:
```sh
ffmpeg -i input_video.mp4 \
-c:v h264 -preset veryfast -crf 23 -bufsize 800k \
-payload_type 99 \
-f rtp rtp://your_rtp_server:5000?app=your_app&srtp_out_suite=AES_CM_128_HMAC_SHA1_80&srtp_out_key=<srtp_key>&srtp_out_params=<srtp_params>
```
在这个例子中,`input_video.mp4`是源视频文件,`veryfast`预设保证速度,`23`是CRF值控制码率,`800k`是缓冲区大小。你需要替换`your_rtp_server`等变量与实际配置相符。
阅读全文