返回顶部
首页 > 资讯 > 后端开发 > Python >ffmpeg + m3u8-segmen
  • 882
分享到

ffmpeg + m3u8-segmen

ffmpegsegmen 2023-01-31 06:01:41 882人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

HTML5 + 流媒体文件目前安装过的服务器版本ubuntu 1.3 Centos 6.5下面2个是在Centos上使用的Centos 准备安装删除已安装包yum erase FFmpeg x264 x264-develCentos 安装

HTML5 + 流媒体文件


目前安装过的服务器版本

ubuntu 1.3

Centos 6.5


下面2个是在Centos上使用的

Centos 准备安装删除已安装包

yum erase FFmpeg x264 x264-devel


Centos 安装各种依赖包

yum install  GCc make nasm pkgconfig wget curl curl-devel zlib-devel openssl-devel perl cpio expat-devel gettext-devel libtool mhash.x86_64 perl-Digest-SHA1.x86_64  pcre.i386 pcre.x86_64 pcre-devel.i386 pcre-devel.x86_64


整个过程中可能还需要 g++ gcc git svn 等工具 自己随便下下就可以了

centos 的 gcc g++ 安装方法 yum install gcc gcc-c++


该连接可下载下面所有的包  Http://pan.baidu.com/s/1eQvHauu

首先安装ffmpeg和他的组件

1.1 安装nasm编译器支持汇编优化(lame库需要)

对安装了apt-get的linux机器,可直接执行以下命令安装nasm。

# sudo apt-get install nasm

        也可以用源代码编译并安装。先在网上获取nasm-2.10.05.tar.bz2

解压:

tar xvf nasm-2.10.05.tar.bz2

cd nasm-2.10.05

配置安装目录为/usr/bin:

./configure --prefix=/usr

编译并安装:

make && make install


1.2 安装yasm编译器支持汇编优化(ffmpeg库需要)

wget http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz

解压:

tar xvf yasm-1.2.0.tar.gz

cd yasm-1.2.0

配置安装目录为/usr/bin:

./configure --prefix=/usr

编译并安装:

make && make install


1.3 安装lame库支持mp3音频

wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz

tar xvf lame-3.99.5.tar.gz

 cd lame-3.99.5

 ./configure --enable-nasm

make && make install


1.4 安装faac库支持mpeg4 aac音频

wget http://downloads.sourceforge.net/project/faac/faac-src/faac-1.28/faac-1.28.tar.gz

tar xvf faac-1.28.tar.gz

cd faac-1.28

./configure --with-mp4v2

这里需要修改:

vim common/mp4v2/mpeg4ip.h

从123行开始修改此文件mpeg4ip.h,到129行结束。
修改前:
#ifdef __cplusplus
extern "C" {
#endif
char *strcasestr(const char *haystack, const char *needle);
#ifdef __cplusplus
}
#endif

修改后:
#ifdef __cplusplus
extern "C++" {
#endif
const char *strcasestr(const char *haystack, const char *needle);
#ifdef __cplusplus
}
#endif

make && make install


1.5 安装libogg库支持ogg音频

wget http://downloads.xiph.org/releases/ogg/libogg-1.3.1.tar.gz

tar xvf libogg-1.3.1.tar.gz

cd libogg-1.3.1

./configure

make && make install


1.6 安装theora

wget http://downloads.xiph.org/releases/theora/libtheora-1.1.1.tar.gz

tar xvf libtheora-1.1.1.tar.gz

cd libtheora-1.1.1

./configure

make && make install


1.7 安装x264库支持h.264视频转码

执行以下命令获取x264的最新源代码

git clone git://git.videolan.org/x264.git

cd x264

./configure --enable-shared

make && make install


1.8 安装xvid库支持mpeg4视频转码

wget http://downloads.xvid.org/downloads/xvidcore-1.3.2.tar.gz

        获取最新的xvid mpeg4编×××源代码

tar xvf xvidcore-1.3.2.tar.gz

cd xvidcore/build/generic

./configure

make && make install


1.9 安装libnut

该软件需要用svn获取源代码,svn可以直接用yum install svn来装。

先下载:

svn co svn://svn.mplayerhq.hu/nut/src/trunk libnut

下载后代码保存在新建立的libnut目录下,对于64位Linux需要修改配置文件:

cd libnut

vim config.mak

在最后一个CFLAGS下一行增加:

CFLAGS += -fPIC

然后编译安装:

make && make install


1.10 libvpx

git clone http://git.chromium.org/WEBm/libvpx.git

cd libvpx

