]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - glsdk/omapdrmtest.git/log
glsdk/omapdrmtest.git
7 years agoutil/demux: update use of deprecated API
Denys Dmytriyenko [Fri, 11 Sep 2015 16:57:56 +0000 (12:57 -0400)]
util/demux: update use of deprecated API

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
7 years agoconfigure: disable kmscube
Anand Balagopalakrishnan [Sun, 24 Jan 2016 08:46:10 +0000 (14:16 +0530)]
configure: disable kmscube

kmscube support requires proprietary EGL extensions EGL_RAW_VIDEO_TI_DMABUF
which is not supported in DDK 1.14.

Future versions of DDK will support the standard EGL extension
EXT_image_dma_buf_import which is ratified by Khronos. This will require
corresponding changes to the application.

Till then, disable kmscube in omapdrmtest.

Signed-off-by: Anand Balagopalakrishnan <anandb@ti.com>
7 years agodisplay-wayland: Wayland backend implementation
Nikhil Devshatwar [Wed, 9 Sep 2015 08:54:01 +0000 (14:24 +0530)]
display-wayland: Wayland backend implementation

Add new backend for the display interface.
Add the drm client protocol and client protocol files
* Use omap_bo to allocate video buffers
* Use wl_drm_create(_planar)_buffer APIs for wayland buffers
Update the Makefile and configure.ac dependencies
Add the viewport to scale based on -w SIZE

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
7 years agodisplay-kms: Add no master support
Nikhil Devshatwar [Tue, 12 Apr 2016 09:15:21 +0000 (14:45 +0530)]
display-kms: Add no master support

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
7 years agoAdd more checks to detect certain process call errors and exit
Pooja Prajod [Thu, 11 Feb 2016 11:48:58 +0000 (17:18 +0530)]
Add more checks to detect certain process call errors and exit

DCE_EXDM_UNSUPPORTED, DCE_EIPC_CALL_FAIL and  DCE_EINVALID_INPUT signifies that the
application needs to free the resources and exit.

Signed-off-by: Pooja Prajod <a0132412@ti.com>
8 years agoviddec3test: move a global variable to demux structure
Harinarayan Bhatta [Mon, 24 Aug 2015 11:04:05 +0000 (16:34 +0530)]
viddec3test: move a global variable to demux structure

Fixes a failure in dual-decode case.

Signed-off-by: Harinarayan Bhatta <harinarayan@ti.com>
8 years agovpe: Correct the colorspace field
Nikhil Devshatwar [Mon, 3 Aug 2015 05:08:19 +0000 (10:38 +0530)]
vpe: Correct the colorspace field

Correct the colorspace field
Fix the build error
Fixes: (562a2c8d "vpe: Pass correct colorspace to s_fmt ioctl")
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
8 years agodisplay-kmscube: fix race condition for buffer to face mapping
Nikhil Devshatwar [Mon, 27 Jul 2015 13:32:40 +0000 (19:02 +0530)]
display-kmscube: fix race condition for buffer to face mapping

When disp_get_vid_buffers is called, all the buffers allocated in
one such call are grouped and are assigned a face number.
Any of these buffers will always be rendered on this face.

This function is not reentrant as it uses the num_face field of disp.
Because of this, if two of these functions are being executed in parallel,
sometimes, buffers in pool get assigned a different face number.

Because of this, randomly a buffer for some other face gets rendered
causing flicker.

Protect the function with the mutex lock so that the buffer to face number
allocation is done correctly, hence avoiding the flicker.

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
8 years agovpe: Pass correct colorspace to s_fmt ioctl
Nikhil Devshatwar [Mon, 3 Aug 2015 04:52:45 +0000 (10:22 +0530)]
vpe: Pass correct colorspace to s_fmt ioctl

Without passing correct colorspace, the RGB formats will not work.
This would lead to image corruption when displaying in the RGB format.
The colorspace is derived from the fourcc, but not passed to the s_fmt ioctl.
Correct this.

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
8 years agodmabuftest: Use single planar buffers
Nikhil Devshatwar [Wed, 26 Nov 2014 09:03:50 +0000 (14:33 +0530)]
dmabuftest: Use single planar buffers

VIP driver does not support multiplanar buffers.
For NV12 format, UV plane is assumed to be contiguous
with the Y plane.

Therefore, use all the single planar buffers
So that DRM also allocates single planar and VIP can consume them
for NV12 capture.

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
9 years agocapturevpedisplay: Request interlaced capture and pass field ids
Nikhil Devshatwar [Wed, 5 Nov 2014 09:30:48 +0000 (15:00 +0530)]
capturevpedisplay: Request interlaced capture and pass field ids

