Flowplayer: how to convert m2v file to mp4 and make it streaming-able - macos

I have serious problem to identify my problem, so I'll describe it.
I'm storing mp4 files on Azure Blob Storage and displaying them with Flowplayer 3.2.11, unfortunately some of my videos doesn't stream but waiting for total download before the start (the same as in this topic).
I tried some programs and only QuickTime Player prepared the correct file, unfortunately it doesn't allow to change more advanced setting of the output file. Also I tried Macroplant Adapter, however created file doesn't stream.
In every test I used H.264 codec and when checking the details of the created files in different programs they looks exactly (or almost exactly) the same.
So the final question is: is that something obvious I've missed or I need to test another programs (and which do you recommend?)

After two days of searching and writing the question... I found an answer :) funny
With the release of the Flash Player 9 Update that supports H.264, we can now play a subset of H.264 movie files. The problem is most of the H.264 files have the index at the end of the file which for progressive download means you have to download the whole file before you can start watching any of the video.
There is also an Air application - QTIndexSwapper written by Renaun Erickson which fixes the problem. That works!

Related

Is there a way to associate an entire class of files with an application on Windows?

I have a vanilla Windows 10 installation -- there aren't any third party video players of any kind, there is only Windows Media Player and the new Movies app. I have verified to be unable to play back, say, WebM (video) files.
However, I do have .webm Registry key under the HKEY_LOCAL_MACHINE\Software\Classes key, with ContentType value of "video/webm" and PerceivedType value of "video". It's a similar situation with the other novel extensions there too, like .webp and .mkv, and others. I don't know why it's there and what created these keys.
That makes me at least believe that Windows should be capable to classify different video containers into a some sort of "video" class of files, given how it at least theoretically knows these are "video/" major MIME type each and the fact that they share the same "perceived type".
Is there a way then for me to associate all such video files with my application, without explicitly creating one association for every known video format? I want to benefit, if possible, from the kind of classification I think Windows might be able to do.
Thing is, my application doesn't explicitly support or reject individual video container formats like WebM (.webm extension) or MPEG-4 (.mp4 extension), or any other -- it passes the file for playback to DirectShow, which in turn by design relies on installed filters to try and play back media files. Since these filters can be installed separately from my application, I don't see how I can reliably maintain a by-file-type association. I'd rather delegate this to whatever Windows subsystem created the .webm key under HKEY_LOCAL_MACHINE\Software\Classes key in the first place. Perhaps Microsoft updates these as part of Windows Update?
If I could associate whatever Windows considers video files, however it does so, with my application, per entire class that is video files, at least I could allow the user to attempt to play back whatever they throw at my application, by virtue of it being available in the context menu if Windows thinks it's a media file. Certainly, this is no worse than the old situation where Windows Media Player typically registers itself with a number of media container formats and still is unable to play every file of every supported format because of missing codecs. At least I won't have to update my application every time a new video format comes out.
I do not think it is possible to make it the way you want and there are objective reasons for this.
First, shell association process starts from extension to application mapping and this is a well defined process without classes of files built on top of set of extensions.
Second, there is no such thing as "video files" in first place. .mp4 and .webm are not exactly video files, because, in particular, they can hold just audio tracks and so be audio files. Media APIs start reading the files with examining container format details, identification of tracks and announcing track/stream availability for peer APIs such as codecs. That is, "video files" is not a very strict definition in first place.
Third, media APIs such as DirectShow and Media Foundation do not use shell association when playback is in question. Shell association and HKEY_CLASSES_ROOT is only in use when it comes to choosing handler application. APIs define their own method to build a pipeline for a given file, and their have their own separate collection of extension defined handlers. Then these APIs are capable to identify format of files with "wrong" extension by looking into payload data itself: if you rename .wav to .avi, the file would remain playable even though formats are different.
That is, if you want to identify a video file in your application without thinking too much about file format, why not just use one of the mentioned media APIs and open the file. If you can see through the API that the file exposes a video track then it is a video file. Even though I don't think I grasped the detail why you need to filter out video files exactly, I would probably recommend this approach.
You could probably also use shell property handlers - PSLookupPropertyHandlerCLSID and friends - to check if a file is a media file. Video file would report one of video related properties such as PKEY_Video_FrameWidth.
Then if you just need an approximate guess whether the file is a video file, you could possibly check extension against HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\KindMap list.
Another quick method to check if it might be a video file is to check extension against API specific association list such as this HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Media Foundation\ByteStreamHandlers. It is similar to using Media Foundation API I mentioned above but without actually using it. This registry key is where extensions are associated with API specific primitives, as opposed to shell extension associations.

