• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/ap/gpl/minidlna/ffmpeg-2.3.4/libavformat/

Lines Matching defs:mmst

100 static void start_command_packet(MMSTContext *mmst, MMSCSPacketType packet_type)
102 MMSContext *mms = &mmst->mms;
110 bytestream_put_le32(&mms->write_out_ptr, mmst->outgoing_packet_seq++);
126 static int send_command_packet(MMSTContext *mmst)
128 MMSContext *mms = &mmst->mms;
170 static int send_time_test_data(MMSTContext *mmst)
172 start_command_packet(mmst, CS_PKT_TIMING_DATA_REQUEST);
173 insert_command_prefixes(&mmst->mms, 0x00f0f0f0, 0x0004000b);
174 return send_command_packet(mmst);
177 static int send_protocol_select(MMSTContext *mmst)
181 MMSContext *mms = &mmst->mms;
183 start_command_packet(mmst, CS_PKT_PROTOCOL_SELECT);
198 return send_command_packet(mmst);
201 static int send_media_file_request(MMSTContext *mmst)
204 MMSContext *mms = &mmst->mms;
205 start_command_packet(mmst, CS_PKT_MEDIA_FILE_REQUEST);
209 if ((ret = mms_put_utf16(mms, mmst->path + 1)) < 0) // +1 for skip "/"
212 return send_command_packet(mmst);
215 static void handle_packet_stream_changing_type(MMSTContext *mmst)
217 MMSContext *mms = &mmst->mms;
221 mmst->header_packet_id= AV_RL32(mms->in_buffer + 40 + 7);
222 av_dlog(NULL, "Changed header prefix to 0x%x", mmst->header_packet_id);
225 static int send_keepalive_packet(MMSTContext *mmst)
228 start_command_packet(mmst, CS_PKT_KEEPALIVE);
229 insert_command_prefixes(&mmst->mms, 1, 0x100FFFF);
230 return send_command_packet(mmst);
245 static MMSSCPacketType get_tcp_server_response(MMSTContext *mmst)
249 MMSContext *mms = &mmst->mms;
270 mmst->incoming_flags= mms->in_buffer[3];
316 mmst->incoming_packet_seq = AV_RL32(mms->in_buffer);
318 mmst->incoming_flags = mms->in_buffer[5];
340 if(packet_id_type == mmst->header_packet_id) {
356 if (mmst->incoming_flags == 0x04)
358 } else if(packet_id_type == mmst->packet_id) {
368 send_keepalive_packet(mmst);
371 handle_packet_stream_changing_type(mmst);
379 static int mms_safe_send_recv(MMSTContext *mmst,
380 int (*send_fun)(MMSTContext *mmst),
385 int ret = send_fun(mmst);
392 if ((type = get_tcp_server_response(mmst)) != expect_type) {
402 static int send_media_header_request(MMSTContext *mmst)
404 MMSContext *mms = &mmst->mms;
405 start_command_packet(mmst, CS_PKT_MEDIA_HEADER_REQUEST);
420 return send_command_packet(mmst);
424 static int send_startup_packet(MMSTContext *mmst)
428 MMSContext *mms = &mmst->mms;
435 "7E667F5D-A661-495E-A512-F55686DDA178", mmst->host);
437 start_command_packet(mmst, CS_PKT_INITIAL);
442 return send_command_packet(mmst);
446 static int send_stream_selection_request(MMSTContext *mmst)
449 MMSContext *mms = &mmst->mms;
451 start_command_packet(mmst, CS_PKT_STREAM_ID_REQUEST);
458 return send_command_packet(mmst);
461 static int send_close_packet(MMSTContext *mmst)
463 start_command_packet(mmst, CS_PKT_STREAM_CLOSE);
464 insert_command_prefixes(&mmst->mms, 1, 1);
466 return send_command_packet(mmst);
472 MMSTContext *mmst = (MMSTContext *)h->priv_data;
473 MMSContext *mms = &mmst->mms;
475 send_close_packet(mmst);
486 static int send_media_packet_request(MMSTContext *mmst)
488 MMSContext *mms = &mmst->mms;
489 start_command_packet(mmst, CS_PKT_START_FROM_PKT_ID);
499 mmst->packet_id++; // new packet_id
500 bytestream_put_le32(&mms->write_out_ptr, mmst->packet_id);
501 return send_command_packet(mmst);
513 MMSTContext *mmst = h->priv_data;
519 mms = &mmst->mms;
523 mmst->host, sizeof(mmst->host), &port, mmst->path,
524 sizeof(mmst->path), uri);
530 ff_url_join(tcpname, sizeof(tcpname), "tcp", NULL, mmst->host, port, NULL);
536 mmst->packet_id = 3; // default, initial value.
537 mmst->header_packet_id = 2; // default, initial value.
538 err = mms_safe_send_recv(mmst, send_startup_packet, SC_PKT_CLIENT_ACCEPTED);
541 err = mms_safe_send_recv(mmst, send_time_test_data, SC_PKT_TIMING_TEST_REPLY);
544 err = mms_safe_send_recv(mmst, send_protocol_select, SC_PKT_PROTOCOL_ACCEPTED);
547 err = mms_safe_send_recv(mmst, send_media_file_request, SC_PKT_MEDIA_FILE_DETAILS);
550 err = mms_safe_send_recv(mmst, send_media_header_request, SC_PKT_HEADER_REQUEST_ACCEPTED);
553 err = mms_safe_send_recv(mmst, NULL, SC_PKT_ASF_HEADER);
556 if((mmst->incoming_flags != 0X08) && (mmst->incoming_flags != 0X0C)) {
573 err = mms_safe_send_recv(mmst, send_stream_selection_request, SC_PKT_STREAM_ID_ACCEPTED);
577 err = mms_safe_send_recv(mmst, send_media_packet_request, SC_PKT_MEDIA_PKT_FOLLOWS);
593 MMSTContext *mmst = h->priv_data;
594 MMSContext *mms = &mmst->mms;
607 int err = mms_safe_send_recv(mmst, NULL, SC_PKT_ASF_MEDIA);
632 .name = "mmst",