Commit Graph

283 Commits

Author SHA1 Message Date
Stefan Seyfried
2f7cb6401f raspi/AVDec: various improvements for A/V decoders
* retry on errors in the decoding loop
* better interaction with avcodec_omx
2013-10-20 01:11:36 +02:00
Stefan Seyfried
2784941b7e raspi/avcodec_omx: various hacks to the state machine
* fix invalid locking when for MSG_NEWCHANNEL
* fix restarting video decoder with proper omx teardown
2013-10-20 01:05:30 +02:00
Stefan Seyfried
b424d34536 raspi/codec: fix memleak when skipping packets 2013-10-20 01:04:40 +02:00
Stefan Seyfried
4c13442e05 raspi/avdec: allow setting audio out via RASPI_AUDIO variable 2013-10-20 01:02:56 +02:00
Stefan Seyfried
d71ae5b4f9 raspi/omx_utils: fix ordering of shutdown sequence
apparently, all ports need to be disabled before the inter-component
tunnels are teared down, otherwise video_decodeRIL:image pool objects
will leak
see http://www.raspberrypi.org/phpBB3/viewtopic.php?f=70&t=48177
2013-10-20 00:47:03 +02:00
Stefan Seyfried
d736e87d4e raspi/glfb: clean up objects on exit, remove double buffer 2013-10-20 00:03:12 +02:00
Stefan Seyfried
48df8f882a raspi: fix ordering of AVDec and GLFB
it looks like the videocore libs are leaking objects if
OMX_Init() is called after the dispmanx setup, so do it
in the correct order
2013-10-19 22:59:41 +02:00
Stefan Seyfried
fa1eadcc56 fix wrong libtool initialization order
allow to build dynamic libraries (but keep static as default)
2013-10-14 00:35:55 +02:00
Stefan Seyfried
06035e8ea1 raspi/avcodec_omx: set thread names 2013-10-13 22:51:30 +02:00
Stefan Seyfried
e9b6f6c88b lt_debug: use C linkage, allows usage from non-C++ code 2013-10-13 22:43:19 +02:00
Stefan Seyfried
510b655710 raspi: use decoder implementation from pidvbip
* remove ilclient
* use a decoder implementation similar to pidvbip instead,
  see https://github.com/linuxstb/pidvbip
