我使用FFmpeg 录像,保存为avi文件, 播放该文件存在俩个问题,
一: 播放刚才录像的文件,有时候会出现图像颜色失真,整个播放过程中间会陆续出现这种问题,有时间只出现几秒钟,有时候则会出现很多时间,有时候变的很蓝,有时候变的很红,等等
二: 声音和视频不怎么同步,似乎差了一秒左右,并且有 杂音
求有经验的朋友帮忙,顺便问下
FFmpegVideoParam m_kVideoParam;
FFmpegAudioParam m_kAudioParam;
m_kAudioParam.sampleRate = 44100;
m_kAudioParam.channels = 1;
m_kAudioParam.bitRate = 128000;
m_kAudioParam.audioCodecName = "mp2";
m_kVideoParam.width = 320;
m_kVideoParam.height = 240;
m_kVideoParam.pixelFormat = PIX_FMT_RGB32;
m_kVideoParam.bitRate = 1600000;
m_kVideoParam.frameRate = 24;
m_kVideoParam.videoCodecName = "mpeg1video";
m_kVideoParam.srcWidth = 512;
m_kVideoParam.srcHeight = 512;
这里各个参数具体代表什么意思
------解决方案--------------------------------------------------------
m_kAudioParam.sampleRate = 44100;
m_kAudioParam.channels = 1;
m_kAudioParam.bitRate = 128000;
m_kAudioParam.audioCodecName = "mp2";
m_kVideoParam.width = 320;//视频宽
m_kVideoParam.height = 240;//视频高
m_kVideoParam.pixelFormat = PIX_FMT_RGB32;//视频类型
m_kVideoParam.bitRate = 1600000;//码率
m_kVideoParam.frameRate = 24;//帧率
m_kVideoParam.videoCodecName = "mpeg1video";
m_kVideoParam.srcWidth = 512;
m_kVideoParam.srcHeight = 512;
------解决方案--------------------------------------------------------
先把你的元数据和编码后的数据dump出来,分别分析是哪一个有错误,然后定位是ffmpeg的问题还是你的数据问题