[jitsi-dev] Fw:problem with jitisi-android


#1

Hi Pawewl About the exception in NAL. Since every "video freeze" comes with the excetion :nalLength=1061109567(0x3F3F3F3F),i try to record the stream with[FileOutputStream fos = new FileOutputStream("/sdcard/hex.txt");][fos.write();],in method :[private void localSocketAccepted(LocalSocket localSocket,InputStream inputStream)]; as the pictiure shown below , we can see 8 bytes of '3F' behind '6D 64 61 74'(identification of mdat),and here is what the exeption come from. I try to discard these 8 bytes(which means the followed 4 byts'00000F93' is used as nalLengh),the exception is gone ,and i can see data transfering and receiving ,but still in a blur on PC side,like a grey canas ,the same as the picture i sent to you days before. So we can say the stream sent from Android is differnt between differnt devices, i am wondering whether there is device-specific quirk on mediarecorder, so is it convenient for you to get a file as thefile attached ? I think the comparative analysis will be helpful. BTW, the file i got is different from the file" Love.mpeg_4" which is obtained by [mediaRecorder.setOutputFile("/sdcard/love.MPEG_4");] that i sent days ago. Regards , RAY/////////////////////////////////////////////////////////////////Hi Ray, Please send replies to dev list, so that everyone can follow. I'm not familiar yet with details of H264 as well as with these parts of code. I'll take a look on it when I'll have the time as I currently have other assignments. AnywayThanks for the file it may help solve the issue. About the NAL exception I rember that I had sometimes similiar to those even when the video worked. It would help if you could provider the stack trace for yours(from ADB output). Regards, Pawel

3605D5FF@3E8BBE0B.A11FBB51 (8.43 KB)

hex.txt (620 KB)

···

---------- Forwarded message ---------- From: MAXWELL <95143848 at qq.com> Date: Mon, Jun 10, 2013 at 11:59 AM Subject: Re: [jitsi-dev] Fw:problem with jitisi-android To: Paweł Domas <pawel.domas at jitsi.org> hi, Pawel, Here i got a video if I point the mediarecorder output path to SD card, hope it will be helpful to solve the problem if there're format defferences between different devices,you may check it in HEX. I'm also confused about the handles about FILE_TYPE_BOX_TYPE、FREE_SPACE_BOX_TYPE、MEDIA_DATA_BOX_TYPE、discarding 、readNAL......is that aimed at extracting mdat from the stream? Regards , RAY ------------------ Original ------------------ From: "Paweł Domas"<pawel.domas at jitsi.org>; Date: Mon, Jun 10, 2013 03:24 AM To: "MAXWELL"<95143848 at qq.com>; Subject: Re: [jitsi-dev] Fw:problem with jitisi-android Hi Ray, On Sun, Jun 9, 2013 at 6:22 AM, ray <95143848 at qq.com> wrote: > hi , Pawel > > please excuse me that i didn’t reply in time because I am not using mailing > list well. > > I am excited for your replies: > > > > Yes, I know the file descriptor should me point to local socket for > streaming ,but if I do so, the local preview would freeze in there, and no > video data passed to PC, sometimes audio freeze either.So I did a test ,if > I set the mediarecorder output path to SD card,the preview goes well, and > the viedo will be stored in SD card,of course ,no video will be transmitted > to PC. So I am wondering if there is something wrong with the thread > ,“LOCALSERVERTHREAD”? > > I test the jitsi-android with several MOBILRE, HUAWEI,GALAXY S3,now I am > using HTC ONE (OS version 4.1.2),the results are not much alike, when I am > using S3,the preview won’t freeze ,and I can see video is transmitting ,via > “call info”,but only messy frame was shown in the PC(I mean there is a so > called image ,but not exactly what it is), and this is the best result I got > until now. > > I want to know what type MOBILE are you using in test,and what is your clue? I test it on Asus Nexus 7. Does it freeze on all those devices ? It would be great if you could figure out on what point exactly it freezes. Does it return from method DataSource.createLocalSocket ? Is it line 312: localSocket.connect(localServerSocket.getLocalSocketAddress()); ? Regards, Pawel


#2

Hi Ray,

Hi Pawewl

    About the exception in NAL.

    Since every "video freeze" comes with the excetion :nalLength=1061109567(0x3F3F3F3F),i try to record the stream with

[FileOutputStream fos = new FileOutputStream("/sdcard/hex.txt");]

[fos.write();],

in method :

[private void localSocketAccepted(LocalSocket localSocket,InputStream inputStream)];

    as the pictiure shown below , we can see 8 bytes of '3F' behind '6D 64 61 74'(identification of mdat),and here is what the exeption come from.

    I try to discard these 8 bytes(which means the followed 4 byts'00000F93' is used as nalLengh),the exception is gone ,and i can see data transfering and receiving ,but still in a blur on PC side,like a grey canas ,the same as the picture i sent to you days before.

    So we can say the stream sent from Android is differnt between differnt devices, i am wondering whether there is device-specific quirk on mediarecorder, so is it convenient for you to get a file as the

