Trickplay and BIF Files

https://blog.roku.com/developer/channel … s-oct-2018
if I’m unable to generate BIF files can I just disable my trickplay progress bar and still pass certification?

For anyone searching in the future. I got word back from Partner Success it is mandatory to have a trickplay bar for your VOD content.

Thats weird because most channels do not have it. I had non hls channels that passed without it. Just watched Death Wish on PopcornFLix and none of theirs had it.

I imagine it all depends on when the app was posted. I know sometime at the end of march Bif files will be mandatory. Any apps published before that date won’t require it obviously.

“lylyahiko” wrote:
I imagine it all depends on when the app was posted. I know sometime at the end of march Bif files will be mandatory. Any apps published before that date won’t require it obviously.
Interesting, that is going to create a lot of work for developers as the creating of bif files is a slow process. I can not imagine the amount of time if one has over 100 files let alone thousands of files.
Thanks for the heads up.

It only takes about 5 seconds to make a bif file with a modern pc. - it can be entirely automated. Most of the time above 5 seconds required would be downloading the source video to extract the frame images if you don’t have a local copy.

“destruk” wrote:
It only takes about 5 seconds to make a bif file with a modern pc. - it can be entirely automated. Most of the time above 5 seconds required would be downloading the source video to extract the frame images if you don’t have a local copy.
WOW then Im doing something wrong. maybe amount of frames. Are you on a pc? Its weird because when i create thumbs using a third party app , youre right it is super fast but with the bif tool on a mac it was taking minutes per each video :confused:

I had submitted an entire package for windows to Roku about a year and a half ago to make available for users. I just don’t have the hosting space for it. The short solution is to download VirtualDub, use the resize filter to get your SD images at 240x180, change the framerate to ‘decimate by 240’ for 23.97 fps video, or 10 * the framerate, select File/Export Image Sequence - for a 2-hour movie on a current powerful pc that shouldn’t take more than 5-10 seconds, and then the biftool.exe file can combine all the images in a folder in less than a second into a valid bif file. Or you can custom-compile ffmpeg to do it as well, but it’s more complicated to get the codecs you want for inclusion. If you are going the virtualdub method there is a plugin available to add mp4 support, which you will need, just be sure to grab the older version as it is 2-3 times faster than the current one. FFInputDriver_64 - dated 5/26/2014 seems to work fastest for me. Virtualdub also has scripting support to automate from command line.

You’re only making maybe 500 or 600 images with 10-second intervals, so it shouldn’t be taking minutes unless you are trying to encode the source file again at the same time? I don’t know why it’s so slow there for you.

Hmm… I’m with norcaljohnny. I’ve only used ffmpeg to extract the images and it will take several minutes for a 2 hr. movie on a quad-core i7. VirtualDub must be an order of magnitude faster and then some.

-JT

Thanks! Downloaded. I’ll give it a try when I get a chance. I really only create BIFs for my own use and decided long ago that I really don’t see the value, but that may be because they took so much effort/time to create. If they’re easy enough and fast enough to create I may start using them for my WTV recordings (repackaged into MKVs) to more easily get past the commercials.

-JT

@destruk , I tried following your readme file, but I’m doing something wrong. The script runs completely and seems to work, but the BIF files end up 1KB and are empty. I didn’t have a problem generating the BIF manually following the notes in one of the comments above. Any idea what I may need to change in the makebif.bat?

Remove spaces from your filename or add quotes around the filename. a 1KB bif file means the header is there but no images.

@destruk , that didn’t work.

I think the error is in this script line: VirtualDub.Open(VirtualDub.params[0],“”,0);

Here’s the error the CLI reports: Error during script execution at line 1, column 37: string is not an integer number

fre=Sylia.Atoi(VirtualDub.params[2])<!>*10;

Yeah, if your video framerate is something ‘special’ then you correct it in makebif.bat as the frame decimation only works if the framerate in the routine is set to an integer.
if “%myvar%”==“23.894” (set myvar=24)
if “%myvar%”==“23.976” (set myvar=24)
if “%myvar%”==“29.970” (set myvar=30)

What funky framerate are you trying to use?

My video frame rate is 29.97.

That is in the batch file already - you have mediainfo in your path creating the file to set the variable? You can still create bif files with virtualdub manually if you can’t seem to get the batch file to work on your system anyway.

What if you, on your system, add a line after the
if “%myvar%”==“23.894” (set myvar=24)
if “%myvar%”==“23.976” (set myvar=24)
if “%myvar%”==“29.970” (set myvar=30)

set myvar=30

To force it to 30, and see if that works, or maybe add if “%myvar%”==“29.97” (set myvar=30) to account for a slightly different handling on your install? I don’t think I’ll be able to go over every single thing that could be wrong, but those were just ideas.[/font]

I think that did the trick! Thanks for your help.

@destruk Is it possible to run your batch file on an entire folder? Or create a batch file that invokes your script for x number of files?

I tried the latter and the process ends after only one file.