国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

FFmpeg框架系列:獲取視頻時(shí)長

這篇具有很好參考價(jià)值的文章主要介紹了FFmpeg框架系列:獲取視頻時(shí)長。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

1. 業(yè)務(wù)場景

業(yè)務(wù)需求:對上傳的視頻顯示該時(shí)長。

2. FFmpeg框架處理視頻信息

FFmpeg官網(wǎng):http://ffmpeg.org/

3. 代碼實(shí)現(xiàn)

3.1 windows安裝FFmpeg

我在這篇五分鐘JAVA代碼教會你:FFmpeg實(shí)現(xiàn)視頻試看(window版本)中寫的十分詳細(xì),在windows/Linux安裝FFmepg,此處我就不過多闡述了。

3.2 執(zhí)行口令查看視頻信息

在window中安裝FFmpeg后,在cmd執(zhí)行獲取時(shí)長的命令即可:

F:\ffmpegDemo\ffmpeg\bin\ffmpeg.exe -i F://ffmpegDemo//test.mp4

PS:解壓在windows本地的ffmpeg程序F:\ffmpegDemo\ffmpeg\bin\ffmpeg.exe以及存放在windows本地視頻:F://ffmpegDemo//test.mp4

執(zhí)行效果,如下:

ffmpeg 獲取視頻時(shí)長,ffmpeg,音視頻

3.3 Java解析信息并返回時(shí)長

通過FFmpeg執(zhí)行命令行,獲取返回的視頻信息,通過java篩選到視頻信息的目標(biāo)數(shù)據(jù),進(jìn)行返回即可。

public static void main(String[] args) {
        
        String timeLength = getVideoTime("F://ffmpegDemo//test.mp4","F:\\ffmpegDemo\\ffmpeg\\bin\\ffmpeg.exe");
        if(timeLength.length()>0){//字符串截取
            timeLength =timeLength.substring(0,timeLength.indexOf("."));
        }
        System.out.println("視頻時(shí)長:"+timeLength);
       
    }
ffmpeg 獲取視頻時(shí)長,ffmpeg,音視頻

4. 貼出完成Demo

public class ExecWindowCMD {

    public static void main(String[] args) {
        
        String timeLength = getVideoTime("F://ffmpegDemo//test.mp4","F:\\ffmpegDemo\\ffmpeg\\bin\\ffmpeg.exe");
        if(timeLength.length()>0){//字符串截取
            timeLength =timeLength.substring(0,timeLength.indexOf("."));
        }
        System.out.println("視頻時(shí)長:"+timeLength);
       
    }

     /**
     *獲取視頻時(shí)間
     * @param video_path  視頻路徑
     * @param ffmpeg_path ffmpeg安裝路徑
     * @return
     */
    public static String getVideoTime(String video_path, String ffmpeg_path) {
        List<String> commands = new java.util.ArrayList<String>();
        commands.add(ffmpeg_path);
        commands.add("-i");
        commands.add(video_path);
        System.out.println("命令行:"+ffmpeg_path+" -i "+video_path);
        try {
            ProcessBuilder builder = new ProcessBuilder();
            builder.command(commands);
            final Process p = builder.start();

            //從輸入流中讀取視頻信息
            BufferedReader br = new BufferedReader(new InputStreamReader(p.getErrorStream()));
            StringBuffer sb = new StringBuffer();
            String line = "";
            while ((line = br.readLine()) != null) {
                sb.append(line);
            }
            br.close();

            //從視頻信息中解析時(shí)長
            String regexDuration = "Duration: (.*?), start: (.*?), bitrate: (\\d*) kb\\/s";
            Pattern pattern = Pattern.compile(regexDuration);
            Matcher m = pattern.matcher(sb.toString());
            if (m.find()) {

                //System.out.println(video_path+",視頻時(shí)長:"+m.group(1)+", 開始時(shí)間:"+m.group(2)+",比特率:"+m.group(3)+"kb/s");
                return m.group(1);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }

        return "";
    }
}

執(zhí)行效果如下:

ffmpeg 獲取視頻時(shí)長,ffmpeg,音視頻

視頻源文件:

ffmpeg 獲取視頻時(shí)長,ffmpeg,音視頻

?文章來源地址http://www.zghlxwxcb.cn/news/detail-706259.html

原文?FFmpeg框架系列:獲取視頻時(shí)長_ffmpeg視頻合成時(shí)長代碼_瓜仙人的博客-CSDN博客

★文末名片可以免費(fèi)領(lǐng)取音視頻開發(fā)學(xué)習(xí)資料,內(nèi)容包括(FFmpeg ,webRTC ,rtmp ,hls ,rtsp ,ffplay ,srs)以及音視頻學(xué)習(xí)路線圖等等。

見下方!↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

?

到了這里,關(guān)于FFmpeg框架系列:獲取視頻時(shí)長的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • FFmpeg——開源的開源的跨平臺音視頻處理框架簡介

