首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用FFmpeg API获取flv视频时长

哈喽,这一篇记录一个小小的关于FFmpeg的使用,借助FFmpeg的API接口获取flv格式视频的时长。...发现获取的视频时长为0,按照排查问题的一般思路,试试别的格式的文件是否也会有问题。尝试将文件更换为MP4文件,发现可以正常获取时长,如下图: ?...甚是不理解啊,经查阅资料发现,对于flv文件需要首先调用avformat_find_stream_info, 才可正常的获取视频时长,这一过程中,同时还发现另外一种获取视频时常的方式:FFmpeg对于...cout << "flv file duratio: " << seconds << std::endl; system("pause"); return 0;} 其中:另外一种获取视频时长的方式为...终于可以成功获取flv格式视频的时长。可以动手去试试了!

3.9K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    用ffmpeg检查视频文件时长

    视频播放时,经常会遇到: 1、不同播放器显示的文件时长不一样 2、视频转码后,文件时长发生了变化 3、视频播到后面,只有画面没有声音 等各种异常,这时我们可以检查一下原视频的时长 但是原视频的时长也有多个值...,分别是容器时长、音视频流时长、解码后播放时长,这几个值可能不一样,就导致了不同播放器显示值不一样,不同播放时也因此表现得不一样 容器时长(container duration)的获取方法: ffprobe...(stream duration)的获取方法: ffprobe.exe -v error -select_streams v:0 -show_entries stream=duration -of default...video stream的时长作为播放时长 另外,并不是所有格式的视频,会在音视频流级别保存了时长,这时可能会拿不到时长 解码后文件播放时长(get duration by decoding) 可以通过...ffmpeg命令,先完全解码,然后获取到文件时长 ffmpeg.exe -i input.mp4 -f null - image.png 可以看到时长为2:02:33,和container duration

    24.6K159

    FFMPEG-如何对视频按时长切片与压缩

    本文介绍如何用ffmpeg开源组件按时长进行切片,举一个例子,一个视频网站,拿到一个时长1.5小时的电影,用户点击播放时,常用的技术方案就是把一个完整的大文件,转码后切成按固定时长的小文件,分发到cdn...上去,这样用户就可以实现就近下载,包括拖放等操作,这里面有比较多的技术细节,本文只讨论第一步,按时长切片。...一 获取视频时长 ffmpeg安装后,直接执行ffmpeg -i 文件就可以从内容中获取到时长,如下图所示,其中的Duration就是时长 wangyachangdeMacBook-Pro:ffmpeg...wangyachang$ /usr/local/ffmpeg/bin/ffmpeg -i movie.mp4 ffmpeg version 3.0.2 Copyright (c) 2000-2016.../usr/bin/env python # -*- coding: UTF-8 -*- #本脚本使用ffmpeg分割音视频文件,分割过程不进行转码或压缩 import subprocess import

    2.2K10

    av_dump_format经验分析,FFmpeg获取媒体文件总时长(FLV获取总时长的误区)

    播放器有个功能,当用户打开视频时,需要读取媒体文件的总时长等信息,不巧的时,获取FLV时总失败,下面来具体分析下FLV和MP4获取总时长的原因和区别: 播放器有个获取MediaInfo的接口,功能如下:...return -1; } //video if(stream->codecpar->codec_type == AVMEDIA_TYPE_VIDEO){ //获取视频总时长...总是打印duration不合法: 很奇怪的是,使用av_dump_format函数可以看到Duration: Input #0, flv, from '/home/zhenghui/视频/1080P.flv...200 kb/s, 30 fps, 30 tbr, 1k tbn Stream #0:1: Audio: adpcm_swf, 44100 Hz, stereo, s16, 352 kb/s 就翻了翻ffmpeg...return -1; } //video if(stream->codecpar->codec_type == AVMEDIA_TYPE_VIDEO){ //获取视频总时长

    18600

    FFmpeg获取音视频流信息

    文章目录 前言 一、需求 二、源码 三、运行结果 前言 本文记录用 FFmpeg 获取视频流+音频流的信息(编码格式、分辨率、帧率、播放时长…),所用的工程基于上个博客编译成功的工程:使用FFmpeg4.3.1...的SDK官方开发包编译ffmpeg.c 一、需求 我们经常需要知道一个媒体文件所包含的媒体流的信息,比如文件格式、播放时长、码率、视音频编码格式,视频分辨率,帧率,音频属性等信息。...如何使用 FFmpeg API 获取这些信息呢?...媒体容器封装格式 文件播放时长 文件平均码率(视频+音频) 视频属性(编码器名称、视频分辨率、帧率、编码码率) 音频属性(编码器名称、采样率、声道数、编码码率) 二、源码 ffmepg.h 文件中添加我们自定义的结构体...long_name); printf("audioCodecName = %s\n", avmi->audioCodecName); } } } // 获取音视频流的基本信息

    58010

    猫头虎分享:如何在Java中使用FFmpeg解析视频时长、封面和大小

    猫头虎分享:如何在Java中使用FFmpeg解析视频时长、封面和大小 在Java开发中,处理视频文件的时长、封面和大小等信息是常见需求。为此,Java提供了多种库来实现这些功能。...本文将对比几种常用的Java视频处理库,并提供使用JavaCV获取视频信息的示例代码。...使用JavaCV获取视频信息 以下示例演示如何使用JavaCV获取视频的时长、封面和大小。 1....获取视频时长 import org.bytedeco.javacv.FFmpegFrameGrabber; public class VideoDurationExtractor { public...通过上述示例代码,您可以轻松获取视频的时长、封面和大小等信息,满足多媒体应用的需求。此外,合理配置Maven或Gradle依赖,可以确保项目的稳定性和可移植性。希望本文对您的开发工作有所帮助。

    47010

    cc++使用ffmepg库获取视频信息(宽高时长等)

    备忘一个使用ffmepg获取视频的宽高时长等信息的代码,是使用ffmepg的api不是通过exe命令行的方式。至于用的ffmepg库和头文件等,我传github和CSDN各一份。地址在最后。...下面是代码,首先: //引入ffmpeg的头文件和lib,自己处理好库的路径 extern "C" { #include "libavcodec/avcodec.h" #include "libavformat...= 0) { printf("无法打开视频文件\n"); return -1; } // 查找视频文件中的流信息 if (avformat_find_stream_info(formatContext...\n"); return -1; } // 获取视频时长 int64_t duration = formatContext->streams[videoStreamIndex]->duration...timeBase.den; int nWidth = codecParameters->width; int nHeight = codecParameters->height; printf("视频时长

    69531

    短视频推荐视频时长bias问题

    炼丹笔记干货 作者:快手社科推荐团队 短视频(比如快手、抖音和视频号等)日益成为人们日常生活中最重要娱乐方式。短视频推荐需要解决的一个基础问题是,如何准确地预估用户对某个视频的观看时长。...用户对一个视频的观看时长受到两方面影响,一是用户对视频内容的满意程度,二是视频本身的长度(duration)。...图二、 (a)视频观看时长和视频长度的关系 图二、 (b)不同时间区间视频分布的变化 为了解决上述的问题, 论文提出使用因果推断的方法消除时长预估任务中的 duration bias 问题。...视频 duration 通过 D->V->W 和 D->W 两条路径影响时长预估,其中 D->W 表明视频 duration 与观看时长具有直接的因果关系,这也是符合预期的,因为相较于短视频,用户更加倾向于在长视频上停留更长的时间...但是,D->V->W 表示曝光视频的 duration 分布会影响观看时长的预估,这主要是因为推荐系统倾向于推荐长视频来提升 app 时长,导致曝光视频中长视频占比过大;而模型训练时长视频会获得比较大的权重

    4.8K30

    ffmpeg hevc_ffmpeg视频解码

    本次目标: 1)将容器中的音频码流和视频码流分离出来。 2)针对mp4文件中的码流情况进行修复。...我们常规的H264帧数据保存格式是annexb,是具有起始码0x000001或0x00000001;mpeg-ts文件中保存的是视频码流是存在起始码的,而在mp4文件中没有起始码。...H.264视频编码格式主要分为两种形式,即带起始码的H.264码流和不带起始码的H.264码流,其中,前者就是我们比较熟悉的H264、X264;后者就是指AVC1。...AAC码流(mp4a):保存一帧码流数据前,补充相应的adts头; H264码流(avc1):使用h264_mp4toannexb过滤器,对视频码流进行处理。...More:解析h264视频码流 视频播放效果: 原mp4文件: out.h264码流文件: out.aac文件: 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。

    1.3K10

    使用ffmpeg去除视频水印【ffmpeg】

    一、使用前提 1.确保已经安装ffmepg工具,在Linux命令行中查看ffmepg的版本 ffmpeg -version 我自己安装的是 ffmpeg version 2.8.15 Copyright...(c) 2000-2018 the FFmpeg developers 2.找一个有水印的视频,可以放在当前命令输入的同级目录进行测试 比如1.MP4,一下是我视频的截图 ?...可以从视频中完整截取一张图片,相关软件比如PR,都有视频截取帧的工具。下面是PR生成出来的一张图片,这样会更准确些。 当然也可以自己大概的截图,裁剪下,要保证的视频的分辨率对应。 ?...2.用画图工具,打开视频的截图,计算水印的位置 计算得到,我的视频水印坐标为:50,640....备注:查看ffmpeg命令帮助,man ffmpeg

    8.1K31
    领券