I need a Pcap Log for the interface between MSC/VLR and HLR (C or D), or between SGSN and HLR (Gr) with MAP/TCAP/SCCP protocol stack.
How can find that? or Is there anyone to give me that Pcap log?
You could find pcap files containing MAP/TCAP/SCCP protocols here and here
Related
I'm writing a dissector in wireshark for parse received packets. As we know there three types of RLC packet, that are TM, UM and AM RLC PDU. But how could I know the type of received packet?
There is an LTE RLC dissector in the official sources, see:
- https://code.wireshark.org/review/gitweb?p=wireshark.git;a=blob;f=epan/dissectors/packet-rlc-lte.c
- https://code.wireshark.org/review/gitweb?p=wireshark.git;a=blob;f=epan/dissectors/packet-rlc-lte.h
There are several pieces of information, including the RLC mode, that are not contained in the frame and must be told to the dissector in order for it to decode the PDU properly. In the header file, see struct rlc_lte_info.
It is then up to the calling dissector, e.g. the LTE MAC dissector, to correctly fill in this context information before calling the RLC dissector.
TM RLC PDUs are usually control channel information (BCCH, DL/UL CCCH and PCCH) This where you can indirectly discern TM from AM/UM RLC PDUs. As with UMTS there is no specific bit flag to tell you what mode the PDU is. example excerpt from specs docs.
3GPP TS 36.322 Evolved Universal Terrestial Radio Access (E-UTRA)
....... page 11
An AM RLC entity delivers/receives the following RLC data PDUs:
AMD PDU;
AMD PDU segment.
An AM RLC entity delivers/receives the following RLC control PDU:
STATUS PDU.
.......
Thus you have to follow to the letter what the RLC rules are implemented on this release of the specs. You have to check if line 344 in (https://code.wireshark.org/review/gitweb?p=wireshark.git;a=blob;f=epan/dissectors/packet-rlc-lte.c) follows the rules in 3GPP TS 36.322 Evolved Universal Terrestial Radio Access (E-UTRA).
By the value of logical channel ID.
for the same socket, I want to register two events: one is EPOLLIN and another is EPOLLOUT|EPOLLET.
so for input, I want it to be level trigger and for output I want it to be edge trigger.
ev.data.fd=fd;
ev.events=EPOLLIN;
epoll_ctl(epfd,EPOLL_CTL_ADD,fd,&ev);
ev.events=EPOLLOUT|EPOLLET;
epoll_ctl(epfd,EPOLL_CTL_ADD,fd,&ev);
is it possible or not? are there any problems? thanks!
Here's from epoll(7) Questions and answers section:
Q1 What happens if you register the same file descriptor on an epoll instance twice?
A1 You will probably get EEXIST. However, it is possible to add a duplicate (dup(2), dup2(2), fcntl(2) F_DUPFD) descriptor to the same epoll instance. This can be a useful technique for filtering events, if the duplicate file descriptors are registered with different events masks.
I'm curious as to what file types are used for Motion Industry Standards Board KLV (Key Length Value). I've read the documentation at the MISB site, which is quite huge. It indicates, to my understanding, that MPEG-2, is usually used so I tried to get an idea as to what to look for in file extensions to recognise files that have the capability for embeding KLV metadata.
My question is: If a file has an extension like these - *.TS *.mpg, does that indicate potential KLV embedding? Are there any more types ? Can an active video stream from a camera contain KLV?
Any resonse or elaboration is appreciated. Thanks ahead !
As MISB docs state, only MPEG video streams for full motion video and NITF images for high resolution wide area coverage.
Mostly MPEG-TS streams, AFAIK.
You can scan your files for strings like "KLVA" or some of the keys defined in the standard to quickly detect such files with high confidence.
By scanning the titles of documents on the MISB site, one can glean that KLV can be encoded in AES3 Serial Digital Audio Streams, SMPTE 291 Ancillary Data Packets, and SDP (Session Description Protocol) [streams]. Reading a quick bit of the guidance .pdf also reveals that:
...MPEG-2 Transport Streams are a common multiplexing device for multiple data streams...
...but this does not limit KLV to only the MPEG-2 TS.
As a direct answer to your question: if the KLV stream is contained within an MPEG-2 Transport Stream, then yes - either *.ts or *.mpg files would qualify. (As would any other file capable of storing/containing an MPEG-2 Transport Stream.)
If you have further questions, reach out to me.
I'm trying to use GDCL MP4 Muxer with my RTSP Source Filter. They work fine together except after stopping the graph, muxer doesn't finilize the file and write the reqiured tables to the end of file via file writer (some parts are written starting from moov but not the time table values). When I try another RTSP source filter (which I don't have its source codes), table values are created with GDCL MP4 Muxer.
But when I try Elecard's MP4 Muxer, it works fine with my RTSP Source Filter. So, there is an incompatibility. I examined GDCL's source codes but couldn't find what it was expecting from me. I already calculate and set timestamp values to samples using SetTime method. But GDCL still doesn't finilaze file. Is it caused by missing information or missing signal when graph stops? What can be the problem, any ideas?
One thing you should be aware of regarding Geraint's MP4 Mux is that it is checking incoming media samples to have both start and stop time. You might be having only .tStart/AM_SAMPLE_TIMEVALID which still makes sense for video, but this would be a problem.
So the samples have to have stop time, or you need to fix this in multiplexer code.
A typical symptom for the problem is that generated files are empty or of zero duration.
I am building an application that needs to read H264 and AC3 streams from a MP4 container and mux them into a single ISMV file. The source MP4 file contains a number of video streams of different bitrates and a number of audio streams of different languages.
When I call IGraphBuilder::AddSourceFilter for my source file, I get a filter that has just two output pins: "Video" and "Audio". How do I choose which particular stream (e.g.: which bitrate of a video stream) to use for "Video" and "Audio"?
Do I have to instantiate multiple source filters to read that file and mux them into ISMV, or am I missing something?
That depends on the demux you are using for MP4. I don't think there is a stock MP4 demux, so you have probably got one as part of a decoder package, and that is acting as both source and demux.
You can try the free open-source MP4 demux at www.gdcl.co.uk/mpeg4. You will need to AddSourceFilter (getting a file source with a single output) and then explicitly connect the source output to the demux input. Then you will have output pins corresponding to all enabled streams that the demux understands, and you can select the ones you want.
G