ffmpeg

ffmpeg自制api文档


AVCodecContext

<h5>简要描述</h5> <ul> <li>描述一个编解码器的内容空间</li> </ul> <h5>参数</h5> <table> <thead> <tr> <th style="text-align: left;">参数名</th> <th style="text-align: left;">类型</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">codec_type</td> <td style="text-align: left;">enum AVMediaType</td> <td>编解码器的类型(视频,音频...)</td> </tr> <tr> <td style="text-align: left;">codec</td> <td style="text-align: left;">struct AVCodec</td> <td>采用的解码器AVCodec(H.264,MPEG2...)</td> </tr> <tr> <td style="text-align: left;">bit_rate</td> <td style="text-align: left;">int</td> <td>平均比特率</td> </tr> <tr> <td style="text-align: left;">time_base</td> <td style="text-align: left;">AVRational</td> <td>根据该参数,可以把PTS转化为实际的时间(单位为秒s)</td> </tr> <tr> <td style="text-align: left;">width,height</td> <td style="text-align: left;">int</td> <td>如果是视频的话,代表宽和高</td> </tr> <tr> <td style="text-align: left;">sample_rate</td> <td style="text-align: left;">int</td> <td>采样率(音频)</td> </tr> <tr> <td style="text-align: left;">channels</td> <td style="text-align: left;">int</td> <td>声道数(音频)</td> </tr> <tr> <td style="text-align: left;">channel_layout</td> <td style="text-align: left;">uint64_t</td> <td>音频通道布局</td> </tr> <tr> <td style="text-align: left;">sample_fmt</td> <td style="text-align: left;">enum AVSampleFormat</td> <td>采样格式</td> </tr> <tr> <td style="text-align: left;">...</td> <td style="text-align: left;">...</td> <td>...</td> </tr> </tbody> </table> <h5>使用方法</h5> <pre><code class="language-cpp"> AVCodecContext *pCodecCtx = pFormatCtx-&gt;streams[streamIdx]-&gt;codec; AVCodec* pCodec = avcodec_find_decoder(pCodecCtx-&gt;codec_id); //编解码器类型 enum AVMediaType { AVMEDIA_TYPE_UNKNOWN = -1, ///&lt; Usually treated as AVMEDIA_TYPE_DATA AVMEDIA_TYPE_VIDEO, AVMEDIA_TYPE_AUDIO, AVMEDIA_TYPE_DATA, ///&lt; Opaque data information usually continuous AVMEDIA_TYPE_SUBTITLE, AVMEDIA_TYPE_ATTACHMENT, ///&lt; Opaque data information usually sparse AVMEDIA_TYPE_NB }; //音频采样格式 enum AVSampleFormat { AV_SAMPLE_FMT_NONE = -1, AV_SAMPLE_FMT_U8, ///&lt; unsigned 8 bits AV_SAMPLE_FMT_S16, ///&lt; signed 16 bits AV_SAMPLE_FMT_S32, ///&lt; signed 32 bits AV_SAMPLE_FMT_FLT, ///&lt; float AV_SAMPLE_FMT_DBL, ///&lt; double AV_SAMPLE_FMT_U8P, ///&lt; unsigned 8 bits, planar AV_SAMPLE_FMT_S16P, ///&lt; signed 16 bits, planar AV_SAMPLE_FMT_S32P, ///&lt; signed 32 bits, planar AV_SAMPLE_FMT_FLTP, ///&lt; float, planar AV_SAMPLE_FMT_DBLP, ///&lt; double, planar AV_SAMPLE_FMT_NB ///&lt; Number of sample formats. DO NOT USE if linking dynamically }; </code></pre>

页面列表

ITEM_HTML