2024-07-08
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Записи, связанные с FFmpeg:
Пример проекта:
[FFmpeg] Вызов библиотеки ffmpeg для реализации программного редактирования 264.
[FFmpeg] Вызов библиотеки ffmpeg для реализации мягкого декодирования 264.
[FFmpeg] Вызов библиотеки ffmpeg для отправки и получения потоков RTMP.
[FFmpeg] Вызов библиотеки ffmpeg для рендеринга после декодирования SDL2.
Анализ процесса:
[FFmpeg]Простой разбор основных функций по ссылке кодирования
[FFmpeg]Простой разбор основных функций по ссылке декодирования
Структурный анализ:
【FFmpeg】Структура AVCodec
【FFmpeg】Структура AVCodecContext
【FFmpeg】Структура AVStream
【FFmpeg】Структура AVFormatContext
【FFmpeg】Структура AVIOContext
【FFmpeg】Структура AVPacket
Функциональный анализ:
【Общий】
【FFmpeg】avcodec_find_encoder и avcodec_find_decoder
[FFmpeg] Инициализация и освобождение ключевых структур (AVFormatContext, AVIOContext и т.д.)
【FFmpeg】функция avcodec_open2
【Push-стриминг】
【FFmpeg】функция avformat_open_input
【FFmpeg】функция avformat_find_stream_info
【FFmpeg】функция avformat_alloc_output_context2
【FFmpeg】функция avio_open2
【FFmpeg】функция avformat_write_header
【FFmpeg】функция av_write_frame
【кодирование】
【FFmpeg】функция avcodec_send_frame
Основная функция функции — отправить сжатый пакет в декодер для декодирования. Определение находится в 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-