首页
Python
Java
前端
数据库
Linux
Chatgpt专题
开发者工具箱
裸流专题
windows ffmpeg7 通过rtsp拉取h265裸流
点击下边那个链接会转到github 下载完成后,添加include、lib到工程。 添加头文件: extern "C" {#include "libavcodec/avcodec.h"#include "libavformat/avformat.h"#include "libavformat/avio.h"#include "libswscale/swscale.h"}
阅读更多...
解码AVC(h264)裸流为yuv420P写入文件
使用AVC裸流解析器解析AVC裸流文件,然后解码为yuv420P格式写入文件 // 解码h264#include "myLog.h"#include <iostream>extern "C"{#include "libavcodec\avcodec.h"}#define VIDEO_INBUF_SIZE 20480 // 最初读取数据大小#define VIDEO_REFILL_T
阅读更多...
h264 裸流打包成mp4 注意事项
需求: Android 端把网络摄像头的一段正在播放的视频流,截取保存成mp4(按录像按钮时开始录像)。 实现: ffmpeg + x264 + sdl; h264 裸流 打包成MP4,在网上也有一大堆文章,ffmpeg 也有一个muxing 的 example,大致流程都是一样的,参考ffmpeg的muxing.c 就可以写一个。我这里把我在这个过程中遇到的问题写出来,这些问题困扰了我很久才
阅读更多...
ffmpeg封装h264裸流为mp4文件,视频播放速度特别慢
计算实际帧率时,需要从mp4的moov box中的mvhd中取得timescale和duration,将两者相除得到文件总时长, 再从stsz box中取得sample总数,即总帧数sample_count,用总帧数除以总时长即平均帧率,计算公式为 frame_rate = sample_count/(duration/timescale) 解决方法:通过查询mp4帧率计算得到答案:
阅读更多...
纯C读取文件实现解析H264裸流每一帧数据
最近研究硬解解码,需要解码H264流文件。 imx的例程是设置一个大的缓冲区,一次性读入不超过10M字节数据,然后全部送到解码器进行解码,对于小于10M字节的视频数据确实很方便的解码了,但是文件大了这种方式就不行了。 如果暴力分段送入解码器,因为无法找到H264的起始码,解码器会报错。 还有一种处理方式是使用FFMpeg来读取每
阅读更多...
H264裸流分析
1 SPS和PPS从何处而来? 2 SPS和PPS中的每个参数起什么作用? 3 如何解析SDP中包含的H.264的SPS和PPS串? 1、 客户端抓包 在做客户端视频解码时,一般都会使用Wireshark抓包工具对接收的H264码流进行分析,如下所示: 在这里我们可以看到对解码视频起关键作用的SPS和PPS。 双击SPS内容如下: 双击PPS内容如下: 那么从上面的sps中我们知道
阅读更多...
视频I420裸流保存为文件
1、从TvCamera的ABK回调的OnImageReceived出来的是I420的数据,保存文件的方式如下: void OnImageReceived(const uint8_t* data, size_t size, uint16_t widht, uint16_t height){..............FILE *fp = fopen("test.yuv", "wb+");f
阅读更多...