RichFLV Updated

I couldn`t resist to rush out a new version (alpha 2.0) of RichFLV that adds some nice features.
I will be of to OFFF in Barcelona tomorrow and so i will not be able to work on this for a couple of days.
All this stuff is not tested in depth but seems to work fine. New features are:

– Keyframe visualisation:

The timeline is extended to show were keyframes are located. This is important to see were it makes sense to cut the flv.

– Keyframe precise cutting
If you drag the thumbs for cutting the flv they will automatically adjust to the timestamp of the nearest keyframe in the flv.
Before this it was possible to cut a flv even on intra frames which makes no sense (or does it?). Maybe i will make it an option to allow cutting again on videoframes that are no keyframes.

– Selecting Keyframes via Keyframe Datagrid:


If you select a keyframe in the datagrid the playhead will be set to that position in the flv.

– Export/Import Cuepoint Data with the FLVCoreCuepoints Format

You can now export/import cuepoint in the new Adobe FLVCoreCuepoints xml-format. This makes it easy to save settings and apply them to different flvs.

– Finally fixed the Google/Youtube onMetadata Bug

The problem with importing youtube flvs should be solved now. Everyone who had problems with that could you confirm that?

Again all this has not been tested in depths so this is kind of an experimental update.

Download it here: RichFLV_alpha2.0 !!! New Version Available See This Post !!!
BTW: If any Flex people are at OFFF and want to meet for a chat let my know.

Tweet about this on TwitterShare on FacebookShare on LinkedInShare on Google+Pin on Pinterest

11 thoughts on “RichFLV Updated

  1. Hi, great work on RichFLV, Thanks!

    Are you loading the flv ‘twice’ in some sense? (i’ve never played with appollo’s file access)… once for the byteArray, the other to preview the movie? I was assuming you couldn’t do a loader.loadBytes(flvBytes) because loader only supported a few formats. But I’m really hoping there is a way to do that. I’m simply trying to play a ‘bytearrayed’ FLV file.


  2. Hi Chris,
    you`re right the flv is loaded two times. Currently there is no clean way to pass the loaded bytes to a netStream like it`s possible with swfs and the loader component. There is however a workaround that i´m trying at the moment. I load the bytes and than create a swf in memory were i embed the flv. This is were the swf export option comes from. I will see how far i can get with this method and keep you updated.
    Loading bytes and pass them to the Video and Sound Object i my biggest wish for the next flash player update 😉

  3. indeed a rich project. The biggest probs go to flv merge implementation via as 3.0. I did some research some time ago, ho to accomplish this task. You said you relied only on your knowledge about the flv file specs, right ?
    So, i have absolutely no idea how to make the first steps. Maybe you could give some hint without smashing your maybe-commercial plans for the future ? Keep up the great work.

  4. Hi,

    Very great update, work on PC but not on mac UB or PPC 10.4.8 :(

    When I clic on open flv the app crash !

    same on 1.1 version

    Just a question it’s possible to add comments when you creat keyframe I think is good idea maybe ? :)


  5. Hey Chris,

    Nice! I’m loving RichFLV… just curious, is there any way to add custom keyframes to an FLV using an app like yours? I don’t mean a custom interval, I mean specify exactly WHERE certain keyframes are embedded.

    Is it even possible ? Well, if you are up to the challenge we have a pressing project that might need something of the sort. If you’d like to chat about it shoot me an email at



  6. Hey,I like it what you are doing with video’s and mp3’s.Can you help me in creating a Flv Player. I m having trouble with the rewind button. I am not able to solve it. I will send u the code in some time. If its possible can u send me urs where u are doing rewind and forward techinques. I have a HSlider which I am updating on a Timer basis. And on every tick I taking the current position and storing it. On click of the rewind button I am updating the current position and then giving that value to HSlider and also to VideoPlayer component. I am really stuck. Can u help me out.


  7. Hi,

    I like your program! One question: in AS3/AIR/Flex, how do you do to get the keyframe list from an flv file ?


  8. @Tirilil: I get the keyframes by analyzing the bytes of the flv byte for byte according to the flv specification.

  9. Thanks for this quick answer Benjamin. I’ve been working on an FLV player using Flex and AIR, and been annoyed by the strange results provided sometimes by the “seek” function, specially when you try to seek backwards… it makes sense when you know keyframes are involved and how it all works. It is a shame Flex/AIR does not provide a standard API for accessing the keyframe data so you could adjust seeking location to an acceptable value.

  10. @Tirilil: Yeah that`s right there is a lot space to imrove things in the API. However i think for the new H264 support you get keyframe information in the onMetadata event.

Leave a Reply

Your email address will not be published. Required fields are marked *