Encode stream error with omxh264enc

Vincent BENOIT sinseman44 at gmail.com
Wed Dec 18 05:23:28 PST 2013


Hi all,

I try to encode a video test with OMX plugin for gstreamer on my raspberry
pi and I have an error when I launch the gst-launch command.
the gst-omx plugin was installed in my filesystem in /usr/lib/gstreamer-1.0.

this is the gst-launch command with some traces :
# export GST_DEBUG="omx:9"
# gst-launch-1.0 videotestsrc is-live=1 ! omxh264enc ! udpsink
host=10.33.229.91 port=9999
0:00:00.264214000   445  0x1ae5ce0 DEBUG                    omx
gstomx.c:2752:plugin_init: Registering element 'omxmpeg2videodec'
0:00:00.275182000   445  0x1ae5ce0 DEBUG                    omx
gstomx.c:2752:plugin_init: Registering element 'omxmpeg4videodec'
0:00:00.282413000   445  0x1ae5ce0 DEBUG                    omx
gstomx.c:2752:plugin_init: Registering element 'omxh263dec'
0:00:00.290788000   445  0x1ae5ce0 DEBUG                    omx
gstomx.c:2752:plugin_init: Registering element 'omxh264dec'
0:00:00.297568000   445  0x1ae5ce0 DEBUG                    omx
gstomx.c:2752:plugin_init: Registering element 'omxtheoradec'
0:00:00.303366000   445  0x1ae5ce0 DEBUG                    omx
gstomx.c:2752:plugin_init: Registering element 'omxvp8dec'
0:00:00.311142000   445  0x1ae5ce0 DEBUG                    omx
gstomx.c:2752:plugin_init: Registering element 'omxmjpegdec'
0:00:00.317973000   445  0x1ae5ce0 DEBUG                    omx
gstomx.c:2752:plugin_init: Registering element 'omxvc1dec'
0:00:00.324150000   445  0x1ae5ce0 DEBUG                    omx
gstomx.c:2752:plugin_init: Registering element 'omxh264enc'
0:00:00.333223000   445  0x1ae5ce0 DEBUG                    omx
gstomx.c:2625:_class_init: No sink template caps specified for element
'omxh264enc', using default 'video/x-raw, width = (int) [ 1, max ], height
= (int) [ 1, max ], framerate = (fraction) [ 0, max ]'
0:00:00.341853000   445  0x1ae5ce0 DEBUG                    omx
gstomx.c:2652:_class_init: No src template caps specified for element
'omxh264enc', using default 'video/x-h264, width=(int) [ 16, 4096 ],
height=(int) [ 16, 4096 ]'
0:00:00.352062000   445  0x1ae5ce0 DEBUG                    omx
gstomx.c:2678:_class_init: Using hack: no-component-role
Setting pipeline to PAUSED ...
gst-launch-1.0: can't resolve symbol 'vcos_global_lock'

I try the strace command with gst-launch :

