ICode9

精准搜索请尝试: 精确搜索
  • 王纲QSV硬编码2022-01-19 12:03:02

    #ifndef PCH_H #define PCH_H extern "C" { #include "libavutil/opt.h" #include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/imgutils.h" #include "li

  • Android FFmpeg Camera2 推流直播2022-01-19 09:02:41

    FFmpeg Camera2 推流直播 自己花了点时间实现了一个使用FFmpeg将Camera2视频数据推送到RTMP服务的简单Demo,在这里分享下,里面用到知识很多都是之前博客中用到的,难度不大。 1、 定义方法 定义了三个JNI方法 public class FFmpegHandler { private FFmpegHandler() { } priv

  • Android WifiDisplay 分析-3:RTSP 建立2022-01-07 10:35:13

    RTSP server 由 Wi-Fi Display 协议可知,在建立 P2P 连接后,将启动RTSP会话进行双方能力的交互,即M1~M7七个消息的交互。 frameworks/base/media/java/android/media/RemoteDisplay.java |-- listen() 在进行参数检查后,首先创建一个 RemoteDisplay 对象,接着调用 startListe

  • 王纲视频中加水印2022-01-02 15:33:57

    #ifndef PCH_H #define PCH_H extern "C" { #include "libavutil/opt.h" #include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/imgutils.h" #include "li

  • 王纲保存图片2021-12-31 12:06:10

    #ifndef PCH_H #define PCH_H extern "C" { #include "libavutil/opt.h" #include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/imgutils.h" #include "li

  • FFmpeg代码导读——HEVC在RTMP中的扩展2021-12-31 11:36:10

    4. HEVC在RTMP中的扩展 为推进HEVC视频编码格式在直播方案中的落地,经过CDN联盟讨论,并和主流云服务厂商达成一致,规范了HEVC在RTMP/FLV中的扩展,具体修改内容见下。 4.1 FLV规范扩展 HEVC为视频编码格式,因此对FLV规范的扩展,只集中在Video Tag,其它部分,无任何改动。 4.1.1 支持HEVC的Vi

  • 王纲网络流转发2021-12-30 12:03:34

    #ifndef PCH_H #define PCH_H extern "C" { #include "libavutil/opt.h" #include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/imgutils.h" #include "li

  • 解封装(八):av_seek_frame改变播放进度函数2021-12-18 16:32:57

    av_seek_frame 函数原型: /** Seek to the keyframe at timestamp.‘timestamp’ in ‘stream_index’.@param s media file handle@param stream_index If stream_index is (-1), a defaultstream is selected, and timestamp is automatically convertedfrom AV_TIME_BASE u

  • ffmpeg使用qsv解码2021-12-17 14:59:54

    ffmpeg使用qsv硬解码出来的视频帧格式是AV_PIX_FMT_NV12格式的 //ffmpeg使用qsv硬解码出来的视频帧格式是AV_PIX_FMT_NV12格式的, //在调用sws_getContext函数时第三个参数必须强制传入AV_PIX_FMT_NV12, //否则会导致视频数据转换rgb时失败 if (bUseGPUDecoder) { m_img_conve

  • ffmpeg之avcodec_open22021-12-17 14:04:50

    目录官方源码 官方源码 /** * Initialize the AVCodecContext to use the given AVCodec. Prior to using this * function the context has to be allocated with avcodec_alloc_context3(). * 利用第二个参数codec初始化codec_ctx,此函数调用前必须使用avcodec_alloc_context

  • 解决ffmpeg打开流各种超时问题2021-12-13 18:34:20

    1.设置rtsp超时 AVDictionary* opts = NULL; av_dict_set(&opts, "rtsp_transport", m_bTcp ? "tcp" : "udp", 0); //设置tcp or udp,默认一般优先tcp再尝试udpav_dict_set(&opts, "stimeout", "3000000", 0);//设置超时3秒 int ret =

  • ffmpeg之avcodec_alloc_context32021-12-12 15:02:52

    目录结构体AVCodecContext结构体AVCodec函数声明avcodec_alloc_context3函数实现 结构体AVCodecContext 点击这里查看AVCodecContext 结构体AVCodec 点击这里查看AVCodec 函数声明avcodec_alloc_context3 /** * Allocate an AVCodecContext and set its fields to default values

  • ffmpeg 本地麦克风声音和系统声音混音后,再混合本地桌面成最终的mp4文件-修正2021-12-10 20:06:56

    之前本人写过一篇博客: ffmpeg 本地麦克风声音和系统声音混音后,再混合本地桌面成最终的mp4文件 但是存在着下面两个问题: 1.系统声音和麦克风对应的设备的采样率不一样,没有进行重采样,比如系统声音设备的采样率是 48000,若不进行重采样,则最终系统声音播放出来,会发现播放变慢。 2.

  • AVPacket 详细说明2021-12-10 12:33:04

    AVPacket中的字段可用分为两部分:实际的帧数据、帖的属性数据和相关管理信息 数据的属性有以下字段 pts 显示时间戳                                         //取值为time_base的num和den之前的值dts 解码时间戳stream_index Packet所在stream的indexflat

  • FFmpeg视频编码步骤2021-12-08 23:34:23

    未编码的视频数据放在AVFrame中, 编码的视频数据放在AVPacket 本文不介绍源码级的代码, 如何使用ffmpeg的API将AVFrame转为AVPacket并保存在文件中. 以H264编码格式为例子 假定有一个400*300尺寸的YUV420P格式的input.yuv文件,需要编码成h264 AVFrame跟AVPacket的数据都是需

  • 存储格式:packed和planar2021-12-07 23:35:27

    目录存储方式差异数据所在位置存储方式差异的影响FFmpeg对存储方式的支持常见编码器定义 存储方式差异 音视频都有packed和planar两种存储方式 packed方式为多个声道交错存储,比如双声道data[0] = LRLRLR… planar方式为多个声道独立存储,比如双声道data[0] = LLL… data[1] = RRR…

  • ffmpeg之samplefmt2021-12-04 01:32:02

    目录类型说明便捷的工具函数av_get_sample_fmt_nameav_get_sample_fmtav_get_alt_sample_fmtav_get_packed_sample_fmt 音频量化格式和相关的工具函数 类型说明 /** * Audio sample formats * * - The data described by the sample format is always in native-endian order.

  • (转载)FFMPEG一个最简单的视频播放器2021-12-01 17:04:05

    #pragma once #include <QThread> #include <QImage> class VideoPlayer :public QThread { Q_OBJECT public: VideoPlayer(); ~VideoPlayer(); void run(); private: // 延时函数 void delay(int msec); signals: void sig_GetOneFrame(

  • FFMPEG学习【libavutil】:String Manipulation2021-11-30 16:00:24

    一、宏   #define  AV_ESCAPE_FLAG_WHITESPACE   (1 << 0) 考虑空间特别,甚至在字符串的中间逃避他们。   这相当于将空格字符添加到特殊字符列表中,除了它保证使用完全相同的空格字符列表作为libavutil的其余部分。     #define  AV_ESCAPE_FLAG_STRICT   

  • FFmpeg源码分析: AVFrame与AVpacket2021-11-26 09:34:52

    FFmpeg有两个存储帧数据的结构体,其中AVPacket是解封装后保存压缩数据包,AVFrame是解码后保存音视频帧。 AVPacket结构体以前放在avcodec.h头文件中,在FFmpeg4.4以后放在单独packet.h头文件。官方对AVPacket的说明如下: /** * This structure stores compressed data. It is typica

  • 问题 AV: 找鞍点2021-11-18 21:33:15

    时间限制: 1 Sec  内存限制: 128 MB提交 状态 题目描述 在微分方程中,沿着某一方向是稳定的,另一条方向是不稳定的奇点,叫做鞍点。在泛函中,既不是极大值点也不是极小值点的临界点,叫做鞍点。在矩阵中,一个数在所在行中是最大值,在所在列中是最小值,则被称为鞍点。在物理上要广泛

  • PG守护进程(Postmaster)——后台一等公民进程2021-11-11 00:02:26

    AuxiliaryProcessMain函数是后台一等公民进程的入口,我们来看一看哪里调用了该入口函数: src/backend/main/main.c main函数,如下图所示,argv第二个参数为–boot src/backend/postmaster/postmaster.c SubPostmasterMain函数 argv第二个参数为–forkboot src/backend/postmaster/

  • ffmpeg rgb_to_mp42021-11-10 15:01:45

    视频编码 1.读取RGB文件转换为yuv 2.压缩为h264 3.封装为MP4 ffmpeg -i test.mp4 -pix_fmt bgra out.rgb av_interleaved_write_frame 1.AVFormatContext *s 2.AVPacket *pkt 3.按照dts排序 4.av_write_frame (缓冲处理dts) rgb_to_mp4.cpp extern "C" { #include <liba

  • ffmpeg 音频解码一2021-11-06 11:07:22

    1. ffmpeg 视频解码一 2. ffmpeg 视频解码二 3. ffmpeg 音频解码一 前言 前面已经介绍了视频的解码流程,这篇开始就开始音频解码了,同样是两篇,一篇使用parser解析器做解析,一篇按常规流程处理。 一些基础知识 采样率(sample_rate): 即取样频率,定义了每秒从连续信号中提取并组成离

  • ffmpeg+sdl+Qt简易播放器保存mp4文件-边播边存2021-11-02 23:03:03

    前言 开发库的版本ffmpeg3.2、sdl2.0、Qt5.12.7,在window下利用mingwin64编译。前面介绍了简易播放器的开发,这次是在前面的基础上,实现实时将解码的YUV数据编码成mp4文件存储。《最简单的FFmpeg+SDL+Qt视频播放器-播放MP4文件_ALANRUOMENG的博客-CSDN博客》 流程 代码 #include

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有