Re: SAA7134 driver reports zero frame rate

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Nov 16, 2013 at 6:19 PM, Tim E. Real <termtech@xxxxxxxxxx> wrote:
> The SAA7134 driver causes libav to crash because the
>  driver reports zero frame rate.
> Thus it is virtually impossible to do any recording.

Step #1:  Open a bug against libav.  The app should return an error or
not let you start streaming.  If it crashes (regardless of the
underlying reason), they've got a bug in their library.

> About a year ago I debugged and found I had to do this,
>  (but it was not enough, more fixes would be needed):
>
> In libav/libavdevice/v4l2.c :
>
> static int v4l2_set_parameters(AVFormatContext *s1, AVFormatParameters *ap)
> {
> ...
>     s1->streams[0]->codec->time_base.den = tpf->denominator;
>     s1->streams[0]->codec->time_base.num = tpf->numerator;
>
>     // By Tim. BUG: The saa7134 driver (at least) reports zero framerate,
>     //  causing abort in rescale. So just force it.
>     if(s1->streams[0]->codec->time_base.den == 0 ||
>         s1->streams[0]->codec->time_base.num == 0)
>     {
>       s1->streams[0]->codec->time_base.num = 1;
>       s1->streams[0]->codec->time_base.den = 30;
>     }
>
>     s->timeout = 100 +
>         av_rescale_q(1, s1->streams[0]->codec->time_base,
>                         (AVRational){1, 1000});
>
>     return 0;
> }
>
> I looked at the SAA7134 module parameters but couldn't seem to
>  find anything to help.
>
> Does anyone know how to make the module work so it sets a proper
>  frame rate, or if this problem been fixed recently?

Have you tried it with the latest kernel?  Many of the drivers have
had fixes in the last year for V4L2 conformance, so it's possible this
was already fixed.

I would recommend you try it with the latest kernel and see if it
still happens.  If it does still occur, then somebody can dig into it
(assuming they have time/energy/inclination).

I'm not arguing that you probably found a bug, but you'll have to do a
bit more of the legwork to make sure it's still a real issue before
somebody else gets involved.

Devin

-- 
Devin J. Heitmueller - Kernel Labs
http://www.kernellabs.com
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux