ffmpeg android ijkplayer
peckjerry
不折不扣
展开
-
ijkplayer阅读笔记04-音频解码线程详解
ijkplayer阅读笔记04这章主要介绍音频线程流程:audio_thread{ do { decoder_decode_frame(ffp, &is->auddec, frame, NULL){ packet_queue_get_or_buffering(ffp, d->queue, &pkt) avcodec_decode_a原创 2015-08-14 17:49:48 · 2467 阅读 · 0 评论 -
ijkplayer阅读笔记06-音频流程
本节主要介绍音频从读取,到解码,再到播放的流程:音频解码流程:1)读取线程read_thread{ avformat_open_input avformat_find_stream_info for (i = 0; i nb_streams; i++) { AVStream *st = ic->streams[i]; enum AVMed原创 2015-08-17 11:03:04 · 3557 阅读 · 1 评论 -
ijkplayer阅读笔记03-视频解码线程详解
ijkplayer阅读笔记03这章主要介绍音视频解码和显示线程流程,代码流程如下:video_thread{ ffpipenode_run_sync(ffp->node_vdec);{ node->func_run_sync(node);{ // decoder_from_android_mediacodec SDL_CreateThreadEx(e原创 2015-08-14 17:45:36 · 5244 阅读 · 1 评论 -
ijkplayer阅读笔记02-创建音视频读取,解码,播放线程
ijkplayer阅读笔记021.在这一章主要介绍音视频解码和显示线程的创建和启动,直接贴代码如下:IjkMediaPlayer_prepareAsync{ ijkmp_prepare_async_l{ ijkmp_change_state_l(mp, MP_STATE_ASYNC_PREPARING); msg_queue_start(&mp->ffplay原创 2015-08-14 16:54:20 · 5392 阅读 · 2 评论 -
ijkplayer阅读笔记01-初始化操作
ijkplayer初始化流程简介原创 2015-08-14 16:12:54 · 10405 阅读 · 2 评论 -
ijkplayer阅读笔记05-视频显示线程详解
ijkplayer阅读笔记05这章主要介绍视频显示线程,代码流程如下:video_refresh_thread { IJKFF_Pipenode *node = ffpipeline_open_video_output(ffp->pipeline, ffp); ffpipenode_run_sync(node);{ ffp_video_ref原创 2015-08-14 17:54:26 · 2587 阅读 · 1 评论 -
ijkplayer阅读笔记07-视频流程
本节主要讲解视频流程,流程如下:读取视频包 ------> 解码 ------> 显示视频流程:1)读取线程:读取视频包,推入videoq队列中read_thread{ ret = stream_component_open(ffp, st_index[AVMEDIA_TYPE_VIDEO]);{ is->video_tid = SDL_CreateThre原创 2015-08-17 17:06:34 · 5464 阅读 · 1 评论 -
ffmpeg time_base详解
ffmpeg time_baseffmpeg存在多个时间基准(time_base),对应不同的阶段(结构体),每个time_base具体的值不一样,ffmpeg提供函数在各个time_base中进行切换。搞清楚各个time_base的来源,对于阅读ffmpeg的代码很重要。一、time_base1、AVStream(libavformat/avformat.h)typede转载 2015-09-10 15:46:41 · 20217 阅读 · 3 评论