[mythtv] recent playback optimisations -> LiveTV regression for me
Piotr Oniszczuk
piotr.oniszczuk at gmail.com
Thu Nov 22 20:51:33 UTC 2018
Peter,
Patch seems to fix issue with LiveTV transitions.
I think You can commit it into current master.
PS: I think also putting back av_image_fill_arrays is worth.
thx
> Wiadomość napisana przez Piotr Oniszczuk <piotr.oniszczuk at gmail.com> w dniu 20.11.2018, o godz. 15:45:
>
> Peter,
> Thx.
>
> I already applied patch and I’m under testing.
>
> As this is a bit time consuming - I’ll return to You within few days.
>
> Regarding second aspect (av_image_fill_arrays):
>
> Indeed - code duplication was my overlook.
> I added back just:
>
> av_image_fill_arrays(tmppicture.data, tmppicture.linesize,
> buf, AV_PIX_FMT_YUV420P, use_frame->width,
> use_frame->height, IMAGE_ALIGN);
>
> in it’s original place.
>
> Will test and give You feedback
>
> thx for so quick replay :-)
>
>
>> Wiadomość napisana przez Peter Bennett <pb.mythtv at gmail.com> w dniu 19.11.2018, o godz. 23:24:
>>
>>
>>
>> On 11/19/18 6:23 AM, Piotr Oniszczuk wrote:
>>> Peter
>>>
>>> FYI:
>>>
>>> 1) this commit
>>>
>>> https://github.com/MythTV/mythtv/commit/7a74d6a845b80e1223bdcefe669a079bbf7c7762
>>>
>>> causing on my system issues with LiveTV program transitions:
>>>
>>> sometimes (avg. 1 per 5-10 transitions) LiveTV playback becomes time-lapse (slowed-down jumpy).
>>> referring this commit shows no issue with test 100 transitions - so I think issue is within this commit.
>>>
>>>
>>> 2) Also I reverted:
>>>
>>> @@ -3996,6 +3996,14 @@
>>> {
>>> AVFrame tmppicture;
>>> .
>>> + VideoFrame *xf = picframe;
>>> + picframe = m_parent->GetNextVideoFrame();
>>> +
>>> + unsigned char *buf = picframe->buf;
>>> + av_image_fill_arrays(tmppicture.data, tmppicture.linesize,
>>> + buf, AV_PIX_FMT_YUV420P, use_frame->width,
>>> + use_frame->height, IMAGE_ALIGN);
>>> +
>>> tmppicture.data[0] = buf + picframe->offsets[0];
>>> tmppicture.data[1] = buf + picframe->offsets[1];
>>> tmppicture.data[2] = buf + picframe->offsets[2];
>>>
>>> in
>>>
>>> https://github.com/MythTV/mythtv/commit/22de417da6437e877ef6c4d0ae5ee5b4121424c6
>>>
>>> as this causing sometimes 0.5-2sec pixelizations at beginning of new program at LiveTV program transition.
>>>
>>> br
>>>
>>>
>>
>> Hi Piotr
>>
>> Please try the attached patch. It uses a different method to solve the skipping of video frames in live TV start or transition. I hope that fixes issue 1.
>>
>> For issue 2, there is a problem. If you look at the commit, you will see that these three lines were moved up in the code:
>>
>> + VideoFrame *xf = picframe;
>> + picframe = m_parent->GetNextVideoFrame();
>> + unsigned char *buf = picframe->buf;
>>
>> By Adding these back you will have them duplicated in two places. Putting them in two places will confuse the logic.
>>
>> Possibly the av_image_fill_arrays has something to do with it. See if just adding that line back without the other three will fix the problem.
>>
>> If you still get the transition problem with the patch, please try with -v playback and see if there are messages that explain why the video is jerky.
>>
>> Peter
>> <20181119_1607_transition_fix.patch>_______________________________________________
>> mythtv-dev mailing list
>> mythtv-dev at mythtv.org
>> http://lists.mythtv.org/mailman/listinfo/mythtv-dev
>> http://wiki.mythtv.org/Mailing_List_etiquette
>> MythTV Forums: https://forum.mythtv.org
>
> _______________________________________________
> mythtv-dev mailing list
> mythtv-dev at mythtv.org
> http://lists.mythtv.org/mailman/listinfo/mythtv-dev
> http://wiki.mythtv.org/Mailing_List_etiquette
> MythTV Forums: https://forum.mythtv.org
More information about the mythtv-dev
mailing list