    FFmpeg——開源的開源的跨平臺音視頻處理框架簡介

    引言: ????????FFmpeg是一個(gè)開源的跨平臺音視頻處理框架,可以處理多種音視頻格式。它由Fabrice Bellard于2000年創(chuàng)建,最初是一個(gè)只包括解碼器的項(xiàng)目。后來,很多開發(fā)者參與其中,為FFmpeg增加了多種新的功能,例如編碼器、過濾器、muxer、demuxer等等,使它成為了一個(gè)完整

    2024年03月23日
    瀏覽(90)
  • 【音視頻處理】基礎(chǔ)框架介紹,F(xiàn)Fmpeg、GStreamer、OpenCV、OpenGL

    【音視頻處理】基礎(chǔ)框架介紹,F(xiàn)Fmpeg、GStreamer、OpenCV、OpenGL

    大家好,歡迎來到停止重構(gòu)的頻道。? 本期我們介紹 音視頻處理的基礎(chǔ)框架 。 包括FFmpeg、GStreamer、OpenCV、OpenGL 。 我們按這樣的分類介紹 : 1、編解碼處理:FFmpeg、GStreamer 2、圖像分析:OpenCV 3、復(fù)雜圖像生成:OpenGL 首先是編解碼處理的基礎(chǔ)框架,這類基礎(chǔ)框架的 應(yīng)用場景

    2024年02月08日
    瀏覽(49)
  • QtAV:基于Qt和FFmpeg的跨平臺高性能音視頻播放框架

    QtAV:基于Qt和FFmpeg的跨平臺高性能音視頻播放框架

    目錄 一.簡介 1.特性 2.支持的平臺 3.簡單易用的接口 二.編譯 1.下載依賴包 2.開始編譯 2.1克隆 2.2修改配置文件 2.3編譯 三.試用 官網(wǎng)地址:http://www.qtav.org/ Github地址:https://github.com/wang-bin/QtAV ●支持大部分播放功能 ●播放、暫停、播放速度、快進(jìn)快退、字幕、音量、聲道、音

    2024年01月22日
    瀏覽(667)
  • Python獲取音視頻時(shí)長

    上代碼:獲取音視頻時(shí)長.py pyinstaller -F 獲取音視頻時(shí)長.py 鏈接:https://pan.baidu.com/s/1WvsMyPHD3iFsM844gfC2Jg?pwd=yyds

    2024年02月15日
    瀏覽(26)
  • ffmpeg@音視頻工具@音視頻合并

    FFmpeg中文網(wǎng) (github.net.cn) FFmpeg 是一款強(qiáng)大的開源跨平臺音視頻處理工具集,它包含了一系列命令行工具以及用于音頻和視頻編碼解碼、格式轉(zhuǎn)換、抓取、流化等功能的庫。FFmpeg 支持多種視頻、音頻格式和編解碼器,能夠進(jìn)行音視頻的壓縮、封裝、轉(zhuǎn)碼、分割、合并、過濾、抓

