Can you reproduce this issue with --srcyuv and --fourcc ? Thanks Haihao
> user@video-ubuntu:~/Downloads$ vainfo > libva info: VA-API version 0.35.0 > libva info: va_getDriverName() returns 0 > libva info: Trying to open /usr/local/lib/dri/i965_drv_video.so > libva info: Found init function __vaDriverInit_0_35 > libva info: va_openDriver() returns 0 > vainfo: VA-API version: 0.35 (libva 1.3.0) > vainfo: Driver version: Intel i965 driver - 1.3.0 > vainfo: Supported profile and entrypoints > VAProfileMPEG2Simple : VAEntrypointVLD > VAProfileMPEG2Simple : VAEntrypointEncSlice > VAProfileMPEG2Main : VAEntrypointVLD > VAProfileMPEG2Main : VAEntrypointEncSlice > VAProfileH264ConstrainedBaseline: VAEntrypointVLD > VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice > VAProfileH264Main : VAEntrypointVLD > VAProfileH264Main : VAEntrypointEncSlice > VAProfileH264High : VAEntrypointVLD > VAProfileH264High : VAEntrypointEncSlice > VAProfileVC1Simple : VAEntrypointVLD > VAProfileVC1Main : VAEntrypointVLD > VAProfileVC1Advanced : VAEntrypointVLD > VAProfileNone : VAEntrypointVideoProc > VAProfileJPEGBaseline : VAEntrypointVLD > > libva-1.3.0 and intel-libva-driver-1.3.0 > > > 28.03.2014, 11:01, "Zhao Yakui" <[email protected]>: > > On Fri, 2014-03-28 at 10:44 +0400, Nik Orlov wrote: > > > >> Hello! > >> > >> I have tested h264encoder with sync mode and without. Time is ok. > >> But I have strange bug. > >> I`m generating h264 bitstream output like this > >> ./h264encode -w 3840 -h 1080 -framecount 2500 -f 25 -o ./test.h264 > >> I have generated different resolutions, from resolution 1024x768 I > >> have such ugly picture. > >> At the moment I don`t understand what is it about? > > > > Which version of driver is used in your test? > > > > It seems that it is not encoded as expected. > > > > Will you please try to file a bug on https://bugs.freedesktop.org/ and > > select the libva as component? > > > > Thanks. > > Yakui > > > >> Screenshots: > >> bug1920x1080.jpg http://yadi.sk/d/ixGQfaKLLM7aU > >> bug3840x1080 http://yadi.sk/d/fnZ1TXJSLM7ac > >> bug3840x1080_2 http://yadi.sk/d/7NqWLkgLLM7ai > >> > >> Any ideas? > >> > >> 27.03.2014, 21:32, "Yuan, Shengquan" <[email protected]>: > >>> “Frame Rate: 0.06 fps (1 frames, 16500 ms (16500.00 ms per frame))” > >>> in your test is calculated by “(total time of app execution)/(total > >>> frame)”. “(total time of app execution)” includes app setup, source > >>> YUV uploading, frame encoding, coded bitstream saving, app stop, > >>> etc. If you only encode 1 frame, the majority time will be “source > >>> YUV uploading”. > >>> > >>> There is detailed break-down of the time in the output, but since > >>> the application runs with two threads (one is source YUV uploading, > >>> another thread is frame encoding), you are not able to get the > >>> absolute time of a frame encoding. > >>> > >>> Tips: > >>> * If you want to know the accurate time of one frame encoding, > >>> use option “-syncmode”, and check the time of > >>> “vaBegin/vaRender/vaEnd/vaSyncSurface” > >>> * If you want to get the end-to-end encoding fps number, try > >>> to encoding thousand of frames with auto-generated YUV > >>> source (without –srcyuv), e.g. “h264encode –n 7000” > >>> > >>> Thanks > >>> -Austin > >>> > >>> From: Libva [mailto:[email protected]] On Behalf > >>> Of Matt Pekar > >>> Sent: Thursday, March 27, 2014 9:11 AM > >>> To: Nik Orlov > >>> Cc: [email protected] > >>> Subject: Re: [Libva] linux vaapi h.264 encoding haswell hd graphics > >>> 4600 > >>> > >>> For that size of frame, 20ms is a pretty darn good time IMO. We see > >>> 10ms (ish) on things in the 1280x720 range. > >>> > >>> Since your input stream is only 25fps, the encoder will be able to > >>> provide near real-time output, with just a 20ms delay before writing > >>> each frame. > >>> > >>> If you were trying to do 60fps then you wouldn't be able to do "real > >>> time" at all since you'd be falling behind 5ms every frame. > >>> > >>> On Thu, Mar 27, 2014 at 5:57 AM, Nik Orlov <[email protected]> > >>> wrote: > >>> Hello! > >>> > >>> I have ubuntu-desktop 13.10 amd64 on core i7 4770 (Haswell, HD > >>> graphics 4600). > >>> I have installed vaapi (libva from sources 1.3.0). > >>> > >>> There is h264encode test. I have started it: > >>> > >>> user@video-ubuntu:~/VAAPI/libva-1.3.0/test/encode$ ./h264encode -w > >>> 3840 -h 1080 -framecount 1 -f 25 > >>> Source frame is 3840x1080 and will code clip to 3840x1088 with crop > >>> > >>> INPUT:Try to encode H264... > >>> INPUT: RateControl : VBR > >>> INPUT: Resolution : 3840x1080, 1 frames > >>> INPUT: FrameRate : 25 > >>> INPUT: Bitrate : 24883200 > >>> INPUT: Slieces : 1 > >>> INPUT: IntraPeriod : 30 > >>> INPUT: IDRPeriod : 60 > >>> INPUT: IpPeriod : 1 > >>> INPUT: Initial QP : 26 > >>> INPUT: Min QP : 0 > >>> INPUT: Source YUV : AUTO generated > >>> INPUT: Coded Clip : /tmp/test.264 > >>> INPUT: Rec Clip : Not save reconstructed frame > >>> > >>> libva info: VA-API version 0.35.0 > >>> libva info: va_getDriverName() returns 0 > >>> libva info: Trying to open /usr/local/lib/dri/i965_drv_video.so > >>> libva info: Found init function __vaDriverInit_0_35 > >>> libva info: va_openDriver() returns 0 > >>> Use profile VAProfileH264High > >>> Support rate control mode (0x12):CBR CQP > >>> Support VAConfigAttribEncPackedHeaders > >>> Support packed sequence headers > >>> Support packed picture headers > >>> Support packed misc headers > >>> Support 1 RefPicList0 and 1 RefPicList1 > >>> Loading data into surface 15.....Complete surface loading > >>> |00000000(485835 bytes coded) > >>> > >>> PERFORMANCE: Frame Rate : 0.06 fps (1 frames, 16500 ms > >>> (16500.00 ms per frame)) > >>> PERFORMANCE: Compression ratio : 12:1 > >>> PERFORMANCE: UploadPicture : 16444 ms (16444.00, 99.66% > >>> percent) > >>> PERFORMANCE: vaBeginPicture : 0 ms (0.00, 0.00% percent) > >>> PERFORMANCE: vaRenderHeader : 0 ms (0.00, 0.00% percent) > >>> PERFORMANCE: vaEndPicture : 3 ms (3.00, 0.02% percent) > >>> PERFORMANCE: vaSyncSurface : 32 ms (32.00, 0.19% percent) > >>> PERFORMANCE: SavePicture : 0 ms (0.00, 0.00% percent) > >>> PERFORMANCE: Others : 21 ms (21.00, 0.13% percent) > >>> (Multithread enabled, the timing is only for reference) > >>> > >>> And other way > >>> > >>> user@video-ubuntu:~/VAAPI/libva-1.3.0/test/encode$ ./h264encode -w > >>> 3840 -h 1080 -framecount 2500 -f 25 > >>> Source frame is 3840x1080 and will code clip to 3840x1088 with crop > >>> > >>> INPUT:Try to encode H264... > >>> INPUT: RateControl : VBR > >>> INPUT: Resolution : 3840x1080, 2500 frames > >>> INPUT: FrameRate : 25 > >>> INPUT: Bitrate : 24883200 > >>> INPUT: Slieces : 1 > >>> INPUT: IntraPeriod : 30 > >>> INPUT: IDRPeriod : 60 > >>> INPUT: IpPeriod : 1 > >>> INPUT: Initial QP : 26 > >>> INPUT: Min QP : 0 > >>> INPUT: Source YUV : AUTO generated > >>> INPUT: Coded Clip : /tmp/test.264 > >>> INPUT: Rec Clip : Not save reconstructed frame > >>> > >>> libva info: VA-API version 0.35.0 > >>> libva info: va_getDriverName() returns 0 > >>> libva info: Trying to open /usr/local/lib/dri/i965_drv_video.so > >>> libva info: Found init function __vaDriverInit_0_35 > >>> libva info: va_openDriver() returns 0 > >>> Use profile VAProfileH264High > >>> Support rate control mode (0x12):CBR CQP > >>> Support VAConfigAttribEncPackedHeaders > >>> Support packed sequence headers > >>> Support packed picture headers > >>> Support packed misc headers > >>> Support 1 RefPicList0 and 1 RefPicList1 > >>> Loading data into surface 15.....Complete surface loading > >>> \00002499(719089 bytes coded) > >>> > >>> PERFORMANCE: Frame Rate : 53.70 fps (2500 frames, 46555 > >>> ms (18.62 ms per frame)) > >>> PERFORMANCE: Compression ratio : 11:1 > >>> PERFORMANCE: UploadPicture : 16364 ms (6.55, 35.15% > >>> percent) > >>> PERFORMANCE: vaBeginPicture : 2 ms (0.00, 0.00% percent) > >>> PERFORMANCE: vaRenderHeader : 18 ms (0.01, 0.04% percent) > >>> PERFORMANCE: vaEndPicture : 1098 ms (0.44, 2.36% percent) > >>> PERFORMANCE: vaSyncSurface : 21385 ms (8.55, 45.93% > >>> percent) > >>> PERFORMANCE: SavePicture : 8759 ms (3.50, 18.81% percent) > >>> PERFORMANCE: Others : -1071 ms (1717986.49, > >>> 9225574.54% percent) > >>> (Multithread enabled, the timing is only for reference) > >>> > >>> So, when test encodes more frames time for encoding 1 frame is about > >>> 20ms. > >>> Why it is so? > >>> > >>> My primary question, if I want to encode video in real time (It > >>> means camera sends me frame each 40ms), what time for encoding 1 > >>> frame I will get? > >>> As I understand programm sends some data to GPU, GPU encodes video > >>> and then send me encoded data back. > >>> How much time takes sending data to GPU and back? > >>> > >>> Maybe it will possible to encode each frame in real time, or maybe > >>> it isn`t possible, but It is possible to keep some buffer (for > >>> example for 25 frames - 1 sec of video) and than encode ot very > >>> fast. > >>> > >>> -- > >>> Ник Орлов mailto:[email protected] > >>> _______________________________________________ > >>> Libva mailing list > >>> [email protected] > >>> http://lists.freedesktop.org/mailman/listinfo/libva > >> -- > >> Ник Орлов > >> mailto:[email protected] > >> > >> _______________________________________________ > >> Libva mailing list > >> [email protected] > >> http://lists.freedesktop.org/mailman/listinfo/libva > _______________________________________________ Libva mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libva
