我在Red5 v1.0.2中录制的视频有问题(我以前的 v1 有问题,它没有录制任何视频,1.0.2 可以工作)。当我录制flv时,我想将其转换为一些mp4。但是我的设置有问题,因为每次质量/音频同步都有问题。你能帮我如何使用ffmpeg进行转换(将来在服务器上自动处理)。
第二个问题是,在闪存客户端缓冲区长度始终为0,但在v0.8中它已被填充,最后我一直等到空,这里我不确定我应该等待多长时间。我创建了这个网址http://code.google.com/p/red5/issues/detail?id=312他们说要等到我得到UnPublish.Success,但是我在 ns.close() 之后才得到那个事件
我的 Flash 客户端记录设置是 (FP10):
视频:
- 分辨率 = 640x360
- 帧数 = 30
- 关键帧间隔 = 15
- 视频质量 = 90
- 带宽 = 0
声音的:
- 麦克风编解码器 = SPEEX
- 编码质量 = 9
静音级别 = 0
缓冲时间 = 15
在 VLC 中录制的视频参数(从捷克语翻译成英语):
视频
- 编解码器:Flash 视频 (FLV1)
- 分辨率:640x360
- 格式:平面 4:2:0 YUV
声音的
- 编解码器:Speex 音频 (spx)
- 频率:16000Hz
- 每个样本的位数:16
- 数据流:16 kb/s
关于视频的FFMEPG信息:
Metadata:
server : Red5 Server 1.0.2 Rev: 4616
creationdate : Mon Sep 02 23:17:08 CEST 2013
canSeekToEnd : true
Duration: 00:00:33.24, start: 0.000000, bitrate: 645 kb/s
Stream #0:0: Video: flv1, yuv420p, 640x360, 625 kb/s, 1k tbr, 1k tbn, 1k tbc
Stream #0:1: Audio: speex, 16000 Hz, mono, s16, 16 kb/s
bsplayer 显示 25fps - 但我录制了 30fps,我不太了解这一点。
我对 ffmpeg 的尝试(我是 ffmpeg 新手)。
首先我录制了 33 秒长的视频
当我用 command: 转换音频时ffmpeg -i test.flv -ar 44100 -ab 160k -ac 1 output.mp3
,音频只有 30 秒
我试过这个命令,但没有一个很好的解决方案
ffmpeg -i test.flv -vcodec mpeg4 -acodec libvo_aacenc output.mp4
ffmpeg -i test.flv -acodec libvo_aacenc -aq 200 outputsss.mp4
ffmpeg -i test.flv -c:v libvpx -c:a libvorbis output.webm // here is sound synced good - but sound have repeating silence lags (every 1-2s)
真的很感谢你的帮助,我很多天都在与转换作斗争:(