Currently the VIP S_FMT ioctl does not specify the field type of
the capture. Request for alternate field type.
Also, the field type of captured buffer is returned by the driver.
Pass this field type when queuing buffers for the VPE source.

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
9 years agov4l2: Add latency measurement
Nikhil Devshatwar [Thu, 25 Sep 2014 09:06:07 +0000 (14:36 +0530)]
v4l2: Add latency measurement

To profile the driver capture latency and display latency,
Calculate the latencies at QBUF and DQBUF ioctls

Print the latencies only when --debug is passed.

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
9 years agodmabuftest: Return from thread if streamon fails
Nikhil Devshatwar [Fri, 26 Sep 2014 09:58:47 +0000 (15:28 +0530)]
dmabuftest: Return from thread if streamon fails

Currently failed streamon is ignored and the app tries to perform
QBUF and DQBUF ioctls flooding the output with errors.

This can be avoided if the thread exits gracefully with an error.

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
9 years agodmabuftest: Remove switch thread logic
Nikhil Devshatwar [Wed, 3 Sep 2014 12:55:16 +0000 (18:25 +0530)]
dmabuftest: Remove switch thread logic

With the kmscube display, multiple captures need not be switched
All of the videos(upto six) can be rendered on the cube.

Remove the display thread logic so that all the threads
post the captured buffer to display library.

Also remove the fullscreen / overlay mode of displaying

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
9 years agodisplay-kmscube: Render full video buffer
Nikhil Devshatwar [Wed, 3 Sep 2014 11:31:46 +0000 (17:01 +0530)]
display-kmscube: Render full video buffer

The co-ordinates of texture values only use the 80% of the buffer as texture
Due to this, cropped video gets displayed
Fix this by changing the co-ordinates to 100%

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
9 years agodisplay-kmscube: Render multiple videos on cube faces
Nikhil Devshatwar [Wed, 3 Sep 2014 07:17:31 +0000 (12:47 +0530)]
display-kmscube: Render multiple videos on cube faces

Earlier implementation renders only one video on all the 6 faces of cube.
This patch enhances the library by adding support for:

* Using multiple textures
    - Create an egl image and a texture once for every buffer object
    - Extend buffer_kmscube to store the texture name and the associated face.
    - All buffers allocated by one call to disp_get_vid_buffers are grouped
      for one face

* Multithreaded post_vid_buffer
    - As the buffers would be posted by multiple threads asynchronously,
      post_vid_buffer would just update the buffer to be used for next
      rendereing and wait
    - Extend display_kmscube to store the current buffer for each face
    - If the video threads are less than 6, then the textures are repeated
      on the multiple faces.
    - Also, the post_vid_buffer waits till the buffer is being used by the
      GPU for texturing the face.

