ffmpeg视频剪切时长不正确

ffmpeg视频剪切时长不正确,第1张

在windows下使用ffmpeg以下命令剪切视频时,发现剪切后的时长都会比设置的时长长

ffmpeg -ss 00:10 -t 30 -i 0mp4 -c copy 2mp4

以上的命令是从10s开始剪30s时长的视频,不过实际出来的时长32s左右

-c copy就是没有重新编码,直接裁剪视频,这样会出现一个问题:如果不重编码的分割视频,就需要对准视频的关键帧分割,比如视频的关键帧在8s处,而你是从10s开始分割,分割就会调整在8s处,这样剪切出来的视频就会比想要的长了

目前我的解决方法就是重新编码视频,去掉-c copy就行了,不过重新编码有点耗时间。有其他的解决方法欢迎指出。

C语言编写?windows系统下的还是linux系统下的?

不管有多简单,没有几千行代码是无法实现的。

首先你要会在屏幕上显示图形,这个是显示视频时需要的,显示是最终结果,过程是解码MP4格式的文件,从中获取每一帧的图像数据,并将这些数据显示在屏幕上。

其次,你要会让音频设备播放音频,视频中有声音的,需要播放。音频也要从mp4格式文件中解码出来,用C语言控制音频设备,将解码出来的音频数据输出至音频设备。

总之,用C语言实现这些需要很多精力的,因为这需要与底层打交道,与硬件打交道。

有一款开源的播放器,它叫MPlayer,可以播放很多格式的视频,包括mp4,有兴趣的话,可以解剖它的源代码,修改成你想要的代码,编译成你想要的播放器。

C语言的常用库函数

函数1。absread()读磁盘绝对扇区函数

函数2。abswrite()写磁盘绝对扇区函数

函数3。atof()将字符串转换成浮点数的函数

函数4。atoi()将字符串转换成整型数的函数

函数5。atol()将字符串转换成长整型数的函数

函数6。bcd()把一个数转换成对应的BCD码的函数

函数7。bdos()

函数8。biosdisk()调用BIOS磁盘驱动程序函数

函数9。biosprint()调用BIOS打印机I/O接口的函数

函数10。calloc()分配内存函数

函数11。ceil()

函数12。cgets()读字符串函数

函数13。chdir()改变当前目录的函数

函数14。_chmod()改变文件存取权限的函数

函数15。chmod()改变文件存取权限的函数

函数16。clock()

函数17。close()关闭文件函数

函数18。closegraph()关闭图形函数

函数19。cos()

函数20。ctrlbrk()设置ctrl-break处理程序的函数

函数21。delay()暂停函数

函数22。disable()屏蔽中断的宏

函数23。enable()开硬件中断的宏

函数24。exec()加载并运行其它程序的函数族

函数25。farcalloc()从远堆中分配内存的函数

函数26。farfree()从远堆中释放一块已分配内存的函数

函数27。farmalloc()从远堆中分配内存的函数

函数28。farrealloc()调整远堆中已分配块的函数

函数29。fclose()关闭一个流函数

函数30。fcloseall()关闭打开的流的函数

函数31。feof()检查文件是否结束的函数

函数32。fgets()从流中读取一字符串的函数

函数33。findfirst()函数和findnext()函数

函数34。floodfill()填充区域的函数

函数35。floor()

函数36。fnmerge()建立文件路径函数

函数37。fnsplit()分解完整的路径名函数

函数38。fopen()打开一个流函数

函数39。FP_OFF()获取远地址偏移量的宏

函数40。fprintf()传送输出到一个流中的函数

函数41。FP_SEG()获取远地址段值的宏

函数42。fscanf()格式化输入函数

函数43。fseek()移动文件指针函数

函数44。fwrite()把参数写入流中的函数

函数45。gcvt()把双精度数转化成字符串的函数

函数46。geninterrupt()执行中断函数

函数47。getc()从流中取字符的宏

函数48。getch()从键盘无回显地读取一字符的函数

函数49。getchar()从stdin流中读取一个字符的函数

