Forums - No effect of framerate variation on video

1 post / 0 new
No effect of framerate variation on video
Pranjal Verma
Join Date: 20 Jul 12
Posts: 4
Posted: Fri, 2012-08-24 04:09

I have compiled qcom_video_codec_sample_1_3_1 and when i am running qcom_omx_sample with different frame rates.But i couldnt see any defference in video(ex.flickering etc..).I think it is always taking some default framerate and not updating any user defined values.

I tried with 30Fps and 10 Fps.For both frame rates encoded video stream is same when played via vlc player on device. This what i did:

/data/data/qcom_omx_sample -e /sdcard/sample.176x144.yuv /sdcard/test.dat 176 144 20


it generates test.dat file. When i play this test.dat file using vlc player installed in my dragonboard, i couldn't observe any difference. The video is same for 10fps as well as for 30fps, when i play. I also checked with Qmediainfo, it doesn't show any entry for fps. How can i check the framerate of encoded stream.

Below is the logcat of the command:

E/        ( 1881): QCOMOMXINTERFACE - ENCODER CREATE: SETUP INPUT PORT PARAMS (320 x 240 @ 15 fps)
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117): WARNING: Requested i/p bufsize[40960],Driver's updated i/p bufsize = 116736
E/OMX-VENC-720p(  117): bool venc_dev::venc_validate_profile_level(OMX_U32*, OMX_U32*): Returning with eProfile = 1Level = 4
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117):  bool venc_dev::venc_set_param(void*, OMX_INDEXTYPE)(): Profile/Level setting success
E/OMX-VENC-720p(  117): bool venc_dev::venc_validate_profile_level(OMX_U32*, OMX_U32*): Returning with eProfile = 1Level = 2
E/OMX-VENC-720p(  117): Calling set level (Framerate) with 21
E/OMX-VENC-720p(  117): bool venc_dev::venc_validate_profile_level(OMX_U32*, OMX_U32*): Returning with eProfile = 1Level = 2
E/OMX-VENC-720p(  117): Calling set level (Bitrate) with 21
E/        ( 1881): QCOMOMXINTERFACE - ENCODER CREATE: SETUP OUTPUT PORT BIT RATE (512000)
E/OMX-VENC-720p(  117): bool venc_dev::venc_validate_profile_level(OMX_U32*, OMX_U32*): Returning with eProfile = 1Level = 2
E/OMX-VENC-720p(  117): Calling set level (Framerate) with 21
E/OMX-VENC-720p(  117): bool venc_dev::venc_validate_profile_level(OMX_U32*, OMX_U32*): Returning with eProfile = 1Level = 8
E/OMX-VENC-720p(  117): Calling set level (Bitrate) with 23
E/        ( 1881): QCOMOMXINTERFACE - ENCODER CREATE: SETUP OUTPUT PORT RATE CONTROL (3, 512000)
E/OMX-VENC-720p(  117): bool venc_dev::venc_validate_profile_level(OMX_U32*, OMX_U32*): Returning with eProfile = 1Level = 8
E/OMX-VENC-720p(  117): Calling set level (Bitrate) with 23
E/        ( 1881): QCOMOMXINTERFACE - ENCODER CREATE COMPLETE, value 71912
E/        ( 1881): QCOMOMXINTERFACE::INIT - CREATE FRAME OUTPUT THREAD
E/        ( 1881): QCOMOMXINTERFACE::INIT - CREATE DATA OUTPUT THREAD
E/        ( 1881): QCOMOMXINTERFACE::INIT - ALLOCATE BUFFERS
E/        ( 1881): QCOMOMXINTERFACE::allocateBuffersOnPort 0 BEGIN
E/        ( 1881): QCOMOMXINTERFACE - Memory dealer allocation for port 0 buffer size 116736
E/OMX-VENC-720p(  117): use_input_buffer: port = 0 appData = 0x40819cd0 bytes = 116736 buffer = 0x40540000
E/        ( 1881): QCOMOMXINTERFACE - Memory dealer allocation for port 0 buffer size 116736
E/OMX-VENC-720p(  117): use_input_buffer: port = 0 appData = 0xbec79ac0 bytes = 116736 buffer = 0x4055c800
E/        ( 1881): QCOMOMXINTERFACE - Memory dealer allocation for port 0 buffer size 116736
E/OMX-VENC-720p(  117): use_input_buffer: port = 0 appData = 0x40cc3cd0 bytes = 116736 buffer = 0x40579000
E/        ( 1881): QCOMOMXINTERFACE::allocateBuffersOnPort 0 COMPLETE
E/        ( 1881): QCOMOMXINTERFACE::allocateBuffersOnPort 1 BEGIN
E/        ( 1881): QCOMOMXINTERFACE - Memory dealer allocation for port 1 buffer size 118784
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117):  Inside use_output_buffer()
E/        ( 1881): QCOMOMXINTERFACE - Memory dealer allocation for port 1 buffer size 118784
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117):  Inside use_output_buffer()
E/        ( 1881): QCOMOMXINTERFACE - Memory dealer allocation for port 1 buffer size 118784
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117):  Inside use_output_buffer()
E/        ( 1881): QCOMOMXINTERFACE - Memory dealer allocation for port 1 buffer size 118784
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117):  Inside use_output_buffer()
E/        ( 1881): QCOMOMXINTERFACE - Memory dealer allocation for port 1 buffer size 118784
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117):  Inside use_output_buffer()
E/        ( 1881): QCOMOMXINTERFACE::allocateBuffersOnPort 1 COMPLETE
E/        ( 1881): QCOMOMXINTERFACE::INIT - WAIT FOR IDLE STATE (2)
E/        ( 1881): QCOMOMXINTERFACE - OnMessage :: message.type = 0
E/        ( 1881): OMX MESSAGE: EVENT: 0, data1 0, data2 2
E/        ( 1881): QCOMOMXINTERFACE::INIT - SEND TO EXECUTION STATE (3)
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117):  unsigned int venc_dev::venc_start()(): Check Profile/Level set in driver before start
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117):  unsigned int venc_dev::venc_start()(): Driver Profile[6]/Level[23] successfully SET
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117): ENC_CONFIG: Codec: 3, Profile 6, level : 23
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117):  ENC_CONFIG: Width: 320, Height:240, Fps: 15
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117): ENC_CONFIG: Bitrate: 512000, RC: 2, I-Period: 1701080931
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117): ENC_CONFIG: qpI: -1485605150, qpP: -1485740904, qpb: 0
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117): ENC_CONFIG: VOP_Resolution: 272, Slice-Mode: 777538895, Slize_Size: 1836016497
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117): ENC_CONFIG: EntropyMode: 1685414190, CabacModel: 1697541993
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117): ENC_CONFIG: DB-Mode: 1685021550, alpha: 1697542757, Beta: 6517366
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117): ENC_CONFIG: IntraMB/Frame: 391056, HEC: -1345035028
E/OMX-VENC-720p(  117): Width 320, Height 240, w_round 320, h_round 240, yuv_size 147456 alignment 8192 count 2
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117):  Allocated virt:0x4081b000, FD: 88 of size 147456
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117):  Allocated virt:0x4081b000, FD: 88 of size 147456 at index: 0
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117):  Allocated virt:0x40974000, FD: 89 of size 147456
E/OMX-VENC-720p(  117):
E/OMX-VENC-720p(  117):  Allocated virt:0x40974000, FD: 89 of size 147456 at index: 1

