Set VBR with bitrate limit IMX8MM

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

Set VBR with bitrate limit IMX8MM

919件の閲覧回数
DR_Akzhol
Contributor III

Hello there, could you find a solution for that? We have tested VBR with highprofile mode. At DAY we have normal Bitrate 100kb-3Mb, night time camera gives more noise, so the bitrate goes to 15-20Mb (too big files at night). How can we limit the upper bitrate for VBR mode, or what kind of parameters can be adjusted to get lower bitrate at night

0 件の賞賛
返信
11 返答(返信)

762件の閲覧回数
DR_Akzhol
Contributor III

Is there any solution for this?

0 件の賞賛
返信

889件の閲覧回数
Manuel_Salas
NXP TechSupport
NXP TechSupport

Hello @DR_Akzhol 

I hope you are doing very well.

 

Could you please share more details about your application?

What BSP you are using? Are you using GStreamer, V4L2?

 

Best regards,

Salas.

0 件の賞賛
返信

859件の閲覧回数
DR_Akzhol
Contributor III

Hello Manuel,
Ubuntu, Kernel 5.4.70
Modified VPU driver to enable highprofile
Using Gstreamer included into Ubuntu and V4L2, VPUENC plugin.

VBR: Set Quant = 35, bitrate = 0(default)

Our goal is to get VBR in range up to 3Mb bitrate (not above this)


 

0 件の賞賛
返信

857件の閲覧回数
Manuel_Salas
NXP TechSupport
NXP TechSupport

Hello @DR_Akzhol 

you can try setting an explicit maximum bitrate. Try the following:

$ gst-launch-1.0 v4l2src ! videoconvert ! vpuenc_h264 bitrate=0 quant=35 max-bitrate=3000000 ! mp4mux ! filesink location=output.mp4

 

Best regards,

Salas. 

タグ(1)
0 件の賞賛
返信

842件の閲覧回数
DR_Akzhol
Contributor III

We do not see this option for vpuenc. See message:
"WARNING: erroneous pipeline: no property "max-bitrate" in element "vpuenc_h264-0""

0 件の賞賛
返信

747件の閲覧回数
Manuel_Salas
NXP TechSupport
NXP TechSupport

Hello,

 

Please run:

$ gst-inspect-1.0 vpuenc_h264

 

Then look for bitrate options to see if vpuenc_264 supports bitrate options.

 

Best regards,

Salas.

0 件の賞賛
返信

721件の閲覧回数
DR_Akzhol
Contributor III

Checked,
There is option -bitrate (CBR)
There is no option -max-bitrate

617件の閲覧回数
DR_Akzhol
Contributor III

Plugin Details:
Name vpu
Description VPU video codec
Filename /usr/lib/gstreamer-1.0/libgstvpu.so
Version 4.6.3
License LGPL
Source module imx-gst1.0-plugin
Binary package Freescle Gstreamer Multimedia Plugins
Origin URL http://www.freescale.com

 

Element Properties:
bitrate : set bit rate in kbps (0 for automatic)
flags: readable, writable
Unsigned Integer. Range: 0 - 2147483647 Default: 0
gop-size : How many frames a group-of-picture shall contain
flags: readable, writable
Unsigned Integer. Range: 0 - 32767 Default: 30
min-force-key-unit-interval: Minimum interval between force-keyunit requests in nanoseconds
flags: readable, writable
Unsigned Integer64. Range: 0 - 18446744073709551615 Default: 0
name : The name of the object
flags: readable, writable, 0x2000
String. Default: "vpuenc_h264-0"
parent : The parent of the object
flags: readable, writable, 0x2000
Object of type "GstObject"
qos : Handle Quality-of-Service events from downstream
flags: readable, writable
Boolean. Default: false
quant : set quant value: H.264(0-51) (-1 for automatic)
flags: readable, writable
Integer. Range: -1 - 51 Default: -1

0 件の賞賛
返信

617件の閲覧回数
DR_Akzhol
Contributor III

Have check already, there is option -bitrate, no option -max-bitrate

Factory Details:
Rank primary + 1 (257)
Long-name IMX VPU-based AVC/H264 video encoder
Klass Codec/Encoder/Video
Description Encode raw data to compressed video
Author Multimedia Team <shmmmw@freescale.com>

Plugin Details:
Name vpu
Description VPU video codec
Filename /usr/lib/gstreamer-1.0/libgstvpu.so
Version 4.6.3
License LGPL
Source module imx-gst1.0-plugin
Binary package Freescle Gstreamer Multimedia Plugins
Origin URL http://www.freescale.com

GObject
+----GInitiallyUnowned
+----GstObject
+----GstElement
+----GstVideoEncoder
+----vpuenc_h264

Implemented Interfaces:
GstPreset

Pad Templates:
SRC template: 'src'
Availability: Always
Capabilities:
video/x-h264
stream-format: { (string)avc, (string)byte-stream }
alignment: { (string)au, (string)nal }

SINK template: 'sink'
Availability: Always
Capabilities:
video/x-raw
format: { (string)NV12, (string)I420, (string)YUY2, (string)UYVY, (string)RGBA, (string)RGBx, (string)RGB16, (string)RGB15, (string)BGRA, (string)BGRx, (string)BGR16 }
width: [ 64, 1920 ]
height: [ 64, 1088 ]
framerate: [ 0/1, 2147483647/1 ]

Element has no clocking capabilities.
Element has no URI handling capabilities.

Pads:
SINK: 'sink'
Pad Template: 'sink'
SRC: 'src'
Pad Template: 'src'

Element Properties:
bitrate : set bit rate in kbps (0 for automatic)
flags: readable, writable
Unsigned Integer. Range: 0 - 2147483647 Default: 0
gop-size : How many frames a group-of-picture shall contain
flags: readable, writable
Unsigned Integer. Range: 0 - 32767 Default: 30
min-force-key-unit-interval: Minimum interval between force-keyunit requests in nanoseconds
flags: readable, writable
Unsigned Integer64. Range: 0 - 18446744073709551615 Default: 0
name : The name of the object
flags: readable, writable, 0x2000
String. Default: "vpuenc_h264-0"
parent : The parent of the object
flags: readable, writable, 0x2000
Object of type "GstObject"
qos : Handle Quality-of-Service events from downstream
flags: readable, writable
Boolean. Default: false
quant : set quant value: H.264(0-51) (-1 for automatic)
flags: readable, writable
Integer. Range: -1 - 51 Default: -1

タグ(3)
0 件の賞賛
返信

617件の閲覧回数
DR_Akzhol
Contributor III

Factory Details:
Rank primary + 1 (257)
Long-name IMX VPU-based AVC/H264 video encoder
Klass Codec/Encoder/Video
Description Encode raw data to compressed video
Author Multimedia Team <shmmmw@freescale.com>

Plugin Details:
Name vpu
Description VPU video codec
Filename /usr/lib/gstreamer-1.0/libgstvpu.so
Version 4.6.3
License LGPL
Source module imx-gst1.0-plugin
Binary package Freescle Gstreamer Multimedia Plugins
Origin URL http://www.freescale.com

GObject
+----GInitiallyUnowned
+----GstObject
+----GstElement
+----GstVideoEncoder
+----vpuenc_h264

Implemented Interfaces:
GstPreset

Pad Templates:
SRC template: 'src'
Availability: Always
Capabilities:
video/x-h264
stream-format: { (string)avc, (string)byte-stream }
alignment: { (string)au, (string)nal }

SINK template: 'sink'
Availability: Always
Capabilities:
video/x-raw
format: { (string)NV12, (string)I420, (string)YUY2, (string)UYVY, (string)RGBA, (string)RGBx, (string)RGB16, (string)RGB15, (string)BGRA, (string)BGRx, (string)BGR16 }
width: [ 64, 1920 ]
height: [ 64, 1088 ]
framerate: [ 0/1, 2147483647/1 ]

Element has no clocking capabilities.
Element has no URI handling capabilities.

Pads:
SINK: 'sink'
Pad Template: 'sink'
SRC: 'src'
Pad Template: 'src'

Element Properties:
bitrate : set bit rate in kbps (0 for automatic)
flags: readable, writable
Unsigned Integer. Range: 0 - 2147483647 Default: 0
gop-size : How many frames a group-of-picture shall contain
flags: readable, writable
Unsigned Integer. Range: 0 - 32767 Default: 30
min-force-key-unit-interval: Minimum interval between force-keyunit requests in nanoseconds
flags: readable, writable
Unsigned Integer64. Range: 0 - 18446744073709551615 Default: 0
name : The name of the object
flags: readable, writable, 0x2000
String. Default: "vpuenc_h264-0"
parent : The parent of the object
flags: readable, writable, 0x2000
Object of type "GstObject"
qos : Handle Quality-of-Service events from downstream
flags: readable, writable
Boolean. Default: false
quant : set quant value: H.264(0-51) (-1 for automatic)
flags: readable, writable
Integer. Range: -1 - 51 Default: -1

 

There is option -bitrate, no option max-bitrate

0 件の賞賛
返信

617件の閲覧回数
DR_Akzhol
Contributor III

Factory Details:
Rank primary + 1 (257)
Long-name IMX VPU-based AVC/H264 video encoder
Klass Codec/Encoder/Video
Description Encode raw data to compressed video
Author Multimedia Team <shmmmw@freescale.com>

Plugin Details:
Name vpu
Description VPU video codec
Filename /usr/lib/gstreamer-1.0/libgstvpu.so
Version 4.6.3
License LGPL
Source module imx-gst1.0-plugin
Binary package Freescle Gstreamer Multimedia Plugins
Origin URL http://www.freescale.com

GObject
+----GInitiallyUnowned
+----GstObject
+----GstElement
+----GstVideoEncoder
+----vpuenc_h264

Implemented Interfaces:
GstPreset

Pad Templates:
SRC template: 'src'
Availability: Always
Capabilities:
video/x-h264
stream-format: { (string)avc, (string)byte-stream }
alignment: { (string)au, (string)nal }

SINK template: 'sink'
Availability: Always
Capabilities:
video/x-raw
format: { (string)NV12, (string)I420, (string)YUY2, (string)UYVY, (string)RGBA, (string)RGBx, (string)RGB16, (string)RGB15, (string)BGRA, (string)BGRx, (string)BGR16 }
width: [ 64, 1920 ]
height: [ 64, 1088 ]
framerate: [ 0/1, 2147483647/1 ]

Element has no clocking capabilities.
Element has no URI handling capabilities.

Pads:
SINK: 'sink'
Pad Template: 'sink'
SRC: 'src'
Pad Template: 'src'

Element Properties:
bitrate : set bit rate in kbps (0 for automatic)
flags: readable, writable
Unsigned Integer. Range: 0 - 2147483647 Default: 0
gop-size : How many frames a group-of-picture shall contain
flags: readable, writable
Unsigned Integer. Range: 0 - 32767 Default: 30
min-force-key-unit-interval: Minimum interval between force-keyunit requests in nanoseconds
flags: readable, writable
Unsigned Integer64. Range: 0 - 18446744073709551615 Default: 0
name : The name of the object
flags: readable, writable, 0x2000
String. Default: "vpuenc_h264-0"
parent : The parent of the object
flags: readable, writable, 0x2000
Object of type "GstObject"
qos : Handle Quality-of-Service events from downstream
flags: readable, writable
Boolean. Default: false
quant : set quant value: H.264(0-51) (-1 for automatic)
flags: readable, writable
Integer. Range: -1 - 51 Default: -1

 

There is option -bitrate, there is no option -max-bitrate

0 件の賞賛
返信