Hi,
ich habe ein paar Dateien die XBMC reproduzierbar an bestimmten Stellen in der Datei (2-3) crashen und neu starten lassen.
Openelec 3.2.4 + Nightly Build vom 16.01.
- Wenn die Stelle übersprungen wird gibt es kein Problem.
- Das Problem tritt mit Frodo als auch Gotham auf
- Ich habe verschiedene Videodarstellungsoptionen versucht (Software/Hardware-Rendering etc)
Keine Änderung. Das Logfile schmeisst am Ende folgendes raus:
18:45:20 T:139664478603072 DEBUG: ------ Window Deinit (DialogSeekBar.xml) ------
18:45:22 T:139663122016000 DEBUG: CPullupCorrection: detected pattern of length 1: 40000.00, frameduration: 40000.000000
18:45:29 T:139663122016000 ERROR: ffmpeg[DAC6A700]: [h264] Invalid mix of idr and non-idr slices
18:45:29 T:139663122016000 ERROR: Decode - avcodec_decode_video returned failure
18:45:29 T:139663122016000 DEBUG: CDVDPlayerVideo - video decoder returned error
Ist offensichtlich ein Problem in den Videodateien, aber andere Player (VLC, Mediaplayer-Classic) lassen sich da nicht aus dem Tritt bringen. Kann man da irgendwo drehen (ausser die Datei neu zu kodieren)? Tritt ja leider bei mehreren auf.
PS: Scheint diese Stelle im Sourcecode des libavcodec/h264 zu sein:
3875 case NAL_IDR_SLICE:
3876 if (h->nal_unit_type != NAL_IDR_SLICE) {
3877 av_log(h->s.avctx, AV_LOG_ERROR, "Invalid mix of idr and non-idr slices\n");
3878 return -1;
3879 }
3880 idr(h); // FIXME ensure we don't lose some frames if there is reordering