函数50。getcurdir()读取指定驱动器的当前目录的函数

函数61。getcwd()读取当前目录的函数

函数62。getdate()读取系统日期函数

函数63。getdfree()读取磁盘空闲空间的函数

函数64。getdisk()读取当前磁盘驱动器号函数

函数65。getenv()读取环境变量的当前值的函数

函数66。getimage()将指定区域的位图象存入内存的函数

函数67。getmaxx()返回屏幕上最大的X坐标值的函数

函数68。getmaxy()返回屏幕上最大的Y坐标值的函数

函数69。getpixel()读取像素颜色的函数

函数70。getpsp()

函数71。gets()从标准输入流stdio中读取一字符串的函数

函数72。gettime()读取系统时间的函数

函数73。getvect()读取中断向量函数

函数74。getx()返回当前图形方式下位置的X坐标值的函数

函数75。gety()返回当前图形方式下位置的Y坐标值的函数

函数76。imagesize()返回保存图像缓冲区大小的函数

函数77。initgraph()显示模式控制函数(初始化图形系统函数)

函数78。inport()从端口中读入一个字的函数

函数79。inportb()从端口读入一个字节的函数

函数80。int86()执行中断函数(调用8086软中断函数)

函数81。int86x()执行中断函数 (通用8086软中断接口函数)

函数82。intdos()通用dos中断接口函数

函数83。intdosx()通用dos中断接口函数

函数84。intr()执行8086软中断函数(改变软中断接口函数)

函数85。itoa()把整形数转换为字符串的函数

函数86。kbhit()检查当前按下的键的函数

函数87。keep()驻留并退出函数

函数88。log()

函数89。log10()

函数90。_lrotl()将一个无符号长整形数左循环移位的函数

函数91。_lrotr()将一个无符号长整形数右循环移位的函数

函数92。lseek()移动文件指针函数

函数93。ltoa()把长整形数转换为字符串的函数

函数94。malloc()分配内存函数

函数95。mkdir()创建目录函数

函数96。mktemp()建立一个唯一的文件名的函数

函数97。MK_FP()设置一个远指针的宏

函数98。movedata()拷贝数据函数

函数99。_open()打开一个文件进行读写的函数

函数100。open()打开文件进行读写的函数

函数101。outport()输出一个字到端口中的函数

函数102。outportb()输出一个字节到端口中的函数

函数103。outtextxy()在指定位置显示一字符串的函数

函数104。peek()返回指定内存中字的函数

函数105。peekb()返回指定内存中字节的函数

函数106。poke()在指定的内存中存储一个字的函数

函数107。pokeb()在指定的内存中存储一个字节的函数

函数108。pow()

函数109。printf()写格式化输出到stdout的函数

函数110。putch()向屏幕输出字符的函数

函数111。putchar()在stdout上输出字符的宏

函数112。putenv()将字符串放入当前环境中的函数

函数113。putimage()重新写屏函数(输出一个位图象到图形屏幕上的函数)

函数114。putpixel()写像素点函数

函数115。puts()输出一字符串到stdout(标准输出)的函数

函数116。_read()读文件函数

函数117。read()读文件函数

函数118。realloc()重新分配内存函数

函数119。rectangle()画一个矩形的函数

函数120。remove()删除一个文件的函数

函数121。rename()文件改名函数

函数122。restorecrtmode()恢复屏幕视频模式为调用initgraph前的设置的函数

函数123。rmdir()删除目录函数

函数124。_rotl()将一个无符号整形数左循环移位的函数

函数125。_rotr()将一个无符号整形数右循环移位的函数

函数126。scanf()格式化输入函数

函数127。searchpath()按dos路径查找一个文件的函数

函数128。segread()读段寄存器函数

函数129。setactivepage()设置图形输出活动页的函数

函数130。setcolor()设置当前要画的线颜色的函数

函数131。setdisk()设置当前驱动器的函数

函数132。setgraphmode()将系统设置成图形模式并清屏的函数

