intel / libyami

Yet Another Media Infrastructure. it is core part of media codec with hardware acceleration, it is yummy to your video experience on Linux like platform.
Apache License 2.0
146 stars 106 forks source link

G1620 can't encode h264 #851

Open waiter89 opened 6 years ago

waiter89 commented 6 years ago

(gdb) bt

0 0x00007f7ab3ceb477 in ioctl () from /lib64/libc.so.6

1 0x00007f7aa5042f78 in drmIoctl () from /usr/lib64/libdrm.so.2

2 0x00007f7aa42a3b1b in ?? () from /usr/lib64/libdrm_intel.so.1

3 0x00007f7a925795e9 in i965_MapBuffer () from /usr/lib64/dri/i965_drv_video.so

4 0x00007f7a924fc458 in gen6_mfc_stop () from /usr/lib64/dri/i965_drv_video.so

5 0x00007f7a924fdc5a in gen6_mfc_avc_encode_picture () from /usr/lib64/dri/i965_drv_video.so

6 0x00007f7a9250f9aa in gen7_mfc_pipeline () from /usr/lib64/dri/i965_drv_video.so

7 0x00007f7a9258aafa in intel_encoder_end_picture () from /usr/lib64/dri/i965_drv_video.so

8 0x00007f7a9257c36c in i965_EndPicture () from /usr/lib64/dri/i965_drv_video.so

9 0x00007f7a93c7cfe0 in vaEndPicture () from ./plugins/dec/exp_sw.dec

10 0x00007f7a9c11e9cf in YamiMediaCodec::VaapiPicture::render (this=0x7f7a84073eb0) at vaapipicture.cpp:60

11 0x00007f7a9c159475 in YamiMediaCodec::VaapiEncPicture::encode (this=) at vaapiencpicture.cpp:40

12 0x00007f7a9c14b2d0 in YamiMediaCodec::VaapiEncoderH264::encodePicture (this=this@entry=0x7f7a6800b9e0, picture=std::shared_ptr (count 1, weak 0) 0x7f7a84073eb0) at vaapiencoder_h264.cpp:1942

13 0x00007f7a9c14b4ae in YamiMediaCodec::VaapiEncoderH264::encodeAllFrames (this=0x7f7a6800b9e0) at vaapiencoder_h264.cpp:1239

14 0x00007f7a9c142439 in YamiMediaCodec::VaapiEncoderBase::encode (this=0x7f7a6800b9e0, frame=std::shared_ptr (count 2, weak 0) 0x7f7a680038b0) at vaapiencoder_base.cpp:169

15 0x00007f7a9c0f54b0 in YamiEncoder::encodeAll(void*, int, int, int) () from ./libcoderlib.so.1

16 0x00007f7a9d2c08aa in pc_prepare_encode_video (Acodec=0x7f7a68004980, winId=0x0, Asrc=0x0, Adst=0x0, Aflag=0) at ../shanwei_proc/shanwei_proc.c:635

17 0x00007f7a8bb28e62 in mp4_write_video (Aobj=0x7f7a680336e0, Ahead=0x7f7a90711590, Adata=0x7f7a6800f6c0 "", Alen=7560) at ../mp4-encode/mp4_pri.cpp:587

18 0x00007f7a90be5c7c in MediaMuxer::WriteVideo2 (this=0x14f25c0, Aobj=0x7f7a680336e0, Ahead=0x7f7a90711590, Adata=0x7f7a6800f6c0 "", Alen=7560) at ../../sharedinc/mediamuxer.hpp:101

surveil@234:~> lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 2 On-line CPU(s) list: 0,1 Thread(s) per core: 1 Core(s) per socket: 2 Socket(s): 1 NUMA node(s): 1 Vendor ID: GenuineIntel CPU family: 6 Model: 58 Model name: Intel(R) Celeron(R) CPU G1620 @ 2.70GHz Stepping: 9 CPU MHz: 2693.899 CPU max MHz: 2700.0000 CPU min MHz: 1600.0000 BogoMIPS: 5387.79 Virtualization: VT-x L1d cache: 32K L1i cache: 32K L2 cache: 256K L3 cache: 2048K NUMA node0 CPU(s): 0,1 Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt tsc_deadline_timer xsave lahf_lm cpuid_fault epb pti tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms xsaveopt dtherm arat pln pts