* Render thread
    - disp_open starts a render thread which initializes gbm and gl
    - The same thread will continue in a loop, where it reads from the
      current buffers array and updates the textures accordingly.
    - The textures are created from this thread if the buffer is being
      rendered first time (it won't have valid texture name)
    - This ensures that all the gl calls are called from a single thread

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
9 years agovidenc2: Adding encoding completion msgs
Pradeep Venkatasubbarao [Mon, 1 Sep 2014 04:03:10 +0000 (09:33 +0530)]
videnc2: Adding encoding completion msgs

Signed-off-by: Pradeep Venkatasubbarao <pradeepv@ti.com>
9 years agoUse the EGLImage configuration provided by eglext.h
Anand Balagopalakrishnan [Sat, 30 Aug 2014 12:13:27 +0000 (17:43 +0530)]
Use the EGLImage configuration provided by eglext.h

Signed-off-by: Anand Balagopalakrishnan <anandb@ti.com>
9 years agodisplay-kms: Removed unnecessary include of libdce
Karthik Ramanan [Fri, 15 Aug 2014 07:40:34 +0000 (13:10 +0530)]
display-kms: Removed unnecessary include of libdce

Signed-off-by: Karthik Ramanan <a0393906@ti.com>
9 years ago[VIDENC] Adding Video encoder
Pradeep Venkatasubbarao [Fri, 25 Jul 2014 07:11:11 +0000 (12:41 +0530)]
[VIDENC] Adding Video encoder

This patch enables Accelerated(IVAHD) video encoding.
Currently tested for H264 and MPEG4 content.

Signed-off-by: Pradeep Venkatasubbarao <pradeepv@ti.com>
9 years agoVPE: util: Add NV12 support to VPE library
Nikhil Devshatwar [Wed, 30 Jul 2014 14:51:19 +0000 (20:21 +0530)]
VPE: util: Add NV12 support to VPE library

Current VPE library doesn't support NV12 as output format
App fails with Seg fault when trying to convert to NV12 format
Add this support

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
9 years agoutils: Wait after the buffer is posted
Nikhil Devshatwar [Mon, 30 Jun 2014 11:14:00 +0000 (16:44 +0530)]
utils: Wait after the buffer is posted

In utils library, post_*_buffer functions call the display specific
implementation and calls the maintain_playback_rate to force the FPS
The wait call should happen *after* the buffers are posted, not before

Correct this
This ensures that the buffer is not reused again immediately after
posting for display.

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
9 years agoAddition of new demo "kmscube with video"
Karthik Ramanan [Fri, 13 Jun 2014 08:40:28 +0000 (14:10 +0530)]
Addition of new demo "kmscube with video"

This patch adds support for a new demo, which is to render video
on the face of the kmscube.

Usage:
   viddec3test <video_file> --kmscube --connector <connector id>

There are other options that are are supported, please refer to
viddec3test --help for further details

The main additions in this patch are:
 * Added support for allocation of the buffers via DRM
 * Added support for the allocated buffers
 * Added support for specifying the connector ID on the command line

Signed-off-by: Karthik Ramanan <a0393906@ti.com>
9 years agoviddec3test: Fix for double free corruption error for dual decode-display usecase
Amarinder Bindra [Wed, 9 Apr 2014 10:33:21 +0000 (16:03 +0530)]
viddec3test: Fix for double free corruption error for dual decode-display usecase

Changed the elementary stream descriptor from global to include the
information in the demux structure as for dual decode usecase, the global
variable is overwritten by the second file and results in the memory free
corruption.
The esds data (elementary stream descriptor) is required by the mpeg4 streams
only, so removing the call that introduces delay in reading the file for other
types of streams like h264, etc.

Signed-off-by: Amarinder Bindra <a-bindra@ti.com>
9 years agocapturevpedisplay: added usage details
alaganraj [Fri, 4 Apr 2014 09:14:24 +0000 (14:44 +0530)]
capturevpedisplay: added usage details

added command line arguments usage details

Signed-off-by: alaganraj <alaganraj.s@ti.com>
9 years agofilevpedisplay: added usage details
alaganraj [Fri, 4 Apr 2014 08:55:52 +0000 (14:25 +0530)]
filevpedisplay: added usage details

added command line arguments usage details

Signed-off-by: alaganraj <alaganraj.s@ti.com>
9 years agodmabuftest: Remove misplaced error message
Nikhil Devshatwar [Fri, 4 Apr 2014 14:30:39 +0000 (20:00 +0530)]
dmabuftest: Remove misplaced error message

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
9 years agocapturevpedisplay: Integrating vpe with vip and display module
alaganraj [Thu, 27 Mar 2014 12:05:58 +0000 (17:35 +0530)]
capturevpedisplay: Integrating vpe with vip and display module

vip captures the frames, which queued to vpe for processing
(scaling, deinterlace, csc), result will be displayed on LCD.

Signed-off-by: alaganraj <alaganraj.s@ti.com>
9 years agofilevpedisplay: vpe process the input from file and display
alaganraj [Thu, 27 Mar 2014 11:58:28 +0000 (17:28 +0530)]
filevpedisplay: vpe process the input from file and display

vpe gets input frames from file, process it (scaling, deinterlace, csc)
and displays output contents on LCD.

Signed-off-by: alaganraj <alaganraj.s@ti.com>
9 years agoutil: vpe: vpe specific common functions
alaganraj [Thu, 27 Mar 2014 11:50:06 +0000 (17:20 +0530)]
util: vpe: vpe specific common functions

used to integrate vpe with other modules.

Input buffer must be allocated in application, queue it to vpe
by passing buffer index

Output buffer allocated in vpe_output_init() as vpe output intended
to display on LCD.

Signed-off-by: alaganraj <alaganraj.s@ti.com>
9 years agoAdded buf_lock and buf_unlock APIs in copycodec and yuvcopy test cases.
Pradeep Venkatasubbarao [Thu, 27 Mar 2014 12:31:40 +0000 (18:01 +0530)]
Added buf_lock and buf_unlock APIs in copycodec and yuvcopy test cases.

Fixed the issue of copycodec failure. omap_dmabuf_map was
not not done on input and output buffers

Signed-off-by: Pradeep Venkatasubbarao <pradeepv@ti.com>
9 years agoviddec3test: Removed print statement for all cases except in inloop case
Amarinder Bindra [Thu, 27 Mar 2014 13:59:46 +0000 (19:29 +0530)]
viddec3test: Removed print statement for all cases except in inloop case

Removed the print statement for the default decode display that is originally
required for inloop scenario for the viddectest. Added a conditional check for
inloop test before printing this statement

Signed-off-by: Amarinder Bindra <a-bindra@ti.com>
9 years agodmabuftest: Capture simultaneously display one
Nikhil Devshatwar [Sun, 5 Jan 2014 19:08:37 +0000 (00:38 +0530)]
dmabuftest: Capture simultaneously display one

This patch adds a feature to capture from multiple devices
in parallel thread.
At a time, only one thread is allowed to post buffers for the display.
By default, only one capture is assumed, number of captures specified
by command line argument 'multi'

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
9 years agov4l2: Fix conflict between libdrm and v4l2 fourcc
Nikhil Devshatwar [Wed, 12 Mar 2014 13:40:52 +0000 (19:10 +0530)]
v4l2: Fix conflict between libdrm and v4l2 fourcc

For ARGB8888 format, libdrm(AR24) and v4l2 framework(RGB4)
both use different fourcc.
This patch sets fourcc to RGB4 when calling v4l2 ioctl for
AR24 color format.

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
9 years agodmabuftest: Use 6 buffers instead of 3
Nikhil Devshatwar [Sun, 5 Jan 2014 16:36:27 +0000 (22:06 +0530)]
dmabuftest: Use 6 buffers instead of 3

Use 6 buffers instead of 3
Queue all the buffers before calling stream ON

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
9 years agoviddec3test:Add support looped test
Pradeep Venkatasubbarao [Fri, 21 Mar 2014 08:55:13 +0000 (14:25 +0530)]
viddec3test:Add support looped test

This patch adds support for testing in a loop as below.

1.      Open drm, display, dce devices once during init
2.      Allocate dce buffers, input buffers
3.      Viddec3_create
4.      Viddec3_control/process till eof
5.      Viddec3_delete
6.      Got to 2 till loop iterations.
7.      Close drm, display, dce devices once during deinit

example usage:
viddec3test -s <id>:wxh <file> --inloop --fps 30

The test runs infinitely until the user interrupts it.

Signed-off-by: Pradeep Venkatasubbarao <pradeepv@ti.com>
9 years agoViddec3test: Fix flush issue in co-planar buffers.
Pradeep Venkatasubbarao [Fri, 21 Mar 2014 06:38:18 +0000 (12:08 +0530)]
Viddec3test: Fix flush issue in co-planar buffers.

For single planar, the flush mechanism was returning the same buffer
again when the process call was called during flush.
Resetting the number of output buffers to 0 in addition to number of inBufs
resolves the issue. Libdce counts the number of address translations based
these counts.

Signed-off-by: Amarinder Bindra <a-bindra@ti.com>
Signed-off-by: Pradeep Venkatasubbarao <pradeepv@ti.com>
9 years agoAdapt copycodectest and yuvcopytest to libdce
Pradeep Venkatasubbarao [Thu, 20 Mar 2014 10:19:14 +0000 (15:49 +0530)]
Adapt copycodectest and yuvcopytest to libdce

closed dmabuf handles that were opened by the application.
Used new dsp_dce_alloc and dsp_dce_free functions as per new libdce.

Signed-off-by: Pradeep Venkatasubbarao <pradeepv@ti.com>
9 years agoviddec3test: close file descriptor created for input buffer
Amarinder Bindra [Thu, 13 Mar 2014 07:48:46 +0000 (13:18 +0530)]
viddec3test: close file descriptor created for input buffer

omap_bo_dmabuf creates a dup file descriptor for the caller to use
the buffers. The caller needs to explicitly close the dup fd to avoid
any fd leak. Adding the close of fd for the input buffer stream.

Signed-off-by: Amarinder Bindra <a-bindra@ti.com>
9 years agoviddec3test: Close the duplicate fd's created from omap_bo_dmabuf
Amarinder Bindra [Tue, 11 Mar 2014 13:57:27 +0000 (19:27 +0530)]
viddec3test: Close the duplicate fd's created from omap_bo_dmabuf

omap_bo_dmabuf creates a dup fd for the application and the user
must close the fd after it is done with the usage otherwise there
would be file descriptors leak.
Also, cleaned up the code for the decoder_close function to delete
the decoder related in the correct order.

Signed-off-by: Amarinder Bindra <a-bindra@ti.com>
9 years agoviddec3test: Add support for multi-thread for multiple decode
Amarinder Bindra [Thu, 16 Jan 2014 12:42:16 +0000 (18:12 +0530)]
viddec3test: Add support for multi-thread for multiple decode

For dual decode, use the pthreads to use the viddec3test application
as a multithread application rather than doing the the process calls
in a sequential way.

Signed-off-by: Ram Prasad <x0038811@ti.com>
Signed-off-by: Amarinder Bindra <a-bindra@ti.com>
9 years agodisplay-kms: removed debug printf from post_vid_buffer
Chandramohan [Fri, 13 Dec 2013 10:12:05 +0000 (15:42 +0530)]
display-kms: removed debug printf from post_vid_buffer

Signed-off-by: Chandramohan <chandramohan.c@ti.com>
9 years agoAdded updated makefile.am
Pradeep Venkatasubbarao [Fri, 13 Dec 2013 06:14:42 +0000 (11:44 +0530)]
Added updated makefile.am

Signed-off-by: Pradeep Venkatasubbarao <pradeepv@ti.com>
9 years agoAdded copycodectest and yuvcopy test source files
Pradeep Venkatasubbarao [Fri, 13 Dec 2013 06:12:57 +0000 (11:42 +0530)]
Added copycodectest and yuvcopy test source files

Signed-off-by: Pradeep Venkatasubbarao <pradeepv@ti.com>
9 years agodisp-kms: Add support for dual capture
Nikhil Devshatwar [Thu, 5 Dec 2013 22:15:32 +0000 (03:45 +0530)]
disp-kms: Add support for dual capture

Using '--dual' option, two different video nodes can be openeed
Running the loopback in a thred with common display.
One thread runs in full screen while other is overlayed on top of it.

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
9 years agodisp-kms: Add noScale flag for overlays
Nikhil Devshatwar [Thu, 5 Dec 2013 22:15:31 +0000 (03:45 +0530)]
disp-kms: Add noScale flag for overlays

This flag is used by post_vid_buffer to decide between
wheather a buffer is displayed as full screen or as overlay.

In case, of overlay, x and y are used as position co ordinates
of the overlay.

Also, added a function to set overlay to use plane[1] and set Z order

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
9 years agodmabuftest: Don't call omap_bo_dmabuf multiple times
Nikhil Devshatwar [Thu, 5 Dec 2013 22:15:30 +0000 (03:45 +0530)]
dmabuftest: Don't call omap_bo_dmabuf multiple times

Each call to omap_bo_dmabuf returns a duplicated dmabuf fd
Therefore, fd from reqbuf (exported first time) will not match with
fd of the same buffer while queueing due to dup(fd)
Using buffer->fd array for saving dmabuf fds

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
9 years agodmabuftest: Enable dmabuftest app
Nikhil Devshatwar [Thu, 5 Dec 2013 22:15:29 +0000 (03:45 +0530)]
dmabuftest: Enable dmabuftest app

Fixed configure.ac picking host machine kernel headers problem
Using AC_CHECK_HEADERS for this
Removing check for struct member to check support for dmabuf

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
10 years agoutil/demuxer: Fix the memory leak
Amarinder Bindra [Tue, 8 Oct 2013 14:35:02 +0000 (20:05 +0530)]
util/demuxer: Fix the memory leak

Free the memory for esds_data aloocated during demux_init once the
demux_deinit is called.

Signed-off-by: Amarinder Bindra <a-bindra@ti.com>
10 years agov4l2capturedisplay: New capture and display app
Nikhil Devshatwar [Wed, 25 Sep 2013 16:25:18 +0000 (21:55 +0530)]
v4l2capturedisplay: New capture and display app

This is a new app which captures buffers from v4l2 device and
displays via drm in fullscreeen.
Currently only memory mapped buffers are handled
Also, only YUYV format is supported for capture

v2->v3
======
Corrected coding style
Removed unused functions, debug code

Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
10 years agoviddec3test: Add the flush mechanism after end of file
Amarinder Bindra [Tue, 1 Oct 2013 10:54:24 +0000 (16:24 +0530)]
viddec3test: Add the flush mechanism after end of file

When the end of file is encountered, the buffers need to be unlocked
and freed by adding the flush mechanism via the codec.
This adds the mechanism and removes the code where the fd were unlocked
during the decoder close.

Signed-off-by: Amarinder Bindra <a-bindra@ti.com>
10 years agodisp-kms: Add support for deletion of the devices
Amarinder Bindra [Tue, 24 Sep 2013 14:50:36 +0000 (20:20 +0530)]
disp-kms: Add support for deletion of the devices

Added the support for deleting the devices and the file descriptor
used by the kms display. Also added the reference counting for the
displays to check before deleting the global file descriptor which
is used by all the displays.

Signed-off-by: Amarinder Bindra <a-bindra@ti.com>
10 years agodisp-kms: Add support for dual display
Amarinder Bindra [Tue, 24 Sep 2013 14:14:34 +0000 (19:44 +0530)]
disp-kms: Add support for dual display

For dual display, a single file descriptor or fd could be used for by the two
displays so that it has master permissions for display planes, hence using a
single global file descriptor for kms display.
Adding the mechanism where the second display or connector uses a different
plane.

Signed-off-by: Amarinder Bindra <a-bindra@ti.com>
10 years agoRevert "dual display fix"
Amarinder Bindra [Thu, 3 Oct 2013 10:43:56 +0000 (16:13 +0530)]
Revert "dual display fix"

This reverts commit 246defbe8856c8ad9786ab8c13e6b0fa2c45b47c.

10 years agodual display fix
Amarinder Bindra [Sun, 22 Sep 2013 09:31:09 +0000 (15:01 +0530)]
dual display fix

Signed-off-by: Amarinder Bindra <a-bindra@ti.com>
10 years agoMakefile Fix for build issue
Chandramohan C [Fri, 6 Sep 2013 09:57:01 +0000 (09:57 +0000)]
Makefile Fix for build issue

Added -lm -lavcodec in Makefile.am to avoid the linking issue

Signed-off-by: Chandramohan <a0131763@ti.com>
10 years agoHACK ! added a hack to support MPEG4 format
Chandramohan C [Fri, 6 Sep 2013 09:15:23 +0000 (09:15 +0000)]
HACK ! added a hack to support MPEG4 format

Function implemented to read the mp4 file into a buffer and parses
for esds data required for ivahd_mpeg4dec decoder and it is copied on
top of the first input buffer.

Only 720p/1080p video is tested
Signed-off-by: Chandramohan C <chandramohan.c@ti.com>
10 years agoHACK! added a hack to support mpeg2 video format
Chandramohan C [Fri, 6 Sep 2013 08:32:53 +0000 (08:32 +0000)]
HACK! added a hack to support mpeg2 video format

Padded width and height are same as width and height for mpeg2 format
this is a hack to support it and only 720p video is tested.

demux.c cleaned up and moved generic include headers to demux.h

Signed-off-by: Chandramohan C <chandramohan.c@ti.com>
10 years agoFixed Memory leak in display pipeline
Chandramohan C [Fri, 6 Sep 2013 06:41:56 +0000 (06:41 +0000)]
Fixed Memory leak in display pipeline

Earlier, all output buffers were not being freed
in the display path. Due this, the system will run out
of buffers and app would eventually not get memory resulting
in crash.

This patch fixes this issue of memory leak.
It is also ensured that Buffers are unlocked before freeing.

Signed-off-by: Chandramohan C <chandramohan.c@ti.com>
10 years ago[DMABUF] dmabuf changes according to the IPC3.X
Chandramohan [Thu, 5 Sep 2013 13:21:40 +0000 (18:51 +0530)]
[DMABUF] dmabuf changes according to the IPC3.X

1. Changed vidde3test app to pass dmabuf fd for inbuf/outbuf.
2. buffer lock and unlock is added for outbuf.
3. X11 dependencies removed.
4. added dce_init/dce_deinit API exposed by libdce

Signed-off-by: Chandramohan <a0131763@ti.com>
10 years agoChanged Makefile.am to not include kernel headers glsdk-6_00_00_07
Nikhil Devshatwar [Wed, 22 May 2013 09:52:37 +0000 (15:22 +0530)]
Changed Makefile.am to not include kernel headers

Fixed clashing of kernel headers with sys headers
Due to the v4l2.c (needed for dmabuftest)

10 years agoDEBIAN: debianization
Nikhil Devshatwar [Wed, 22 May 2013 09:52:37 +0000 (15:22 +0530)]
DEBIAN: debianization

10 years agoHack! disp-kmscube: reduce u/v by 10%
Vincent Stehlé [Thu, 11 Oct 2012 07:22:03 +0000 (09:22 +0200)]
Hack! disp-kmscube: reduce u/v by 10%

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
10 years agoNew display kmscube
Vincent Stehlé [Mon, 24 Sep 2012 08:09:22 +0000 (10:09 +0200)]
New display kmscube

Add a new display 'kmscube', based on the kmscube application by Arvin Schnell
and Rob Clark.

This display 'kmscube' draws a rotating 3d cube with EGL on kms display, with
video mapped as a texture on the cube faces.

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
10 years agodisplay kms: align width on 128 bytes to please Ducati
Hervé Fache [Tue, 15 Jan 2013 01:44:11 +0000 (02:44 +0100)]
display kms: align width on 128 bytes to please Ducati

Signed-off-by: Hervé Fache <h-fache@ti.com>
10 years agoomx cam: do not select sensor for stereo mode
Hervé Fache [Mon, 14 Jan 2013 20:14:25 +0000 (21:14 +0100)]
omx cam: do not select sensor for stereo mode

Signed-off-by: Hervé Fache <h-fache@ti.com>
10 years agoomx cam: add test app
Hervé Fache [Thu, 30 Aug 2012 08:09:37 +0000 (10:09 +0200)]
omx cam: add test app

Signed-off-by: Hervé Fache <h-fache@ti.com>
10 years agoutil: do not redefine bool in C++
Hervé Fache [Thu, 30 Aug 2012 08:03:12 +0000 (10:03 +0200)]
util: do not redefine bool in C++

Signed-off-by: Hervé Fache <h-fache@ti.com>
11 years agodisplay-kms: add option to disable multiplanar
Hervé Fache [Tue, 28 Aug 2012 12:00:26 +0000 (14:00 +0200)]
display-kms: add option to disable multiplanar

Signed-off-by: Hervé Fache <h-fache@ti.com>
Conflicts:

util/display-kms.c

11 years agodisp_open: do not crash on error
Hervé Fache [Tue, 28 Aug 2012 11:32:32 +0000 (13:32 +0200)]
disp_open: do not crash on error

Signed-off-by: Hervé Fache <h-fache@ti.com>
11 years agodisplay: add close "virtual" function
Vincent Stehlé [Tue, 28 Aug 2012 13:32:34 +0000 (15:32 +0200)]
display: add close "virtual" function

Change the per-display close function into a proper "virtual" function
mechanism with function pointer in the display structure. This fixes the
segfault, when closing a kms display.

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
11 years agoviddec3test: handle non-multiplanar
Vincent Stehlé [Mon, 27 Aug 2012 15:16:31 +0000 (17:16 +0200)]
viddec3test: handle non-multiplanar

Latest non-multiplanar dri2video in xf86-video-omap now uses a single buffer
under x11 instead of separate Y and U/V. Adapt viddec3test, like gst-ducati
does, and keep KMS multiplanar functional.

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
11 years agodisplay: new multiplanar qualifier
Vincent Stehlé [Mon, 27 Aug 2012 16:31:51 +0000 (18:31 +0200)]
display: new multiplanar qualifier

Introduce a new "qualifier" on displays and display buffers, to keep track of
whether we have a single buffer for Y/U/V or if we have Y and U/V separated.

KMS display buffers are multiplanar, and X11 display buffers are
non-multiplanar since latest non-multiplanar dri2video in xf86-video-omap.

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
11 years agoviddec3test: new option --loop
Vincent Stehlé [Tue, 21 Aug 2012 16:51:33 +0000 (18:51 +0200)]
viddec3test: new option --loop

Allow to playback in loop; in which case we rewind when reaching the end of the
stream.

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
11 years agodemux: add rewind
Vincent Stehlé [Tue, 21 Aug 2012 16:35:55 +0000 (18:35 +0200)]
demux: add rewind

New demux_rewind() function, to seek to frame 0 of a stream and allow playback
in a loop.

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
11 years agoviddec3test: new option --no-process
Vincent Stehlé [Fri, 17 Aug 2012 13:44:53 +0000 (15:44 +0200)]
viddec3test: new option --no-process

Allows to specify from command line that we do not actually want to call
VIDDEC3_process method. This is for benchmarking. Note that rate control will
still work.

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
11 years agodisp: new option --debug and dynamic debug
Vincent Stehlé [Mon, 13 Aug 2012 12:50:28 +0000 (14:50 +0200)]
disp: new option --debug and dynamic debug

We introduce a new DBG() macro for debug printing, which can be enabled or
disabled at runtime. This, to allow benchmarking.

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
11 years agodisp: new option --no-post to disable buffers posting
Vincent Stehlé [Mon, 13 Aug 2012 12:37:09 +0000 (14:37 +0200)]
disp: new option --no-post to disable buffers posting

This allows to disable display updates from command line for benchmarking
purposes. This is done by overriding the display post_buffer() and
post_vid_buffer() functions with empty ones. Note that rate control does still
work.

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
11 years agodisp: new option --fps to maintain playback rate
Vincent Stehlé [Fri, 10 Aug 2012 14:45:50 +0000 (16:45 +0200)]
disp: new option --fps to maintain playback rate

Add a new rate control mechanism to the generic display, to allow forcing the
playback rate from command line.

We add rate control calls in the generic display functions disp_post_buffer()
and disp_post_vid_buffer(). As this is in the generic display part, x11 and kms
(and future) displays benefit from that mechanism.

We use the mark() and usleep() functions for the rate control implementation,
and we do also filter a bit the sleep duration, to avoid being too "choppy".

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
11 years agomark(): handle one second change properly
Vincent Stehlé [Fri, 10 Aug 2012 15:59:40 +0000 (17:59 +0200)]
mark(): handle one second change properly

We handle one second change properly. Two seconds and more will still lead to
erroneous deltas.

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
11 years agoviddec3test: -h, --help command line options
Vincent Stehlé [Fri, 10 Aug 2012 12:00:51 +0000 (14:00 +0200)]
viddec3test: -h, --help command line options

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
11 years agoIgnore tags
Vincent Stehlé [Thu, 5 Jul 2012 13:12:07 +0000 (15:12 +0200)]
Ignore tags

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
11 years agoAdd disp_close, disp_x11_close
Vincent Stehlé [Wed, 6 Jun 2012 16:33:15 +0000 (18:33 +0200)]
Add disp_close, disp_x11_close

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
11 years agoviddec3test: better initialization of buffer fields
Vincent Stehlé [Mon, 4 Jun 2012 08:01:43 +0000 (10:01 +0200)]
viddec3test: better initialization of buffer fields

We zero the allocated structures and initialize more fields to their correct
values. This, to avoid complaints from the codec.

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
11 years agoadd NOCONFIGURE support to autogen.sh
Rob Clark [Fri, 11 May 2012 01:38:10 +0000 (20:38 -0500)]
add NOCONFIGURE support to autogen.sh

11 years agoadd --disable-x11 option
Rob Clark [Thu, 10 May 2012 18:03:11 +0000 (13:03 -0500)]
add --disable-x11 option

For example, if you have x11/libdri2 but don't want to build x11
support, or if you have a pre-dri2video version of libdri2.

11 years agoPreserve user $CFLAGS
Vincent Stehlé [Tue, 8 May 2012 09:12:42 +0000 (11:12 +0200)]
Preserve user $CFLAGS

Do not override the $CFLAGS variable internally to allow specifying it at
configure time. Keep the Linux kernel include path flags in a separate
LIN_CFLAGS variable.

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
11 years agoutil: silence the compiler
Víctor Manuel Jáquez Leal [Mon, 16 Apr 2012 10:39:01 +0000 (12:39 +0200)]
util: silence the compiler

The compiler complains about this:

util.c: In function 'disp_get_vid_buffers':
util.c:76:17: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]

