"AVERROR_EOF: EOF detected from decoder" at frame 619/1355
Describe the bug: image sequence video export abruptly ends with error at frame 619
Steps to reproduce the behavior:
- Import 00001.jpg ... 01355.jpg as an image sequence (sucessful)
- Right click image sequence and add to timeline
- Select (file->export project->export video
- Video is rendered as expected but then drastically speeds up to complete at the ~45% complete mark.
- Exported video only has frames 1 thru 618, then proceeds to play but looks "paused" as it plays to frame 1355.
Expected behavior: The exported video should include all frames 1 thru 1355
System Details:
- OpenShot Version 3.1.1
- Windows 11 23H2
Log Files:
17:46:51 INFO logger_libopenshot: Timeline::GetFrame (processing frame) (requested_frame=619.0000, omp_get_thread_num()=0.0000)
17:46:51 INFO logger_libopenshot: Timeline::GetFrame (Adding solid color) (requested_frame=619.0000, info.width=1280.0000, info.height=720.0000)
17:46:51 INFO logger_libopenshot: Timeline::GetFrame (Loop through clips) (requested_frame=619.0000, clips.size()=1.0000, nearby_clips.size()=1.0000)
17:46:51 INFO logger_libopenshot: Timeline::GetFrame (Does clip intersect) (requested_frame=619.0000, clip->Position()=0.0000, clip->Duration()=45.1667, does_clip_intersect=1.0000)
17:46:51 INFO logger_libopenshot: Timeline::GetFrame (Calculate clip's frame #) (clip->Position()=0.0000, clip->Start()=0.0000, info.fps.ToFloat()=30.0000, clip_frame_number=619.0000)
17:46:51 INFO logger_libopenshot: Timeline::GetOrCreateFrame (from reader) (number=619.0000, samples_in_frame=1600.0000)
17:46:51 INFO logger_libopenshot: Clip::GetOrCreateFrame (from reader) (number=619.0000, clip_frame_number=619.0000)
17:46:51 INFO logger_libopenshot: FrameMapper::GetFrame (Loop through frames) (requested_frame=619.0000, minimum_frames=1.0000)
17:46:51 INFO logger_libopenshot: FrameMapper::GetFrame (inside omp for loop) (frame_number=619.0000, minimum_frames=1.0000, requested_frame=619.0000)
17:46:51 INFO logger_libopenshot: FrameMapper::GetMappedFrame (TargetFrameNumber=619.0000, frames.size()=1355.0000, frames[...].Odd=619.0000, frames[...].Even=619.0000)
17:46:51 INFO logger_libopenshot: FrameMapper::GetOrCreateFrame (from reader) (number=619.0000, samples_in_frame=0.0000)
17:46:51 INFO logger_libopenshot: FFmpegReader::GetFrame (requested_frame=619.0000, last_frame=618.0000)
17:46:51 INFO logger_libopenshot: FFmpegReader::ReadStream (requested_frame=619.0000, max_concurrent_frames=12.0000)
17:46:51 INFO logger_libopenshot: FFmpegReader::ReadStream (GetNextPacket) (requested_frame=619.0000, packets_read=618.0000, packets_decoded=618.0000, is_seeking=0.0000)
17:46:51 INFO logger_libopenshot: FFmpegReader::GetAVFrame (receive frame: frame not ready yet from decoder [" + av_err2string(receive_frame_err) + "]) (receive_frame_err=-541478720.0000, send_packet_pts=0.0000)
17:46:51 INFO logger_libopenshot: FFmpegReader::GetAVFrame (receive frame: AVERROR_EOF: EOF detected from decoder, flushing buffers) (send_packet_pts=0.0000)
17:46:51 INFO logger_libopenshot: FFmpegReader::ReadStream (force EOF) (packets_read=618.0000, packets_decoded=618.0000, packets_eof=1.0000, video_eof=1.0000, audio_eof=1.0000, end_of_file=1.0000)
17:46:51 INFO logger_libopenshot: FFmpegReader::ReadStream (Completed) (packets_read=618.0000, packets_decoded=618.0000, end_of_file=1.0000, largest_frame_processed=618.0000, Working Cache Count=0.0000)
00619.jpg and 00620.jpg do not exist and were not imported. Apparently if there is a gap this will not export properly, even though the video preview in openshot works appropriately.
So, did you try to renumber you files and try again? Take a subset of your files (1-00618) and import that and then Export and see if that works.
So, I copied 00618.jpg to 00619.jpg and copied 00621.jpg to 00620.jpg, didn't import them to the project, and then the project exported correctly.
There seems to be a disconnect between what OpenShot imports & what is actually processed from the filesystem.