Stream and control a playlist to RTMP

I'm currently trying to stream a playlist of files from ffmpeg to an RTMP server.
I've managed to get a single file to be streamed correctly, and (I think) a playlist by using:
"concat:file1.pm4|file2.mp4|file3.mp4"
I then tried to use the concatenation method from a txt file they explain here:
https://trac.ffmpeg.org/wiki/Concatenate
And was able to get it to work. However I seem to have some problems with controlling it. For example, I have no idea if it is possible to tell ffmpeg to skip this file and play the next one in the list, or to pause the stream at all. I already tested editing the txt file while it is streaming, but that didn't seem to affect what was already streaming at all.
Any idea how I can control my stream from the console? My end goal would be to make the control into a full web interface later, but I'm not even sure if ffmpeg is my best option to do this.
Any help with ffmpeg or any other options to do this would be greatly appreciated.

How to view a .ssf file (cctv video footage) on a Mac

Ive searched everywhere online and cant seem to find a video player for mac that supports .ssf files. I've tried Itunes and VLC but nothing.
Any help would be appreciated
I was also looking for a program that could read ssf files. I know your post is several months old, but it did show as a Google search results, so I thought I would share the application that I found for the benefit of other folks who might see your original post.
I have placed an ssf player on my google drive, so others can download it. It came with my DVR card. The file name is SSF_STL_Stream_Format_CCTV_camera_video_player.zip. The download link
Check the file headers in a text editor (like notepad) to see if you can work out what type of encoding it uses. Most of the CCTV PVR manufacturers have their own player software so see if you can work out which type it came from and if there is an associated player.
VLC will play most any type of encoding but these CCTV types are often optimised for quality/file size and may use custom types. You can manually select the type of encoding when you try to open a file in VLC but it normally does a fair guess by itself.
Best of luck!

make several video files into stream in windows

I have several video files saved in hard disk and they belongs to a whole video. To play them without gap between openning different video files, i have to think of an strategy of making this files a stream.
Someone suggest me to use pipes in windows but since the pipe file can't be seen, i am not able to play them anyway.
The other idea is to send the file into some kind of localhost, then i can read it from predefined url using the video player which supports this. But i am not sure how to do this..
Any suggestion would be great! Thanks in advance.
You probably want to use ffmpeg to concatenate the files together into one file:
http://www.ffmpeg.org/faq.html#How-can-I-concatenate-video-files_003f
http://ulyssesonline.com/2009/12/03/concatenate-video-files-using-ffmpeg/
https://ffmpeg.org/trac/ffmpeg/wiki/How%20to%20concatenate%20%28join%2C%20merge%29%20media%20files

How to create video form the still image with music and Text on the images

I am looking for the open source or paid tools which help me to create a movie from the still image and music. I also want to put some text on the images.
My main concern is the video quality. I need a high quality video as output.
Can anyone please give me some suggestion.
I also want to know that, can we achieve this with the help of ffmpeg?
I am not interested for GUI tools, I am mainly looking for some API or service which takes input as images,texts,audio and gives output as a video.
OS does not matters. I can go with any os windows or linux.
The quality of the video should High.
Thanks in advance.
Since you don't tell us which OS you're using you make it difficult. This is possible with ffmpeg, the output quality depends on your input quality and the output format/codec you choose. Google has lots of ffmpeg tutorials.
Openshot is a great GUI based video editor for Linux and also available for Windows and Mac. Your task would be trivial to achieve using Openshot.

Resources