Commit Graph

296 Commits

Author SHA1 Message Date
Stefan Seyfried
8a6f1dea9d add hardware_caps header
First version of a "hardware capabilites information" struct.
This is intended to help clean up the mess in the neutrino GUI.
Surely needs some more work and ongoing changes
2012-09-15 11:49:51 +02:00
martii
9c22d47bc3 audio_mixer: correct conversion 2012-09-05 20:49:47 +02:00
martii
7cd67c9fad spark: add volume control for alsa mixer 2012-09-05 19:08:45 +02:00
martii
260a6fcc2f cast sizeof to signed to avoid compiler warning 2012-08-16 22:10:55 +02:00
martii
2bdab523e5 Merge remote-tracking branch 'seife/master' 2012-08-16 22:05:33 +02:00
martii
c2a9c1a6df libspark/video.cpp: I tend to believe that comparing signed and unsigned would break for st.st_size < 4 2012-08-12 10:04:35 +02:00
martii
92731e6fe3 libeplayer3: add support for teletext and dvbsubtitle streams 2012-08-04 13:31:28 +02:00
Stefan Seyfried
1df3d2e946 cDemux: add dummy SetSource() for coolstream compatibiliy 2012-07-29 13:26:31 +02:00
Stefan Seyfried
84ee47fd7f correctly declare AVSYNC_TYPE 2012-07-28 22:51:29 +02:00
martii
d6bdeb0ff0 fix some movieplayer issues 2012-07-27 20:09:26 +02:00
martii
450fc1966a libspark/record.cpp: user configurable buffer sizes 2012-07-21 16:32:00 +02:00
martii
2ca16aedac Merge remote-tracking branch 'seife/master' 2012-07-15 20:13:18 +02:00
Stefan Seyfried
5583233e9e spark,azbox: make demux FD nonblocking
...except for DMX_PSI_CHANNEL, which does not seem to expect that.
2012-07-15 11:44:28 +02:00
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