社区
多媒体/流媒体开发
帖子详情
Linux下调用ffmpeg库录像问题
wenzheng101
2011-11-22 05:01:38
我调用ffmpeg的库,将h264码流录制成avi文件。但是录出来的文件用播放器播放时,大约在11~12秒左右就会出现模糊,然后又恢复正常,并且这个现象是周期性的,请问大家这是什么原因造成的?
...全文
422
13
打赏
收藏
Linux下调用ffmpeg库录像问题
我调用ffmpeg的库,将h264码流录制成avi文件。但是录出来的文件用播放器播放时,大约在11~12秒左右就会出现模糊,然后又恢复正常,并且这个现象是周期性的,请问大家这是什么原因造成的?
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wenzheng101
2011-12-20
打赏
举报
回复
问题找到,是encoder的问题,编码的数据有丢帧现象。
junbo_wu33
2011-12-16
打赏
举报
回复
你可以使用ffmpeg或者其他工具把你录制的码率剥离出来,看看h264的raw stream播放是否正常。确定问题出在encoder or muxer?
ffmpeg -i inputfile -vcodec copy -an outputfile
此处outputfile你可以写成 *.h264
wenzheng101
2011-11-29
打赏
举报
回复
贴一下代码:
static void write_video_frame(AVFormatContext *oc, AVStream *st)
{
unsigned long ulAddr = 0;
int out_size = 0;
int IsKey = 0;
int ret = 0;
static double InvCnt = 0;
AVCodecContext *c;
c = st->codec;
/* encode the image */
ret = GetVideoInterface( &ulAddr , &out_size, &IsKey, 0);
if(ret != 0)
return;
c->coded_frame->key_frame = IsKey;
if (out_size > 0) {
AVPacket pkt;
av_init_packet(&pkt);
pkt.pts= av_rescale_q(c->coded_frame->pts, c->time_base, st->time_base);
if(c->coded_frame->key_frame)
pkt.flags |= PKT_FLAG_KEY;
pkt.stream_index= st->index;
pkt.data= (uint8_t *)ulAddr;//video_outbuf;
pkt.size= out_size;
st->pts.val = InvCnt ;
InvCnt++;
ret = av_write_frame(oc, &pkt);
} else {
ret = 0;
}
if (ret != 0) {
exit(1);
}
}
wenzheng101
2011-11-29
打赏
举报
回复
高手顶一下啊,求救求救
mountqi
2011-11-28
打赏
举报
回复
是不是你的cpu不够快,导致编码跟不上视频采集的速度? x264还是很耗cpu的。
找个快点的pc试试
wenzheng101
2011-11-28
打赏
举报
回复
不是的,cpu占用率10%都没到。
CyberLogix
2011-11-24
打赏
举报
回复
录制成avi文件没有经过再编码过程吧,那就是MUX的问题了
wenzheng101
2011-11-24
打赏
举报
回复
还有,我发现,如果是有运动物体的话,模糊一般发生在运动物体附近;如果是静止场景的话,有时会整个图像灰一下。
wenzheng101
2011-11-24
打赏
举报
回复
MUX的问题,请大侠说得再详细些吧。
wenzheng101
2011-11-23
打赏
举报
回复
懂ffmpeg的高手帮帮忙啊,给点意见嘛。。。。
dancingmokey
2011-11-23
打赏
举报
回复
帮顶~~~
最近在做嵌入式linux下的流媒体传输
头大~~~
wenzheng101
2011-11-22
打赏
举报
回复
没有丢帧,我调试过。应该是录像的问题吧。。。有时候是整个图像灰掉,有时是部分模糊。
kkkkksn
2011-11-22
打赏
举报
回复
出现模糊,可能是丢帧了吧,是怎么样的模糊,整个图像模糊黑掉还是有运动物体部分模糊?
在mini2440上移植使用
ffmpeg
录像
最近想在板子上插个摄像头,录个像,搞了两三天,算是能用人家的
ffmpeg
程序在自己的板子上摄像,然后将文件.avi格式保存到PC机上了。过程有些曲折,但是也算乱撞了。 (1)编译x264 官网上下了个最新的x264,地址http://www.videolan.
linux
c++程序打包为.so java,
LINUX
(CentOS)下JAVA
调用
C++ SO
库
实现
录像
功能,SO
库
封装
FFmpeg
...
1.首先获取
FFmpeg
,并编译1.1git clone https://git.
ffmpeg
.org/
ffmpeg
.git
ffmpeg
进入
ffmpeg
目录:cd
ffmpeg
1.2编译三部曲:./configure --extra-cflags="-O3 -fPIC" --enable-pic --disable-static --enable-sharedmake -j4make insta...
linux
下
ffmpeg
库
ARM交叉编译
一、前言: 因为想用
ffmpeg
实现
录像
网络视频流功能,所以需要编译
ffmpeg
相关
库
,不过目前对视频方面很多知识还是小白,后续会写一些关于视频方面知识的文章 二、准备工作 1、
ffmpeg
源码地址:http://
ffmpeg
.org 作者目前版本是
ffmpeg
-3.0.2 2、编译器:arm-none-lin
FFMPEG
在Windows下的屏幕
录像
录音
ffmpeg
在
Linux
下用X11grab进行屏幕
录像
,在Windows下用DirectShow滤镜 首先需要安装一个软件,screen capture recorder 编译好的下载地址是: http://sourceforge.net/projects/screencapturer/files/ 源码地址是: https://github.com/rdp/screen-capt
海康SDK+
FFmpeg
自动化运维:用Java实现NVR
录像
定时下载与智能转码
本文详细介绍了如何利用Java技术栈结合海康SDK和
FFmpeg
实现NVR
录像
的定时下载与智能转码。通过SpringBoot任务调度、海康SDK深度集成以及
FFmpeg
转码优化,构建了一套高效、可靠的自动化运维方案,显著提升安防监控系统的数据处理效率和管理便捷性。
多媒体/流媒体开发
2,554
社区成员
20,277
社区内容
发帖
与我相关
我的任务
多媒体/流媒体开发
专题开发/技术/项目 多媒体/流媒体开发
复制链接
扫一扫
分享
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章