./configure  --enable-shared

make && make install


1.11 FAAD2

wget http://downloads.sourceforge.net/project/faac/faad2-src/faad2-2.7/faad2-2.7.tar.gz

tar zxvf faad2-2.7.tar.gz

cd faad2-2.7

./configure

make && make install


1.12 安装vorbis

wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.4.tar.gz

tar xvf libvorbis-1.3.4.tar.gz

cd libvorbis-1.3.4

./configure

make && make install


1.13 修改链接环境变量

上面的媒体支持库安装完后,可以设置下环境准备编译ffmpeg了。不过在此之前必须修改环境变量

vim /etc/ld.so.conf

在文件末增加一行:

/usr/local/lib

       然后生效之:

ldconfig -v


2 编译ffmpeg

执行以下命令获取ffmpeg源代码

git clone git://source.ffmpeg.org/ffmpeg.git

cd ffmpeg

./configure  --enable-version3  --enable-libvpx --enable-libfaac --enable-libmp3lame  --enable-libvorbis --enable-libx264 --enable-libxvid --enable-shared --enable-gpl --enable-postproc --enable-nonfree --enable-avfilter --enable-pthreads --enable-libnut --enable-libtheora

***需要保证 --enable-libx264能执行

make && make install

ldconfig -v


分割器分2种

3.  TS流分割器segmenter的安装与使用

第一个 m3u8-segmenter

        git clone https://GitHub.com/johnf/m3u8-segmenter

        下载m3u8-segmenter 下载后不要用它的反复编译,直接取m3u8-segmenter.c文件。

执行

gcc -Wall -g m3u8-segmenter.c -o segmenter -lavfORMat -lavcodec -lavutil


第二个 segmenter

svn co http://httpsegmenter.Googlecode.com/svn/trunk segmenter

cd  segmenter

gcc -Wall -g segmenter.c -o segmenter -lavformat -lavcodec -lavutil -std=c99


安装好其中一个后

cp segmenter /usr/bin/

把执行文件拷贝过去。



下面给2个超简单的执行例子

直接转成ts

ffmpeg -i vp5.flv -acodec copy -vcodec libx264 vp5.ts

分割转成ts 一秒为单位

ffmpeg -ss 0 -t 30 -i vp5.flv -acodec copy -vcodec libx264 1.ts

ffmpeg -ss 30 -t 60 -i vp5.flv -acodec copy -vcodec libx264 2.ts

合并

ffmpeg -i "concat:1.ts|2.ts" -acodec copy -vcodec copy -absf aac_adtstoasc output.mp4

切割

m3u8-segmenter -i test.ts -d 10 -p segmenter_test -m test.m3u8 -u http://127.0.0.1:8080/Video/


这样就可以切片出m3u8文件  直接使用hls



--结束END--

本文标题: ffmpeg + m3u8-segmen

