Copy link to clipboard
Copied
I have some FLV videos that I can't get to work with RTMP streaming using the VOD app and Strobe player. They play just fine locally in VLC media player. They will also play correctly in the Strobe player if accessed with an HTTP request. When I try to stream using RTMP, playback appears to be normal and I can seek to any location in the video. However, playback will randomly stop at various points in the middle of the video. If I debug the player, I see that NetStreamTimeTrait is getting NetStreamCodes.NETSTREAM_PLAY_COMPLETE.
Can anyone tell me how I might fix the FLV file, or what steps I can follow to figure out why playback is stopping early?
These videos were captured using the Wowza DVR application, and I used an HDS capture utility to recompose the video into an FLV. The resulting FLV was missing the duration metadata, so I used "yamdi" to inject the missing metadata. I've also tried "flvfix" utilities with no effect.
Renaming to .mp4 extension as such won't work.. You will have to some tool to convert your FLV to mp4 videos.
Copy link to clipboard
Copied
Have you run FLVCheck on these files? Do they pass FLVCheck tests?
Copy link to clipboard
Copied
FLVCheck reports:
15517 | 0 | 68 | VIDEO | |
12-12-17 12:49:01 | Error: | -108 | Invalid video codec. | test.flv |
If I open the file in VLC player, It shows the video codec as:
H264 - MPEG-4 AVC (part10) (avc1)
This looks the same as other videos that play correctly. I also get this warning:
Warning: | -101 | Metadata field 'canSeekToEnd' is either missing or set to false | test.flv |
Copy link to clipboard
Copied
H264 is not supported codec for FLV format. FLV format for streaming via AMS supports only On2 and Soreson for Video and MP3/Nellymoser/Speex for Audio.
You need to have your H.264 content in Mp4 format. If you just change the extension to .mp4 and then run FLVCheck - does it still throw error.
Also i did not get what did you mean by "This looks the same as other videos that play correctly" - are you saying other files which fail FLVCheck are playing fine?
Copy link to clipboard
Copied
I tried renaming the video to .mp4 and FLVCheck returns:
12-12-17 09:43:31 | Error: -26 | File appears to be FLV with wrong extension. | test_md_fixed.mp4 |
The source of all videos in question is Flash Media Live Encoder which is set to use H.264. The videos that are failing were captured using Wowza's DVR app and then recomposed using KSV's AdobeHDS script.
I have other FMLE-sourced videos (also encoded with H.264) which I recorded using the Flash Media Server DVRCast application. These videos pass FLVcheck and play correctly.
Copy link to clipboard
Copied
Renaming to .mp4 extension as such won't work.. You will have to some tool to convert your FLV to mp4 videos.
Copy link to clipboard
Copied
Thanks for your help. After converting the videos to mp4, I am able to successfully stream them via RTMP with no interruption. I'm having trouble finding a command-line tool to accurately convert these files. I tried using ffmpeg and there is a noticable audio/video sync issue, and none of the suggested solutions (namely the -async and -vsync options) seem to help. Any suggestions? Handbrake seems to work well but there is no video passthrough option and I don't need to transcode the video.