Revert "Revert "try fix to call container_ffmpeg_stop on file EOF""

This reverts commit d7295b8630.


Origin commit data
------------------
Branch: master
Commit: 3ff8f3f26c
Author: vanhofen <vanhofen@gmx.de>
Date: 2019-03-01 (Fri, 01 Mar 2019)



------------------
This commit was generated by Migit
This commit is contained in:
vanhofen
2019-03-01 23:43:02 +01:00
parent c50024fa30
commit 193a6f0e47

View File

@@ -126,6 +126,7 @@ static int32_t container_ffmpeg_seek(Context_t *context, int64_t sec, uint8_t ab
static int32_t container_ffmpeg_get_length(Context_t *context, int64_t *length);
static int64_t calcPts(uint32_t avContextIdx, AVStream *stream, int64_t pts);
static int64_t doCalcPts(int64_t start_time, const AVRational time_base, int64_t pts);
static int32_t container_ffmpeg_stop(Context_t *context);
/* Progressive playback means that we play local file
* but this local file can grows up, for example
@@ -1352,6 +1353,11 @@ static void FFMPEGThread(Context_t *context)
do_seek_target_seconds = 0;
PlaybackDieNow(1);
if(context && context->playback)
{
container_ffmpeg_stop(context);
}
ffmpeg_printf(10, "terminating\n");
}
@@ -1533,8 +1539,7 @@ int32_t container_ffmpeg_init_av_context(Context_t *context, char *filename, uin
0 == strncmp(filename, "file://", 7))
{
AVIOContext *avio_ctx = NULL;
if(custom_io_tab[AVIdx] == NULL)//workaround for double malloc if container_ffmpeg_stop is not called after file play to end
custom_io_tab[AVIdx] = malloc(sizeof(CustomIOCtx_t));
custom_io_tab[AVIdx] = malloc(sizeof(CustomIOCtx_t));
memset(custom_io_tab[AVIdx], 0x00, sizeof(CustomIOCtx_t));