Regarding 3gp2 parser and EVRC decoder

by chn » Fri, 23 Jan 2009 07:18:38 GMT


Sponsored Links
 Hi,

I have integrated my EVRC decoder into the opencore. Currently, there
already exists 3gp2 parser in the opencore. I tried to play 3g2 file
with EVRC audio codec having box type of EVRC Sample entry as 'sevc'
but it failed.
1. Does this 3gp2 parser support EVRC decoder?

-Cheers
--~--~---------~--~----~------------~-------~--~----~



Regarding 3gp2 parser and EVRC decoder

by Dave Sparks » Fri, 23 Jan 2009 07:37:59 GMT


 Perhaps PV can give you a definitive answer, but I don't recall them
ever mentioning having support for EVRC. You'll probably need to do
some hacking on the parser to recognize the stream type and
instantiate your codec.



--~--~---------~--~----~------------~-------~--~----~


Sponsored Links


Regarding 3gp2 parser and EVRC decoder

by scs sek » Fri, 23 Jan 2009 10:33:09 GMT


 Hi All,

When i integrate QCELP decoder, 3gp2 parser is able to parse the QCELP
stream with mp4 atom.

Will mp4 atom include EVRC also? or only 'sevrc' is the box for evrc?







--~--~---------~--~----~------------~-------~--~----~



Regarding 3gp2 parser and EVRC decoder

by giri » Mon, 26 Jan 2009 19:52:51 GMT


 PV MP4 FF parser tha is part of opencore does not support 3gp2
fileformat or codecs. 3GP2 defines sample entries for their codecs
(QCELP, EVRC etc). So you would need to modify the parser to parse
these sample entries and add support for these codec types across the
node etc.





--~--~---------~--~----~------------~-------~--~----~



Other Threads

1. Using setCurrentTab on a TabHost in landscape mode doesn't work. (in emulator)

Hello devs,

Since I only have access to the emulators, I don't know if the problem
can be reproduced on real phones. I'm using setCurrentTab on a TabHost
to dynamically select a tab. When I am in portrait mode, it works, but
as soon as I change to landscape (ctrl + f12), it doesn't work
anymore. It doesn't send an exception, it just doesn't do anything. If
I switch back to portrait (ctrl + f12), it doesn't work either. That
means it just works when I first am in portrait mode. As soon as I
change, it stops working. In order to make it work again, I need to
close the application and reopen it.

The TabHost is from the current activity, which is a TabActivity.

Can you guys check if this happens to you too (emulator)?

Thanks.
--~--~---------~--~----~------------~-------~--~----~

2. Controling a Video in a view

Hello All,

I am trying to create a video player using a custom interface (with a
lot of images).

I am moving from J2ME to android apps.

In J2ME I just create a canvas and set the video to draw to the
canvas...

but now with android I am not able to do it...

So I have seen that I can create a View of my own and draw on it. So I
create a view, load images and create a video and a surface for the
video.

When I call videoSurface.draw() the application crashes.

So i tried to videoSurface.getDrawingCache() to get a bitmap and draw
it. But the bitmap is always null.

How can I do it?

Thanks,


The code is bellow

package com.example.helloandroid;

import java.io.IOException;
import java.util.ArrayList;


import android.content.Context;
import android.content.res.Resources;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Picture;
import android.graphics.drawable.Drawable;
import android.media.MediaPlayer;
import android.os.Handler;
import android.os.Message;
import android.view.Surface;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
import android.view.View;
import android.widget.TextView;
import android.widget.VideoView;

public class canvasView extends View{
        Drawable fundo;
        MediaPlayer mp;
        SurfaceView mPreview;
        VideoView mVideoView;
        Bitmap drawVideo = null;
        Paint mPaint = new Paint();
        public canvasView(Context context) {
                super(context);
                // TODO Auto-generated constructor stub
                int resID = getResources().getIdentifier
("com.example.helloandroid:drawable/fundo", null, null);
                fundo = getResources().getDrawable(resID);
                fundo.setBounds(0, 0, 480, 320);
                mp = new MediaPlayer();
            try {
                        
mp.setDataSource("rtsp://10.223.246.33/broadcast/timtv/cnn.3gp");
                        mp.prepare();
                } catch (Exception e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                }
                mPreview  = new SurfaceView(this.getContext());
                mp.setDisplay((SurfaceHolder) mPreview.getHolder());

                mPreview.setDrawingCacheEnabled(true);


            mp.start();


                /* HEre is some test that I tried with VideoView
                mVideoView = new VideoView(context);

                
mVideoView.setVideoPath("rtsp://10.223.246.33/broadcast/timtv/cnn.
3gp");

                mVideoView.getHolder().setFixedSize(176, 144);

                mVideoView.start();

                mVideoView.buildDrawingCache();

                ArrayList<View> array = new ArrayList<View>(1);
                array.add(mVideoView);

                this.addFocusables(array, 0);

                mVideoView.requestFocus();

                mVideoView.bringToFront();

*/

        }
        int runned = 0;
        private RefreshHandler mRedrawHandler = new RefreshHandler();

    class RefreshHandler extends Handler {

        @Override
        public void handleMessage(Message msg) {

                canvasView.this.invalidate();
                canvasView.this.update();


        }

        public void sleep(long delayMillis) {
                this.removeMessages(0);
            sendMessageDelayed(obtainMessage(0), delayMillis);
        }
    };

        public void update(){
                mPreview.buildDrawingCache();
                drawVideo = mPreview.getDrawingCache();

                mRedrawHandler.sleep(10);

        }


    public void onDraw(Canvas canvas) {
        super.onDraw(canvas);

                if(drawVideo!= null){

                        canvas.drawBitmap(drawVideo, 0,0, null);
                        mPreview.destroyDrawingCache();

                        canvas.drawText("not null", 100, 120, mPaint);
                }


                //mVideoView.draw(canvas);
        }
}

--~--~---------~--~----~------------~-------~--~----~

3. curious

4. Kuatkah Android Samsung Tantang HTC?

5. using shape as my background never show the color I specify

6. Slow GPS updates

7. ExtractEditText and InputServiceManager's Context