Reextracted Streams are being stored under the wrong cachekey

Issue #637 resolved
Former user created an issue

I posted this bug yesterday but it is not showing up, so here it is again.

When an extracted stream fails in ffmpeg and is successfully re-extracted, it is being cached using the cachekey from the first extract and not the cachekey from the second successful extract.

The attached log illustrates this for a stream where the cache key contains the playpath value. The initial extract had playpath chchch756565 and the second extract had playpath hhjkn?id=79220, however the second extract was cached as SkysportsPlus_ch9_chchch756565 instead of SkysportsPlus_ch9_hhjkn?id=79220

2013-02-03 09:17:52,352 DEBUG [FeedItemUrlExtractor] skysportsplus: Starting extraction of url for item: ch9*8:30-Pittsburgh Penguins vs Washington Capitals

2013-02-03 09:17:52,353 DEBUG [FeedItemUrlExtractor] skysportsplus: Finished extraction of url: ContentURLContainer [fileType=VIDEO, contentUrl=rtmp://212.7.212.37:1935/live playpath=chchch756565 pageUrl=http://www.yycast.com/embed.php?fileid=chchch756565 swfUrl=http://cdn.yycast.com/player/player.swf live=1, thumbnailUrl=https://sites.google.com/site/serviiorss/ch9.png, expiresImmediately=true, cacheKey=SkysportsPlus_ch9_chchch756565, live=true, ]

2013-02-03 09:17:52,353 DEBUG [WebResourceParser] Added resource item 12: 'ch9*8:30-Pittsburgh Penguins vs Washington Capitals' (rtmp://212.7.212.37:1935/live playpath=chchch756565 pageUrl=http://www.yycast.com/embed.php?fileid=chchch756565 swfUrl=http://cdn.yycast.com/player/player.swf live=1)

2013-02-03 09:18:41,330 DEBUG [FeedUpdaterThread] Retrieving information about the video stream 'ch9*8:30-Pittsburgh Penguins vs Washington Capitals'

2013-02-03 09:19:00,344 DEBUG [FeedUpdaterThread] Cannot get information about the URL, it might have expired already. Trying again.

2013-02-03 09:19:00,344 DEBUG [FeedItemUrlExtractor] skysportsplus: Starting extraction of url for item: ch9*8:30-Pittsburgh Penguins vs Washington Capitals

2013-02-03 09:19:04,994 DEBUG [FeedItemUrlExtractor] skysportsplus: Finished extraction of url: ContentURLContainer [fileType=VIDEO, contentUrl=rtmp://62.212.72.193:1935/stream playpath=hhjkn?id=79220 swfurl=http://www.liveflash.tv/resources/scripts/eplayer.swf pageUrl=http://www.liveflash.tv live=1, thumbnailUrl=https://sites.google.com/site/serviiorss/ch9.png, expiresImmediately=true, cacheKey=SkysportsPlus_ch9_hhjkn?id=79220, live=true, ]

2013-02-03 09:19:29,489 DEBUG [TechnicalMetadataCacheDecorator] Stored technical metadata for online item 'SkysportsPlus_ch9_chchch756565' in the cache (online_technical_metadata), returning it

Comments (6)

  1. Petr Nejedly repo owner

    will have a look, but shouldn't you keep the same cache key for the same piece of content? That's the whole point.

  2. Former user Account Deleted

    This site has fixed channels and the streams change as new events start so the new streams which have different attributes need to be cached under the new key so that when the new stream is used again the lookup key will be correct and find a match. If it is cached under the old stream key the new stream key will not match when we go to play it.

  3. Petr Nejedly repo owner

    Ok, will fix this. Just to mention, this scenario with

    [FeedUpdaterThread] Cannot get information about the URL, it might have expired already. Trying again.
    

    only happens once, ie when ffmpeg -i the original URL fails, it tries just once to get the right one (also expiresImmediately has to equal to true). Not sure if that's enough for your plugin.

  4. Log in to comment