file attached ? I think the comparative analysis will be helpful.

    BTW, the file i got is different from the file" Love.mpeg_4" which is obtained by

[mediaRecorder.setOutputFile("/sdcard/love.MPEG_4");] that i sent days ago.

We should probably take a look on H264 stream header format and see if that
data makes any sense. I'll try to record video on my device which works and
compare these two. Thanks for all the effort you've put into debugging this
issue !

Regards,
Pawel

3605D5FF@3E8BBE0B.A11FBB51 (8.43 KB)

···

On Fri, Jun 14, 2013 at 3:50 PM, MAXWELL <95143848@qq.com> wrote:

Regards ,
RAY

/////////////////////////////////////////////////////////////////

Hi Ray,

Please send replies to dev list, so that everyone can follow.

I'm not familiar yet with details of H264 as well as with these parts
of code. I'll take a look on it when I'll have the time as I currently
have other assignments. AnywayThanks for the file it may help solve
the issue.

About the NAL exception I rember that I had sometimes similiar to
those even when the video worked. It would help if you could provider
the stack trace for yours(from ADB output).

Regards,
Pawel

---------- Forwarded message ----------
From: MAXWELL <95143848 at qq.com <http://lists.jitsi.org/mailman/listinfo/dev>
>
Date: Mon, Jun 10, 2013 at 11:59 AM
Subject: Re: [jitsi-dev] Fw:problem with jitisi-android
To: Paweł Domas <pawel.domas at jitsi.org <http://lists.jitsi.org/mailman/listinfo/dev>>

hi, Pawel,
    Here i got a video if I point the mediarecorder output path to SD
card, hope it will be helpful to solve the problem if there're format
defferences between different devices,you may check it in HEX.
    I'm also confused about the handles about
FILE_TYPE_BOX_TYPE、FREE_SPACE_BOX_TYPE、MEDIA_DATA_BOX_TYPE、discarding
、readNAL......is that aimed at extracting mdat from the stream?
Regards ,
RAY

------------------ Original ------------------
From: "Paweł Domas"<pawel.domas at jitsi.org <http://lists.jitsi.org/mailman/listinfo/dev>>;
Date: Mon, Jun 10, 2013 03:24 AM
To: "MAXWELL"<95143848 at qq.com <http://lists.jitsi.org/mailman/listinfo/dev>>;
Subject: Re: [jitsi-dev] Fw:problem with jitisi-android

Hi Ray,

On Sun, Jun 9, 2013 at 6:22 AM, ray <95143848 at qq.com <http://lists.jitsi.org/mailman/listinfo/dev>> wrote:
>* hi , Pawel*
>**>* please excuse me that i didn’t reply in time because I am not using mailing*>* list well.*>**>* I am excited for your replies:*>**>**>**>* Yes, I know the file descriptor should me point to local socket for*>* streaming ,but if I do so, the local preview would freeze in there, and no*>* video data passed to PC, sometimes audio freeze either.So I did a test ,if*>* I set the mediarecorder output path to SD card,the preview goes well, and*>* the viedo will be stored in SD card,of course ,no video will be transmitted*>* to PC. So I am wondering if there is something wrong with the thread*>* ,“LOCALSERVERTHREAD”?*>**>* I test the jitsi-android with several MOBILRE, HUAWEI,GALAXY S3,now I am*>* using HTC ONE (OS version 4.1.2),the results are not much alike, when I am*>* using S3,the preview won’t freeze ,and I can see video is transmitting ,via*>* “call info”,but only messy frame was shown in the PC(I mean there is a so*>* called image ,but not exactly what it is), and this is the best result I got*>* until now.*>**>* I want to know what type MOBILE are you using in test,and what is your clue?*
I test it on Asus Nexus 7. Does it freeze on all those devices ? It
would be great if you could figure out on what point exactly it
freezes. Does it return from method DataSource.createLocalSocket ? Is
it line 312: localSocket.connect(localServerSocket.getLocalSocketAddress());
?

Regards,
Pawel

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev


#3

Hi Ray,

I've recorder sample video using "DUMP_FILE" method which uses streaming
format. By comparing those two and looking at the code you're right: it's
expected that 3f3f3f3f will be nalLength in your case. I'm not familiar yet
with those box types and so on, but I'll be looking at it soon. If it might
be of any help for you my dump file is attached.

Regards,
Pawel

3605D5FF@3E8BBE0B.A11FBB51 (8.43 KB)

video.stream (515 KB)

···

On Fri, Jun 14, 2013 at 4:18 PM, Paweł Domas <pawel.domas@jitsi.org> wrote:

Hi Ray,

