Newest 'ffmpeg' Questions - Stack Overflow

http://stackoverflow.com/questions/tagged/ffmpeg

Les articles publiés sur le site

  • ffmpeg - Output file does not contain any stream [migrated]

    2 octobre 2011, par Sandeep Chandy

    When I try to take Screenshots from an AVI file I get the above message with an empty jpg/png file. But Screenshots from MP4 files works with any problems.

    My OS is Debian.

    MP4 Command:

    ffmpeg  -itsoffset -4  -i test.mp4 -vcodec mjpeg -vframes 1 -an -f rawvideo -s 320x240 test.jpg
    

    AVI Command:

    ffmpeg  -itsoffset -4  -i test.avi -vcodec mjpeg -vframes 1 -an -f rawvideo -s 320x240 test.jpg
    
  • why is a sony .mts file so large ?

    1er octobre 2011, par Kejia

    I don't know much about multimedia knowledge. I know sony .mts file is a type of H.264 container. I use ffmpeg to dump my .mts file into a .mpeg file. Except the .mpeg file is shrunk around 5 times smaller in size than .mts, the ffmpeg dump information on both files is identical. I am confusing why .mts files have large size. What important features are lost by my conversion?

    Thanks!

    Kejia


    Thanks to all answers.

    I checked the output of both again and found that there is one different place: bitrate. Then I definitely lost quality. Now I adjust the bit rate in terms of the expectation to displaying equipment---yes, considering displaying equipments is necessary (an expert's advice): $ ffmpeg -b 9498k -i my.mts my.mpg. Another interesting option is -ab, audio bit rate.

  • Can I create a virtual webcam and stream data to it ?

    1er octobre 2011, par Brad Bahls

    I am looking to stream a video from ffmpeg to OpenCV (a video manipulation library) and I am stumped. My idea is to create a virtual webcam device and then stream a video from ffmpeg to this device and the device will in turn stream like a regular webcam. My motivation is for OpenCV. OpenCV can read in a video stream from a webcam and go along its merry way.

    But is this possible? I know there is software to create a virtual webcam, but can it accept a video stream (like from ffmpeg) and can it stream this video like a normal webcam? (I am working in a cygwin environment , if that is important)

  • error is coming lib-faac-dev not found

    30 septembre 2011, par Rahul Mehta

    i installed faac from here http://sourceforge.net/projects/faac/files/faac-src/faac-1.28/faac-1.28.tar.gz/ and then m running this command which is giving me this error basicall i want to install ffmpeg with audio conversion for libmp3lame , means with audio conversion.

    sudo apt-get install build-essential subversion git-core checkinstall yasm texi2html libfaac-dev libjack-jackd2-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libsdl1.2-dev libtheora-dev libvorbis-dev libvpx-dev libx11-dev libxfixes-dev libxvidcore-dev zlib1g-dev
    
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    E: Unable to locate package libfaac-dev
    

    following this article http://pasindudps.blogspot.com/2010/12/compiling-ffmpeg-in-ubuntu-1010.html

  • Why does ffmpeg never finish when converting a video from my web app ?

    30 septembre 2011, par Mike

    I am trying to convert a video when the user submits a form. It seems to convert ok but the file "is being used by another proccess" when I try to do anything with it. It looks like ffmpeg.exe never exits. My code is below is there anything I should be doing different to allow the process to release the file? If I run this manually it exits fine.

    internal class ConversionUtility : Utility
    {
        public void Convert(string videoFileName)
        {
            var video = new VideoFile(videoFileName);
    
            if (!video.infoGathered)
                GetVideoInfo(video);
    
            var Params = string.Format("-y -i \"{0}\" -coder ac -me_method full -me_range 16 -subq 5 -sc_threshold 40 -vcodec libx264 -cmp +chroma -partitions +parti4x4+partp8x8+partb8x8 -i_qfactor 0.71 -keyint_min 25 -b_strategy 1 -g 250 -r 20 \"{1}\"", video.Path, Path.ChangeExtension(videoFileName,".mp4"));
            //var Params = string.Format("-y -i \"{0}\" -acodec libfaac -ar 44100 -ab 96k -coder ac -me_method full -me_range 16 -subq 5 -sc_threshold 40 -vcodec libx264 -s 1280x544 -b 1600k -cmp +chroma -partitions +parti4x4+partp8x8+partb8x8 -i_qfactor 0.71 -keyint_min 25 -b_strategy 1 -g 250 -r 20 c:\\output3.mp4", video.Path, videoFileName);
            //var Params = String.Format(" {0} \"{1}\"",this.FFmpegLocation, video.Path);
    
            var threadStart = new ParameterizedThreadStart(del => RunProcess(Params));
            var thread = new Thread(threadStart);
            thread.Start();            
            //RunProcess(Params);
        }
    }
    
    internal class Utility
    {
        public string FFmpegLocation { get; set; }        
        private string WorkingPath { get { return Path.GetDirectoryName(FFmpegLocation); } }
    
        protected string RunProcess(string Parameters)
        {
            //create a process info
            var oInfo = new ProcessStartInfo(this.FFmpegLocation, Parameters)
            {
                UseShellExecute = false,
                CreateNoWindow = true,
                RedirectStandardOutput = true,
                RedirectStandardError = true
            };
    
            //Create the output and streamreader to get the output
            string output = null; StreamReader srOutput = null;
    
            //try the process
            try
            {
                //run the process
                Process proc = System.Diagnostics.Process.Start(oInfo);
    
                proc.WaitForExit();
                //if (!proc.WaitForExit(10000))
                //    proc.Kill();
    
    
                //get the output
                srOutput = proc.StandardError;
    
                //now put it in a string
                output = srOutput.ReadToEnd();
    
                proc.Close();
            }
            catch (Exception)
            {
                output = string.Empty;
            }
            finally
            {
                //now, if we succeded, close out the streamreader
                if (srOutput != null)
                {
                    srOutput.Close();
                    srOutput.Dispose();
                }
            }
            return output;
        }