2024-07-08
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
FFmpeg-tietueet:
Esimerkkiprojekti:
[FFmpeg] Kutsu ffmpeg-kirjasto toteuttaaksesi 264 pehmeän muokkauksen
[FFmpeg] Kutsu ffmpeg-kirjasto toteuttaaksesi 264 pehmeän dekoodauksen
[FFmpeg] Soita ffmpeg-kirjastoon työnnä ja vedä RTMP-virtoja
[FFmpeg] Kutsu ffmpeg-kirjasto renderöimään SDL2-dekoodauksen jälkeen
Prosessianalyysi:
[FFmpeg] Yksinkertainen analyysi koodauslinkin päätoiminnoista
[FFmpeg] Yksinkertainen analyysi dekoodauslinkin päätoiminnoista
Rakenteellinen analyysi:
【FFmpeg】AVCodec-rakenne
【FFmpeg】AVCodecContext-rakenne
【FFmpeg】AVStream-rakenne
【FFmpeg】AVFormatContext-rakenne
【FFmpeg】AVIOContekstirakenne
【FFmpeg】AVPacket-rakenne
Toimintoanalyysi:
【Kenraali】
【FFmpeg】avcodec_find_encoder和avcodec_find_decoder
[FFmpeg] Avainrakenteiden alustus ja vapauttaminen (AVFormatContext, AVIOContext jne.)
【FFmpeg】avcodec_open2-funktio
【Push-suoratoisto】
【FFmpeg】avformat_open_input-toiminto
【FFmpeg】avformat_find_stream_info-toiminto
【FFmpeg】avformat_alloc_output_context2-funktio
【FFmpeg】avio_open2-funktio
【FFmpeg】avformat_write_header-funktio
【FFmpeg】av_write_frame-funktio
【koodaus】
【FFmpeg】avcodec_send_frame-funktio
Toiminnon päätehtävä on lähettää pakattu paketti dekooderille. Määritelmä sijaitsee tiedostossa libavcodecdecode.c
/**
* Supply raw packet data as input to a decoder.
*
* Internally, this call will copy relevant AVCodecContext fields, which can
* influence decoding per-packet, and apply them when the packet is actually
* decoded. (For example AVCodecContext.skip_frame, which might direct the
* decoder to drop the frame contained by the packet sent with this function.)
*
* @warning The input buffer, avpkt-