* video is decoded in hardware (videocore)
* audio is decoded by libavcodec
* add a AVDec wrapper class for both audio and video decoders
* very raw, needs more polishing. But decodes audio and video :-)
* only tested with h264
2013-10-13 22:36:45 +02:00
Stefan Seyfried
19b0ff20e1 raspi: add first try of video decoder implementation
This is very raw and unfinished, it clearly needs some more polishing.
But it decodes h264 channels :-)
2013-10-10 00:10:21 +02:00
Stefan Seyfried
0f9bc4f95c raspi: switch demux target to internal decoder 2013-10-10 00:05:55 +02:00
Stefan Seyfried
7c942c3745 raspi: add ilclient files
these are from the raspberrypi firmware git example apps that
show how to use the videocore for encoding / decoding.
I'll try to use them for accessing the a / v decoders.
License is 3-Clause BSD and thus compatible with GPLv2.
2013-10-09 23:50:50 +02:00
Stefan Seyfried
92edef3e48 add skeleton for Raspberry Pi support
no audio / video decoding, yet :-(
2013-10-05 22:02:13 +02:00
Stefan Seyfried
3ed147cab7 add set_threadname function 2013-10-05 22:01:57 +02:00
Stefan Seyfried
642de31a8b spark: implement stuff needed for PIP
note that this does now work well at least on st7162 and thus is not
really tested.
2013-09-28 18:32:03 +02:00
Stefan Seyfried
28b21d2295 cVideo: add dummy functions for PIP stuff 2013-09-28 18:25:45 +02:00
Stefan Seyfried
f009c3e76e azbox: remove unneeded hacks from cVideo 2013-09-22 14:48:36 +02:00
Stefan Seyfried
2e20b8f2b6 azbox: add cDemux hack to avoid segfaults/corruption 2013-09-22 14:44:29 +02:00
Stefan Seyfried
f56ead6685 azbox: adapt cDemux to latest drivers 2013-09-22 14:42:48 +02:00
Stefan Seyfried
c31a1919c7 azbox: adapt cAudio to latest drivers 2013-09-22 14:41:54 +02:00
Stefan Seyfried
ad64d0ab4f azbox: add O_CLOEXEC to open() 2013-09-21 15:00:16 +02:00
Stefan Seyfried
9338fc6d1f modernize configure.ac and Makefile.am
autoconf-1.13 has new warnings, silence them by updating
the buildsystem
2013-06-16 22:16:12 +02:00
Stefan Seyfried
70a2f5bca0 cPlayback: add new API functions for DVD chapter/subtitles
right now these are mostly dummies...
2013-06-16 21:42:42 +02:00
Stefan Seyfried
618e7723bf generic-pc: implement cDemux::getSTC() 2013-06-01 17:16:56 +02:00
Stefan Seyfried
7e9d0f49a9 generic-pc: increase video and audio demux buffer 2013-06-01 17:15:33 +02:00
Stefan Seyfried
dd7ee34c8c cDemux: fix error reporting vor video, audio, ... channels 2013-06-01 17:05:23 +02:00
Stefan Seyfried
437a7d1b51 generic-pc: help finding missing blit() calls 2013-06-01 15:58:47 +02:00
Stefan Seyfried
94830cf33f generic-pc: improve decoder info messages 2013-06-01 15:41:32 +02:00
Stefan Seyfried
619751eaf0 generic-pc: silence decoder threads output 2013-06-01 15:39:19 +02:00
Stefan Seyfried
2efe616a23 generic-pc: implement cAudio::getAudioInfo() 2013-06-01 15:21:43 +02:00
Stefan Seyfried
f4f72f34b9 generic-pc: add audio sample conversion
ffmpeg audiodecoders after version 1.1 deliver audio samples in planar
formats by default instead of packed as before. Additionally, the AC3
decoder delivers now in planar float.
Use libswresample for sample format conversion, this will work with old
(where it hopefully does nothing) and new ffmpeg versions.
Later on, also sample rate and channel layout conversion could be
implemented if desired.
Tested with ffmpeg versions 1.0.6 and 1.2.1.
2013-06-01 13:43:51 +02:00
Stefan Seyfried
e5e05ffa09 fix library declarations for libtool 2013-06-01 12:25:52 +02:00
Stefan Seyfried
7b32a96635 configure: specify the needed ffmpeg versions 2013-05-27 13:51:09 +02:00
Stefan Seyfried
05ac116312 generic-pc: add Pig function to cVideo / GLFB 2013-05-27 00:47:35 +02:00
Stefan Seyfried
9593fe09cf generic/glfb: add a few keys to F5-F8 2013-05-27 00:45:42 +02:00
Stefan Seyfried
adb6db1beb generic-pc/video: implement getScreenImage (experimental) 2013-05-26 20:52:43 +02:00
Stefan Seyfried
40d1bb8b63 generic-pc/video: reuse swscale context 2013-05-26 20:50:58 +02:00
Stefan Seyfried
62f0c20738 triple: fix compile breakage in video.h 2013-05-25 23:13:37 +02:00
Stefan Seyfried
b4be13eb84 video: ensure VIDEO_STD_MAX is big enough 2013-05-25 22:05:30 +02:00
Stefan Seyfried
02ae4f3c44 generic-pc: add audiplayer support to cAudio 2013-05-24 22:51:27 +02:00
Stefan Seyfried
2c813fe1e4 generic-pc: implement cVideo::ShowPicture() 2013-05-24 15:48:19 +02:00
Stefan Seyfried
f89f5e9ba2 generic-pc: without decoding, no PCR demux is needed 2013-05-24 13:04:46 +02:00
Stefan Seyfried
5f0fb850d6 generic-pc: allow to disable softdecoder for debugging 2013-05-10 13:37:24 +02:00
Stefan Seyfried
6724f3f9e3 demux: define MAX_DMX_UNITS (not yet used) 2013-05-10 13:22:44 +02:00
Stefan Seyfried
2b23273b0e acinclude: fix variable expansion issues 2013-05-10 13:22:27 +02:00
Stefan Seyfried
70d964d588 configure: silence automake warnings 2013-05-10 13:18:17 +02:00
Stefan Seyfried
6336dc4f94 GLFB: remove unused 3D cube code 2013-05-06 00:32:48 +02:00
Stefan Seyfried
9cc35ff0cc GLFB: slightly better fullscreen handling 2013-05-06 00:25:29 +02:00