This patch makes the counter variable unsigned too.

Signed-off-by: Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
11 years agoconfigure.ac: pass kernel source path
Víctor Manuel Jáquez Leal [Mon, 2 Apr 2012 17:03:47 +0000 (19:03 +0200)]
configure.ac: pass kernel source path

By default the configure.ac only checked for videodev2.h in
/usr/src/linux-headers-$kversion.

With this patch the user can pass the kernel source path with the parameter
--with-kernel-source.

Signed-off-by: Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
11 years agofliptest: request OMAP_BO_SCANOUT buffers
Vincent Stehlé [Fri, 30 Mar 2012 15:03:25 +0000 (17:03 +0200)]
fliptest: request OMAP_BO_SCANOUT buffers

Works on OMAP5 µEVM.

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
11 years agoAdd linux-headers include dir
Xavier Boudet [Fri, 30 Mar 2012 09:52:55 +0000 (09:52 +0000)]
Add linux-headers include dir

Signed-off-by: Xavier Boudet <x-boudet@ti.com>
11 years agofixes for proper stride for tiled buffers
Rob Clark [Thu, 1 Mar 2012 17:14:02 +0000 (11:14 -0600)]
fixes for proper stride for tiled buffers

11 years agoviddec: support for multiple decoder instances
Rob Clark [Thu, 1 Mar 2012 17:10:43 +0000 (11:10 -0600)]
viddec: support for multiple decoder instances

