Opened 5 years ago
Closed 4 years ago
Last modified 4 years ago
#12717 closed Bug Report - General (fixed)
LiveTV stutters until a channel change
Reported by: | Owned by: | JYA | |
---|---|---|---|
Priority: | minor | Milestone: | 29.0 |
Component: | MythTV - General | Version: | 0.28.0 |
Severity: | medium | Keywords: | LiveTV stutter |
Cc: | pbennett@… | Ticket locked: | no |
Description
LiveTV will stutter until the channel is changed. From that point on playback is fine. Pausing or skip back of TV buffer does not fix the issue, only changing the channel. Playback during the stuttering displays the following in the log:
2016-04-09 11:49:52.640405 I Player(0): A/V predict drop frame, dropping frame to catch up. 2016-04-09 11:49:52.640434 I Player(0): Video is 12.0553 frames ahead of audio, doubling video frame interval to slow down.
Version info:
mythfrontend --version Please attach all output as a file in bug reports. MythTV Version : v0.28-rc1-23-g61e022d MythTV Branch : fixes/0.28 Network Protocol : 88 Library API : 0.28.20160309-1 QT Version : 5.2.1 Options compiled in:
linux profile use_hidesyms using_alsa using_pulse using_backend using_bdjava using_bindings_perl using_bindings_python using_bindings_php using_dvb using_frontend using_hdhomerun using_vbox using_libcrypto using_libdns_sd using_libfftw3 using_libxml2 using_lirc using_opengl using_opengl_video using_qtwebkit using_qtscript using_qtdbus using_sdl using_taglib using_v4l2 using_x11 using_xrandr using_xv using_profiletype using_systemd_notify using_bdjava using_bindings_perl using_bindings_python using_bindings_php using_fontconfig using_freetype2 using_mythtranscode using_opengl using_vdpau using_ffmpeg_threads using_libass using_libxml2
Attachments (3)
Change History (12)
comment:3 Changed 5 years ago by
I had this same problem in 0.27 and it was fixed by reverting commit f307a3d5e60b0054e1833127d417c6acfada3213. I went through the 0.28 version of mythplayer.cpp and tv_play.cpp and discovered the changes which are in commit f307a3d5e60b0054e1833127d417c6acfada3213 were added back to 0.28.
I know next to nothing about programming, diff or patches but I modified the 0.28 versions of mythplayer.cpp and tv_play.cpp to remove what was in the 0.27 era commit. This fixed my stuttering problems in 0.28.
I attempted to make a patch file of my changes and have attached them here. No idea if my changes broke anything else but it fixed my stuttering problems!
Changed 5 years ago by
Attachment: | mythplayer.cpp.patch added |
---|
Reverts 0.27 commit f307a3d5e60b0054e1833127d417c6acfada3213 in 0.28
Changed 5 years ago by
Attachment: | tv_play.cpp.patch added |
---|
Reverts 0.27 commit f307a3d5e60b0054e1833127d417c6acfada3213 in 0.28
comment:4 Changed 5 years ago by
Owner: | set to JYA |
---|---|
Status: | new → assigned |
Jya, any thoughts on this?
comment:5 Changed 4 years ago by
Cc: | pbennett@… added |
---|
comment:6 Changed 4 years ago by
The original fix was from Lawrence Rust. It was committed by jya July 19, 2014 to master and fixes/0.27. It was reversed by jya October 13, 2014 because of stuttering until channel change. Since it was never reversed in master it made its way into 0.28.
Original commit to master -> 0e0e04ccadfcbeeedbeb5e6286c591caa33d8e62
Cherry pick to fixes/0.27 -> f307a3d5e60b0054e1833127d417c6acfada3213
Reverse in fixes/0.27 -> b97ea66199bce8394637d33f33d99b25906caa23
It looks like it should be reversed in master and fixes/0.28. Does anybody have any objections to me doing that?
comment:7 Changed 4 years ago by
I see 3 possible problems with the original commit:
- most likely: GetTrackCount?(video) may be wrong/0 due to subtle errors thus causing the stream in question never to recover
- 2nd likely: when the video buffers fill (bDisplayFrame), displaying no longer happens causing a backlog and preventing AVsync from doing its job. This would be repeatable for each channel viewed as the AV delay would be a factor.
- less likely: PauseAudioUntilBuffered? could go before UnpauseLiveTV. This would make it less likely to require resync immediately after starting.
The rest appear to fine or cosmetic.
comment:8 Changed 4 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Log of LiveTV startup, channel change then change again to original channel.