Below are the logs whe i play this file using vlc player:

E/OMX-VDEC-1080P(  117):  omx_vdec::component_init(): Start of New Playback
I/ActivityManager(  175): Displayed org.videolan.vlc/.gui.video.VideoPlayerActivity: +321ms
E/OMX-VDEC-1080P(  117):
E/OMX-VDEC-1080P(  117):  omx_vdec::component_init(): Open returned fd 23
E/OMX-VDEC-1080P(  117): omx_vdec: message thread start
E/OMX-VDEC-1080P(  117):
E/OMX-VDEC-1080P(  117):  omx_vdec::component_init() success
E/OMX-VDEC-1080P(  117): omx_vdec: Async thread start
D/vlc     ( 2278): loaded component OMX.qcom.video.decoder.h263 of role video_decoder.h263
D/vlc     ( 2278): found 0 audio ports
D/vlc     ( 2278): found 0 image ports
D/vlc     ( 2278): found 2 video ports
E/OMX-VDEC-1080P(  117): get_parameter: unknown param 01000006
D/vlc     ( 2278): -> input 0 (0 streams) (2:1:1048576 buffers) (0,0) enabled
D/vlc     ( 2278):   -> video H263 [email protected] (3,0) (1920,1088)
E/OMX-VDEC-1080P(  117): get_parameter: unknown param 01000006
D/vlc     ( 2278): -> output 1 (0 streams) (3:3:3137536 buffers) (0,0) enabled
D/vlc     ( 2278):   -> video  [email protected] (0,2141391875) (1920,1088)
D/vlc     ( 2278): component standard role set to video_decoder.h263
E/OMX-VDEC-1080P(  117): set_parameter: frame rate set by omx client : 29
D/vlc     ( 2278): OMX color format 2141391875 not supported
E/OMX-VDEC-1080P(  117):
E/OMX-VDEC-1080P(  117):  Playback Ended - PASSED
E/OMX-VDEC-1080P(  117):
E/OMX-VDEC-1080P(  117):  ALL output buffers are freed/released
E/OMX-VDEC-1080P(  117):
E/OMX-VDEC-1080P(  117):  Close the driver instance
E/OMX-VDEC-1080P(  117):
E/OMX-VDEC-1080P(  117):  omx_vdec::component_deinit() complete

 

  • Up0
  • Down0

Opinions expressed in the content posted here are the personal opinions of the original authors, and do not necessarily reflect those of Qualcomm Incorporated or its subsidiaries (“Qualcomm”). The content is provided for informational purposes only and is not meant to be an endorsement or representation by Qualcomm or any other party. This site may also provide links or references to non-Qualcomm sites and resources. Qualcomm makes no representations, warranties, or other commitments whatsoever about any non-Qualcomm sites or third-party resources that may be referenced, accessible from, or linked to this site.