其他分享
首页 > 其他分享> > pulseaudio之pa_simple_new()流程(十八)

pulseaudio之pa_simple_new()流程(十八)

作者:互联网

1.pulseaudio/src/pulse/simple.c
pa_simple* pa_simple_new(
        const char *server,
        const char *name,
        pa_stream_direction_t dir,
        const char *dev,
        const char *stream_name,
        const pa_sample_spec *ss,
        const pa_channel_map *map,
        const pa_buffer_attr *attr,
        int *rerror) {
        
  //流程一:创建共享内存   
  p->context = pa_context_new(pa_threaded_mainloop_get_api(p->mainloop), name);        
  
  //流程二:创建socket
  pa_context_connect(p->context, server, 0, NULL);
  
  //流程三:线程创建
  pa_threaded_mainloop_start(p->mainloop);
  
  //流程四:填充play Or record参数及注册回调函数
  p->stream = pa_stream_new(p->context, stream_name, ss, map);
  
  //流程五
  pa_stream_connect_playback(p->stream, dev, attr,
                                       PA_STREAM_INTERPOLATE_TIMING
                                       |PA_STREAM_ADJUST_LATENCY
                              

标签:const,stream,simple,mainloop,pulseaudio,pa,context
来源: https://blog.csdn.net/u010164190/article/details/120497412