Git Product home page Git Product logo

sipme-media-server's People

Contributors

oifayulian avatar

Forkers

gregggreggreg

sipme-media-server's Issues

UdpManager getHighestPort() bug

It's an used accessor at this point, but might as well correct it.

    /**
     * Gets the upper boundary of available range.
     * @retun min port number
     */
    public int getHighestPort() {
        return portManager.getLowestPort();
    }


Original issue reported on code.google.com by [email protected] on 23 Aug 2013 at 4:22

SBC announcement support

Add announcement support to custom endpoints imlemented for sbc.
this may be complicated since mixing is not supported in this endpoints and not 
always mms will do transcoding ( it may use codec negotiated between 2 sides 
even without having it implemented ) , therefore it will not always be possible 
to transcode audio to correct destination codec

Original issue reported on code.google.com by [email protected] on 20 Jul 2013 at 4:38

Telephone-event format 97 support

Media server could not handle with Media Format:97 telephone-event.  When  
incoming  SDP Offer  contains  rtpmap:97  telephone-event/8000,   the replied 
SDP Answer doesn't contains this  Media Attribute type.   Then cause fail to 
detect DTMF on that call session.

To solve this issue
Yulian Oifa suggest  making the following change:
In 
https://code.google.com/p/sipme-media-server/source/browse/io/rtp/src/main/java/
ua/mobius/media/server/impl/rtp/sdp/RTPFormats.java#192
Change from
for (int i = 0; i < this.rtpFormats.size(); i++) {
    for (int j = 0; j < other.size(); j++) {

        if (this.rtpFormats.get(i).getFormat().matches(other.rtpFormats.get(j).getFormat())) {
                        if(this.rtpFormats.get(i).getFormat().getName().equals(AVProfile.telephoneEvent.getName()))                            
                                res.add(this.rtpFormats.get(i));                    
                        else if(!hasNonDtmf)
                        {
                                res.add(this.rtpFormats.get(i));
                                hasNonDtmf=true;
                        }
                }
    }
}


To:
for (int i = 0; i < this.rtpFormats.size(); i++) {
    if(this.rtpFormats.get(i).getFormat().getName().equals(AVProfile.telephoneEvent.getName()))                            
        res.add(this.rtpFormats.get(i));
    else if(!hasNonDtmf)
    {      
        for (int j = 0; j < other.size() && !hasNonDtmf; j++) {
            if (this.rtpFormats.get(i).getFormat().matches(other.rtpFormats.get(j).getFormat()))
                        {
                                res.add(this.rtpFormats.get(i));
                                hasNonDtmf=true;
                        }
                }
    }
}


Original issue reported on code.google.com by [email protected] on 13 Oct 2014 at 1:55

JSR driver reimplementation

Currently implemented over mgcp and uses threads and runnable in non optimal 
way.
Need to add built in support for JSR in media server and reimplement driver 
based on new support.

Original issue reported on code.google.com by [email protected] on 20 Jul 2013 at 5:06

SBC minimized transcoding implementation

In this mode sbc should set to top of list codecs received from first UA, but 
will add supported under transcoding codecs after that.Depending on answer 
received from second UA endpoint will work either as pass through ( if both 
sides support any of codecs ) or transcoded otherwise.

Original issue reported on code.google.com by [email protected] on 20 Jul 2013 at 4:36

OOB to inband translation

When other side does not supports OOB currently ignores and does not sends data 
, should translate it to inband and send

Original issue reported on code.google.com by [email protected] on 4 Aug 2013 at 10:53

Standalone Management Interface

Add Standalone ( Independent ) centralized management interface that will allow 
to manager all the server for specific company.
Implement web interface , add web services support to allow querying data for 
other apps that may be used already.

Original issue reported on code.google.com by [email protected] on 20 Jul 2013 at 5:03

Cassandra DB support

Implement driver for db access to obtain MMS configuration , logging storing , 
etc.
At first step use cassandra NOSQL DB.Other may be added in future depending on 
community interest

Original issue reported on code.google.com by [email protected] on 20 Jul 2013 at 5:02

[JSR309 Driver] Request identifier overflow.

1. Bugs exist in 
org.mobicents.javax.media.mscontrol.mediagroup.MediaGroupImpl#nextRequestID
2. Constructor of jain.protocol.ip.mgcp.message.parms.RequestIdentifier is 
expecting unsigned hexadecimal string.
3. Exception thrown when 
org.mobicents.javax.media.mscontrol.MediaSessionImpl#getUniqueReqID reaches 
80000000, 
 java.lang.IllegalArgumentException: Request identifier must contain between 1 and 32 hexadecimal digits!

Code to quick test:
    public static void main(String args[]){
        int reqId = 0;
        while(true){
            try {
                new RequestIdentifier(Integer.toString(++reqId));
            } catch (IllegalArgumentException ex){
                ex.printStackTrace();
                break;
            }
        }
    }

What is the expected output? What do you see instead?
org.mobicents.javax.media.mscontrol.mediagroup.MediaGroupImpl#nextRequestID 
should not throw exception when integer overflow. 


What version of the product are you using? On what operating system?


Please provide any additional information below.

Original issue reported on code.google.com by [email protected] on 28 May 2014 at 1:39

Attachments:

Adaptive Jitter Buffer Support

Need to add adaptive jitter buffer support for mms.
Currently it has static size and does not takes into account client network 
which may produce delay / jitter much higher then 60ms and therefore cause bad 
audio quality.

Original issue reported on code.google.com by [email protected] on 25 Nov 2013 at 7:51

Opus Implementation

Add Opus support to media server.
Planned to be added both native ( webrtc based ) and java based implementations.

Original issue reported on code.google.com by [email protected] on 20 Jul 2013 at 4:26

  • Blocking: #3

SBC path throught implementation

Add custom endpoint implementation which will negotiate sdp based on UA's sdp 
received ( thus codecs received from first UA connection will be duplicated to 
second one ).

Original issue reported on code.google.com by [email protected] on 20 Jul 2013 at 4:33

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.