ffmpeg开发出现的问题(四) ftp/rstp/ts 流输出
2013-10-17 15:37
597 查看
之于使用ffmpeg完成流的输入和流的输出. 之前一直以为困难重重, 做好看协议的打算了.阅读源码方晓新版的ffmepg支持流的输入和流的输出.现在测试通过了. 实现的仅仅是最简单的ftp流输入/转码/ftp流输出. 并且效果和本地的文件一样,速度亦不相上下.实在是值得记录的大事之一.
网上关于流的输入或者输出,都是怎么实现协议和封装般的长篇累牍. 资料更是寥若星辰, 针对不同的应用, 亦是五花八门. 让初学者望而生畏. 所谓解决方法只是表象, 源码才是王道. 现将调试问题记录之, 以飨来者
1. 流的输入和输出, 路径, 端口, 用户名, 密码, 权限. 这些是开发之前最基本的问题. 针对ftp问题, 之前忘记了写权限, 默认搭建的服务器是只读的, 这个花费了很长时间
2. 用到的函数av_guess_format("ftp", NULL, NULL); 发现这个函数无用, 被包含在avio_open()函数中, 调用这个函数,返回的是空,导致后面操作段错误
3. AVFormatContext *cc=avformat_alloc_context();如果用这个函数来分配容器,对应里面好多数据都是空的.应该用avformat_alloc_output_context(); 看这个函数的源码发现,里面更严谨,更可靠
4.开发步骤:
~ 先本地完成读入文件/转码/写入文件
这一步在ffmpeg的/doc/example中有好多已经实现,不过每个程序对应的只是里面其中的一个步骤 , 要做的工作是, 根据需求, 把这些功能组合起来
~ 添加读入文件, 改成流的形势, 这个只要搭好环境就行了
~ 写入文件, 这步就得写好各个配置了. 最主要的是avio_open函数, 看下源码, 赋值, 调试到这一步后, 看ftp服务器有没有检测到连接. 否则是你这边出问题了
网上关于流的输入或者输出,都是怎么实现协议和封装般的长篇累牍. 资料更是寥若星辰, 针对不同的应用, 亦是五花八门. 让初学者望而生畏. 所谓解决方法只是表象, 源码才是王道. 现将调试问题记录之, 以飨来者
1. 流的输入和输出, 路径, 端口, 用户名, 密码, 权限. 这些是开发之前最基本的问题. 针对ftp问题, 之前忘记了写权限, 默认搭建的服务器是只读的, 这个花费了很长时间
2. 用到的函数av_guess_format("ftp", NULL, NULL); 发现这个函数无用, 被包含在avio_open()函数中, 调用这个函数,返回的是空,导致后面操作段错误
3. AVFormatContext *cc=avformat_alloc_context();如果用这个函数来分配容器,对应里面好多数据都是空的.应该用avformat_alloc_output_context(); 看这个函数的源码发现,里面更严谨,更可靠
4.开发步骤:
~ 先本地完成读入文件/转码/写入文件
这一步在ffmpeg的/doc/example中有好多已经实现,不过每个程序对应的只是里面其中的一个步骤 , 要做的工作是, 根据需求, 把这些功能组合起来
~ 添加读入文件, 改成流的形势, 这个只要搭好环境就行了
~ 写入文件, 这步就得写好各个配置了. 最主要的是avio_open函数, 看下源码, 赋值, 调试到这一步后, 看ftp服务器有没有检测到连接. 否则是你这边出问题了
相关文章推荐
- Managed Media Aggregation using Rtsp and Rtp
- 利用Ffmpeg获得flv视频缩略图和视频时间的代码
- FFmpeg音视频编解码实践总结
- FFMPEG SDK 开发介绍
- Android NDK r8b 和 FFmpeg 0.11.2 移植
- HelloWorld App of ffmpeg JNI
- MPEG原理简介
- 笔记:使用FFMpeg进行H264编码
- ios 配置编译好的ffmpeg解码库报错
- ffmpeg 中 swscale 的用法
- FFMPEG SDK 开发介绍 -- Filter 篇
- ffmpeg avpicture_fill与sws_scale的一些使用
- ffmpeg中的sws_scale算法性能测试
- Correct Smartphone Video Orientation and How To Rotate iOS and Android Videos with ffmpeg
- 使用msvc 编译 ffmpeg 1.1
- windows下编译ffmpeg库
- FFmpeg和SDL的API
- FFmpeg和SDL的API
- opencv学习记录(1)安装与配置
- ubuntu 下 ffmpeg安装 添加h264支持,支持转码mp4文件