函数133。setlinestyle()设置当前画线宽度和类型的函数

函数134。settextstyle()显示字符的当前设置函数

函数135。setvect()设置中断向量函数

函数136。setviewport()建立视口的函数

函数137。setvisualpage()设置可见的图形页号的函数

函数138。sin()

函数139。sprintf()格式化输出到数组的函数

函数140。strcat()

函数141。tan()

函数142。_write()写文件函数

函数143。write()写文件函数

原文释义请到百度文库里搜寻字串“C语言常用函数”后下载

函数51-60因原注里排序号码少编,所以只有133个常用函数。

DOC大小是1195KB

贡献时间:2010-09-10

贡献者:handanlinzhang

你好,

录像时长是根据您设置的录像磁盘空间决定的:

录像文件存储:本监控系统软件生成的录像文件存储在本电脑的路径选择。

磁盘预留大小:该功能能够避免出现系统提示硬盘空间不足的现象,最重要的是能够为软件换盘录像提供了缓冲空间。

录像文件打包时间:该功能可以设定录像文件多长时间打一次包,方便用户灵活的管理录像文件。

[音视频压缩卡] 如何设置录像文件存储的路径>

感谢您的支持!

、C/S结构与B/S结构的特点分析

随着计算机技术的不断发展与应用,计算模式从集中式转向了分布式,尤为典型的是C/S结构(Client/Server的简称,客户机/服务器模式)。两层结构C/S模式,在上个世纪八十年代及九十年代初得到了大量应用,最直接的原因是可视化开发工具的推广。之后,它开始向三层结构发展。近年来,随着网络技术不断发展,尤其是基于Web的信息发布和检索技术、Java计算技术以及网络分布式对象技术的飞速发展,导致了很多应用系统的体系结构从C/S结构向更加灵活的多级分布结构演变,使得软件系统的网络体系结构跨入一个新阶段,即B/S体系结构(Browser/Server的简称,浏览器/服务器模式)。基于Web的B/S方式其实也是一种客户机/服务器方式,只不过它的客户端是浏览器。为了区别于传统的C/S模式,才特意将其称为B/S模式。认识到这些结构的特征,对于系统的选型而言是很关键的。

1、系统的性能

在系统的性能方面,B/S占有优势的是其异地浏览和信息采集的灵活性。任何时间、任何地点、任何系统,只要可以使用浏览器上网,就可以使用B/S系统的终端。

void my_del(char p)

{

   inti=0,j=0;

   while(p[i]!='\0'){      //循环条件是到字符串末尾结束

       if(p[i]==''){      //如果当前字符是,那么把后面的字符全部向前移动/                           //一个字节,实现删除当前的星号的效果,然后还是看

                           //当前的字符是不是星号,如果是,继续删除当前这个

                           //星号,后面的数据依旧向前搬,这里没有对循环变量i                           // *** 作i是在下面的else里面 *** 作的

           for(j=i;p[j]!='\0';j++)

              p[j]=p[j+1];

       }

       else{

            if(p[i]>='a' && p[i]<='z')  //如果当前字母是小写字母

                 p[i]=p[i]-32;          //减去32,因为ascii表                                                      //中小写字母在大写字母后面,距离                                           //32

            i++;                        //下一个

       }

   }

}

main()

{

  char a[80];     //字符串 长度80

  gets(a);        //获取字符串,gets没有长度判断,这个函数有漏洞如果输入

                  //长度大于80,栈会溢出

  my_del(a);      //调用功能传的是指针,对数据直接 *** 作生效

  puts(a);        //输出结果

}

zcame2c录制时长无限制

ZCAME2C可以录制4K/30P和1080P/60P的视频,要求SD卡速度达到Class10级别,可以使用H265编码进行10bit录制或H264编码8bit录制,录制时间无限制。

以上就是关于ffmpeg视频剪切时长不正确全部的内容,包括:ffmpeg视频剪切时长不正确、C语言编写一个简单的视频播放器可以播放mp4的就好、求C语言的常用函数,详细一点等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/9589258.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存