# strace gst-launch-1.0 -v videotestsrc is-live=1 ! omxh264enc ! udpsink
host=192.168.1.5 port=9999
[...]
write(1, "Setting pipeline to PAUSED ...\n", 31Setting pipeline to PAUSED
...
) = 31
rt_sigaction(SIGPIPE, {SIG_IGN, [PIPE], SA_RESTART|0x4000000}, {SIG_DFL,
[], 0}, 8) = 0
socket(PF_INET, SOCK_STREAM|SOCK_CLOEXEC, IPPROTO_TCP) = 5
fcntl64(5, F_GETFL)                     = 0x2 (flags O_RDWR)
fcntl64(5, F_SETFL, O_RDWR|O_NONBLOCK)  = 0
connect(5, {sa_family=AF_INET, sin_port=htons(9999),
sin_addr=inet_addr("192.168.1.5")}, 16) = -1 EINPROGRESS (Operation now in
progress)
clock_gettime(CLOCK_MONOTONIC, {9678, 635465411}) = 0
eventfd(0)                              = 6
poll([{fd=5, events=POLLOUT}, {fd=6, events=POLLIN}], 2, -1) = 1 ([{fd=5,
revents=POLLOUT}])
close(6)                                = 0
getsockopt(5, SOL_SOCKET, SO_ERROR, [0], [4]) = 0
write(4, "W", 1)                        = 1
stat64("/usr/lib/libbcm_host.so", {st_mode=S_IFREG|0755, st_size=57784,
...}) = 0
open("/usr/lib/libbcm_host.so", O_RDONLY) = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=57784, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|0x4000000, -1, 0) = 0xb6fe3000
read(6,
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\0F\0\0004\0\0\0"..., 4096)
= 4096
mmap2(NULL, 102400, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb6914000
mmap2(0xb6914000, 55964, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 6, 0)
= 0xb6914000
mmap2(0xb6929000, 3488, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 6,
0xd000) = 0xb6929000
mmap2(0xb692a000, 11776, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb692a000
mprotect(0xb6914000, 55964, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
close(6)                                = 0
munmap(0xb6fe3000, 4096)                = 0
open("/lib/libvcos.so", O_RDONLY)       = -1 ENOENT (No such file or
directory)
open("/lib/libvcos.so", O_RDONLY)       = -1 ENOENT (No such file or
directory)
open("/usr/lib/libvcos.so", O_RDONLY)   = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=39476, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|0x4000000, -1, 0) = 0xb6fe3000
read(6,
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0008(\0\0004\0\0\0"..., 4096)
= 4096
mmap2(NULL, 73728, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb6902000
mmap2(0xb6902000, 37592, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 6, 0)
= 0xb6902000
mmap2(0xb6913000, 1564, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 6,
0x9000) = 0xb6913000
close(6)                                = 0
munmap(0xb6fe3000, 4096)                = 0
open("/lib/libpthread.so.0", O_RDONLY)  = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=66996, ...}) = 0
close(6)                                = 0
open("/lib/libdl.so.0", O_RDONLY)       = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=13224, ...}) = 0
close(6)                                = 0
open("/lib/librt.so.0", O_RDONLY)       = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=13200, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|0x4000000, -1, 0) = 0xb6fe3000
read(6,
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0`\16\0\0004\0\0\0"..., 4096)
= 4096
mmap2(NULL, 49152, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb68f6000
mmap2(0xb68f6000, 8260, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 6, 0) =
0xb68f6000
mmap2(0xb6900000, 4100, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 6,
0x2000) = 0xb6900000
close(6)                                = 0
munmap(0xb6fe3000, 4096)                = 0
open("/lib/libvchiq_arm.so", O_RDONLY)  = -1 ENOENT (No such file or
directory)
open("/lib/libvchiq_arm.so", O_RDONLY)  = -1 ENOENT (No such file or
directory)
open("/usr/lib/libvchiq_arm.so", O_RDONLY) = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=18724, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|0x4000000, -1, 0) = 0xb6fe3000
read(6,
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\200\25\0\0004\0\0\0"...,
4096) = 4096
mmap2(NULL, 53248, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb68e9000
mmap2(0xb68e9000, 17244, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 6, 0)
= 0xb68e9000
mmap2(0xb68f5000, 1292, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 6,
0x4000) = 0xb68f5000
close(6)                                = 0
munmap(0xb6fe3000, 4096)                = 0
open("/lib/libc.so.0", O_RDONLY)        = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=355672, ...}) = 0
close(6)                                = 0
open("/lib/libpthread.so.0", O_RDONLY)  = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=66996, ...}) = 0
close(6)                                = 0
open("/lib/libdl.so.0", O_RDONLY)       = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=13224, ...}) = 0
close(6)                                = 0
open("/lib/librt.so.0", O_RDONLY)       = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=13200, ...}) = 0
close(6)                                = 0
open("/lib/libc.so.0", O_RDONLY)        = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=355672, ...}) = 0
close(6)                                = 0
open("/lib/ld-uClibc.so.0", O_RDONLY)   = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=25304, ...}) = 0
close(6)                                = 0
open("/lib/libdl.so.0", O_RDONLY)       = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=13224, ...}) = 0
close(6)                                = 0
open("/lib/libc.so.0", O_RDONLY)        = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=355672, ...}) = 0
close(6)                                = 0
open("/lib/libc.so.0", O_RDONLY)        = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=355672, ...}) = 0
close(6)                                = 0
open("/lib/ld-uClibc.so.0", O_RDONLY)   = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=25304, ...}) = 0
close(6)                                = 0
open("/lib/libc.so.0", O_RDONLY)        = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=355672, ...}) = 0
close(6)                                = 0
open("/lib/libdl.so.0", O_RDONLY)       = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=13224, ...}) = 0
close(6)                                = 0
open("/lib/libpthread.so.0", O_RDONLY)  = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=66996, ...}) = 0
close(6)                                = 0
open("/lib/libc.so.0", O_RDONLY)        = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=355672, ...}) = 0
close(6)                                = 0
open("/lib/ld-uClibc.so.0", O_RDONLY)   = 6
fstat(6, {st_mode=S_IFREG|0755, st_size=25304, ...}) = 0
close(6)                                = 0
mprotect(0xb6900000, 4096, PROT_READ)   = 0
futex(0xb691373c, FUTEX_WAKE_PRIVATE, 2147483647) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb6fe3000
write(2, "", 0)                         = 0
write(2, "gst-launch-1.0", 14gst-launch-1.0)          = 14
write(2, ": can't resolve symbol '", 24: can't resolve symbol ') = 24
write(2, "vcos_global_lock", 16vcos_global_lock)        = 16
write(2, "'\n", 2'
)                      = 2
munmap(0xb6fe3000, 4096)                = 0
exit(1)                                 = ?
+++ exited with 1 +++

libvcos.so is found in /usr/lib folder and I think the library is loaded
properly.
I use gstreamer 1.0.8 and the last git gst-omx.

thanks for your help.

Sinseman44
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-openmax/attachments/20131218/8b518dfc/attachment.html>


More information about the gstreamer-openmax mailing list