Bug #3336
Bug with livestream transcoding. large zapping times (15 seconds+) on some channels.
0%
Description
Hello!!
I am facing a strange problem with transcoding livestream DVB Stream.
On some channels i have zapping times of 15seconds+.
The tvheadend instance is serving another host through hts where zapping is bellow 3seconds in most cases.(without transcoding of course)
Please see my Log with comments and Config bellow.
I allready upgraded libx265 static in tvheadend with same result. libx264 is behaving the same way = big zapping times.
(I think)® that the stream is passed to fast to transcoder. maybe add an "delay option" into streaming/profile section?
I do not have the skills in coding to do this on my own. But i can build from git and test changes if someone can add a feature like this to git repo.
This is where the bunny lies in between the pepper ;) Nov 21 21:39:17 skynet daemon.err tvheadend[27462]: libav: mmco: unref short failure Nov 21 21:39:17 skynet daemon.err tvheadend[27462]: libav: mmco: unref short failure Nov 21 21:39:17 skynet daemon.err tvheadend[27462]: libav: number of reference frames (0+4) exceeds max (3; probably corrupt input), discarding one
Thanks!
Stephan
Complete log with comments/config:
======= A Quick zap ~ 4seconds till Picture plops up ====== Nov 21 21:35:57 skynet daemon.info tvheadend[27462]: mpegts: 322MHz in primacom - tuning on HVR-930C _ 1 Nov 21 21:35:57 skynet daemon.info tvheadend[27462]: subscription: 0034: "HTTP" subscribing on channel "ZDF HD", weight: 125, adapter: "HVR-930C _ 1", network: "primacom", mux: "322MHz", provider: "ZDFvision", service: "ZDF HD", profile="webtv-h264-aac-matroska", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" Nov 21 21:35:57 skynet daemon.info tvheadend[27462]: transcode: 0013: 1:H264 1280x720 ==> HEVC 1280x720 (libx265) Nov 21 21:35:57 skynet daemon.info tvheadend[27462]: transcode: 0013: 2:MPEG2AUDIO ==> AAC (aac) Nov 21 21:35:58 skynet daemon.warn tvheadend[27462]: transcode: 0013: Detected framedrop in audio Nov 21 21:35:58 skynet daemon.info tvheadend[27462]: subscription: 0034: "HTTP" unsubscribing from "ZDF HD", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" Nov 21 21:35:58 skynet daemon.warn tvheadend[27462]: libav: 2 frames left in the queue on closing Nov 21 21:35:59 skynet daemon.info tvheadend[27462]: mpegts: 322MHz in primacom - tuning on HVR-930C _ 1 Nov 21 21:35:59 skynet daemon.info tvheadend[27462]: subscription: 0036: "HTTP" subscribing on channel "ZDF HD", weight: 125, adapter: "HVR-930C _ 1", network: "primacom", mux: "322MHz", provider: "ZDFvision", service: "ZDF HD", profile="webtv-h264-aac-matroska", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" Nov 21 21:35:59 skynet daemon.info tvheadend[27462]: transcode: 0014: 1:H264 1280x720 ==> HEVC 1280x720 (libx265) Nov 21 21:35:59 skynet daemon.info tvheadend[27462]: transcode: 0014: 2:MPEG2AUDIO ==> AAC (aac) ======= A Quick zap ~ 4seconds till Picture plops up ====== Nov 21 21:36:46 skynet daemon.info tvheadend[27462]: mpegts: 169MHz in primacom - tuning on HVR-930C _ 1 Nov 21 21:36:46 skynet daemon.info tvheadend[27462]: subscription: 003A: "HTTP" subscribing on channel "NDR FS NDS HD", weight: 125, adapter: "HVR-930C _ 1", network: "primacom", mux: "169MHz", provider: "ARD", service: "NDR FS NDS HD", profile="webtv-h264-aac-matroska", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" Nov 21 21:36:47 skynet daemon.info tvheadend[27462]: transcode: 0015: 1:H264 1280x720 ==> HEVC 1280x720 (libx265) Nov 21 21:36:47 skynet daemon.info tvheadend[27462]: transcode: 0015: 2:MPEG2AUDIO ==> AAC (aac) Nov 21 21:36:47 skynet daemon.warn tvheadend[27462]: transcode: 0015: Detected framedrop in audio Nov 21 21:36:48 skynet daemon.info tvheadend[27462]: subscription: 003A: "HTTP" unsubscribing from "NDR FS NDS HD", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" Nov 21 21:36:48 skynet daemon.warn tvheadend[27462]: libav: 2 frames left in the queue on closing Nov 21 21:36:48 skynet daemon.info tvheadend[27462]: mpegts: 169MHz in primacom - tuning on HVR-930C _ 1 Nov 21 21:36:48 skynet daemon.info tvheadend[27462]: subscription: 003B: "HTTP" subscribing on channel "NDR FS NDS HD", weight: 125, adapter: "HVR-930C _ 1", network: "primacom", mux: "169MHz", provider: "ARD", service: "NDR FS NDS HD", profile="webtv-h264-aac-matroska", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" Nov 21 21:36:49 skynet daemon.info tvheadend[27462]: transcode: 0016: 1:H264 1280x720 ==> HEVC 1280x720 (libx265) Nov 21 21:36:49 skynet daemon.info tvheadend[27462]: transcode: 0016: 2:MPEG2AUDIO ==> AAC (aac) Nov 21 21:36:49 skynet daemon.warn tvheadend[27462]: transcode: 0016: Detected framedrop in audio ======== A Zap for about 15seconds ( no Joke !!) it restarts on error ============= Nov 21 21:37:45 skynet daemon.info tvheadend[27462]: mpegts: 330MHz in primacom - tuning on HVR-930C _ 1 Nov 21 21:37:45 skynet daemon.info tvheadend[27462]: subscription: 0040: "HTTP" subscribing on channel "Sky Atlantic HD", weight: 125, adapter: "HVR-930C _ 1", network: "primacom", mux: "330MHz", provider: "SKY", service: "Sky Atlantic HD", profile="webtv-h264-aac-matroska", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" Nov 21 21:37:45 skynet daemon.info tvheadend[27462]: transcode: 0017: 1:TELETEXT ==> Filtered Nov 21 21:37:45 skynet daemon.info tvheadend[27462]: transcode: 0017: 2:H264 1920x1080 ==> HEVC 1920x1080 (libx265) Nov 21 21:37:45 skynet daemon.info tvheadend[27462]: transcode: 0017: 3:AC3 ==> AAC (aac) Nov 21 21:37:46 skynet daemon.warn tvheadend[27462]: transcode: 0017: Detected framedrop in audio Nov 21 21:37:46 skynet daemon.err tvheadend[27462]: libav: mmco: unref short failure Nov 21 21:37:46 skynet daemon.err tvheadend[27462]: libav: mmco: unref short failure Nov 21 21:37:46 skynet daemon.err tvheadend[27462]: libav: number of reference frames (0+4) exceeds max (3; probably corrupt input), discarding one Nov 21 21:37:47 skynet daemon.info tvheadend[27462]: subscription: 0040: "HTTP" unsubscribing from "Sky Atlantic HD", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" Nov 21 21:37:47 skynet daemon.warn tvheadend[27462]: libav: 2 frames left in the queue on closing Nov 21 21:37:47 skynet daemon.info tvheadend[27462]: mpegts: 330MHz in primacom - tuning on HVR-930C _ 1 Nov 21 21:37:47 skynet daemon.info tvheadend[27462]: subscription: 0041: "HTTP" subscribing on channel "Sky Atlantic HD", weight: 125, adapter: "HVR-930C _ 1", network: "primacom", mux: "330MHz", provider: "SKY", service: "Sky Atlantic HD", profile="webtv-h264-aac-matroska", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" Nov 21 21:37:48 skynet daemon.info tvheadend[27462]: transcode: 0018: 1:TELETEXT ==> Filtered Nov 21 21:37:48 skynet daemon.info tvheadend[27462]: transcode: 0018: 2:H264 1920x1080 ==> HEVC 1920x1080 (libx265) Nov 21 21:37:48 skynet daemon.info tvheadend[27462]: transcode: 0018: 3:AC3 ==> AAC (aac) Nov 21 21:37:49 skynet daemon.warn tvheadend[27462]: transcode: 0018: Detected framedrop in audio Nov 21 21:37:49 skynet daemon.err tvheadend[27462]: libav: mmco: unref short failure Nov 21 21:37:49 skynet daemon.err tvheadend[27462]: libav: mmco: unref short failure Nov 21 21:37:49 skynet daemon.err tvheadend[27462]: libav: number of reference frames (0+4) exceeds max (3; probably corrupt input), discarding one Nov 21 21:37:52 skynet daemon.info tvheadend[27462]: mpegts: 330MHz in primacom scan complete ======== A Zap for about 15seconds ( no Joke !!) it restarts on error ============= Nov 21 21:39:12 skynet daemon.info tvheadend[27462]: mpegts: 418MHz in primacom - tuning on HVR-930C _ 1 Nov 21 21:39:12 skynet daemon.info tvheadend[27462]: subscription: 0046: "HTTP" subscribing on channel "Sky Cinema HD", weight: 125, adapter: "HVR-930C _ 1", network: "primacom", mux: "418MHz", provider: "SKY", service: "Sky Cinema HD", profile="webtv-h264-aac-matroska", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" Nov 21 21:39:13 skynet daemon.info tvheadend[27462]: transcode: 0019: 1:TELETEXT ==> Filtered Nov 21 21:39:13 skynet daemon.info tvheadend[27462]: transcode: 0019: 2:H264 1920x1080 ==> HEVC 1920x1080 (libx265) Nov 21 21:39:13 skynet daemon.info tvheadend[27462]: transcode: 0019: 3:AC3 ==> AAC (aac) Nov 21 21:39:15 skynet daemon.err tvheadend[27462]: descrambler: cannot decode packets for service "Sky Cinema HD" Nov 21 21:39:15 skynet daemon.warn tvheadend[27462]: TS: primacom/418MHz/Sky Cinema HD: TELETEXT @ #32 Continuity counter error (total 1) Nov 21 21:39:15 skynet daemon.err tvheadend[27462]: libav: mmco: unref short failure Nov 21 21:39:15 skynet daemon.err tvheadend[27462]: libav: mmco: unref short failure Nov 21 21:39:15 skynet daemon.err tvheadend[27462]: libav: number of reference frames (0+4) exceeds max (3; probably corrupt input), discarding one Nov 21 21:39:15 skynet daemon.warn tvheadend[27462]: transcode: 0019: Detected framedrop in audio Nov 21 21:39:16 skynet daemon.info tvheadend[27462]: subscription: 0046: "HTTP" unsubscribing from "Sky Cinema HD", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" Nov 21 21:39:16 skynet daemon.warn tvheadend[27462]: libav: 2 frames left in the queue on closing Nov 21 21:39:16 skynet daemon.info tvheadend[27462]: mpegts: 418MHz in primacom - tuning on HVR-930C _ 1 Nov 21 21:39:16 skynet daemon.info tvheadend[27462]: subscription: 0047: "HTTP" subscribing on channel "Sky Cinema HD", weight: 125, adapter: "HVR-930C _ 1", network: "primacom", mux: "418MHz", provider: "SKY", service: "Sky Cinema HD", profile="webtv-h264-aac-matroska", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" Nov 21 21:39:17 skynet daemon.info tvheadend[27462]: transcode: 001A: 1:TELETEXT ==> Filtered Nov 21 21:39:17 skynet daemon.info tvheadend[27462]: transcode: 001A: 2:H264 1920x1080 ==> HEVC 1920x1080 (libx265) Nov 21 21:39:17 skynet daemon.info tvheadend[27462]: transcode: 001A: 3:AC3 ==> AAC (aac) Nov 21 21:39:17 skynet daemon.warn tvheadend[27462]: transcode: 001A: Detected framedrop in audio Nov 21 21:39:17 skynet daemon.err tvheadend[27462]: libav: mmco: unref short failure Nov 21 21:39:17 skynet daemon.err tvheadend[27462]: libav: mmco: unref short failure Nov 21 21:39:17 skynet daemon.err tvheadend[27462]: libav: number of reference frames (0+4) exceeds max (3; probably corrupt input), discarding one My Streaming profile: { "container": 1, "resolution": 1080, "channels": 2, "language": "ger", "vcodec": "libx265", "vbitrate": 1536, "acodec": "aac", "abitrate": 256, "class": "profile-transcode", "enabled": true, "default": true, "name": "webtv-h264-aac-matroska", "comment": "WEBTV profile H264/AAC/Matroska", "priority": 2, "fpriority": 0, "timeout": 0, "restart": false, "contaccess": true, "svfilter": 0, "shield": true }
Files
History
Updated by Stephan Oelze about 9 years ago
maybe i need to add information.
The hardware is Intel-i7-4770K with 32Gigs of ram on an Z97Board + pcie ssd so powerfull enough i think.
and 1080p and or decrypting isnt allway the reason. a "quick" zap of an encrypted 1080p(i) channel. ~ about 7seconds
Nov 21 21:57:05 skynet daemon.info tvheadend[28152]: mpegts: playlist - RTL HD in easy - tuning on IPTV Nov 21 21:57:05 skynet daemon.info tvheadend[28152]: subscription: 0011: "HTTP" subscribing on channel "RTL HD", weight: 125, adapter: "IPTV", network: "easy", mux: "playlist - RTL HD", provider: "CBC", service: "RTL HD", profile="webtv-h264-aac-matroska", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" Nov 21 21:57:06 skynet daemon.info tvheadend[28152]: transcode: 0007: 1:H264 1920x1080 ==> HEVC 1920x1080 (libx265) Nov 21 21:57:06 skynet daemon.info tvheadend[28152]: transcode: 0007: 2:AC3 ==> AAC (aac) Nov 21 21:57:07 skynet daemon.warn tvheadend[28152]: parser: The timediff for TELETEXT is big (867424726), using current dts Nov 21 21:57:07 skynet daemon.err tvheadend[28152]: parser: transport stream TELETEXT, DTS discontinuity. DTS = 0, last = 867421126 Nov 21 21:57:08 skynet daemon.info tvheadend[28152]: subscription: 0011: "HTTP" unsubscribing from "RTL HD", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" Nov 21 21:57:08 skynet daemon.warn tvheadend[28152]: libav: 2 frames left in the queue on closing Nov 21 21:57:08 skynet daemon.info tvheadend[28152]: mpegts: playlist - RTL HD in easy - tuning on IPTV Nov 21 21:57:08 skynet daemon.info tvheadend[28152]: subscription: 0012: "HTTP" subscribing on channel "RTL HD", weight: 125, adapter: "IPTV", network: "easy", mux: "playlist - RTL HD", provider: "CBC", service: "RTL HD", profile="webtv-h264-aac-matroska", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" Nov 21 21:57:08 skynet daemon.info tvheadend[28152]: transcode: 0008: 1:H264 1920x1080 ==> HEVC 1920x1080 (libx265) Nov 21 21:57:08 skynet daemon.info tvheadend[28152]: transcode: 0008: 2:AC3 ==> AAC (aac) Nov 21 21:57:09 skynet daemon.warn tvheadend[28152]: parser: The timediff for TELETEXT is big (867417526), using current dts Nov 21 21:57:09 skynet daemon.err tvheadend[28152]: parser: transport stream TELETEXT, DTS discontinuity. DTS = 0, last = 867413926
Updated by Jaroslav Kysela about 9 years ago
Provide '--trace parser,transcode' . https://tvheadend.org/projects/tvheadend/wiki/Traces
Updated by Stephan Oelze about 9 years ago
Sorry for my late reply but here it is:
2015-11-22 01:03:42.749 [ INFO] config: backup: migrating config from 4.1-1037~gcd6dc6d-dirty (running 4.1-1039~g0a7365a) ------------------ ALOT OF IRRELEVANT NOISE HERE ---------------------- ======================= A Quick Zap (VLC ~ 4-5 seconds) ========================================================================================== 2015-11-22 01:04:03.178 [ INFO] mpegts: 161MHz in primacom - tuning on HVR-930C _ 1 2015-11-22 01:04:03.178 [ INFO] subscription: 0004: "HTTP" subscribing on channel "Das Erste HD", weight: 125, adapter: "HVR-930C _ 1", network: "primacom", mux: "161MHz", provider: "ARD", service: "Das Erste HD", profile="webtv-h264-aac-matroska", hostname="10.3.0.6", client="VLC/2.2.1 LibVLC/2.2.1" 2015-11-22 01:04:04.096 [ INFO] transcode: 0001: 1:H264 1280x720 ==> HEVC 1280x720 (libx265) 2015-11-22 01:04:04.096 [ INFO] transcode: 0001: 2:MPEG2AUDIO ==> AAC (aac) 2015-11-22 01:04:04.225 [ INFO] transcode: 0001: 1:H264 1280x720 ==> HEVC 1280x720 (libx265) 2015-11-22 01:04:04.225 [ INFO] transcode: 0001: 2:MPEG2AUDIO ==> AAC (aac) x265 [info]: HEVC encoder version 1.8 x265 [info]: build info [Linux][GCC 4.8.4][64 bit] 8bit x265 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX AVX2 FMA3 LZCNT BMI2 x265 [info]: Main profile, Level-4 (Main tier) x265 [info]: Thread pool created using 8 threads x265 [info]: frame threads / pool features : 1 / wpp(23 rows) x265 [info]: Coding QT: max CU size, min CU size : 32 / 16 x265 [info]: Residual QT: max TU size, max depth : 32 / 1 inter / 1 intra x265 [info]: ME / range / subpel / merge : dia / 57 / 0 / 2 x265 [info]: Keyframe min / max / scenecut : 25 / 250 / 0 x265 [info]: Lookahead / bframes / badapt : 5 / 3 / 0 x265 [info]: b-pyramid / weightp / weightb : 1 / 0 / 0 x265 [info]: References / ref-limit cu / depth : 1 / 0 / 0 x265 [info]: Rate Control / qCompress : ABR-1536 kbps / 0.60 x265 [info]: tools: rd=2 psy-rd=0.30 early-skip tmvp fast-intra x265 [info]: tools: strong-intra-smoothing x265 [warning]: specified frame type is not compatible with max B-frames x265 [warning]: specified frame type is not compatible with max B-frames x265 [warning]: specified frame type is not compatible with max B-frames x265 [warning]: specified frame type is not compatible with max B-frames x265 [warning]: specified frame type is not compatible with max B-frames x265 [warning]: specified frame type is not compatible with max B-frames x265 [warning]: specified frame type is not compatible with max B-frames x265 [warning]: specified frame type is not compatible with max B-frames x265 [warning]: specified frame type is not compatible with max B-frames x265 [warning]: specified frame type is not compatible with max B-frames <<<<< THIS LINE REPEATS A TRILLION TIMES DURING STREAM 2015-11-22 01:04:05.674 [WARNING] parser: The timediff for DVBSUB is big (339329), using audio dts 2015-11-22 01:04:13.145 [ ERROR] http: 10.3.0.6: HTTP/1.1 POST /comet/poll -- 401 2015-11-22 01:04:13.568 [ INFO] subscription: 0004: "HTTP" unsubscribing from "Das Erste HD", hostname="10.3.0.6", client="VLC/2.2.1 LibVLC/2.2.1" 2015-11-22 01:04:13.568 [WARNING] libav: 2 frames left in the queue on closing x265 [info]: frame I: 15, Avg QP:30.73 kb/s: 8306.19 x265 [info]: frame P: 126, Avg QP:31.44 kb/s: 3426.43 x265 [info]: frame B: 305, Avg QP:33.44 kb/s: 388.17 x265 [info]: consecutive B-frames: 0.7% 39.4% 0.0% 59.9% encoded 419 frames in 8.66s (48.37 fps), 1584.43 kb/s, Avg QP:28.38 btw, why 8 threads? tested on i3 dual core were also 8 threads are used ! ======================================================================================================================================================================== ======================================================================================================================================================================== ======================= A Quick Zap (KODI ~ 4-5 seconds) ============================================================================================ 2015-11-22 01:14:19.576 [ INFO] mpegts: playlist - RTL HD in easy - tuning on IPTV 2015-11-22 01:14:19.576 [ INFO] subscription: 001C: "HTTP" subscribing on channel "RTL HD", weight: 125, adapter: "IPTV", network: "easy", mux: "playlist - RTL HD", provider: "CBC", service: "RTL HD", profile="webtv-h264-aac-matroska", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" 2015-11-22 01:14:20.693 [ INFO] transcode: 0006: 1:H264 1920x1080 ==> HEVC 1920x1080 (libx265) 2015-11-22 01:14:20.693 [ INFO] transcode: 0006: 2:AC3 ==> AAC (aac) x265 [info]: HEVC encoder version 1.8 x265 [info]: build info [Linux][GCC 4.8.4][64 bit] 8bit x265 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX AVX2 FMA3 LZCNT BMI2 x265 [info]: Main profile, Level-4 (Main tier) x265 [info]: Thread pool created using 8 threads x265 [info]: frame threads / pool features : 1 / wpp(34 rows) x265 [info]: Coding QT: max CU size, min CU size : 32 / 16 x265 [info]: Residual QT: max TU size, max depth : 32 / 1 inter / 1 intra x265 [info]: ME / range / subpel / merge : dia / 57 / 0 / 2 x265 [info]: Keyframe min / max / scenecut : 25 / 250 / 0 x265 [info]: Lookahead / bframes / badapt : 5 / 3 / 0 x265 [info]: b-pyramid / weightp / weightb : 1 / 0 / 0 x265 [info]: References / ref-limit cu / depth : 1 / 0 / 0 x265 [info]: Rate Control / qCompress : ABR-1536 kbps / 0.60 x265 [info]: tools: rd=2 psy-rd=0.30 early-skip tmvp fast-intra x265 [info]: tools: strong-intra-smoothing 2015-11-22 01:14:20.776 [WARNING] parser: The timediff for TELETEXT is big (867264726), using current dts x265 [warning]: specified frame type is not compatible with max B-frames x265 [warning]: specified frame type is not compatible with max B-frames x265 [warning]: specified frame type is not compatible with max B-frames x265 [warning]: specified frame type is not compatible with max B-frames 2015-11-22 01:14:21.799 [ INFO] subscription: 001C: "HTTP" unsubscribing from "RTL HD", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" 2015-11-22 01:14:21.799 [WARNING] libav: 2 frames left in the queue on closing x265 [info]: frame I: 1, Avg QP:35.05 kb/s: 1872.60 x265 [info]: frame P: 6, Avg QP:28.74 kb/s: 2110.60 x265 [info]: frame B: 10, Avg QP:32.54 kb/s: 587.20 x265 [info]: consecutive B-frames: 44.4% 0.0% 0.0% 55.6% !!!NO STOP BUTTON HERE!! MACHINE DOES IT ON ITS OWN!!! encoded 17 frames in 1.03s (16.58 fps), 1200.48 kb/s, Avg QP:31.35 2015-11-22 01:14:21.958 [ INFO] mpegts: playlist - RTL HD in easy - tuning on IPTV 2015-11-22 01:14:21.958 [ INFO] subscription: 001D: "HTTP" subscribing on channel "RTL HD", weight: 125, adapter: "IPTV", network: "easy", mux: "playlist - RTL HD", provider: "CBC", service: "RTL HD", profile="webtv-h264-aac-matroska", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" 2015-11-22 01:14:22.726 [ INFO] transcode: 0007: 1:H264 1920x1080 ==> HEVC 1920x1080 (libx265) 2015-11-22 01:14:22.726 [ INFO] transcode: 0007: 2:AC3 ==> AAC (aac) 2015-11-22 01:14:23.240 [WARNING] transcode: 0007: Detected framedrop in audio x265 [info]: HEVC encoder version 1.8 x265 [info]: build info [Linux][GCC 4.8.4][64 bit] 8bit x265 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX AVX2 FMA3 LZCNT BMI2 x265 [info]: Main profile, Level-4 (Main tier) x265 [info]: Thread pool created using 8 threads x265 [info]: frame threads / pool features : 1 / wpp(34 rows) x265 [info]: Coding QT: max CU size, min CU size : 32 / 16 x265 [info]: Residual QT: max TU size, max depth : 32 / 1 inter / 1 intra x265 [info]: ME / range / subpel / merge : dia / 57 / 0 / 2 x265 [info]: Keyframe min / max / scenecut : 25 / 250 / 0 x265 [info]: Lookahead / bframes / badapt : 5 / 3 / 0 x265 [info]: b-pyramid / weightp / weightb : 1 / 0 / 0 x265 [info]: References / ref-limit cu / depth : 1 / 0 / 0 x265 [info]: Rate Control / qCompress : ABR-1536 kbps / 0.60 x265 [info]: tools: rd=2 psy-rd=0.30 early-skip tmvp fast-intra x265 [info]: tools: strong-intra-smoothing 2015-11-22 01:14:23.299 [WARNING] parser: The timediff for TELETEXT is big (867390316), using current dts 2015-11-22 01:14:23.299 [ ERROR] parser: transport stream TELETEXT, DTS discontinuity. DTS = 0, last = 867386716 x265 [warning]: specified frame type is not compatible with max B-frames x265 [warning]: specified frame type is not compatible with max B-frames <<<<< THIS LINE REPEATS A TRILLION TIMES DURING STREAM x265 [warning]: specified frame type is not compatible with max B-frames 2015-11-22 01:14:31.473 [ INFO] subscription: 001D: "HTTP" unsubscribing from "RTL HD", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" 2015-11-22 01:14:31.496 [WARNING] libav: 2 frames left in the queue on closing x265 [info]: frame I: 8, Avg QP:24.66 kb/s: 10634.58 x265 [info]: frame P: 67, Avg QP:25.27 kb/s: 2606.19 x265 [info]: frame B: 119, Avg QP:27.19 kb/s: 619.59 x265 [info]: consecutive B-frames: 28.6% 19.5% 11.7% 40.3% encoded 194 frames in 8.21s (23.63 fps), 1718.67 kb/s, Avg QP:26.42 ======================================================================================================================================================================== ======================================================================================================================================================================== ===================== A long Zap (VLC ~15 seconds) =============================================================================================== 2015-11-22 01:10:31.560 [ INFO] http: 10.3.0.6: using ticket 10229EA296B05352F046A3B8DA42119C2CA4D9D8 for /stream/channel/771b400a77fe3e180222428ba2404d18 2015-11-22 01:10:31.560 [ INFO] mpegts: playlist - ProSieben HD in easy - tuning on IPTV 2015-11-22 01:10:31.560 [ INFO] subscription: 0011: "HTTP" subscribing on channel "ProSieben HD", weight: 125, adapter: "IPTV", network: "easy", mux: "playlist - ProSieben HD", provider: "ProSiebenSat.1", service: "ProSieben HD", profile="webtv-h264-aac-matroska", hostname="10.3.0.6", client="VLC/2.2.1 LibVLC/2.2.1" 2015-11-22 01:10:32.265 [ INFO] transcode: 0003: 1:TELETEXT ==> Filtered 2015-11-22 01:10:32.266 [ INFO] transcode: 0003: 2:H264 1920x1080 ==> HEVC 1920x1080 (libx265) 2015-11-22 01:10:32.266 [ INFO] transcode: 0003: 3:AC3 ==> AAC (aac) 2015-11-22 01:10:32.713 [WARNING] transcode: 0003: Detected framedrop in audio 2015-11-22 01:10:32.762 [ ERROR] libav: mmco: unref short failure 2015-11-22 01:10:32.762 [ ERROR] libav: mmco: unref short failure 2015-11-22 01:10:32.762 [ ERROR] libav: number of reference frames (0+4) exceeds max (3; probably corrupt input), discarding one x265 [info]: HEVC encoder version 1.8 x265 [info]: build info [Linux][GCC 4.8.4][64 bit] 8bit x265 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX AVX2 FMA3 LZCNT BMI2 x265 [info]: Main profile, Level-4 (Main tier) x265 [info]: Thread pool created using 8 threads x265 [info]: frame threads / pool features : 1 / wpp(34 rows) x265 [info]: Coding QT: max CU size, min CU size : 32 / 16 x265 [info]: Residual QT: max TU size, max depth : 32 / 1 inter / 1 intra x265 [info]: ME / range / subpel / merge : dia / 57 / 0 / 2 x265 [info]: Keyframe min / max / scenecut : 25 / 250 / 0 x265 [info]: Lookahead / bframes / badapt : 5 / 3 / 0 x265 [info]: b-pyramid / weightp / weightb : 1 / 0 / 0 x265 [info]: References / ref-limit cu / depth : 1 / 0 / 0 x265 [info]: Rate Control / qCompress : ABR-1536 kbps / 0.60 x265 [info]: tools: rd=2 psy-rd=0.30 early-skip tmvp fast-intra x265 [info]: tools: strong-intra-smoothing x265 [warning]: specified frame type (3) at 0 is not compatible with keyframe interval x265 [warning]: specified frame type (5) at 250 is not compatible with keyframe interval x265 [warning]: specified frame type (3) at 500 is not compatible with keyframe interval x265 [warning]: specified frame type (5) at 750 is not compatible with keyframe interval x265 [warning]: specified frame type (3) at 1000 is not compatible with keyframe interval x265 [warning]: specified frame type (5) at 1250 is not compatible with keyframe interval x265 [warning]: specified frame type (3) at 1500 is not compatible with keyframe interval x265 [warning]: specified frame type (5) at 1750 is not compatible with keyframe interval x265 [warning]: specified frame type (3) at 2000 is not compatible with keyframe interval <<<<<< VLC PICTURE FREEZES AT THAT POINT 2015-11-22 01:11:53.201 [ INFO] subscription: 0011: "HTTP" unsubscribing from "ProSieben HD", hostname="10.3.0.6", client="VLC/2.2.1 LibVLC/2.2.1" 2015-11-22 01:11:53.205 [WARNING] libav: 2 frames left in the queue on closing x265 [info]: frame I: 9, Avg QP:25.70 kb/s: 13351.51 x265 [info]: frame P: 496, Avg QP:26.10 kb/s: 4141.79 x265 [info]: frame B: 1493, Avg QP:28.01 kb/s: 484.68 x265 [info]: consecutive B-frames: 0.2% 1.6% 0.0% 98.2% encoded 1998 frames in 80.44s (24.84 fps), 1450.51 kb/s, Avg QP:27.52 ======================================================================================================================================================================== ======================================================================================================================================================================== ===================== A long Zap (KODI ~ 16 seconds) ========================================================================================================== 2015-11-22 01:19:39.365 [ INFO] mpegts: playlist - ProSieben HD in easy - tuning on IPTV 2015-11-22 01:19:39.365 [ INFO] subscription: 002D: "HTTP" subscribing on channel "ProSieben HD", weight: 125, adapter: "IPTV", network: "easy", mux: "playlist - ProSieben HD", provider: "ProSiebenSat.1", service: "ProSieben HD", profile="webtv-h264-aac-matroska", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" 2015-11-22 01:19:40.191 [ INFO] transcode: 000C: 1:TELETEXT ==> Filtered 2015-11-22 01:19:40.192 [ INFO] transcode: 000C: 2:H264 1920x1080 ==> HEVC 1920x1080 (libx265) 2015-11-22 01:19:40.192 [ INFO] transcode: 000C: 3:AC3 ==> AAC (aac) 2015-11-22 01:19:40.778 [WARNING] transcode: 000C: Detected framedrop in audio 2015-11-22 01:19:40.883 [ ERROR] libav: mmco: unref short failure 2015-11-22 01:19:40.883 [ ERROR] libav: mmco: unref short failure 2015-11-22 01:19:40.883 [ ERROR] libav: number of reference frames (0+4) exceeds max (3; probably corrupt input), discarding one x265 [info]: HEVC encoder version 1.8 x265 [info]: build info [Linux][GCC 4.8.4][64 bit] 8bit x265 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX AVX2 FMA3 LZCNT BMI2 x265 [info]: Main profile, Level-4 (Main tier) x265 [info]: Thread pool created using 8 threads x265 [info]: frame threads / pool features : 1 / wpp(34 rows) x265 [info]: Coding QT: max CU size, min CU size : 32 / 16 x265 [info]: Residual QT: max TU size, max depth : 32 / 1 inter / 1 intra x265 [info]: ME / range / subpel / merge : dia / 57 / 0 / 2 x265 [info]: Keyframe min / max / scenecut : 25 / 250 / 0 x265 [info]: Lookahead / bframes / badapt : 5 / 3 / 0 x265 [info]: b-pyramid / weightp / weightb : 1 / 0 / 0 x265 [info]: References / ref-limit cu / depth : 1 / 0 / 0 x265 [info]: Rate Control / qCompress : ABR-1536 kbps / 0.60 x265 [info]: tools: rd=2 psy-rd=0.30 early-skip tmvp fast-intra x265 [info]: tools: strong-intra-smoothing x265 [warning]: specified frame type (3) at 0 is not compatible with keyframe interval 2015-11-22 01:19:41.687 [ INFO] subscription: 002D: "HTTP" unsubscribing from "ProSieben HD", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" 2015-11-22 01:19:41.687 [WARNING] libav: 2 frames left in the queue on closing x265 [info]: frame I: 1, Avg QP:42.10 kb/s: 6382.60 x265 [info]: frame P: 3, Avg QP:37.01 kb/s: 3533.60 x265 [info]: frame B: 7, Avg QP:41.08 kb/s: 131.46 x265 [info]: consecutive B-frames: 16.7% 0.0% 0.0% 83.3% !!!NO STOP BUTTON HERE!! MACHINE DOES IT ON ITS OWN!!! encoded 11 frames in 0.79s (13.88 fps), 1627.60 kb/s, Avg QP:40.06 2015-11-22 01:19:41.895 [ INFO] mpegts: playlist - ProSieben HD in easy - tuning on IPTV 2015-11-22 01:19:41.895 [ INFO] subscription: 002E: "HTTP" subscribing on channel "ProSieben HD", weight: 125, adapter: "IPTV", network: "easy", mux: "playlist - ProSieben HD", provider: "ProSiebenSat.1", service: "ProSieben HD", profile="webtv-h264-aac-matroska", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" 2015-11-22 01:19:42.725 [ INFO] transcode: 000D: 1:TELETEXT ==> Filtered 2015-11-22 01:19:42.725 [ INFO] transcode: 000D: 2:H264 1920x1080 ==> HEVC 1920x1080 (libx265) 2015-11-22 01:19:42.725 [ INFO] transcode: 000D: 3:AC3 ==> AAC (aac) 2015-11-22 01:19:43.970 [WARNING] transcode: 000D: Detected framedrop in audio 2015-11-22 01:19:44.055 [ ERROR] libav: mmco: unref short failure 2015-11-22 01:19:44.055 [ ERROR] libav: mmco: unref short failure 2015-11-22 01:19:44.055 [ ERROR] libav: number of reference frames (0+4) exceeds max (3; probably corrupt input), discarding one x265 [info]: HEVC encoder version 1.8 x265 [info]: build info [Linux][GCC 4.8.4][64 bit] 8bit x265 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX AVX2 FMA3 LZCNT BMI2 x265 [info]: Main profile, Level-4 (Main tier) x265 [info]: Thread pool created using 8 threads x265 [info]: frame threads / pool features : 1 / wpp(34 rows) x265 [info]: Coding QT: max CU size, min CU size : 32 / 16 x265 [info]: Residual QT: max TU size, max depth : 32 / 1 inter / 1 intra x265 [info]: ME / range / subpel / merge : dia / 57 / 0 / 2 x265 [info]: Keyframe min / max / scenecut : 25 / 250 / 0 x265 [info]: Lookahead / bframes / badapt : 5 / 3 / 0 x265 [info]: b-pyramid / weightp / weightb : 1 / 0 / 0 x265 [info]: References / ref-limit cu / depth : 1 / 0 / 0 x265 [info]: Rate Control / qCompress : ABR-1536 kbps / 0.60 x265 [info]: tools: rd=2 psy-rd=0.30 early-skip tmvp fast-intra x265 [info]: tools: strong-intra-smoothing x265 [warning]: specified frame type (3) at 0 is not compatible with keyframe interval x265 [warning]: specified frame type (5) at 250 is not compatible with keyframe interval x265 [warning]: specified frame type (3) at 500 is not compatible with keyframe interval 2015-11-22 01:20:05.720 [ INFO] subscription: 002E: "HTTP" unsubscribing from "ProSieben HD", hostname="10.3.0.6", client="Kodi/15.2 (Windows NT 6.1; WOW64) App_Bitness/32 Version/15.2-Git:20151019-02e7013" 2015-11-22 01:20:05.720 [WARNING] libav: 2 frames left in the queue on closing x265 [info]: frame I: 3, Avg QP:30.93 kb/s: 16446.33 x265 [info]: frame P: 130, Avg QP:25.16 kb/s: 4549.67 x265 [info]: frame B: 390, Avg QP:27.12 kb/s: 670.39 x265 [info]: consecutive B-frames: 0.7% 1.5% 0.0% 97.8% encoded 523 frames in 21.68s (24.12 fps), 1725.14 kb/s, Avg QP:26.65
Updated by Stephan Oelze almost 9 years ago
- File long zap.PNG long zap.PNG added
- File short zap.PNG short zap.PNG added
I made more tests today.
Everytime i have a long zap this line is in the log(and only then).
[ ERROR] libav: number of reference frames (0+4) exceeds max (3; probably corrupt input), discarding one
Tested all 90 Channels of my channels list. And there are a few which allway zap fast. long and short zaps are on same network/provider. There is none you can say "this provider" has problems or when its encrypted with caid ....
Often its the same provider, same videosource codec with same datarates on same transponder etc....
in addition i noticed a "bandwidth differnece" when i have short zaps, then the bandwidth usage is much mor equal. see the screenshots.
if i can provider more informations / take more tests let me know.
Updated by Stephan Oelze almost 9 years ago
- File tvheadend.log_quickzap_1 tvheadend.log_quickzap_1 added
- File tvheadend.log_quickzap_2 tvheadend.log_quickzap_2 added
- File tvheadend.log_longzap_1 tvheadend.log_longzap_1 added
- File tvheadend.log_longzap_2 tvheadend.log_longzap_2 added
?? my fault? ??
i thought i did allready!
i compiled from git with:
./configure --enable-bundle --enable-libx265 --enable-libffmpeg_static --enable-libav --enable-zlib --prefix=/usr --enable-trace && make -j7
started with:
./build.linux/tvheadend -l /tmp/tvheadend.log --trace parser,transcode
and results are posted #1 (24h ago). maybe i forgot Debug libav log?
Now i did it again and attached complete /tmp/tvheadend.log to this post. Thanks and sorry? for the confusion.
Sorry, now i see. Definitely my fault, sorry for spamming here and wasting your time!
Updated by Jaroslav Kysela almost 9 years ago
I see (times in min:secs) in longzap_1:
36:03 - start
36:06 - first video delivered
36:06 - unsubscribing / subscribing from KODI (what's that hell?)
36:08 - first video packet delivered from the second subscription
Also note that in most H264 streams the video is cca 2 seconds behind the audio (it's visible also on the commercial satellite receivers that audio is first after zapping and video then).
Anyway, KODI should not do subscription two times. I would report the issue here: https://github.com/kodi-pvr/pvr.hts/issues
Updated by Jaroslav Kysela almost 9 years ago
Note that two subscription requests are also in the quickzap logs.
Updated by Stephan Oelze almost 9 years ago
I will Report that issue there.
Anyway, Vlc has the same long zaps.
Or mplayer is also the same so I thought the player is not the problem.
Updated by Stephan Oelze almost 9 years ago
Btw it's not hts kodi is connecting with addon iptvsimple
Updated by Jaroslav Kysela almost 9 years ago
Could you show me the log when you use mplayer or vlc ?
Don't report this issue to pvr.hts - it's special TVH plugin.
Updated by Stephan Oelze almost 9 years ago
- File tvheadend.log_quickzap_1 tvheadend.log_quickzap_1 added
- File tvheadend.log_quickzap_2 tvheadend.log_quickzap_2 added
- File tvheadend.log_longzap_1 tvheadend.log_longzap_1 added
- File tvheadend.log_longzap_2 tvheadend.log_longzap_2 added
No time to wait ;)
did it now.
Files attached are traced with vlc 2.2.1 as client.
Updated by Stephan Oelze almost 9 years ago
- File tvheadend.log_quickzap_1 tvheadend.log_quickzap_1 added
- File tvheadend.log_quickzap_2 tvheadend.log_quickzap_2 added
- File tvheadend.log_longzap_1 tvheadend.log_longzap_1 added
- File tvheadend.log_longzap_2 tvheadend.log_longzap_2 added
and this is mplayer files attached.
i noticed that mplayer starts to fill cache anfreezes inbetween 10% and 20% of cachefill for about 6-8seconds. this causes the delay? on those slow zapps. Mplayerlog:
MPlayer sherpya-r37451+g531b0a3-4.9.2 (C) 2000-2015 MPlayer Team Playing http://192.168.1.140:9981/play/stream/channel/771b400a77fe3e180222428ba2 404d18?title=7%20%3A%20ProSieben%20HD. Connecting to server 192.168.1.140[192.168.1.140]: 9981... Cache size set to 320 KBytes Cache fill: 16.67% (54631 bytes) libavformat version 56.40.101 (internal) libavformat file format detected. [lavf] stream 0: video (hevc), -vid 0 [lavf] stream 1: audio (aac), -aid 0, -alang ger VIDEO: [HEVC] 1920x1080 0bpp 25.000 fps 0.0 kbps ( 0.0 kbyte/s) Clip info: title: ProSieben HD encoder: Tvheadend Matroska muxer Load subtitles in http://192.168.1.140:9981/play/stream/channel/ Load subtitles in C:/Users/derdigge/Desktop/MPlayer-x86_64-r37451+g531b0a3/MPlay er-x86_64-r37451+g531b0a3/mplayer/sub/ ========================================================================== Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family libavcodec version 56.58.100 (internal) Selected video codec: [ffhevc] vfm: ffmpeg (FFmpeg HEVC / H.265) ========================================================================== ========================================================================== Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders AUDIO: 48000 Hz, 2 ch, floatle, 0.0 kbit/0.00% (ratio: 0->384000) Selected audio codec: [ffaac] afm: ffmpeg (FFmpeg AAC (MPEG-2/MPEG-4 Audio)) ========================================================================== AO: [dsound] 48000Hz 2ch s16le (2 bytes per sample) Starting playback... [hevc @ 0000000001973e80]Could not find ref with POC -26 [hevc @ 0000000001973e80]Could not find ref with POC -28 [hevc @ 0000000001973e80]Could not find ref with POC -30 [hevc @ 0000000001973e80]Could not find ref with POC -34 [hevc @ 0000000001973e80]Could not find ref with POC -24 Movie-Aspect is 1.78:1 - prescaling to correct movie aspect. VO: [direct3d] 1920x1080 => 1920x1080 Planar YV12
Updated by Stephan Oelze almost 9 years ago
- File tvheadend.log_quickzap_1 tvheadend.log_quickzap_1 added
- File tvheadend.log_quickzap_2 tvheadend.log_quickzap_2 added
- File tvheadend.log_longzap_1 tvheadend.log_longzap_1 added
- File tvheadend.log_longzap_2 tvheadend.log_longzap_2 added
Thanks for your Work!
But unfortunately it didnt change the behavior.
please have a look at traces attached with 4.1-1047~g851aebb client is VLC 2.2.1.
A "quickzap" takes place in ~3 seconds for 720p and ~3.5 seconds 1080p. They feel a bit faster. Its no "hardmessured", its finger counting.
basically i know that 3 Seconds for a tune-in + descrable + transfer over 670km distance is a really great result (o:!
But the "longzap" is still long. is still about 10-13 seconds.
Updated by Stephan Oelze almost 9 years ago
- File long_zap_player long_zap_player added
- File quick_zap_player quick_zap_player added
This is mplayer verbose logging as attachment. It still freezes at caching for some time.
Updated by Jaroslav Kysela almost 9 years ago
Could you try this change?
diff --git a/src/plumbing/transcoding.c b/src/plumbing/transcoding.c index 1956e55..950ff37 100644 --- a/src/plumbing/transcoding.c +++ b/src/plumbing/transcoding.c @@ -1386,6 +1386,7 @@ transcoder_stream_video(transcoder_t *t, transcoder_stream_t *ts, th_pkt_t *pkt) av_dict_set_int__(&opts, "x265-params", maxrate, AV_DICT_APPEND); av_dict_set(&opts, "x265-params", ":strict-cbr=1", AV_DICT_APPEND); } + av_dict_set(&opts, "x265-params", ":keyint=100", AV_DICT_APPEND); break;
Updated by Stephan Oelze almost 9 years ago
- File tvheadend.log tvheadend.log added
tried it. A lot of noise in log now.
The first zap in that file was a quick one. The second a long zap i inserted some parting lines.
The stream starts earlier. It took about 7 seconds for a long zap but there is only audio and blank viedeo (kodi) for ~5 seconds.
After a start there are a lot disturbances and picture failures. Zapping time for short zaps are as before.
They also do have picture failures.
if You need more traces/cleints let me know.
Updated by saen acro almost 9 years ago
Can you attach video record of same channel, at less 1-2min long
one in pass profile and one in transcoding profile you use
idea is to be seen mpeg attributes as GOP, I, P, and B frames
Updated by Stephan Oelze almost 9 years ago
hello saen and welcome to the ticket
please answer following question and I will serve your need
Q1: with or without patch from #18?
Q2: short zap? Long zap? Both?
Updated by saen acro almost 9 years ago
more data for analyse more chance to catch malfunction
basicly
x265 [warning]: specified frame type is not compatible with max B-frames
x265 [warning]: specified frame type is not compatible with max B-frames
x265 [warning]: specified frame type is not compatible with max B-frames
this explain long first frame to display
http://forum.doom9.org/showthread.php?t=19436
Updated by Stephan Oelze almost 9 years ago
- File tv_quickzap_1_trace_log_VLC.log tv_quickzap_1_trace_log_VLC.log added
- File tv_quickzap_1_video_h265.mkv tv_quickzap_1_video_h265.mkv added
- File tv_quickzap_1_video_pass.ts tv_quickzap_1_video_pass.ts added
- File tv_quickzap_2_trace_log_VLC.log tv_quickzap_2_trace_log_VLC.log added
- File tv_quickzap_2_video_h265.mkv tv_quickzap_2_video_h265.mkv added
- File tv_quickzap_2_video_pass.ts tv_quickzap_2_video_pass.ts added
- File tv_longzap_1_trace_log_VLC.log tv_longzap_1_trace_log_VLC.log added
- File tv_longzap_1_video_h265.mkv tv_longzap_1_video_h265.mkv added
- File tv_longzap_1_video_pass.ts tv_longzap_1_video_pass.ts added
Ok thanks, here wo go! This Files are without patch from post #18. It caused to much groats in the video stream.
for every zap(channel) i did
1 - Stream with VLC
2 - wget -O *.mkv (profile h265 stream encode)
3 - wget -O *.ts (profile pass)
Interesting to say is that wget bahves similar to mplayer on longzaps. A few bytes came in then stuck for maybe 9 seconds,
continues and stuck again from time to time. Ever Continue step comes with a huge burst of datarate ~ about 4 times bitrate of the stream.
Its like driving and Moskvitch or an Ural 750
I tried to understand this
http://forum.doom9.org/showthread.php?t=19436
But sorry no i really dont know what this guy is talking about but thanks for information.
Updated by Stephan Oelze almost 9 years ago
- File tv_longzap_2_trace_log_WGET_STUCKED.log tv_longzap_2_trace_log_WGET_STUCKED.log added
- File tv_longzap_2_trace_log_VLC.log tv_longzap_2_trace_log_VLC.log added
- File tv_longzap_2_video_h265.mkv tv_longzap_2_video_h265.mkv added
- File tv_longzap_2_video_pass.ts tv_longzap_2_video_pass.ts added
belongs to post #23
max size ecxeeded
Updated by Jaroslav Kysela almost 9 years ago
The key frame interval should be reduced for the streaming. Value 250 means up to 10 seconds. In standard streaming, this value should be in range 30-49 (less than 2 seconds for 25fps). The build-in matroska muxer starts chunks when key frame is detected, thus there might be "big delays" until data are flushed out of tvh..
Could you try again the change from comment 18, but replace ":keyint=100" with ":keyint=49:min-keyint=15" ?
Updated by Stephan Oelze almost 9 years ago
i´ll try that and report back.
switching container to MPEG-TS/av-lib solves the problem btw ...... I have zappings 2,5-4 seconds on all channels.
Anyway lets fix that for Matroska. Do You need video examples again or are traces enough?
Updated by Jaroslav Kysela almost 9 years ago
I can reproduce the issue here, too. I won't call it a bug, because the matroska spec says that each chunk should start with a key frame.
Updated by Stephan Oelze almost 9 years ago
- File tv_quickzap_1_trace tv_quickzap_1_trace added
- File tv_quickzap_2_trace tv_quickzap_2_trace added
- File tv_longzap_1_trace tv_longzap_1_trace added
- File tv_longzap_2_trace tv_longzap_2_trace added
Ok, i understand.
Times with patch from Post \#18 + \#25 i get following results: (counted with smartphone watch)
Settings: Container=*Matroska (mkv)/built-in* | bitrate=2048 | resolution=1080(or max available) | Audiocodec=libvorbis
quickzaps_720p: 4,75s ; 4,01s ; 4,56s ; 4,84s
quickzaps_1080p: 7,02s ; 6,94 ; 6,33s ; 6,45s
longzaps_1080p: 8,13s ; 9,80s ; 7,88s ; 8,30s
See the Traces attached.
So i made another try with following settings:
Settings: Container=*MPEG-TS/av-lib* | bitrate=2048 | resolution=1080(or max available) | Audiocodec=aac
quickzaps_720p: 3,98s ; 4,21 ; 4,46 ; 4,58
quickzaps_1080p: 6,31 ; 5,99 ; 6,43 ; 6,85
longzaps_1080p: 6,81 ; 6,25 ; 6,73 ; 6,48
No traces attached for this one.
Is there another Container we can use? One which is more suitable for such a mission?
I would like to get bellow 4-5 Seconds. At best case achive values like htsp 1-2s
Thanks for all Your help here
Updated by Jaroslav Kysela almost 9 years ago
We may reduce the times only for matroska (but only one second). Analysis for the current code:
1: 17:04:26.768 [ INFO]:subscription: 0001: "HTTP" subscribing on channel "SAT.1 HD" 2: 17:04:27.856 [ TRACE]:parser: pkt bcklog 2 H264 type dts 80708352344 (7263751711) 3: 17:04:28.817 [ TRACE]:parser: pkt stream 2 H264 type I dts 80709872344 (7263888511) 4: 17:04:29.371 [ DEBUG]:transcode: tuning HEVC encoder for ABR rate control, bitrate: 3500kbps, vbv-bufsize: 13125kbits, vbv-maxrate: 4375kbps 5: 17:04:29.633 [ TRACE]:transcode: 0001: deliver video (dts = 174400, pts = 181600) 6: 17:04:29.653 [ TRACE]:parser: hevc video packet! 7: 17:04:29.653 [ TRACE]:parser: matroska close cluster 8: 17:04:31.537 [ TRACE]:parser: matroska close cluster 9: 17:04:33.464 [ TRACE]:parser: matroska close cluster
Analysis:
time 1) 0.000 HTTP request - start time 2) 1.088 first H264 frame was decoded 3) 2.049 H264 key frame detected 4) 2.603 transcoding started (HEVC encoder) 5) 2.865 first frame from transcoder 6) 2.885 first video frame in matroska muxer 7) 2.885 first matroska cluster closed and sent to the client 8) 4.769 second matroska cluster closed and sent to the client 9) 6.696 third ....
At time 4.769 (second matroska cluster) the client has all information to start decoding (the client may start after first cluster - there should be one video frame and some audio frames, but I think that all clients buffers more).
Used patch:
diff --git a/src/muxer/muxer_mkv.c b/src/muxer/muxer_mkv.c index 3b50dc3..a496dd7 100644 --- a/src/muxer/muxer_mkv.c +++ b/src/muxer/muxer_mkv.c @@ -939,8 +939,10 @@ mk_add_chapter(mk_muxer_t *mk, int64_t ts) static void mk_close_cluster(mk_muxer_t *mk) { - if(mk->cluster != NULL) + if(mk->cluster != NULL) { + tvhtrace("parser", "matroska close cluster"); mk_write_master(mk, 0x1f43b675, mk->cluster); + } mk->cluster = NULL; mk->cluster_last_close = dispatch_clock; } @@ -1128,6 +1130,7 @@ mk_mux_write_pkt(mk_muxer_t *mk, th_pkt_t *pkt) mk_mux_insert_chapter(mk); if(t->hevc) { + tvhtrace("parser", "hevc video packet!"); pkt = hevc_convert_pkt(opkt = pkt); pkt_ref_dec(opkt); } else if(t->avc) {
I don't see what else can be reduced / improved here.
Updated by Jaroslav Kysela almost 9 years ago
Note it's analysis from my test machine, not from your logs..
Updated by Stephan Oelze almost 9 years ago
Checked out latest git an applied the patch.
The result about 1second faster as you said. Debending on channel i am getting ~ 4-6.5 seconds.
Until now You made good improvements to matroska i think. but still MPEG-TS/av-lib + aac gives me the best results.
With MPEG-TS Container i am worst at 4 Seconds and best zap was 2.5 seconds. In average all channels are 4 seconds and lower.
This is verry close to htsp/pass. So in sum i can say awsome result for this mission Thanks a lot for your effort.
I was able to messure about 0.5-1 secon speed decrease for matroska with patch from your post 29. So it should be applied to master.
Anyhow for me MPEG-TS is the way to go for me.
Next step is playing with Intels Quick-Sync tecnology.
Thanks in advance Jaroslav!
If You need more traces or information please let me know.
Updated by saen acro almost 9 years ago
Stephan Gradl Oelze
more explayned I,P,B frames in MPEG stream
https://www.youtube.com/watch?v=P7abyWT4dss and https://www.youtube.com/watch?v=qbGQBT2Vwvc
@Jaroslav Kysela is it possible to forsly add key frames
at less this is live streams not files on storage
Updated by Jaroslav Kysela almost 9 years ago
Sean Sean acro: There might be probably "universal" hints in the stream profile settings like low-latency, best-picture or so... So the transcoder can determine the purpose and set the parameters according this.
Updated by Jaroslav Kysela almost 9 years ago
- Status changed from New to Fixed
Stephan Gradl : All code is in the current TVH master. I'm closing this as fixed.