Home | History | Annotate | Download | only in audio

Lines Matching refs:sep

377 	gboolean starting;	/* only valid while sep state == OPEN */
451 struct avdtp_local_sep *sep,
745 struct avdtp_remote_sep *sep = l->data;
747 if (sep->seid == seid)
748 return sep;
823 struct avdtp_local_sep *sep = stream->lsep;
825 if (stream->close_int && sep->cfm && sep->cfm->close)
826 sep->cfm->close(stream->session, sep, stream, NULL,
827 sep->user_data);
835 avdtp_sep_set_state(stream->session, sep, AVDTP_STATE_IDLE);
878 struct avdtp_local_sep *sep = stream->lsep;
890 if (!stream->open_acp && sep->cfm && sep->cfm->open) {
893 sep->cfm->open(session, sep, NULL, &err,
894 sep->user_data);
905 /* Apply special settings only if local SEP is of type SRC */
906 if (sep->info.type != AVDTP_SEP_TYPE_SOURCE)
932 if (!stream->open_acp && sep->cfm && sep->cfm->open)
933 sep->cfm->open(session, sep, stream, NULL, sep->user_data);
935 avdtp_sep_set_state(session, sep, AVDTP_STATE_OPEN);
1035 struct avdtp_local_sep *sep,
1038 struct avdtp_stream *stream = sep->stream;
1044 error("Error changing sep state: stream not available");
1048 if (sep->state == state) {
1055 avdtp_statestr(sep->state),
1059 old_state = sep->state;
1060 sep->state = state;
1064 if (sep->info.type == AVDTP_SEP_TYPE_SINK)
1127 struct avdtp_local_sep *sep = stream->lsep;
1129 if (sep->cfm && sep->cfm->abort &&
1130 (sep->state != AVDTP_STATE_ABORTING ||
1132 sep->cfm->abort(session, sep, stream, NULL, sep->user_data);
1134 avdtp_sep_set_state(session, sep, AVDTP_STATE_IDLE);
1255 struct avdtp_local_sep *sep = l->data;
1257 if (sep->info.seid == seid)
1258 return sep;
1273 struct avdtp_remote_sep *sep = l->data;
1278 if (sep->type == lsep->info.type)
1281 if (sep->media_type != lsep->info.media_type)
1284 if (!sep->codec)
1287 cap = sep->codec;
1293 if (sep->stream == NULL)
1294 return sep;
1370 struct avdtp_local_sep *sep = l->data;
1372 memcpy(&seps[i], &sep->info, sizeof(struct seid_info));
1387 struct avdtp_local_sep *sep = NULL;
1399 sep = find_local_sep_by_seid(session->server, req->acp_seid);
1400 if (!sep) {
1408 if (!sep->ind->get_capability(session, sep, get_all, &caps,
1409 &err, sep->user_data))
1439 sep;
1456 sep = stream->lsep;
1457 sep->stream = stream;
1458 sep->info.inuse = 1;
1461 avdtp_sep_set_state(session, sep, AVDTP_STATE_CONFIGURED);
1468 struct avdtp_local_sep *sep;
1480 sep = find_local_sep_by_seid(session->server, req->acp_seid);
1481 if (!sep) {
1486 if (sep->stream) {
1499 switch (sep->info.type) {
1524 stream->lsep = sep;
1544 if (sep->ind && sep->ind->set_configuration) {
1545 if (!sep->ind->set_configuration(session, sep, stream,
1548 sep->user_data)) {
1560 sep->stream = stream;
1561 sep->info.inuse = 1;
1564 avdtp_sep_set_state(session, sep, AVDTP_STATE_CONFIGURED);
1582 struct avdtp_local_sep *sep = NULL;
1595 sep = find_local_sep_by_seid(session->server, req->acp_seid);
1596 if (!sep) {
1600 if (!sep->stream || !sep->stream->caps) {
1605 for (l = sep->stream->caps, rsp_size = 0; l != NULL; l = g_slist_next(l)) {
1633 struct avdtp_local_sep *sep;
1642 sep = find_local_sep_by_seid(session->server, req->acp_seid);
1643 if (!sep) {
1648 if (sep->state != AVDTP_STATE_CONFIGURED) {
1653 stream = sep->stream;
1655 if (sep->ind && sep->ind->open) {
1656 if (!sep->ind->open(session, sep, stream, &err,
1657 sep->user_data))
1681 struct avdtp_local_sep *sep;
1700 sep = find_local_sep_by_seid(session->server,
1702 if (!sep || !sep->stream) {
1707 stream = sep->stream;
1710 if (sep->state != AVDTP_STATE_OPEN ||
1717 if (sep->ind && sep->ind->start) {
1718 if (!sep->ind->start(session, sep, stream, &err,
1719 sep->user_data))
1723 avdtp_sep_set_state(session, sep, AVDTP_STATE_STREAMING);
1741 struct avdtp_local_sep *sep;
1750 sep = find_local_sep_by_seid(session->server, req->acp_seid);
1751 if (!sep || !sep->stream) {
1756 if (sep->state != AVDTP_STATE_OPEN &&
1757 sep->state != AVDTP_STATE_STREAMING) {
1762 stream = sep->stream;
1764 if (sep->ind && sep->ind->close) {
1765 if (!sep->ind->close(session, sep, stream, &err,
1766 sep->user_data))
1770 avdtp_sep_set_state(session, sep, AVDTP_STATE_CLOSING);
1790 struct avdtp_local_sep *sep;
1809 sep = find_local_sep_by_seid(session->server,
1811 if (!sep || !sep->stream) {
1816 stream = sep->stream;
1818 if (sep->state != AVDTP_STATE_STREAMING) {
1823 if (sep->ind && sep->ind->suspend) {
1824 if (!sep->ind->suspend(session, sep, stream, &err,
1825 sep->user_data))
1829 avdtp_sep_set_state(session, sep, AVDTP_STATE_OPEN);
1846 struct avdtp_local_sep *sep;
1855 sep = find_local_sep_by_seid(session->server, req->acp_seid);
1856 if (!sep || !sep->stream) {
1861 if (sep->ind && sep->ind->abort) {
1862 if (!sep->ind->abort(session, sep, sep->stream, &err,
1863 sep->user_data))
1870 avdtp_sep_set_state(session, sep, AVDTP_STATE_ABORTING);
1890 struct avdtp_local_sep *sep;
1899 sep = find_local_sep_by_seid(session->server, req->acp_seid);
1900 if (!sep || !sep->stream) {
1905 stream = sep->stream;
1907 if (sep->state != AVDTP_STATE_CONFIGURED &&
1908 sep->state != AVDTP_STATE_STREAMING) {
1915 if (sep->ind && sep->ind->delayreport) {
1916 if (!sep->ind->delayreport(session, sep, stream->rseid,
1918 sep->user_data))
2737 struct avdtp_remote_sep *sep;
2748 sep = find_remote_sep(session->seps, resp->seps[i].seid);
2749 if (!sep) {
2752 sep = g_new0(struct avdtp_remote_sep, 1);
2753 session->seps = g_slist_append(session->seps, sep);
2756 sep->stream = stream;
2757 sep->seid = resp->seps[i].seid;
2758 sep->type = resp->seps[i].type;
2759 sep->media_type = resp->seps[i].media_type;
2762 req.acp_seid = sep->seid;
2779 sep;
2796 sep = find_remote_sep(session->seps, seid);
2798 DBG("seid %d type %d media %d", sep->seid,
2799 sep->type, sep->media_type);
2801 if (sep->caps) {
2802 g_slist_foreach(sep->caps, (GFunc) g_free, NULL);
2803 g_slist_free(sep->caps);
2804 sep->caps = NULL;
2805 sep->codec = NULL;
2806 sep->delay_reporting = FALSE;
2809 sep->caps = caps_to_list(resp->caps, size - sizeof(struct getcap_resp),
2810 &sep->codec, &sep->delay_reporting);
2820 struct avdtp_local_sep *sep = stream->lsep;
2822 if (sep->cfm && sep->cfm->set_configuration)
2823 sep->cfm->set_configuration(session, sep, stream, NULL,
2824 sep->user_data);
2826 avdtp_sep_set_state(session, sep, AVDTP_STATE_CONFIGURED);
2841 struct avdtp_local_sep *sep = stream->lsep;
2845 avdtp_sep_set_state(session, sep, AVDTP_STATE_IDLE);
2858 struct avdtp_local_sep *sep = stream->lsep;
2860 if (sep->cfm && sep->cfm->start)
2861 sep->cfm->start(session, sep, stream, NULL, sep->user_data);
2865 if (sep->state != AVDTP_STATE_STREAMING)
2866 avdtp_sep_set_state(session, sep, AVDTP_STATE_STREAMING);
2875 struct avdtp_local_sep *sep = stream->lsep;
2877 avdtp_sep_set_state(session, sep, AVDTP_STATE_CLOSING);
2888 struct avdtp_local_sep *sep = stream->lsep;
2890 avdtp_sep_set_state(session, sep, AVDTP_STATE_OPEN);
2892 if (sep->cfm && sep->cfm->suspend)
2893 sep->cfm->suspend(session, sep, stream, NULL, sep->user_data);
2902 struct avdtp_local_sep *sep = stream->lsep;
2904 avdtp_sep_set_state(session, sep, AVDTP_STATE_ABORTING);
2906 if (sep->cfm && sep->cfm->abort)
2907 sep->cfm->abort(session, sep, stream, NULL, sep->user_data);
2909 avdtp_sep_set_state(session, sep, AVDTP_STATE_IDLE);
2918 struct avdtp_local_sep *sep = stream->lsep;
2920 if (sep->cfm && sep->cfm->delay_report)
2921 sep->cfm->delay_report(session, sep, stream, NULL, sep->user_data);
3046 struct avdtp_local_sep *sep = stream ? stream->lsep : NULL;
3067 if (sep && sep->cfm && sep->cfm->open)
3068 sep->cfm->open(session, sep, stream, &err,
3069 sep->user_data);
3076 if (sep && sep->cfm && sep->cfm->set_configuration)
3077 sep->cfm->set_configuration(session, sep, stream,
3078 &err, sep->user_data);
3085 if (sep && sep->cfm && sep->cfm->reconfigure)
3086 sep->cfm->reconfigure(session, sep, stream, &err,
3087 sep->user_data);
3094 if (sep && sep->cfm && sep->cfm->start) {
3095 sep->cfm->start(session, sep, stream, &err,
3096 sep->user_data);
3105 if (sep && sep->cfm && sep->cfm->suspend)
3106 sep->cfm->suspend(session, sep, stream, &err,
3107 sep->user_data);
3114 if (sep && sep->cfm && sep->cfm->close) {
3115 sep->cfm->close(session, sep, stream, &err,
3116 sep->user_data);
3125 if (sep && sep->cfm && sep->cfm->abort)
3126 sep->cfm->abort(session, sep, stream, &err,
3127 sep->user_data);
3134 if (sep && sep->cfm && sep->cfm->delay_report)
3135 sep->cfm->delay_report(session, sep, stream, &err,
3136 sep->user_data);
3269 struct avdtp_remote_sep *sep = l->data;
3271 if (sep->seid == seid)
3272 return sep;
3278 uint8_t avdtp_get_seid(struct avdtp_remote_sep *sep)
3280 return sep->seid;
3283 uint8_t avdtp_get_type(struct avdtp_remote_sep *sep)
3285 return sep->type;
3288 struct avdtp_service_capability *avdtp_get_codec(struct avdtp_remote_sep *sep)
3290 return sep->codec;
3293 gboolean avdtp_get_delay_reporting(struct avdtp_remote_sep *sep)
3295 return sep->delay_reporting;
3298 struct avdtp_stream *avdtp_get_stream(struct avdtp_remote_sep *sep)
3300 return sep->stream;
3693 struct avdtp_local_sep *sep;
3702 sep = g_new0(struct avdtp_local_sep, 1);
3704 sep->state = AVDTP_STATE_IDLE;
3705 sep->info.seid = g_slist_length(server->seps) + 1;
3706 sep->info.type = type;
3707 sep->info.media_type = media_type;
3708 sep->codec = codec_type;
3709 sep->ind = ind;
3710 sep->cfm = cfm;
3711 sep->user_data = user_data;
3712 sep->server = server;
3713 sep->delay_reporting = TRUE;
3715 DBG("SEP %p registered: type:%d codec:%d seid:%d", sep,
3716 sep->info.type, sep->codec, sep->info.seid);
3717 server->seps = g_slist_append(server->seps, sep);
3719 return sep;
3722 int avdtp_unregister_sep(struct avdtp_local_sep *sep)
3726 if (!sep)
3729 server = sep->server;
3730 server->seps = g_slist_remove(server->seps, sep);
3732 if (sep->stream)
3733 release_stream(sep->stream, sep->stream->session);
3735 DBG("SEP %p unregistered: type:%d codec:%d seid:%d", sep,
3736 sep->info.type, sep->codec, sep->info.seid);
3738 g_free(sep);
3808 avdtp_state_t avdtp_sep_get_state(struct avdtp_local_sep *sep)
3810 return sep->state;