1 Star 0 Fork 0

StarsGreen / ffmpeg-tutorial

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

ffmpeg-tutorial


The original tutorials have now been updated. I won't be maintaining this project anymore, and am keeping it here for historical reasons.


This repository contains files from an FFmpeg tutorial originally written by Stephen Dranger (dranger@gmail.com). The files have been updated to work with the most recent version of FFmpeg (see VERSION.txt for the most recent version at the time of writing). The updates were performed with an effort to modify as little code as possible, so that the original code and tutorial descriptions could be easily consulted.

The code from the original tutorial and the accompanying description is located here.

Main changes

  • Renamed includes, e.g. ffmpeg/avcodec.h --> libavcodec/avcodec.h
  • Work around deprecated functions and symbols (see below)
  • Initializing pointers to NULL on declaration. Some FFmpeg functions (e.g. avformat_open_input) now segfault when given uninitialized pointers as input.
  • Removed tutorial08.c, which introduced software scaling (as opposed to using the img_convert method). img_convert has been deprecated and is no longer available, so these new tutorials use software scaling from the very beginning, and a separate tutorial is not necessary.

Deprecated Functions and Symbols

This section describes the changes made to work around deprecated functions and symbols, in the format: before --> after. In some cases, a simple rename sufficed (e.g. dump_format), but in others, more significant changes to the code were required (e.g. avcodec_decode_audio2). Consult the diffs for each respective tutorial to see exactly what has changed since the original version of the tutorial.

  • av_open_input_file --> avformat_open_input
  • av_find_stream_info --> avformat_find_stream_info
  • dump_format --> av_dump_format
  • CODEC_TYPE_VIDEO --> AVMEDIA_TYPE_VIDEO
  • avcodec_open --> avcodec_open2
  • avcodec_decode_video --> avcodec_decode_video2
  • img_convert --> sws_scale
  • av_close_input_file --> avformat_close_input
  • avcodec_decode_audio2 --> avcodec_decode_audio4
  • CODEC_TYPE_AUDIO --> AVMEDIA_TYPE_AUDIO
  • url_set_interrupt_cb --> avio_open2
  • url_ferror --> check attribute is->pFormatCtx->pb->error
  • pstrcpy --> av_strlcpy

Building and Running

First, make sure you have a recent installation of FFmpeg. It's recommended that you build FFmpeg from source as described in this link.

To build the tutorials:

git clone git@github.com:chelyaev/ffmpeg-tutorial.git
cd ffmpeg-tutorial
make

To run a tutorial, first make sure that your ffmpeg installation is on your $LD_LIBRARY_PATH and then:

bin/tutorial01.out

空文件

简介

A set of tutorials that demonstrates how to write a video player based on FFmpeg 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/StarsGreenPersonal/ffmpeg-tutorial.git
git@gitee.com:StarsGreenPersonal/ffmpeg-tutorial.git
StarsGreenPersonal
ffmpeg-tutorial
ffmpeg-tutorial
master

搜索帮助