    2024年03月17日
    瀏覽(29)
  • 音視頻 FFmpeg音視頻處理流程

    音視頻 FFmpeg音視頻處理流程

    推薦一個(gè)零聲學(xué)院項(xiàng)目課,個(gè)人覺得老師講得不錯(cuò),分享給大家: 零聲白金學(xué)習(xí)卡(含基礎(chǔ)架構(gòu)/高性能存儲/golang云原生/音視頻/Linux內(nèi)核) https://xxetb.xet.tech/s/VsFMs

    2024年02月12日
    瀏覽(97)
  • 【FFmpeg】音視頻錄制 ① ( 查詢系統(tǒng)中 ffmpeg 可錄制的音視頻輸入設(shè)備 | 使用 ffmpeg 命令錄制音視頻數(shù)據(jù) | 錄制視頻數(shù)據(jù)命令 |錄制音頻數(shù)據(jù)| 同時(shí)錄制音頻和視頻數(shù)據(jù)命令 )

    【FFmpeg】音視頻錄制 ① ( 查詢系統(tǒng)中 ffmpeg 可錄制的音視頻輸入設(shè)備 | 使用 ffmpeg 命令錄制音視頻數(shù)據(jù) | 錄制視頻數(shù)據(jù)命令 |錄制音頻數(shù)據(jù)| 同時(shí)錄制音頻和視頻數(shù)據(jù)命令 )

    在 Windows 系統(tǒng)中 , 使用 ffmpeg 命令 錄制 音視頻 , 需要先獲取 系統(tǒng)的 音視頻設(shè)備 信息 , 錄制 音視頻 本質(zhì)上是從 系統(tǒng)音視頻設(shè)備 中獲取數(shù)據(jù) ; 執(zhí)行 命令 , 可以獲取 系統(tǒng)中 ffmpeg 可用的 DirectShow 音視頻輸入設(shè)備 ; 命令參數(shù)解析 : -list_devices true : 列出所有 ffmpeg 的 指定類型的可

    2024年04月25日
    瀏覽(31)
  • 音視頻 ffmpeg命令提取音視頻數(shù)據(jù)

    保留封裝格式 提取視頻 提取音頻 推薦一個(gè)零聲學(xué)院項(xiàng)目課,個(gè)人覺得老師講得不錯(cuò),分享給大家: 零聲白金學(xué)習(xí)卡(含基礎(chǔ)架構(gòu)/高性能存儲/golang云原生/音視頻/Linux內(nèi)核) https://xxetb.xet.tech/s/VsFMs

    2024年02月10日
    瀏覽(26)
  • 音視頻 ffmpeg視頻裁剪

    將輸入視頻幀的寬度和高度從x和y值表示的位置裁剪到指定的寬度和高度;x和y是輸出的左上角坐標(biāo),協(xié)調(diào)系統(tǒng)的中心是輸入視頻幀的左上角。 如果使用了可選的keep_aspect參數(shù),將會改變輸出SAR(樣本寬比)以補(bǔ)償新的DAR(顯示長寬比) 推薦一個(gè)零聲學(xué)院項(xiàng)目課,個(gè)人覺得老師講得不

    2024年02月10日
    瀏覽(22)
  • [一]ffmpeg音視頻解碼

    [一]ffmpeg音視頻解碼

    (1)下載FFmpeg源碼(v3.3.6) 下載地址( http://www.ffmpeg.org/download.html#releases ) (2)下載NDK(r14b) 下載地址( https://developer.android.google.cn/ndk/downloads/index.html) (3)編寫Android編譯腳本 (1)用ftp上傳到Ubuntu中 (2)解壓Ffmpeg(tar -zxvf ffmpeg-3.3.6.tar.gz) (3)解壓NDK(unzip andro

    2024年01月19日
    瀏覽(1558)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包