本文链接: https://lsjlt.com/news/190031.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • ffmpeg + m3u8-segmen
    HTML5 + 流媒体文件目前安装过的服务器版本ubuntu 1.3 Centos 6.5下面2个是在Centos上使用的Centos 准备安装删除已安装包yum erase ffmpeg x264 x264-develCentos 安装...
    99+
    2023-01-31
    ffmpeg segmen
  • SpringBoot + FFmpeg实现一个简单的M3U8切片转码系统
    目录想法实现工程pom配置文件TranscodeConfig,用于控制转码的一些参数MediaInfo,封装视频的一些基础信息FFmpegUtils,工具类封装FFmpeg的一些操作...
    99+
    2024-04-02
  • ffmpeg网页视频流m3u8 ts怎么实现视频下载
    这篇“ffmpeg网页视频流m3u8 ts怎么实现视频下载”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“ffmpe...
    99+
    2023-07-02
  • FFmpeg: FFmpeg中的av_free()和av_freep()区别
    在FFmpeg中,`av_free()`和`av_freep()`都是用于释放内存的函数。`av_free()`函数用于释放单个指针...
    99+
    2023-09-01
    区别
  • PHP获取M3U8视频时长
    m3u8 ⽂件实际上是⼀个播放文件索引地址,通过里面的参数可以找到相应的时长 EXTM3U:这个是M3U8文件必须包含的标签,并且必须在文件的第一行,所有的M3U8文件中必须包含这个标签。 EXT-X...
    99+
    2023-10-01
    php 音视频 开发语言 m3u8时长 视频时长
  • python+ngnix+ffmpeg+
    cd /opt yum install cmake gcc gcc-c++ gtk+-devel gimp-devel gimp-devel-tools gimp-help-browser zlib-devel libtiff...
    99+
    2023-01-31
    python ngnix ffmpeg
  • mac 安装 ffmpeg
    前往 ffmpeg 官网,下载页面:​ ​http://www.ffmpeg.org/download.html​​ 选择苹果图标,进入如下链接,选择你需要的版本进行下载 网速好的话几秒钟就可成功,解压即可   前往命令行终端,执行 ...
    99+
    2023-09-07
    ffmpeg macos
  • golang ffmpeg 转码
    随着互联网发展的不断推进,音视频内容已经成为人们日常生活的重要组成部分。对于音视频的处理,转码是不可缺少的一环。而在转码领域,golang和ffmpeg都是非常出色的工具。本文将介绍如何使用golang结合ffmpeg进行音视频转码,旨在帮...
    99+
    2023-05-19
  • android原生MediaPlayer播放本地的m3u8
    背景 遇到某个需求,需要播放百度网盘的视频。但是通过百度网盘的sdk获取到的视频url是由若干个ts片段组成的m3u8播放源。然后把这个m3u8的播放源放在本地,也就是说m3u8是一个本地播放源。那么...
    99+
    2023-09-10
    android java 开发语言
  • m3u8指的是什么格式文件
    这篇文章给大家分享的是有关m3u8指的是什么格式文件的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。m3u8是指UTF-8编码格式的M3U文件;M3U文件是记录了一个索引纯文本文件,打开它时播放软件并不是播放它,而...
    99+
    2023-06-08
  • vue怎么播放flv、m3u8视频流
    本篇内容主要讲解“vue怎么播放flv、m3u8视频流”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vue怎么播放flv、m3u8视频流”吧!一、 JessibucaPlayer插件用来播放fl...
    99+
    2023-07-06
  • FFmpeg如何使用
    这篇文章将为大家详细讲解有关FFmpeg如何使用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。FFmpeg 是领先的多媒体框架,能够解码、编码、转码、混合、解密、流媒体、过滤和播放人类和机器创造的几乎所有...
    99+
    2023-06-28
  • 用ffmpeg 提取MP3
    格式转换 (将file.avi 转换成output.flv) ffmpeg -i  file.avi  output.flv       -i 表示输入文件 :现在有个视频video.avi,有个音频 audio.mp3,将其合并成o...
    99+
    2023-01-31
    ffmpeg
  • python爬取视频网站m3u8视频,下
    最近发现一些网站,可以解析各大视频网站的vip。仔细想了想,这也算是爬虫呀,爬的是视频数据。  首先选取一个视频网站,我选的是 影视大全 ,然后选择上映不久的电影 “一出好戏” 。 分析页面 我用的是chrome浏览器,F12进入查看。选...
    99+
    2023-01-30
    视频 网站 python
  • python-将爬取到的m3u8合并为m
    当你看到这个博客的时候恭喜你,你以后不用开vip就可以观看和下载vip视频了 最简单的观看vip视频步骤:进入全民解析网将vip视频地址进行解析   以下代码是通过python将vip视频进行下载为mp4格式 步骤及其代码 先找到要爬取的...
    99+
    2023-01-30
    并为 python 将爬取到
  • Android 音视频之FFmpeg
    FFmpeg介绍 FFmpeg是一套可以用来记录、处理数字音频、视频,并将其转换为流的开源框架,采用LPL或GPL许可证,提供了录制、转换以及流...
    99+
    2022-06-06
    ffmpeg Android
  • linux下ffmpeg怎么用
    这篇文章主要介绍了linux下ffmpeg怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。格式转换 (将file.avi 转换成output.flv)#ffmpeg&nb...
    99+
    2023-06-12
  • Linux怎么安装ffmpeg
    这篇文章主要介绍“Linux怎么安装ffmpeg”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Linux怎么安装ffmpeg”文章能帮助大家解决问题。Fmpeg 是领先的多媒体框架,能够解码、编码、...
    99+
    2023-06-28
  • MacOS快速安装FFmpeg
    参考博客: https://blog.51cto.com/aiyc/5151109 环境描述: 需求描述:在macOS上安装FFmpeg套件,包括ffmpeg, ffplay, ffprobe, ffserver 第一步:进入...
    99+
    2023-08-31
    macos ffmpeg
  • delphi怎么调用ffmpeg
    要在Delphi中调用FFmpeg,你需要使用FFmpeg库的动态链接库(DLL),然后使用Delphi的外部函数来调用该库。以下是...
    99+
    2023-10-12
    delphi
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作