Re: coda: Unable to use encoder video_bitrate

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

 



2014-12-18 18:09 GMT+01:00 Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>:
> Hi Jean-Michel,
>
> Am Donnerstag, den 18.12.2014, 17:55 +0100 schrieb Jean-Michel Hautbois:
>> Hi Philipp,
>>
>> 2014-12-18 17:52 GMT+01:00 Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>:
>> > Hi Frédéric,
>> >
>> > Am Donnerstag, den 18.12.2014, 17:44 +0100 schrieb Frédéric Sureau:
>> >> Hi
>> >>
>> >> I am trying to use the coda encoder through Gstreamer on an iMX6-based
>> >> board.
>> >>
>> >> I use the (rebased and slightly modified) gstv4l2h264enc plugin from:
>> >> https://github.com/hizukiayaka/gst-plugins-good
>> >>
>> >> This pipeline works fine:
>> >> gst-launch-1.0 -vvv v4l2src device=/dev/video4 !
>> >> "video/x-raw,width=1280,height=720" ! videoconvert ! v4l2video0h264enc !
>> >> h264parse ! mp4mux ! filesink location=test.mp4
>> >>
>> >> When encoder has no bitrate param set (default=0), video encoding works
>> >> well, but bitrate reaches ~2.5Mbps
>> >>
>> >> When I try to set the bitrate with whatever value like 100,000 or
>> >> 1,000,000, the encoder produces video with bitrate around 480kbps and a
>> >> very poor quality.
>> >>
>> >> Here is the gstreamer pipeline I use with bitrate set:
>> >> gst-launch-1.0 -vvv v4l2src device=/dev/video4 !
>> >> "video/x-raw,width=1280,height=720" ! videoconvert ! v4l2video0h264enc
>> >> extra-controls="controls,video_bitrate=1000000;" ! h264parse ! mp4mux !
>> >> filesink location=test.mp4
>> >>
>> >> The video_bitrate control seems to be correctly passed to the driver by
>> >> GStreamer since I can see the VIDIOC_S_CTRL call.
>> >>
>> >> Any idea ?
>> >
>> > There is a bug in the register definitions that causes the driver to
>> > apply a wrong mask before writing the bitrate to the register.
>> > I've got a fix for this in the pipeline, sending it right now.
>>
>> Where can we find the register definitions ? In order to look at it
>> before asking you :) ?
>
> Sorry, forgot to put all of you on Cc: for the "[media] coda: fix
> encoder rate control parameter masks" patch. The coda driver is in
> drivers/media/platform/coda, register definitions in coda_regs.h.
> The CODA_RATECONTROL_BITRATE_MASK is 0x7f, but it should be 0x7fff.
>

Well, I meant, the datasheet of the CODA960 because we don't know,
just by reading the coda_regs.h which register is where and does what.
But it may be confidential ?

JM
--
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