jayronlou / javacv

Automatically exported from code.google.com/p/javacv
GNU General Public License v2.0
0 stars 0 forks source link

Fatal signal 8 (SIGFPE) #338

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?

The problem is explain on this 
link:https://groups.google.com/forum/#!topic/javacv/jFmzwQa_sxg

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

One week ago download your project and try it on Android 4.2.2.

Please provide any additional information below.

There are two files on attach a video and  an activity class. The video that 
record by javacv with mp4 format and AV_CODEC_ID_MPEG4 video codec. And 
activity is a simple my class that try file push to server by rtmp protocol.
Actually I push video by your sample class that named RecordActivity, but 
Samuel wanted data to me.

Sorry for my english.

Thaks,

Original issue reported on code.google.com by alirz...@gmail.com on 15 Jul 2013 at 12:02

Attachments:

GoogleCodeExporter commented 8 years ago
Thanks! Does the problem happen if we record to file as well?

Original comment by samuel.a...@gmail.com on 15 Jul 2013 at 1:06

GoogleCodeExporter commented 8 years ago
No , just when stream to server.

Original comment by alirz...@gmail.com on 15 Jul 2013 at 1:08

GoogleCodeExporter commented 8 years ago
Ok, sounds like this isn't going to be simple to debug. Can you send all the 
info you get in the log with the SIGFPE? Thanks

Original comment by samuel.a...@gmail.com on 15 Jul 2013 at 1:11

GoogleCodeExporter commented 8 years ago
The error is that;
07-15 16:13:48.008: A/libc(8603): Fatal signal 8 (SIGFPE) at 0x0000219b 
(code=0), thread 8620 (AsyncTask #1)

When get data from came buffer and start stream the app killed.

Also I try streaming by ffmpeg on terminal. The result is on attach, hope it 
help.

Thanks,

Original comment by alirz...@gmail.com on 15 Jul 2013 at 1:25

Attachments:

GoogleCodeExporter commented 8 years ago
So it works fine on the desktop? Can you find a way to reproduce the error on 
the desktop?

Original comment by samuel.a...@gmail.com on 15 Jul 2013 at 1:29

GoogleCodeExporter commented 8 years ago
Previous message there were two screenshot, first is with mpeg format seem send 
data without error but i cannot watch stream from server so I don't know if 
everything is ok, the other is with mp4 format and give this error

Could not write header for output file #0 (incorrect codec parameters ?): 
Operation not permitted

And the error from desktop seem different.

Thanks,

Original comment by alirz...@gmail.com on 15 Jul 2013 at 2:49

GoogleCodeExporter commented 8 years ago
So, let's see, do these problems only happen with RTMP? I don't think the RTMP 
protocol supports any other codec than FLV1 and H264, so it may be "normal" 
that it doesn't work with other codecs than those two. 

Does everything work properly with both FLV1 and H264?

Original comment by samuel.a...@gmail.com on 16 Jul 2013 at 1:34

GoogleCodeExporter commented 8 years ago
Everything is ok just for FLV1 otherwise give same error.

Thanks,

Original comment by alirz...@gmail.com on 16 Jul 2013 at 10:20

GoogleCodeExporter commented 8 years ago
What about H264?

Original comment by samuel.a...@gmail.com on 17 Jul 2013 at 2:04

GoogleCodeExporter commented 8 years ago
Give same error

Original comment by alirz...@gmail.com on 17 Jul 2013 at 2:10

GoogleCodeExporter commented 8 years ago
Well, if it doesn't work with the `ffmpeg` command then it's a bug in FFmpeg, 
and it's not related to JavaCV. You'll have to ask the authors of FFmpeg about 
that.

Original comment by samuel.a...@gmail.com on 18 Jul 2013 at 1:11

GoogleCodeExporter commented 8 years ago
Given the lack of feedback, I'm guessing this is an issue with FFmpeg itself. 
If you posted a bug report upstream about that, please provide a link here, 
thanks!

Original comment by samuel.a...@gmail.com on 8 Jan 2014 at 2:08

GoogleCodeExporter commented 8 years ago
Sir, I face the same issue too. I am trying this on Samsung galaxy tab P620 
having 4.0.3 android api. But this error is reproduced when the server to which 
the stream has to be sent to is not open (that is the server is not up and 
running). Please find the code snippet that causes the error, though since 
there is no exception thrown i believe, it is not even get caught in the 
exception i have put. Please assist.

Error: Fatal signal 8 (SIGFPE) at 0x000062d1 (code=0) (this is under tag: libc)

Thanking you

P.S: the link used is: 
ffmpeg_link = "rtmp://myusername:mypassword@IP_ADDRESS:1935/live/" + video_name;

and the following:
recorder.setFormat("rtsp");
recorder.setVideoCodec(28);

Original comment by hearbeat...@gmail.com on 5 Feb 2014 at 8:40

Attachments:

GoogleCodeExporter commented 8 years ago
@hearbeat Do you get the same behavior when using ffplay from the command line?

Original comment by samuel.a...@gmail.com on 5 Feb 2014 at 9:14

GoogleCodeExporter commented 8 years ago
No sir, i get it when i press the start button to record the video. It does 
work for some few seconds and then it stops with the fatal sig error. 
recorder.start also doesnot throw FFMPEG.Exception error, audioThread.start 
also doesnot throw any error. The code snippet i have attached gets called when 
audioThread.start() is called. And this line is right after the 
recorder.start() method.

Original comment by hearbeat...@gmail.com on 5 Feb 2014 at 9:25

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
Please try with ffmpeg on the command line.

Original comment by samuel.a...@gmail.com on 5 Feb 2014 at 9:37

GoogleCodeExporter commented 8 years ago
This all sounds like bugs in FFmpeg. Could you retry again with the latest 
version and JavaCV 0.10? Thanks!

Original comment by samuel.a...@gmail.com on 27 Dec 2014 at 3:27

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
I'm experiencing this same problem with the android arm libs from JavaCV 0.10. 
Works fine with the osx 64 libs.

Original comment by Joel.R.J...@gmail.com on 13 Feb 2015 at 5:44

GoogleCodeExporter commented 8 years ago
@Joel Could you provide more details about your problem as a new issue on 
GitHub? Thank you

Original comment by samuel.a...@gmail.com on 14 Feb 2015 at 12:56

GoogleCodeExporter commented 8 years ago
Hi, I have the same issue.  A/libc﹕ Fatal signal 8 (SIGFPE) at 0x00005523 
(code=-6), thread 21960 (Thread-2372) 
=========
if (recorder != null && recording) {
            recording = false;
            Log.v(LOG_TAG, "Finishing recording, calling stop and release on recorder");
            try {
                recorder.stop();
                recorder.release();
            } catch (FFmpegFrameRecorder.Exception e) {
                e.printStackTrace();
            }
            recorder = null;
=========
on recorder.stop(); (recorder - FFmpegFrameRecorder)
Sometimes it work, but sometimes crashing

Original comment by m...@blackcat95.ru on 4 Mar 2015 at 10:24

GoogleCodeExporter commented 8 years ago
me@blackcat95.ru Sounds like a threading issue... Can you reproduce the same 
thing on Java SE? It's easier to debug than Android. Thanks!

Original comment by samuel.a...@gmail.com on 4 Mar 2015 at 11:00

GoogleCodeExporter commented 8 years ago
I think problem in arm libs (#20) and reproduce on Java SE will not help.
03-04 18:01:17.217    5424-5424/app E/stop()﹕ video_st flush start
03-04 18:01:17.217    5424-5424/app E/stop()﹕ video_st flush end
03-04 18:01:17.217    5424-5424/app E/stop()﹕ audio_st flush start
03-04 18:01:17.217    5424-5843/app A/libc﹕ Fatal signal 8 (SIGFPE) at 
0x00001530 (code=-6), thread 5843 (Thread-2838)
03-04 18:01:17.217    5424-5424/app A/libc﹕ Fatal signal 11 (SIGSEGV) at 
0x00000183 (code=1), thread 5424 (app)
=========
                /* flush all the buffers */
                Log.e("stop()","video_st flush start");
                while (video_st != null && record((opencv_core.IplImage)null, AV_PIX_FMT_NONE));
                Log.e("stop()","video_st flush end");
                Log.e("stop()","audio_st flush start");
                while (audio_st != null && record(0, 0, (Buffer[])null));
                Log.e("stop()","audio_st flush end");
=========

Original comment by m...@blackcat95.ru on 4 Mar 2015 at 12:02

GoogleCodeExporter commented 8 years ago
So, is it a bug in GCC? Or in FFmpeg?

Original comment by samuel.a...@gmail.com on 4 Mar 2015 at 1:32

GoogleCodeExporter commented 8 years ago
FFmpeg

Original comment by m...@blackcat95.ru on 4 Mar 2015 at 4:38

GoogleCodeExporter commented 8 years ago
So, could you report that upstream?
https://www.ffmpeg.org/bugreports.html
And post a link here for reference? Thanks!

Original comment by samuel.a...@gmail.com on 5 Mar 2015 at 3:19