ffmpeg and GStreamer
文章平均质量分 79
allen_young_yang
Hello
展开
-
使用 GStreamer 进行多用途的多媒体处理
本文向您介绍 GStreamer,它是一种通用的多媒体处理库,可以使得多媒体处理更加容易。 多媒体,依照其定义,表示各种各样的媒体类型。您可以各种格式存储音频、视频和元数据。然而,这也就意味着要使用许多工具来处理这些不同的内容。 GStreamer 可以为您提供帮助。通过将所有不同的工具和库隐藏到它的插件中,以及使用媒体管道 这个一般性概念,GStreamer 能以一种统一的方式表示对不同类型媒体所进行的操作。这使得您能够将精力集中于现有的媒体,而不是困惑于究竟应该使用什么样的管道。转载 2010-08-04 08:58:00 · 1657 阅读 · 0 评论 -
ffmpeg使用x264编码的配置 ffmpeg与 x264编码器参数完整对照表
转:ffmpeg使用x264编码的配置 ffmpeg与 x264编码器参数完整对照表2011-04-27 21:58使用ffmpeg进行.264编码的相关文章比较少,google了一下,特总结如下:qscale的取值可以是0.01-255但实际使用超过50就很糟糕了ffmpeg转载 2011-07-11 15:31:38 · 2172 阅读 · 0 评论 -
生放是依靠rtmp协议进行的保护性视频传输
rtmpdump.mplayerhq.huRTMPDump则是用来突破rtmp协议的保护,把视频流保存到本地的抓取工具匈牙利人的作品似乎很牛的样子RTMP的全名是:Real Time Messaging Protocol。RTMP是Ad转载 2011-08-05 08:26:20 · 1859 阅读 · 0 评论 -
ffmpeg:创建线程同步视频和同步音频
指导4:创建线程综述前面我们利用SDL的音频函数实现了对音频解码和播放的支持,我们定义一个包含音频回调函数callbacks的线程函数,当我们需要音频的时候就使SDL启动这个线程。现在我们将要对视频播放做同样的事情,这样能使代码更容易模块化和协作,尤其有利于音视频转载 2011-08-15 14:37:30 · 4632 阅读 · 1 评论 -
ffmpeg解码音频tutorial03(个人分析)
音频解码部分用到了SDL_AudioSpec结构体,/** * When filling in the desired audio spec structure, * - 'desired->freq' should be the desired audio fr转载 2011-08-31 15:03:49 · 1396 阅读 · 0 评论 -
【移植havlenapetr】的【ffmpeg】-->【Android播放器】
重点文章(包括文章后的评论):http://blog.csdn.net/moruite/archive/2011/04/06/6305944.aspx 解决Android平台移植ffmpeg的一揽子问题”havlenapetr 最新的ffmpeg可以直接编译通过,不过有个bug,就是播放完毕后,video_decoder线程不能退出,转载 2011-12-09 11:22:06 · 2689 阅读 · 0 评论 -
FFMpeg 中比较重要的函数以及数据结构
FFMpeg 中比较重要的函数以及数据结构如下:1. 数据结构:(1) AVFormatContext(2) AVOutputFormat(3) AVInputFormat(4) AVCodecContext(5) AVCodec(6) AVFrame(7) AVPacket(8) AVPicture(9) AVStream2. 初始化函数:(1)转载 2012-02-01 13:30:20 · 1543 阅读 · 0 评论 -
ffmpeg中的http协议相关代码阅读笔记
ffmpeg中的http协议相关代码阅读笔记今天闲来无事,尝试看了下ffmpeg中的相关http协议传输处理代码先简单说下这个代码在整个仓库里面的位置:ffmpeg/libavformat/http.hffmpeg/libavformat/http.c avoi.h中的函数调用分析avoi.h是ffmpeg中libavformat/目录下的一个重要的头文件,这个文件主要转载 2011-07-18 10:01:15 · 2875 阅读 · 1 评论 -
ffmpeg的内部Video Buffer管理和传送机制
本文主要介绍ffmpeg解码器内部管理Video Buffer的原理和过程,ffmpeg的Videobuffer为内部管理,其流程大致为:注册处理函数->帧级释放->帧级申请->清空。1 注册get_buffer()和release_buffer()FFAPI_InitCodec()avcodec_alloc_context()avcodec_alloc_context2(转载 2012-02-10 11:21:23 · 2869 阅读 · 0 评论 -
FFMpeg SDK 开发手册
FFMpeg 中比较重要的函数以及数据结构如下:1. 数据结构:(1) AVFormatContext(2) AVOutputFormat(3) AVInputFormat(4) AVCodecContext(5) AVCodec(6) AVFrame(7) AVPacket(8) AVPicture(9) AVStream2. 初始化函数:(1)转载 2012-02-23 15:09:03 · 920 阅读 · 0 评论 -
C语言的面向对象设计-对X264/FFMPEG架构探讨
正文类似题目的文章已经不新鲜了,这里,我仅仅总结自己的一些代码经验,结合两款在视频开发领域比较常用的开源软件探讨C语言的应用问题。1.为什么要用C语言曾几何时,我也不熟悉C,最早接触C的是在大学四年级,当时已经学过pascal,过二级也是pascal。接着走上了Delphi的路,多方便的软件,写写画画,程序就出来了,本科的毕业设计就是这样出来的MIS,在当时还很时髦转载 2012-03-01 11:28:27 · 1090 阅读 · 0 评论 -
define宏定义中的#,##,@#及\符号
1、# (stringizing)字符串化操作符。其作用是:将宏定义中的传入参数名转换成用一对双引号括起来参数名字符串。其只能用于有传入参数的宏定义中,且必须置于宏定义体中的参数名前。如:#define example(instr) printf("the input string is:\t%s\n",#instr)#define example1(instr) #ins转载 2012-03-01 09:46:21 · 552 阅读 · 0 评论 -
X264多线程分析
很长一段时间没有写博客了,原因很多。SVC相关的研究和代码推进都暂时停止了, 因为有太多的其它学习和开发。SVC在视频的灵活传送和错误隐藏当面是有很大潜力的,但并非意味着它能适合于真正的网络工程应用。最近随着“阿凡达”的热播,很多人对3D视频的兴趣都热情起来,立体视频时代由这样的错觉3D开始,也将打开它的大幕了。 3D视频的制作超出了编解码范畴,更重要的利用视差进行渲染和视转载 2012-03-01 16:27:49 · 844 阅读 · 0 评论 -
FFMpeg的output_example.c例子分析
FFMpeg的output_example.c例子分析 该例子讲了如何输出一个libavformat库所支持格式的媒体文件。(1)av_register_all(),初始化libavcodec库,并注册所有的编解码器和格式。(2)guess_format(),转载 2011-07-04 10:51:30 · 4121 阅读 · 2 评论 -
H.264 NAL层解析
转自 http://www.tichinese.com/Article/Video/200909/2142.html 1.引言 H.264的主要目标: 1.高的视频压缩比 2.良好的网络亲和性 解决方案:VCL video coding layer转载 2011-07-05 17:12:29 · 1083 阅读 · 0 评论 -
H.264中的NAL技术
H.264中的NAL技术 分类: 协议 视频/图像 2011-0转载 2011-07-05 16:31:28 · 677 阅读 · 0 评论 -
用 GStreamer 简化 Linux 多媒体开发
一、基本概念 GStreamer 作为 GNOME 桌面环境推荐的流媒体应用框架,采用了基于插件(plugin)和管道(pipeline)的体系结构,框架中的所有的功能模块都被实现成可以插拔的组件(component), 并且在需要的时候能够很方便地安装到任意一个管道上,由于所有插件都通过管道机制进行统一的数据交换,因此很容易利用已有的各种插件“组装”出一个功能完善的多媒体应用程序。 1.1 元件处理 对于需要应用 GStreamer 框架的程序员来讲,GstElement 是一个必须理解的概念,因为转载 2010-08-04 11:13:00 · 1002 阅读 · 0 评论 -
初探GStreamer
近日准备把linux手机平台上的各大软件模块都浮光掠影蜻蜓点水的学习一遍,今天看到了多媒体处理模块,不得不去学习一下GStreamer。 GStreamer,江湖上人称“PIPELINE式的多媒体处理框架”,在该媒体处理框架将多媒体数据流处理划分成各种能够自由组合重用的节点,然后将 节点组合成串行处理的媒体处理链。看看下面的命令: gst-launch-0.10 filesrc location="concept.mp3" ! decodebin ! alsasink UNIX的粉丝们转载 2010-08-04 10:37:00 · 1913 阅读 · 0 评论 -
音频视频解决方案:GStreamer/ffmpeg/ffdshow/directshow/vfw
<br />音频视频编程相关:GStreamer/ffmpeg/directshow/vfw<br />linux和window下几种流行的音频视频编程框架作一个总结,防止自己迷惘,免于晕头转向。<br /><br />一、GStreamer<br /><br />GStreamer is a library that allows the construction of graphs of media-handling components, ranging from simple Ogg/Vorbis转载 2010-08-05 12:58:00 · 1472 阅读 · 0 评论 -
Gstreamer调度模式的分析
Gstreamer 的调度模式是 gstreamer 内核中比较重要,但是又较为复杂的部分(呵呵,好象是废话,但是又不得不说的)。简单地说, Gstreamer 的调度模式就是:一种确定一个 element 何时被调用 为它的同伴 element 处理和准备数据的方法。是不是觉得上面的话太简单又太复杂了啊?继续看。 一. Gstreamer 的三种调度模式 [1] Push/Push mode 数据由上游的 element 推过来,由当前的 element 接收处理后,再推给下游的 element 。我们可转载 2010-08-05 13:12:00 · 710 阅读 · 0 评论 -
Gstreamer的一些基本概念与A/V同步分析
一、媒体流(streams )流线程中包含事件和缓存如下:-events -NEW_SEGMENT (NS) -EOS (EOS) * -TAG (T) -buffers (B) * 其中标* 号的需要同时钟进行同步。典型的流如图1 所示:图1 媒体流组成图 (1 )NEW_SEGMENT,rate, start/stop, time 包括了有效的时间戳范围(start/stop );转载 2010-08-05 13:40:00 · 1207 阅读 · 0 评论 -
glib库简介
<br />glib库是Linux平台下最常用的C语言函数库,它具有很好的可移植性和实用性。glib是Gtk+库和Gnome的基础。glib可以在多个平台下使用,比如Linux、Unix、Windows等。glib为许多标准的、常用的C语言结构提供了相应的替代物。如果有什么东西本书没有介绍到,请参考glib的头文件:glib.h。glib.h中的头文件很容易理解,很多函数从字面上都能猜出它的用处和用法。如果有兴趣,glib的源代码也是非常好的学习材料。<br />glib的各种实用程序具有一致的接口。它的编转载 2011-03-04 15:31:00 · 4343 阅读 · 0 评论 -
GObject对象系统
GObject对象系统<br /> <br />前言<br />大多数现代的计算机语言都带有自己的类型和对象系统,并附带算法结构。正象GLib提供的基本类型和算法结构(如链表、哈希表等)一样,GObject的对象系统提供了一种灵活的、可扩展的、并容易映射(到其它语言)的面向对象的C语言框架。它的实质可以概括为: 一个通用类型系统,用来注册任意的、轻便的、单根继承的、并能推导出任意深度的结构类型的界面,它照顾组合对象的定制、初始化和内存管理,类结构,保持对象的父子关系,处理这些类型的动态实现。也就是说,这些类转载 2011-03-06 13:46:00 · 492 阅读 · 0 评论 -
ffmpeg开发指南
ffmpeg开发指南 lsosa 2006-05-20 ffmpeg 中的Libavformat 和 libavcodec库是访问大多数视频文件格式的一个很好的方法。不幸的是,在开发您自己的程序时,这套库基本上没有提供什么实际的文档可以用来作为参考(至少我没有找到任何文档),并且它的例程也并没有太多的帮助。<br /><br /> 这种情况意味着,当我在最近某个项目中需要用到 libavformat/libav转载 2011-04-28 16:28:00 · 984 阅读 · 0 评论 -
ffmpeg源码学习
<br />ffmpeg源码学习<br />最近在看ffmpeg源码,希望多了解下底层的东西,mplayer源码太过庞大,不利于快速的分析关键代码。ffmpeg恰好满足需要。<br />主要的分析内容包括如下两个方面:demuxer相关,解码器选取相关<br />1、demuxer相关<br />1.1 ffmpeg中选择demuxer的过程<br />av_open_input_file(**)->ff_probe_input_buffer(**)-->av_probe_input_forma原创 2011-05-03 08:31:00 · 4024 阅读 · 0 评论 -
C语言的面向对象设计-对X264/FFMPEG架构探讨 分享
标签: C语言 面向对象 分类: X264学习笔记 2009-07-17 00:53本文贡献给ZSVC开源社区(https://sourcefor转载 2011-06-30 17:55:00 · 1302 阅读 · 0 评论 -
FFMpeg的解码流程
FFMpeg的解码流程 标签: FFMpeg 解码 分类: 技术转载 2011-07-01 16:36:00 · 1341 阅读 · 1 评论 -
FFMpeg框架代码阅读
FFMpeg框架代码阅读 收藏 简介FFmpeg是一个集录制、转换、音/视频编码解码功能为一体的完整的开源解决方案。FFmpeg的开发是基于Linux操作系统,但是可以在大多数操作系统中编译和使用。FFmpeg支持MPEG、DivX、MPEG4、AC3、DV转载 2011-07-01 16:39:00 · 955 阅读 · 0 评论 -
ffmpeg 和 x264的参数对照
x264 ffmpeg 说明命令行字段命令行字段 qpqp_constantcqp cqp固定量化因转载 2012-03-06 17:06:59 · 1445 阅读 · 0 评论