Enable support for testing multiple decoders in a single process.

11 years agox11: only open driver once
Rob Clark [Thu, 1 Mar 2012 17:01:15 +0000 (11:01 -0600)]
x11: only open driver once

This is needed if you have multiple dri2video windows in a single
process, since GEM handles only have meaning within the context of
a single file-open.

11 years agoviddec3test: add profiling for render times
Rob Clark [Tue, 31 Jan 2012 16:27:26 +0000 (10:27 -0600)]
viddec3test: add profiling for render times

11 years agocamera/v4l2 fixes
Rob Clark [Tue, 31 Jan 2012 16:27:01 +0000 (10:27 -0600)]
camera/v4l2 fixes

11 years agoadd missing #include's for config.h
Rob Clark [Thu, 26 Jan 2012 20:03:54 +0000 (14:03 -0600)]
add missing #include's for config.h

11 years agoWIP: x11/dri2video support
Rob Clark [Thu, 26 Jan 2012 20:02:06 +0000 (14:02 -0600)]
WIP: x11/dri2video support

11 years agofix typo in checking for libdri2
Rob Clark [Sat, 21 Jan 2012 19:55:37 +0000 (13:55 -0600)]
fix typo in checking for libdri2

11 years agoOnly enable v4l2/dmabuf tests if supported
Rob Clark [Sat, 21 Jan 2012 19:47:39 +0000 (13:47 -0600)]
Only enable v4l2/dmabuf tests if supported

Test v4l2 headers, and only enable v4l2/dmabuf tests if dmabuf support
is detected.