surveil@234:~> /sbin/lspci -nn 00:00.0 Host bridge [0600]: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller [8086:0150] (rev 09) 00:02.0 VGA compatible controller [0300]: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller [8086:0152] (rev 09) 00:14.0 USB controller [0c03]: Intel Corporation 7 Series/C210 Series Chipset Family USB xHCI Host Controller [8086:1e31] (rev 04) 00:16.0 Communication controller [0780]: Intel Corporation 7 Series/C216 Chipset Family MEI Controller #1 [8086:1e3a] (rev 04) 00:19.0 Ethernet controller [0200]: Intel Corporation 82579LM Gigabit Network Connection (Lewisville) [8086:1502] (rev 04) 00:1a.0 USB controller [0c03]: Intel Corporation 7 Series/C216 Chipset Family USB Enhanced Host Controller #2 [8086:1e2d] (rev 04) 00:1b.0 Audio device [0403]: Intel Corporation 7 Series/C216 Chipset Family High Definition Audio Controller [8086:1e20] (rev 04) 00:1c.0 PCI bridge [0604]: Intel Corporation 7 Series/C216 Chipset Family PCI Express Root Port 1 [8086:1e10] (rev c4) 00:1c.1 PCI bridge [0604]: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 2 [8086:1e12] (rev c4) 00:1c.4 PCI bridge [0604]: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 5 [8086:1e18] (rev c4) 00:1d.0 USB controller [0c03]: Intel Corporation 7 Series/C216 Chipset Family USB Enhanced Host Controller #1 [8086:1e26] (rev 04) 00:1e.0 PCI bridge [0604]: Intel Corporation 82801 PCI Bridge [8086:244e] (rev a4) 00:1f.0 ISA bridge [0601]: Intel Corporation B75 Express Chipset LPC Controller [8086:1e49] (rev 04) 00:1f.2 SATA controller [0106]: Intel Corporation 7 Series/C210 Series Chipset Family 6-port SATA Controller [AHCI mode] [8086:1e02] (rev 04) 00:1f.3 SMBus [0c05]: Intel Corporation 7 Series/C216 Chipset Family SMBus Controller [8086:1e22] (rev 04) 02:00.0 SATA controller [0106]: Marvell Technology Group Ltd. Device [1b4b:9215] (rev 11) 03:00.0 Ethernet controller [0200]: Intel Corporation 82574L Gigabit Network Connection [8086:10d3]

surveil@234:~> vainfo libva info: VA-API version 1.0.0 libva info: va_getDriverName() returns 0 libva info: Trying to open /usr/lib64/dri/i965_drv_video.so libva info: Found init function __vaDriverInit_1_0 libva info: va_openDriver() returns 0 vainfo: VA-API version: 1.0 (libva 2.0.0) vainfo: Driver version: Intel i965 driver for Intel(R) Ivybridge Desktop - 2.1.1.pre1 (2.1.1.pre1) 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 VAProfileH264StereoHigh : VAEntrypointVLD VAProfileVC1Simple : VAEntrypointVLD VAProfileVC1Main : VAEntrypointVLD VAProfileVC1Advanced : VAEntrypointVLD VAProfileNone : VAEntrypointVideoProc VAProfileJPEGBaseline : VAEntrypointVLD

surveil@234:~> uname -a Linux localhost 4.12.14-lp150.9-default #1 SMP Fri Apr 20 20:45:53 UTC 2018 (f882b34) x86_64 x86_64 x86_64 GNU/Linux

xuguangxin commented 6 years ago

@waiter89 , did you tried this using libva built in h264enc ?