Commit Graph

283 Commits

Author SHA1 Message Date
martii
d38bef08f4 spark record: set dmx to non-blocking mode, change buffer size 2012-07-13 16:31:31 +02:00
martii
b1f92d8e9c video_lib.h header adapted to match one of the previous changes 2012-07-13 16:30:43 +02:00
martii
7f45271ad2 input handling: copy input data from secondary devices to the main rc device 2012-07-13 16:29:53 +02:00
martii
bcaf83a8c7 spark powermanager: SetCpuFreq now actually does what its name says 2012-07-13 16:27:13 +02:00
martii
6e8bdf5c34 spark video: implement SetControl 2012-07-13 16:26:22 +02:00
martii
249d2964ac spark dmx: less debugging output; set buffer size 2012-07-13 16:25:48 +02:00
martii
d03f3c8fee spark audio: add support for channel specific volume 2012-07-13 16:24:18 +02:00
Stefan Seyfried
2d52b68c2d spark: implement cVideo::getBlank()
this is a hack: the "mailbox" irq count does not increase if the
decoders are not decoding, so we use this to determine if the
video is in really playing.
2012-07-05 20:24:40 +02:00
Stefan Seyfried
8568efcd01 fix build after cCA move... 2012-06-18 14:33:21 +02:00
Stefan Seyfried
c50c2888ce move dummy cCA implementation to commmon/ directory 2012-06-18 11:13:33 +02:00
Stefan Seyfried
ee3436d292 spark: fix framerate from cVideo::getPictureInfo() 2012-06-08 22:31:01 +02:00
Stefan Seyfried
9e075bf190 spark: implement cVideo::SetSyncMode()
inspired by evolux, but much simpler
2012-06-08 22:30:11 +02:00
Stefan Seyfried
f0f295efa1 spark: fix invalid initialization order in cVideo
(how could this ever work? no idea). Found in evolux patches.
2012-06-08 22:20:35 +02:00
Stefan Seyfried
b9f3ae5372 spark: implement AC3 passthrough on SPDIF and HDMI
Note: untested (no hardware). AC3 on HDMI will only work if
AC3 on SPDIF is also selected.
2012-06-08 22:17:30 +02:00
Stefan Seyfried
33e44c8ca3 spark: fix invalid debug in cAudio::PrepareClipPlay 2012-06-08 22:12:31 +02:00
Stefan Seyfried
8ea51a9dfb spark: add (and use) proc_put() to audio.cpp 2012-06-08 22:11:39 +02:00
Stefan Seyfried
75a4d2843b spark: add 1080p50 videomode (needs neutrino fix) 2012-04-14 10:56:36 +02:00
Stefan Seyfried
5001e2f103 spark: improve libeplayer3 playback for timeshift
* open output only when really starting playback, just pause
  videodecoder before, so that still picture on timeshift works
* adapt to strange neutrino calling conventions, so that jump-on-
  start works for pause -> play -> stop (live) -> pause again
  sequence for timeshift works
TODO: the startup for H264 timeshifting is too slow, needs
      improvement
2012-04-08 17:12:52 +02:00
Stefan Seyfried
f72812d642 spark: add hack to simulate the timeshift file length 2012-04-08 16:58:19 +02:00
Stefan Seyfried
f3d93833e1 spark: make cRecord more error resilient
* use aio to improve things for slow recording media (heavily loaded
  NFS server for example)
* in case of a buffer overflow, don't stop the recording but simply
  drop a buffer
A proper aio implementation would involve multiple buffers that could
be queued in paralled, but that's much more complex, so let's see if
the current code works out well enough.
2012-04-08 14:43:40 +02:00
Stefan Seyfried
56874d9721 spark: temporary (for testing) map "auto" video mode to 1080p50 2012-04-05 11:58:05 +02:00
Stefan Seyfried
542a026b9b spark: return true for EOF in cPlayback::GetPosition 2012-04-01 17:51:48 +02:00
Stefan Seyfried
72089fe88d spark: set new videomode only if it differs from current 2012-04-01 17:38:11 +02:00
Stefan Seyfried
93bc0eec06 spark: fix getAspectRatio and getPictureInfo in MP mode 2012-04-01 17:37:17 +02:00
Stefan Seyfried
e10c60b02c spark: do not start IRMP thread if lircd is running
This will provide a smooth switchover to using LIRC instead of IRMP: if
the lircd is running (pidfile present), don't start the input thread.
Neutrino will use the LIRC-created uinput device instead.
2012-03-17 23:21:30 +01:00
Stefan Seyfried
457c7a9199 audio: add new enums for HDMI 2012-03-08 20:23:23 +01:00
Stefan Seyfried
16d8d3e8c8 dmx: fix web streaming by allowing PID 0 for pesFilter() 2012-03-07 20:29:13 +01:00
Stefan Seyfried
3d9b659f17 spark: compensate for differing AC3/MPEG volume
Maybe the 30/53 formula neeeds some tuning, we'll find out...
2012-03-07 20:06:25 +01:00
Stefan Seyfried
12b74e6ef3 spark: work around neutrino's sectionFilter() usage
It seems like most of the times, timeout == 0 means "use the default
timeout". However, at least with the sectionsd eit update filter and
the PMT version update filter, timeout == 0 means really "no timeout"
alas "infinite". Work around this by using the default timeout only
if no negative filtermask is given.
This fixes the "EPG on program change" (and PMT update probably, too).
2012-02-26 13:13:33 +01:00
Stefan Seyfried
6bc5518847 spark: more workaround for driver bugs in cVideo 2012-02-25 22:19:59 +01:00
Stefan Seyfried
cd90a23b46 spark: use ioctls instead of procfs in cVideo::getPictureInfo 2012-02-25 22:18:42 +01:00
Stefan Seyfried
86a5316bd7 spark: improve cVideo::Pig() 2012-02-25 22:17:53 +01:00
Stefan Seyfried
55d0d90b5b spark: improve cVideo::ShowPicture()
* don't clear stillpicture on radio channel change
* don't show stillpicture in standby
2012-02-25 22:15:37 +01:00
Stefan Seyfried
7bf0a98909 spark: make cVideo::openDevice() more robust
we sometimes seem to get EBUSY when opening the video device
directly after close() - retry for half a second to get it opened
2012-02-25 21:18:07 +01:00
Stefan Seyfried
1cddb85070 libspark: fix cAudio::do_mute() 2012-02-25 21:14:04 +01:00
Stefan Seyfried
ee1a408f9b spark: fix TODO in cVideo::ShowPicture()
rebuild the MPEG stillpicture if the source jpeg has changed
additionally check for zero sized m2v from broken ffmpeg versions
2012-02-25 14:54:45 +01:00
Stefan Seyfried
c9ff86fd77 spark: implement cAudio::SetSyncMode 2012-02-25 14:30:30 +01:00
Stefan Seyfried
fd5d65b07d spark: make cVideo::Standby more robust
There are a few glitches in the framebuffer driver we need to work
around. For now, let's:
 * close and reopen the video device when going in / out of standby
 * only enable HDMI when coming out of standby
Additionally, don't call Standby() when shutting down neutrino.
2012-02-25 14:27:59 +01:00
Stefan Seyfried
904d91f82b spark: only reopen decoders in cPlayback::Close if we closed them 2012-02-25 14:19:30 +01:00
Stefan Seyfried
5cd42eb204 spark: make cVideo::SetVideoSystem more robust
in order to not run into driver locking issues, stop video decoding
before setting the video system and restart afterwards
2012-02-25 13:24:22 +01:00
Stefan Seyfried
6c5a60e128 spark: cVideo::SetVideoMode ignore irrelevant modes 2012-02-25 13:23:19 +01:00
Stefan Seyfried
26d7f46280 spark: make cVideo::openDevice ignorem ultiple calls 2012-02-25 13:13:07 +01:00
Stefan Seyfried
703c416e83 spark: fix invalid debug calls 2012-02-25 13:10:10 +01:00
Stefan Seyfried
31e2bd5c45 spark: partly implement cVideo::Standby() 2012-02-23 23:33:00 +01:00
Stefan Seyfried
eb8439be3e spark: implement cVideo::SetVideoMode
this should add rudimentary support to get SCART output working
2012-02-23 23:31:49 +01:00
Stefan Seyfried
3e37ee54a6 spark: use ioctl instead of /proc to get video format 2012-02-23 23:27:53 +01:00
Stefan Seyfried
63eb51a028 spark: disable HDMI before switching mode in cVideo::SetVideoSystem
this seems to greatly improve reliability - it looks like there is
a locking problem somewhere in the framebuffer driver :-(
2012-02-23 23:25:11 +01:00
Stefan Seyfried
027308e310 spark: remove unused cVideo() functions 2012-02-23 23:11:13 +01:00
Stefan Seyfried
32fabdb53d spark: implement cVideo::SetVideoSystem() 2012-02-22 23:31:59 +01:00
Stefan Seyfried
9710f6df22 spark: silence irmp debugging messages after last merge 2012-02-22 20:11:27 +01:00