乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      FFmpeg總結(jié)(九)用ffmpeg進(jìn)行切片生成m3u8索引文件

       AHFDR 2019-05-05

      在直播和點(diǎn)播中,通常后臺(tái)并不會(huì)直接給一個(gè)http://./xxx.mp4這樣的url給客戶(hù)端,而是通過(guò)m3u8索引列表,給客戶(hù)端。今天來(lái)通過(guò)ffmpeg進(jìn)行切片生成m3u8索引文件。

      首先將視頻文件轉(zhuǎn)為視頻編碼h.264,音頻編碼aac格式的mp4文件
      1、使用ffprobe查看文件編碼方式

      這里寫(xiě)圖片描述

      2、如果不是mp4的,可以用如下命令進(jìn)行轉(zhuǎn)

      ffmpeg -i input.mkv -acodec copy -vcodec copy out.mp4
      • 1

      3、將mp4轉(zhuǎn)為完整的ts

      ffmpeg -i out.mp4 -c copy -bsf h264_mp4toannexb output.ts  
      • 1

      為什么要用-bsf h264_mp4toannexb,主要是因?yàn)槭褂昧薽p4中的h264編碼,而h264有兩種封裝:
      一種是annexb模式,傳統(tǒng)模式,有startcode,SPS和PPS是在ES中;另一種是mp4模式,一般mp4、mkv、avi會(huì)沒(méi)有startcode,SPS和PPS以及其它信息被封裝在container中,每一個(gè)frame前面是這個(gè)frame的長(zhǎng)度,很多解碼器只支持annexb這種模式,因此需要將mp4做轉(zhuǎn)換;在ffmpeg中用h264_mp4toannexb_filter可以做轉(zhuǎn)換;所以需要使用-bsf h264_mp4toannexb來(lái)進(jìn)行轉(zhuǎn)換;

      4、將ts切片,并生成m3u8文件

      ffmpeg -i output.ts -c copy -map 0 -f segment -segment_list playlist.m3u8 -segment_time 5 output%03d.ts
      • 1

      其中segment 就是切片,-segment_time表示隔幾秒進(jìn)行切一個(gè)文件,上面命令是隔5s,你也可以調(diào)整成更大的參數(shù)。

      這里寫(xiě)圖片描述

      切片完成后如下所示:

      這里寫(xiě)圖片描述

      完整ts文件播放如下:

      這里寫(xiě)圖片描述

      使用生成的m3u8索引播放如下:

      這里寫(xiě)圖片描述

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶(hù) 評(píng)論公約

        類(lèi)似文章 更多