播放器demo流程图
2017-01-24 14:53:45 0 举报
播放器demo流程图主要展示了一个典型的媒体播放过程。首先,用户通过界面选择要播放的媒体文件,系统接收到用户的请求后,开始初始化播放器。接着,系统加载媒体文件,包括音频或视频数据以及相关的元信息。在加载过程中,播放器显示加载进度,并在加载完成后进入播放状态。在播放过程中,用户可以进行暂停、停止、快进、快退等操作。同时,播放器还会显示当前的播放时间、音量等信息。如果用户需要调整播放速度或者音轨,也可以通过界面进行设置。在整个播放过程中,播放器都会根据用户的操作和系统的反馈,实时更新播放状态和显示信息。
作者其他创作
大纲/内容
主while循环
timer_thread
avcodec_find_decoder找到解码器并初始化,创建audio线程
push_event(AUDIO_EVENT)发消息给ui线程播放
video_thread
创建解码线程
audio_thread
while循环
pthread_create
packet_queue_get(audioQueue)取AVPacket数据
avcodec_decode_video2解码
synchronize_video计算时间戳
av_opt_set_init做些参数的初始化
avformat_open_input()打开视频文件
音频数据,packet_queue_put(audioQueue),audio_thread使用这些数据
avcodec_find_decoder找到解码器并初始化,创建video线程
REFRESH事件,则计算延时,显示视频帧
视频显示无需解码时发消息,有timer线程延时触发
swr_convert转换为pcm数据
创建timer线程
av_read_frame读取视频文件
decoder_thread
push_event(REFRESH)到ui线程,让其显示
ui线程
get_event()
avcodec_decode_audio4解码
packet_queue_get(videoQueue)取AVPacket数据
视频数据,packet_queue_put(videoQueue)
avformat_find_stream_info()读取信息
做些参数pRGBBuffer的初始化
create
outQueue查询定时器队列,sleep_ms(delay)
0 条评论
下一页