summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohns <johns98@gmx.net>2013-07-24 20:06:05 +0200
committerJohns <johns98@gmx.net>2013-07-24 20:06:05 +0200
commit93357fb1cd6095988721052185d70161d1fc2e79 (patch)
tree1c93f38e00bcb1619849e521867881fed2f295c2
parentc646007db1f68944b09d645636465b0ef973abec (diff)
downloadvdr-plugin-softhddevice-93357fb1cd6095988721052185d70161d1fc2e79.tar.gz
vdr-plugin-softhddevice-93357fb1cd6095988721052185d70161d1fc2e79.tar.bz2
Add compile time selectable h264 trickspeed workaround.
-rw-r--r--ChangeLog1
-rw-r--r--Makefile1
-rw-r--r--Todo1
-rw-r--r--softhddev.c6
4 files changed, 6 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 44ed081..e4167e4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,7 @@
User johns
Date:
+ Add compile time selectable h264 trickspeed workaround.
Use ffmpeg new names AVCodecID, AV_CODEC_... .
Fix bug: video lagging behind after recording stop.
Reduce PES error messages.
diff --git a/Makefile b/Makefile
index 3d77fd6..5a9af40 100644
--- a/Makefile
+++ b/Makefile
@@ -35,6 +35,7 @@ CONFIG += -DUSE_PIP # PIP support
#CONFIG += -DNO_TS_AUDIO # disable ts audio parser
#CONFIG += -DUSE_TS_VIDEO # build new ts video parser
#CONFIG += -DUSE_MPEG_COMPLETE # support only complete mpeg packets
+#CONFIG += -DH264_EOS_TRICKSPEED # insert seq end packets for trickspeed
CONFIG += -DUSE_VDR_SPU # use VDR SPU decoder.
#CONFIG += -DUSE_SOFTLIMIT # (tobe removed) limit the buffer fill
diff --git a/Todo b/Todo
index 725a264..863de11 100644
--- a/Todo
+++ b/Todo
@@ -44,6 +44,7 @@ video:
crash with ffmpeg without vaapi and vdpau.
still-picture of PES recordings should use VideoMpegEnqueue.
convert PIX_FMT_... PixelFormat to new names AV_PIX_FMT_..., AVPixelFormat.
+ atmo service support 3D grab
vdpau:
software deinterlace path not working.
diff --git a/softhddev.c b/softhddev.c
index 1eefc82..efbbed8 100644
--- a/softhddev.c
+++ b/softhddev.c
@@ -2224,7 +2224,7 @@ int PlayVideo3(VideoStream * stream, const uint8_t * data, int size)
&& check[1] == 0x09 && !check[3] && !check[4]) {
// old PES HDTV recording z == 2 -> stronger check!
if (stream->CodecID == AV_CODEC_ID_H264) {
-#if 0
+#ifdef H264_EOS_TRICKSPEED
// this should improve ffwd+frew, but produce crash in ffmpeg
// with some streams
if (stream->TrickSpeed && pts != (int64_t) AV_NOPTS_VALUE) {
@@ -2235,8 +2235,8 @@ int PlayVideo3(VideoStream * stream, const uint8_t * data, int size)
// 1-5=SLICE 6=SEI 7=SPS 8=PPS
// NAL SPS sequence parameter set
if ((check[7] & 0x1F) == 0x07) {
- VideoNextPacket(AV_CODEC_ID_H264);
- VideoEnqueue(AV_NOPTS_VALUE, seq_end_h264,
+ VideoNextPacket(stream, AV_CODEC_ID_H264);
+ VideoEnqueue(stream, AV_NOPTS_VALUE, seq_end_h264,
sizeof(seq_end_h264));
}
}