From 266943db269293b00a9f2b59338b81cca5a928be Mon Sep 17 00:00:00 2001 From: ghost Date: Wed, 24 Nov 2010 23:09:52 +0100 Subject: add DTS-HD as known audio format, add detection to pmt parser (no hardware support for DTS-HD yet) --- lib/dvb/decoder.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'lib/dvb/decoder.cpp') diff --git a/lib/dvb/decoder.cpp b/lib/dvb/decoder.cpp index 88cd3ee1..8ed9f43f 100644 --- a/lib/dvb/decoder.cpp +++ b/lib/dvb/decoder.cpp @@ -203,6 +203,9 @@ int eDVBAudio::startPid(int pid, int type) case aLPCM: bypass = 6; break; + case aDTSHD: + bypass = 0x10; + break; } eDebugNoNewLine("AUDIO_SET_BYPASS(%d) - ", bypass); -- cgit v1.2.3 From 6b01e6e3bc442668ae2b358130a8d9c12f4f8b60 Mon Sep 17 00:00:00 2001 From: ghost Date: Sat, 12 Feb 2011 18:14:20 +0100 Subject: new drivers have shorter clip input buffers.. so we have to handle short writes or we have to use blocking mode.. the 2nd is easier ;) --- lib/dvb/decoder.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'lib/dvb/decoder.cpp') diff --git a/lib/dvb/decoder.cpp b/lib/dvb/decoder.cpp index 88cd3ee1..45dde8b3 100644 --- a/lib/dvb/decoder.cpp +++ b/lib/dvb/decoder.cpp @@ -1299,10 +1299,11 @@ RESULT eTSMPEGDecoder::showSinglePic(const char *filename) if (f >= 0) { struct stat s; + size_t written=0; fstat(f, &s); if (m_video_clip_fd == -1) - m_video_clip_fd = open("/dev/dvb/adapter0/video0", O_WRONLY|O_NONBLOCK); - if (m_video_clip_fd >= 0) + m_video_clip_fd = open("/dev/dvb/adapter0/video0", O_WRONLY); + while (m_video_clip_fd >= 0) { bool seq_end_avail = false; size_t pos=0; -- cgit v1.2.3 From 1df9bae2f009edc95b88b72c557136ee267f1db5 Mon Sep 17 00:00:00 2001 From: ghost Date: Wed, 16 Feb 2011 18:38:44 +0100 Subject: lib/dvb/decoder.cpp: fix typo (this fixes spinners in radio mode) refs bug #672 --- lib/dvb/decoder.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lib/dvb/decoder.cpp') diff --git a/lib/dvb/decoder.cpp b/lib/dvb/decoder.cpp index 45dde8b3..8c88a92d 100644 --- a/lib/dvb/decoder.cpp +++ b/lib/dvb/decoder.cpp @@ -1303,7 +1303,7 @@ RESULT eTSMPEGDecoder::showSinglePic(const char *filename) fstat(f, &s); if (m_video_clip_fd == -1) m_video_clip_fd = open("/dev/dvb/adapter0/video0", O_WRONLY); - while (m_video_clip_fd >= 0) + if (m_video_clip_fd >= 0) { bool seq_end_avail = false; size_t pos=0; -- cgit v1.2.3