On Fri, Jun 14, 2013 at 3:50 PM, MAXWELL <95143848@qq.com> wrote:

Hi Pawewl

    About the exception in NAL.

    Since every "video freeze" comes with the excetion :nalLength=1061109567(0x3F3F3F3F),i try to record the stream with

[FileOutputStream fos = new FileOutputStream("/sdcard/hex.txt");]

[fos.write();],

in method :

[private void localSocketAccepted(LocalSocket localSocket,InputStream inputStream)];

    as the pictiure shown below , we can see 8 bytes of '3F' behind '6D 64 61 74'(identification of mdat),and here is what the exeption come from.

    I try to discard these 8 bytes(which means the followed 4 byts'00000F93' is used as nalLengh),the exception is gone ,and i can see data transfering and receiving ,but still in a blur on PC side,like a grey canas ,the same as the picture i sent to you days before.

    So we can say the stream sent from Android is differnt between differnt devices, i am wondering whether there is device-specific quirk on mediarecorder, so is it convenient for you to get a file as the

file attached ? I think the comparative analysis will be helpful.

    BTW, the file i got is different from the file" Love.mpeg_4" which is obtained by

[mediaRecorder.setOutputFile("/sdcard/love.MPEG_4");] that i sent days ago.

We should probably take a look on H264 stream header format and see if
that data makes any sense. I'll try to record video on my device which
works and compare these two. Thanks for all the effort you've put into
debugging this issue !

Regards,
Pawel

Regards ,
RAY

/////////////////////////////////////////////////////////////////

Hi Ray,

Please send replies to dev list, so that everyone can follow.

I'm not familiar yet with details of H264 as well as with these parts
of code. I'll take a look on it when I'll have the time as I currently
have other assignments. AnywayThanks for the file it may help solve
the issue.

About the NAL exception I rember that I had sometimes similiar to
those even when the video worked. It would help if you could provider
the stack trace for yours(from ADB output).

Regards,
Pawel

---------- Forwarded message ----------
From: MAXWELL <95143848 at qq.com <http://lists.jitsi.org/mailman/listinfo/dev>
>
Date: Mon, Jun 10, 2013 at 11:59 AM
Subject: Re: [jitsi-dev] Fw:problem with jitisi-android
To: Paweł Domas <pawel.domas at jitsi.org <http://lists.jitsi.org/mailman/listinfo/dev>>

hi, Pawel,
    Here i got a video if I point the mediarecorder output path to SD
card, hope it will be helpful to solve the problem if there're format
defferences between different devices,you may check it in HEX.
    I'm also confused about the handles about
FILE_TYPE_BOX_TYPE、FREE_SPACE_BOX_TYPE、MEDIA_DATA_BOX_TYPE、discarding
、readNAL......is that aimed at extracting mdat from the stream?
Regards ,
RAY

------------------ Original ------------------
From: "Paweł Domas"<pawel.domas at jitsi.org <http://lists.jitsi.org/mailman/listinfo/dev>>;
Date: Mon, Jun 10, 2013 03:24 AM
To: "MAXWELL"<95143848 at qq.com <http://lists.jitsi.org/mailman/listinfo/dev>>;
Subject: Re: [jitsi-dev] Fw:problem with jitisi-android

Hi Ray,

On Sun, Jun 9, 2013 at 6:22 AM, ray <95143848 at qq.com <http://lists.jitsi.org/mailman/listinfo/dev>> wrote:
>* hi , Pawel*
>**>* please excuse me that i didn’t reply in time because I am not using mailing*>* list well.*>**>* I am excited for your replies:*>**>**>**>* Yes, I know the file descriptor should me point to local socket for*>* streaming ,but if I do so, the local preview would freeze in there, and no*>* video data passed to PC, sometimes audio freeze either.So I did a test ,if*>* I set the mediarecorder output path to SD card,the preview goes well, and*>* the viedo will be stored in SD card,of course ,no video will be transmitted*>* to PC. So I am wondering if there is something wrong with the thread*>* ,“LOCALSERVERTHREAD”?*>**>* I test the jitsi-android with several MOBILRE, HUAWEI,GALAXY S3,now I am*>* using HTC ONE (OS version 4.1.2),the results are not much alike, when I am*>* using S3,the preview won’t freeze ,and I can see video is transmitting ,via*>* “call info”,but only messy frame was shown in the PC(I mean there is a so*>* called image ,but not exactly what it is), and this is the best result I got*>* until now.*>**>* I want to know what type MOBILE are you using in test,and what is your clue?*
I test it on Asus Nexus 7. Does it freeze on all those devices ? It
would be great if you could figure out on what point exactly it
freezes. Does it return from method DataSource.createLocalSocket ? Is
it line 312: localSocket.connect(localServerSocket.getLocalSocketAddress());
?

Regards,
Pawel

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev