[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1016925: kodi: Video playback not working in latest version of kodi



Control: reassign -1 ffmpeg 7:5.1-2
Control: affects -1 kodi

Hi,

since kodi in Debian is built against ffmpeg 5.1, TV playback is broken.
More specifically, kodi can no longer play video transport streams.

One can reproduce this by playing a video from a ts file in kodi, e.g.:
$ ffmpeg -f lavfi -i testsrc -t 10 -c:v h264 test.ts
$ kodi test.ts

This worked fine with kodi 19.4, which was built against ffmpeg 4.4,
but no longer shows the video in kodi 20, which is built against ffmpeg 5.1.

The problem is that kodi tries to manually extract transport stream extradata
using parser->split in CDVDDemuxFFmpeg::ParsePacket [1], but all the split
functions were removed in ffmpeg 5.0 by [2]:
commit e5af9203098a889f36b759652615046254d45102
Author: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Date:   Sun Mar 7 00:28:14 2021 +0100

    avcodec: Move all AVCodecParser.split functions to remove_extradata_bsf

    The remove_extradata bsf is the only user of these functions.

    Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
    Signed-off-by: James Almer <jamrial@gmail.com>

Reverting this commit on top of ffmpeg 5.1 (and including startcode.h in
files then using avpriv_find_start_code) restores TV playback in kodi.

As the example of kodi shows, these split functions are generally useful
for API users outside of ffmpeg itself.
Thus please restore them, e.g. by reverting this commit.

Thanks,
Rogo

1: https://salsa.debian.org/multimedia-team/kodi-media-center/kodi/-/blob/1690349c890bdf941216218dd6b4f7b9c4204dc0/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxFFmpeg.cpp#L2260
2: https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/e5af9203098a889f36b759652615046254d45102


Reply to: