}
-int FileFFMPEG::set_video_position(int64_t pos)
-{
- if( !ff || pos < 0 || pos >= asset->video_length )
- return 1;
- return 0;
-}
-
-
-int FileFFMPEG::set_audio_position(int64_t pos)
-{
- if( !ff || pos < 0 || pos >= asset->audio_length )
- return 1;
- return 0;
-}
-
-
int FileFFMPEG::write_samples(double **buffer, int64_t len)
{
if( !ff || len < 0 ) return -1;
int64_t pos = file->current_frame;
int ret = ff->decode(layer, pos, frame);
frame->set_status(ret);
- if( ret > 0 ) return 0;
+ if( ret >= 0 ) return 0;
frame->clear_frame();
return -1;
}