Commit Graph

440 Commits

Author SHA1 Message Date
Stefan Seyfried
c4422bcfbb adapt cRecord API to coolstream changes 2012-10-12 06:24:16 +02:00
Stefan Seyfried
9f433f9dfa add implementation for boxtype "generic"
This is mostly a dummy implementation except for the dmx class which
should be working. It is intended for testing on PCs with budget
DVB cards which don't have a decoder anyway.
2012-10-08 20:34:38 +02:00
Stefan Seyfried
9efe410790 spark: speed up playback start for PLAYMODE_TS 2012-10-04 00:09:04 +02:00
Stefan Seyfried
67dc685e61 libeplayer3: fix invalid free()
according to the man pages....
* dirname() can not return NULL
* the pointer returned by dirname must not be free()d
* strdup() can return NULL
2012-10-04 00:02:51 +02:00
Stefan Seyfried
173ef3230a libeplayer3: sync with tdt git commit fed2a419dc 2012-10-03 23:51:56 +02:00
Stefan Seyfried
4d43213158 libeplayer3: add hack to decrease libavcodec probe size
almost disable the libavcodec format probing when using
"myts://" instead of "file://" urls to improve startup speed
for timeshift etc
2012-10-03 23:22:58 +02:00
Stefan Seyfried
ea7a8428f0 spark: add demuxer init hack 2012-09-29 22:19:14 +02:00
Stefan Seyfried
fe7b385660 spark: make cDemux more robust
* workaround hanging Read() if frontend loses and regains lock
* set DMX_ONESHOT for TDT and TOT sections
2012-09-22 12:21:59 +02:00
Stefan Seyfried
f0cee92240 spark: let cRecord use the demux passed as parameter 2012-09-22 12:20:36 +02:00
Stefan Seyfried
99a63b16ca spark: make cDemux multi-tuner compatible
...which is more complicated than it seems at first glance, due
to the restrictions of the sh4 pti driver...
2012-09-22 12:20:35 +02:00
Stefan Seyfried
f0a9b76ef1 spark: improve hardware_caps detection 2012-09-16 22:53:35 +02:00
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
Stefan Seyfried
4c0541ac28 spark_fp: add option to find out the frontpanel type
this needs my latest patched aotom driver again...
2012-09-11 15:12:28 +02:00
Stefan Seyfried
1df3d2e946 cDemux: add dummy SetSource() for coolstream compatibiliy 2012-07-29 13:26:31 +02:00
Stefan Seyfried
3396316b8c ca.h: add dummy functions to sync up with libcoolstream
libcoolstream has added the functions SendCAPMT(), GetCAIDS() and
SetTSClock(). Add stubs to get compatibility.
2012-07-29 13:06:21 +02:00
Stefan Seyfried
84ee47fd7f correctly declare AVSYNC_TYPE 2012-07-28 22:51:29 +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
Stefan Seyfried
caeb3f4230 azbox: reset PIG during videodecoder init 2012-07-14 20:02:36 +02:00
Stefan Seyfried
ca32114863 triple: implement cVideo::getBlank()
another hack :-) make the "blank" still-mpg 24fps and then check in
getBlank() if the framerate is still 24fps, which means that no video
has been decoded since blanking
2012-07-14 18:13:55 +02:00
Stefan Seyfried
618d1d6525 triple: add necessary locking for inbuf_pos in cPlayback 2012-07-14 10:54:01 +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
47114a90af azbox: fix values in cVideo::SetVideoSystem 2012-06-24 16:28:48 +02:00
Stefan Seyfried
b550d5d5bc azbox: fix cVideo::setBlank
the (VIDEO_STOP,1) ioctl does not blank video, so write a
black still-mpeg into the decoder to blank the display,
(similar to the tripledragon code)
2012-06-24 15:12:58 +02:00
Stefan Seyfried
34402dff9f azbox: split up cVideo::ShowPicture
create a new show_iframe function which just gets the
still-mpeg data passed from ShowPicture
2012-06-24 15:11:48 +02:00
Stefan Seyfried
5b8ff82730 azbox: fix cAudio::do_mute 2012-06-24 12:35:02 +02:00
Stefan Seyfried
47941bd849 create common proc_tools
proc_put, proc_get and proc_get_hex are used in many files.
Avoid duplication by moving them to common/proc_tools.c.
Convert azbox's cVideo to use proc_tools.h
2012-06-24 12:26:03 +02:00
Stefan Seyfried
2e05d5fd6f azbox: fix cVideo::ShowPicture 2012-06-24 00:14:55 +02:00
Stefan Seyfried
f0cc9479cf azbox: implement cVideo::getBlank 2012-06-23 23:46:39 +02:00
Stefan Seyfried
07ba8c9eb9 azbox: improve cVideo::setAspectRatio 2012-06-23 23:40:25 +02:00
Stefan Seyfried
ab2140161a azbox: terminate string in video/proc_get 2012-06-23 23:39:31 +02:00
Stefan Seyfried
0ac7346489 first preliminary AZzbox ME support
TODO: some code is very similar to SPARK (record and pwrmngr
are just symlinked, dmx is almost identical). Reduce duplication
by factoring out DVBAPI code into an extra directory.
* what works: audio, video, demux
* what probably doesn't work or is untested: record
* what very likely doesn't work: playback
Playback is just copied over from aztrino and made to compile.
If you are lucky, it just segfaults :-)
2012-06-18 14:48:52 +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
2f1ee80b8e spark_fp: improve wakeup time for short timeouts 2012-05-01 20:24:49 +02:00
Stefan Seyfried
e91dcc03bc spark: add spark_fp tool
this needs my patched aotom driver to work
2012-04-15 18:53:58 +02:00
Stefan Seyfried
1c2231326f use crosscompile-friendly AC_PATH_TOOL to find pkg-config 2012-04-15 12:04:45 +02:00
Stefan Seyfried
75a4d2843b spark: add 1080p50 videomode (needs neutrino fix) 2012-04-14 10:56:36 +02:00
Stefan Seyfried
c4b359bf92 libeplayer3: silence a seemingly harmless warning 2012-04-08 17:16:06 +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