Giter Club home page Giter Club logo

ffms2's Introduction

Build Status

FFmpegSource (usually known as FFMS or FFMS2) is a cross-platform wrapper library around FFmpeg. It gives you an easy, convenient way to say "open and decompress this media file for me, I don't care how you do it" and get frame- and sample-accurate access (usually), without having to bother with the sometimes less than straightforward and less than perfectly documented FFmpeg API.

The library is written in C++, but the public API is pure C, so if you can link to a C library, you can use FFMS2. The source is available under the MIT license, but the license of the binaries depends on how FFmpeg was compiled. There are optional components that require a GPL FFmpeg, and if those are compiled in FFMS2 itself becomes covered by the GPL as well. The official Windows builds are GPLv3 for this reason.

For more information on using the library, see the API documentation and the changelog.

Avisynth and VapourSynth plugin

For the end user, the most visible use of FFMS is the implementation of both an Avisynth and a VapourSynth source plugin that uses the FFMS library to open media files. This plugin is a part of the FFMS2 project and is available for download here; for documentation see the Avisynth user guide.

Features

In addition to being able to open almost any common audio or video format, the Avisynth plugin has a number of more or less unique properties that other Avisynth source filters lack:

  • It is the only source filter that has support for Unicode filenames that are not representable in the system codepage.
  • It is the only source filter that has proper variable framerate (VFR) support.
  • It is the only general-purpose (i.e. not restricted to one or a few formats) source filter that will work reliably when running Avisynth under Wine.
  • It is the only general-purpose source filter that does not rely on external decoders.
  • It is (probably) the only source filter that supports mid-stream video resolution switches.

Versions and variants

If you're confused by all the different variants, here's a small explanation:

  • Vanilla (no suffix): standard 32-bit version. If you don't know what you want, you want this.
  • -x64: 64-bit version; mostly for use with 64-bit Avisynth.
  • -avs-cplugin: Variant of the Avisynth plugin written in C. Primary purpose is to get access to the new colorspaces available in Avisynth 2.6.
  • SDK: software developer's kit, for people who want to develop Windows applications that use FFMS2, using Microsoft Visual Studio 2008 or later.

Packages marked rNUMBER are testing builds made in-between releases. Download them if you need some bleeding-edge feature or just want to test out the upcoming version. Do note that they may be less stable than the official release versions.

Why is it called FFmpegSource, that makes no sense at all!?!

FFMS originated as an Avisynth file reader plugin, and those are traditionally called FooSource, where Foo usually is the method used to open the file. For historical reasons the entire project is still called FFmpegSource, although these days the name is pretty misleading and makes people think it has something to do with FFmpeg's source code or somesuch. To avoid confusion, it's probably better to refer to the library as FFMS (2, since version 1 was only an Avisynth plugin...) and keep the FFmpegSource name for the Avisynth plugin.

ffms2's People

Contributors

arch1t3cht avatar asd-g avatar dwbuiten avatar inkydragon avatar jeeb avatar joycebrum avatar kblomster avatar kemuri-9 avatar kodawah avatar lotharkript avatar mitya57 avatar myrsloik avatar nixxquality avatar quietvoid avatar qyot27 avatar rzumer avatar seiya-git avatar slajar avatar tgoyne avatar theryuu avatar tophf avatar wiiaboo avatar xenoveritas avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ffms2's Issues

'UINT64_C' was not declared in this scope

From yxmline on May 02, 2010 05:28:36

Configuration information there is detailed information in the info.txt

In file included from D:/WinLinux/Minsys/local/include/libavutil/
avutil.h:81,
from D:/WinLinux/Minsys/local/include/libavcodec/
avcodec.h:30,
from D:/WinLinux/Minsys/local/include/libavformat/
avformat.h:56
,
from src/core/audiosource.h:25,
from src/core/audiosource.cpp:21:
D:/WinLinux/Minsys/local/include/libavutil/common.h: In function 'int32_t
av_clipl_int32(int64_t)':
D:/WinLinux/Minsys/local/include/libavutil/common.h:154: error: 'UINT64_C'
was not declared in this scope
make: *** [src/core/audiosource.lo] Error 1

Attachment: info.txt

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=11

video track is unseekable: MP4 with multiple stts entries

From luzifer42 on May 18, 2010 07:11:39

What steps will reproduce the problem? ---------------------------

  1. An MP4 file with an video track which has multiple stts entries with
    differents durations.
  2. AVS File: ffvideosource("file.mp4")

output:

"video track is unseekable" is displayed.

Environment:

ffms2- r292 .7z on WindowsXP and Windows 2003

Additional information:

Workaround 1: seekmode=-1
This helps to view the video with a play, but it is not a good solution, as
some encoders seek, and will fail therefore.

Workaround 2: merge all stts entries, and calculate an average duration
This make the video seekable again, but the problem is that the video is no
more playing at the original speed, and produces audio sync issues. (This
can be achieved by extracting all tracks, and muxing the back with mp4box.
mp4box assumes a constant frame rate-> constant sample duration-> one stts
entry)

This might be an FFmpeg issue, i dont know exactly at the moment.

The mp4 with this issue was create with "Adobe Flash Media Live Encoder 3"
(using the adobe f4pp tool to convert from f4v to mp4)

Attachment: mutiStts.mp4

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=13

FFms2 detects fps wrongly (lavf?)

From wiiaboo on January 08, 2010 18:01:36

What steps will reproduce the problem? 1. ffvideosource on 24000/1001 fps mkv What is the expected output? What do you see instead? Expected 24000/1001 fps, get 1000000/41708 fps. What version of the product are you using? On what operating system? Both r234 and r257 on Windows 7 64-bit. Please provide any additional information below. Tried with BD m2ts remuxed to mkv and mkvs done with Haali Muxer and MkvMerge.
If the .264 from the m2ts is instead remuxed to an MP4 with Yamb/MP4Box,
24000/1001 fps is detected correctly.

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=5

Audio distorted with XDCAM HD playback 24bit audio

From eyeperfect on November 05, 2010 07:10:04

What steps will reproduce the problem? 1. Create Avisynth file
LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\ffmpegsource-2.14-mt\ffms2.dll")

LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\FFmpegSource-1.21\FFMpegSource.dll")

source="\kv1.medialaan.vmma.be\KV1ToAvid\C0044.mxf"

volgend werkt!

FFIndex(source,cachefile = source + ".ffindex", errorhandling=1)

vid = FFVideoSource(source,cache=true,seekmode=1,cachefile=source +".ffindex")
snd = FFAudioSource(source,cache=true,cachefile=source + ".ffindex")

stereo = GetChannel(snd, 1)

a1 = audiodub(vid, stereo)

a2 = Subtitle(a1, "hier is mijn ondertitel", first_frame=25, last_frame=100, align=5, y=560, font="Arial", size=35, text_color=$eeeeee)

a3 = ShowSMPTE(a2, offset="01:00:00:00", x=160, y=76, font="Arial", size=29,text_color=$14942E)

return a2

  1. Playback with graphedt
  2. Sound is distorted What is the expected output? What do you see instead? You hear bad sound What version of the product are you using? On what operating system? Avisynth 2.5, ffmpegsource 2.14

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=31

ffms2 issue causes a crash near the end

From josecore.jgj on February 16, 2011 05:46:31

What steps will reproduce the problem? 1. Extract the h264 stream from a m2ts Blu-ray source to an mkv file.
2. Create AVS: "ffvideosource("shikiextra01.mkv",fpsnum=24000,fpsden=1001)"
3a. Encode the file using avs2yuv. A few frames to the end avs2yuv crashes, and x264 countinues with the remaining frames extremely quickly until it finishes.
3b. Encode the file using VirtualDub with codec Huffyuv. A few frames to the end VirtualDub crashes. What is the expected output? What do you see instead? I expected an output of 3251 frames, and I get one of 3247 frames. What version of the product are you using? On what operating system? Using ffms2 2.15-mt in Windows Vista x64. With ffms2 2.14-mt the problem don't occur. Please provide any additional information below. If I try to open the corrupted Huffyuv AVI file with vdub, I get these warnings:
[!] AVI: Index not found or damaged -- reconstructing via file scan.
[!] AVI: Invalid chunk detected at 1199713928. Enabling aggressive recovery mode.
[!] AVI: Keyframe flag reconstruction was not specified in open options and the video stream is not a known keyframe-only type. Seeking in the video stream may be extremely slow.

This is the mkv of the issue (551 MB): http://www.megaupload.com/?d=4TKJLDN8

Attachment: vdubcrashinfo.txt

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=41

msys+mingw Compile Error

From yxmline on July 21, 2011 03:50:55

What steps will reproduce the problem? 1.ffmpeg configure
./configure --enable-gpl --enable-version3 --enable-nonfree --enable-postproc --arch=x86 --cpu=i686 --enable-w32threads --enable-runtime-cpudetect --enable-hardcoded-tables --enable-memalign-hack --enable-avisynth --enable-bzlib --enable-zlib
2.Compile Error
3.ffmpeg is git://git.videolan.org/ffmpeg.git What is the expected output? What do you see instead? What version of the product are you using? On what operating system? windows 7 x86 msys+mingw Please provide any additional information below. ./bin/sh ./libtool --tag=CXX --mode=link /bin/sh /usr/temp/ffmpegsource/shave/sha
ve cxx g++ -O3 -o src/index/ffmsindex.exe src/index/ffmsindex.o src/core/libffms
2.la -lole32 --shave-mode=link
libtool: link: /bin/sh /usr/temp/ffmpegsource/shave/shave cxx g++ -O3 -o src/ind
ex/ffmsindex.exe src/index/ffmsindex.o --shave-mode=link src/core/.libs/libffms
2.a -lavformat -lavcodec -lavicap32 -lws2_32 -lavifil32 -lbz2 -lpsapi -lswscale
-lpostproc -lavutil -lz -lole32
g++ -O3 -o src/index/ffmsindex.exe src/index/ffmsindex.o src/core/.libs/libffms2
.a -lavformat -lavcodec -lavicap32 -lws2_32 -lavifil32 -lbz2 -lpsapi -lswscale -
lpostproc -lavutil -lz -lole32
src/core/.libs/libffms2.a(videosource.o):videosource.cpp:(.text+0x63c): undefine
d reference to `GetNumberOfLogicalCPUs()'
collect2: ld returned 1 exit status
make: *** [src/index/ffmsindex.exe] Error 1

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=49

GetAudio - Start value problem

From maxim.winckelmans on March 09, 2011 06:31:38

What steps will reproduce the problem? 1. Calling GetAudio with a start-value that's +- 50.000 samples further then last read sample. I receive an accesviolationexception.
But when I read the audio sequentially (starting from zero until desired sample) there is no problem. What version of the product are you using? On what operating system? I'm running 64bit code.

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=42

Incorrect index

From lukillas.ole on August 09, 2010 06:59:29

What steps will reproduce the problem? 1. Make script, command ffmpegsource2("Root/filename.mp4")
2. Load in virtualdub 1.9.9, move slice bar for explore frames.

The purpose of the use of this command is to load the encoded file is to create an archive of chapters in matroska. So, file chapter would be divided for example in (Opening, Episode, Ending, Preview). Then locate the last frame of each chapter, and take time to insert the subtitles in matroska maker. When you build the matroska file and check if the creation of captions is correct, it appears that it is not because frames are introduced in the previous chapter, chapter displayed.

However, I used the filter DirectShowSource, and the times that generated in virtualdub I have used in the creation of Matroska file and to observe, frames of previous chapters, chapter displayed in mpc (for example). Although failure DirectShowSource also gives a different time code, since several previews should not index correctly. What version of the product are you using? On what operating system? Last version ffmpegsource, avisynth 2.60, OS WIn7 x64, Virtualdub 1.9.9 and Megui 3.5.0 Please provide any additional information below.

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=21

ffmpegsource compilation error

From yxmline on June 05, 2011 22:36:54

What steps will reproduce the problem? 1. 2. ffmpegsource compilation error 3. What is the expected output? What do you see instead? LINK src/index/ffmsindex.exe
src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x206): undefined reference to std:: basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::c har_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char cons t*, int)' src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x230): undefined reference tostd::
basic_ostream<char, std::char_traits >& std::_ostream_insert<char, std::c
har_traits >(std::basic_ostream<char, std::char_traits >&, char cons
t
, int)'
src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x67c): undefined reference to std:: basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::c har_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char cons t_, int)' src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x698): undefined reference to std::
basic_ostream<char, std::char_traits >& std::__ostream_insert<char, std::c
har_traits >(std::basic_ostream<char, std::char_traits >&, char cons
t*, int)'
src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x6b6): undefined reference tostd:: basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::c har_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char cons t_, int)' src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x6fc): more undefined references to std::basic_ostream<char, std::char_traits >& std::_ostream_insert<char,
std::char_traits >(std::basic_ostream<char, std::char_traits >&, cha
r const
, int)' follow
src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x87a): undefined reference to std:: ctype<char>::_M_widen_init() const' src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x8aa): undefined reference tostd::
ctype::_M_widen_init() const'
src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x8fb): undefined reference to std:: basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::c har_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char cons t*, int)' src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x980): undefined reference tostd::
basic_ostream<char, std::char_traits >& std::_ostream_insert<char, std::c
har_traits >(std::basic_ostream<char, std::char_traits >&, char cons
t
, int)'
src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x9f8): undefined reference to std:: basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::c har_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char cons t_, int)' src/index/ffmsindex.o:ffmsindex.cpp:(.text+0xaae): undefined reference to std::
basic_ostream<char, std::char_traits >& std::__ostream_insert<char, std::c
har_traits >(std::basic_ostream<char, std::char_traits >&, char cons
t*, int)'
src/index/ffmsindex.o:ffmsindex.cpp:(.text+0xb87): undefined reference tostd:: basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::c har_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char cons t_, int)' src/index/ffmsindex.o:ffmsindex.cpp:(.text+0xc08): more undefined references to std::basic_ostream<char, std::char_traits >& std::_ostream_insert<char,
std::char_traits >(std::basic_ostream<char, std::char_traits >&, cha
r const
, int)' follow
src/index/ffmsindex.o:ffmsindex.cpp:(.text+0xc1f): undefined reference to std:: ctype<char>::_M_widen_init() const' src/index/ffmsindex.o:ffmsindex.cpp:(.text+0xc4c): undefined reference tostd::
ctype::_M_widen_init() const'
src/index/ffmsindex.o:ffmsindex.cpp:(.text+0xd1a): undefined reference to std:: ctype<char>::_M_widen_init() const' src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x13de): undefined reference tostd:
:basic_ostream<char, std::char_traits >& std::_ostream_insert<char, std::
char_traits >(std::basic_ostream<char, std::char_traits >&, char con
st
, int)'
src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x14e3): undefined reference to std: :ctype<char>::_M_widen_init() const' src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x15d4): undefined reference tostd:
:basic_ostream<char, std::char_traits >& std::_ostream_insert<char, std::
char_traits >(std::basic_ostream<char, std::char_traits >&, char con
st
, int)'
src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x1612): undefined reference to std: :basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std:: char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char con st*, int)' src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x16e0): undefined reference tostd:
:ctype::_M_widen_init() const'
src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x17fd): undefined reference to std: :basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std:: char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char con st*, int)' src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x186c): undefined reference tostd:
:basic_ostream<char, std::char_traits >& std::_ostream_insert<char, std::
char_traits >(std::basic_ostream<char, std::char_traits >&, char con
st
, int)'
src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x18de): undefined reference to std: :basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std:: char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char con st_, int)' src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x19a6): undefined reference to std:
:basic_ostream<char, std::char_traits >& std::__ostream_insert<char, std::
char_traits >(std::basic_ostream<char, std::char_traits >&, char con
st*, int)'
src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x1a18): undefined reference tostd: :basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std:: char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char con st_, int)' src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x1a8a): more undefined references to std::basic_ostream<char, std::char_traits >& std::_ostream_insert<char,
std::char_traits >(std::basic_ostream<char, std::char_traits >&, ch
ar const
, int)' follow
src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x1e64): undefined reference to std: :ctype<char>::_M_widen_init() const' src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x1e94): undefined reference tostd:
:ctype::_M_widen_init() const'
src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x1f15): undefined reference to std: :ctype<char>::_M_widen_init() const' src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x1f4a): undefined reference tostd:
:ctype::_M_widen_init() const'
src/index/ffmsindex.o:ffmsindex.cpp:(.text+0x1f7f): undefined reference to `std:...

Attachment: ffmpegdiff.7z ffms.txt

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=45

Implement support for mid-stream audio channel configuration changes

From kalle.blomster on August 20, 2010 07:46:16

Currently we support video streams that switch resolutions (can happen in broadcast television, among other things), but there's no similar support for changing audio channel configurations. ffmpeg seems to support it, at least with some codecs, so we should as well.

Some consideration on how to handle this on the API level must be done.

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=22

Fix unaligned decode buffers

From [email protected] on June 24, 2010 07:12:39

Attached patch fixes the alignment of decode buffers, as discussed already on IRC. ffmpeg needs output buffers to be aligned with certain optimizations (i.e. SSE2), but memory allocation on some operating systems isn't aligned properly for that by default (in the SSE2 case, 16 byte alignment is required).

Similar to the fix in Aegisub, but more C++-ish.

Attachment: ffms-align.patch

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=17

Some MP4 files aren't indexed correctly.

From hammered999 on September 30, 2010 14:43:00

I am using FFMS- r342 and ffmpeg-mt (git:480a82da7912bc5034a4b0bc2090879920567521). I have built it myself without Haali support.

I was trying to open an anime file but something odd was happening. The resulting duration in MPC is ~11min (instead of ~20). More over, the first frames played are actually towards the end of the file. :S Also the file plays for a few seconds and then the image freezes.

Steps to reproduce:

  1. Download this anime episode-> http://www.takafansubs.com/torrents/&#37;5BTaka&#37;5D_Naruto_Shippuuden_172_&#37;5B480p&#37;5D&#37;5B5F97A249&#37;5D.mp4.torrent 2. Create a simple AVS with FFVideoSource(path)
  2. Open in MPC and observe the above problems.

Note: I have tested other files from this fansub group and most of them are indexed correctly, but I have come across ~5 that show the same problem.

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=28

x264 crash with ffms2 ffms2-r494.7z

From songcmlab on July 21, 2011 08:48:20

What steps will reproduce the problem? 1.open a vfr files by following script:
ffmpegsource2("vfr.mp4",atrack=-1, fpsnum=15, fpsden=1,colorspace="YV12",cache=false)
2.using x264 to convert the video open by above avs script What is the expected output? What do you see instead? x264 always crash at [0.x%] What version of the product are you using? On what operating system? 1. using K-Lite_Codec_Pack_720_Mega.exe codec packages
2. ffmpegsource-2.15 also crash at the near end of process [9x.x%] Please provide any additional information below.

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=50

FFAudioSource doesn't like lossless formats

From wiiaboo on April 06, 2010 19:54:51

What steps will reproduce the problem? 1. Convert .wav to .flac, .wv, .tta, even muxing them to .mka
2. FFAudioSource() on the resulting files
3. On those that work, use Bit Compare plugin in Foobar2000 What is the expected output? What do you see instead? Expected output is bit-exact decoding.
In some, it doesn't work at all (.flac and .tta inside .mka). On the ones
that do work, it isn't bit-exact, except in one single case. What version of the product are you using? On what operating system? Avisynth 2.5.8; FFMS2 r309 (mod16.org); MkvToolNix 3.3.0; Foobar2000 1.0.2
beta 1
Windows 7 64-bit Please provide any additional information below. .flac = Error "Invalid initial pts and dts"
.tta in .mka = Error "Could not open audio codec"

.flac in .mka = Differences found: 1965 sample(s), starting at 0.0000000
second(s), peak: 0.0014343 at 0.0006042 second(s), 1ch
.tta = Differences found: 932551 sample(s), starting at 1.0448958
second(s), peak: 0.5542603 at 4.6865208 second(s), 1ch
.wv = Differences found: 936851 sample(s), starting at 1.0000000 second(s),
peak: 0.6018066 at 8.0636042 second(s), 1ch

.wv in .mka = No differences in decoded data found.

Also tested input with uncompressed data:
.wav, .w64, .wav in .mka = No differences in decoded data found.

.avs used in testing: http://pastebin.com/vmJZ0vEK Video: http://fdp.fansubban.org/rand/ffaudio/extra.mkv (737KB)
Trimmed Video: http://fdp.fansubban.org/rand/ffaudio/extra-trimmed.mkv (65,4KB)
Audio: http://fdp.fansubban.org/rand/ffaudio/extra.wv (8,96MB)

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=10

Incorrect frame rate detected with certain blu-ray transport streams

From jeebjp on October 01, 2010 06:20:49

What steps will reproduce the problem? 1. Grab a build of x264 with ffms input.
2. Use x264 with ffms input on a m2ts file from a blu-ray that should have a frame rate of 24000/1001.
3. See the frame rate being shown as 1846/77 fps. What is the expected output? What do you see instead? Expected output would be 24000/1001 or whatever it can be minimized to. I see 1846/77. 1846/77 and 24000/1001 are not the same. What version of the product are you using? On what operating system? revision 342 , ffmpeg git-76393d0 via x264 1732 with L-SMASH (the patched 1732 build on http://x264.fushizen.eu ). Please provide any additional information below. Sample: http://www.mediafire.com/?axh4ho5m35bimga

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=29

Wrong timecode output with matroska and 23.976fps CFR file.

From hammered999 on January 30, 2010 14:31:53

What steps will reproduce the problem? I opened an avi file through ffms which contained a 23.976fps video stream.
The resulting timecode file was CORRECT. I then opened and remuxed this
file through mkvtoolnix into an mkv. I opened the resulting mkv with ffms.
The resulting timecode were WRONG. I converted them to v1 format and I saw
that ffms sees 2 kinds of fps's "23.809524" and "24.390244" interchangeably. What is the expected output? What do you see instead? The resulting timecode file should have only one fps(23.976) What version of the product are you using? On what operating system? I build it from svn. I am using r274 . Please provide any additional information below.

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=8

Trunk lavfindexer.cpp compile fails on Ubuntu Karmic

From wiiaboo on December 25, 2009 17:15:56

What steps will reproduce the problem? 1. cmake . && make What is the expected output? What do you see instead? Normal compilation. Failed compilation. What version of the product are you using? On what operating system? r252 on Ubuntu Karmic x86 (also fails on x86-64) Please provide any additional information below.

Attachment: log.gz

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=4

Fix avisynth plugin documentation

From macheppalle on April 21, 2011 08:02:06

I see into avisynth plugin docs, about post processing filter:

[snip]
de default hb:a,vb:a,dr:a
fa fast h1:a,v1:a,dr:a
ac ha:a:128:7,va:a,dr:a
tn tmpnoise (3 threshold) temporal noise reducer
1. <= 2. <= 3. larger -> stronger filtering
[snip]
well, the ac' setting is the only one with no long description. Does it stand foraccurate'?
Can you add some tips in order to make the post processing filter provide high quality renderings (regardless of cpu usage)?
Thank you.

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=44

ffmsindex.exe -c fails (invalid file name)

From chdheu on July 26, 2010 17:45:36

The command

ffmsindex.exe -c example.mov

fails with the error message

Failed to write timecodes file example_G.mov.ffindex_track00?.tc.txt:
Failed to open 'example.mov.ffindex_track00?.tc.txt' for writing

The "?" character in the file name stems from an uninitialized variable and is 0x18 in my case.

Source code patch for ffmsindex.cpp at line 199:

old: snprintf(tn, 2, "%02d", t);
new: snprintf(tn, 3, "%02d", t);

Binary patch for ffmsindex.exe (ffms2-mt- r318 .7z) at file offset 0x193C:

old: 02
new: 03

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=19

r409 regression error: make errors out (Ubuntu 10.10)

From oilblue on January 10, 2011 11:11:07

What steps will reproduce the problem? 1. http://ffmpegsource.googlecode.com/svn/trunk/ ffmpegsource-read-only
2. ./configure
3. make What is the expected output? What do you see instead? Expected:
no errors (successful make)

Instead:
src/core/utils.cpp: In function 'SwsContext* GetSwsContext(int, int, PixelFormat, int, int, PixelFormat, int64_t, int)':
src/core/utils.cpp:158: error: 'av_set_int' was not declared in this scope
make: *** [src/core/utils.lo] Error 1 What version of the product are you using? On what operating system? r409 on Ubuntu 10.10 (64bit) Please provide any additional information below. r409 changed utils.cpp, so not a surprise that checkout -r 408 works ok

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=38

wrong fps detection in rev325

From konijntjepluis on August 23, 2010 12:49:29

What steps will reproduce the problem? 1. Compare mediainfo fps against ffms2 rev325 fps output
2. or compare the correct fps output of rev318 against the faulty fps in rev325 What is the expected output? What do you see instead? v3.25 reports 23.9091908091908 FPS
v3.18 reports 23.976 FPS (which is correct) What version of the product are you using? On what operating system? rev 3.25 Please provide any additional information below. v3.25 reports 23.9091908091908 FPS
v3.18 reports 23.976 FPS (which is correct)

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=26

Missing audio on VirtualDub play-pause-play cycle

From [email protected] on January 21, 2010 08:36:27

What steps will reproduce the problem? 1. Grab any VirtualDub version
2. Create an AVS script where the audio comes from FFAudioSource()
3. Open the script in VirtualDub
4. Play some, then pause, then without seeking play again What is the expected output? What do you see instead? Audio should be fine. However after resuming playback, there's no audio (silence) during
half a second or so. After that audio resumes normally. What version of the product are you using? On what operating system? Tested with 2.12 and some newer test builds too ( r257 I think) Please provide any additional information below. This does not happen with other audio providers such as WAVSource or DirectShowSource.

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=7

Application crashes if FFMS2-avs64 is used and index file is from 32-bit flavour

From wiiaboo on October 05, 2010 15:14:44

What steps will reproduce the problem? 1. Use FFMS2 (FFVideoSource) 32-bit on a video (creating index)
2. Use FFMS2 64-bit on same video
3. Any application crashes using the .avs with FFVideoSource What is the expected output? What do you see instead? Not crashing. Error or reindexing would be fine. What version of the product are you using? On what operating system? ffmpegsource-2.14-mt with Avisynth 32-bit & ffmpegsource-2.14-avs64 with Avisynth 64-bit.
On Windows 7 64-bit. Please provide any additional information below. If I delete the index, everything runs fine.
Haven't tried with non-mt version yet.

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=30

ffmpegsource doesn't handle MKV Header Stripping compression

From [email protected] on June 14, 2010 19:13:23

Tracks with ContentCompAlgo = 3 are unusable. This might become a problem soon since mkvmerge just got support for header stripping and apparently it's going to be enabled by default. This compression is used for MPEG4ASP, MP3, AC3, DTS and maybe some other formats.

A test file: http://www.mediafire.com/?jgidimgz024 This compression method works correctly with the DirectShow Haali splitter, as well as with lavf. From a quick look at matroskaparser.c it appears the stripped headers are placed on the track (tp->CompMethodPrivate) and prepended on the CodecPrivate if applicable; however prepending them onto the actual frames is the responsibility of the using app?

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=15

Index file has an incorrect name

From lordd.csc on February 20, 2010 03:01:39

What steps will reproduce the problem? 1. Take a file, the name of which contains non-Latin characters from one
of the Windows codepages. For example, "Проверка.avi" (cp1251);
2. Create a AviSynth script in the same codepage with FFVideoSource
("Проверка.avi");
3. Open script in any video editor. What is the expected output? What do you see instead? Everything will work fine, but the index file has an incorrect name:
Ïðîâåðêà.avi.ffindex. What version of the product are you using? On what operating system? FFMS 2.13 on Windows 7 x64. Please provide any additional information below.

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=9

Out of bounds audio samples requested: MP4

From luzifer42 on May 19, 2010 06:16:37

What steps will reproduce the problem? ---------------------------

  1. AVS File:
    AudioDub(FFVideoSource("outofbounds.mp4"),FFAudioSource("outofbounds.mp4"))

Output

"Out of bounds audio samples requested"

This file plays fine with ffdshow.
FFmpeg source could have a switch to ignore out of bounds requests, no?
This is really annoying with 2-pass encoders, because the warning does not
dissapear, and stays for the whole second pass.

Environment

ffms2- r292 .7z on WindowsXP and Windows 2003

Additional information

The mp4 with this issue was create with "Adobe Flash Media Live Encoder 3"
(using the adobe f4vpp tool to convert from f4v to mp4)

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=14

Error system Exception to explorer video frames

From lukillas.ole on August 09, 2010 05:09:23

What steps will reproduce the problem? 1. Make script, command ffmpegsource2("Root/filename.mp4")
2. Load in virtualdub 1.9.9, move slice bar for explore frames. In Megui too.
3. VirtualDub launch error CAVIstreamSynth: System exception - Access violation at 0x1000f8d0. This error not appear using command directshowsource

The aim is to explore the video to subsequently consider the type of filtered frames corrupt areas in motion deinterlacing applied to study .... What version of the product are you using? On what operating system? Last version ffmpegsource, avisynth 2.60, OS WIn7 x64, Virtualdub 1.9.9 and Megui 3.5.0 Please provide any additional information below.

Attachment: Error in Megui.png Error in VirtualDub.png

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=20

"invalid postprocessing settings" in postprocessing filter

From leeyc0 on July 02, 2011 09:57:09

What steps will reproduce the problem? 1. use the function FFmpegSource2("somevideo.ts", atrack=-1, pp="ffmpegdeint") What is the expected output? What do you see instead? expected: ffmpegdeint postprocessor is being used
actual: invalid postprocessing setting is seen What version of the product are you using? On what operating system? 2.15

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=46

mkv broken in r367

From GBalrog on January 01, 2011 06:42:23

What steps will reproduce the problem? 1. install latest ffms
2. install ffms > r367 3. encode mkv file with x264 ffms input What is the expected output? What do you see instead? error... check Backtrace.txt What version of the product are you using? On what operating system? Gentoo Linux Please provide any additional information below. check Backtrace.txt

Attachment: Backtrace.txt

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=37

Unable to load some m2v files

From wazner on November 09, 2010 17:11:15

What steps will reproduce the problem? 1. Download http://www.mediafire.com/file/v9jp3ifvy3ytbxu/test.m2v 2. Attempt to read using FFVideoSource("test.m2v") What is the expected output? What do you see instead? Expected: file loads correctly
Observed: FFVideoSource: Can't open 'test.m2v' What version of the product are you using? On what operating system? v2.14 on Windows 7 64-bit with 32-bit Avisynth 2.58
v2.14 on 64-bit Linux using 32-bit wine and 32-bit Avisynth 2.58 Please provide any additional information below. I have a script that demux's program chains from DVD menus and converts any short video sequences to PNGs. It uses FFVideoSource in the workflow. Many DVD menu program chains have a duration of 1 frame.

I've just upgraded to v2.14 and find some m2v files can no longer be opened by FFVideoSource.

Here's an example m2v file where it fails: http://www.mediafire.com/file/v9jp3ifvy3ytbxu/test.m2v The error I see with v2.14 is:
FFVideoSource: Can't open 'test.m2v'

As far as I can tell there is nothing wrong with the m2v file, I can 'play' it ok in ZoomPlayer, MPC-HC and VLC.

v2.13 has the same problem. v2.12 works correctly.

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=32

Audio indexing fails first time round on too-long filenames

From francois.visagie on May 11, 2010 07:55:48

What steps will reproduce the problem? 1. Download the sample video clip
2. Play the AVS script (mind the plugin path):
Input="123456789012345678901234.avi"
Cachefile=Input+".ffindex"
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\ffms2- r292 \ffms2.dll")
FFIndex(source=Input, cachefile=Cachefile, indexmask=-1, dumpmask=0,
errorhandling=3, overwrite=false)
Audio=FFAudioSource(source=Input, track=-1, cache=true,
cachefile=Cachefile, adjustdelay=-1)
Video=FFVideoSource(source=Input, track=-1, cache=true,
cachefile=Cachefile, seekmode=1, rffmode=0, width=-1, height=-1,
colorspace="")
AudioDub(Video, Audio) What is the expected output? What do you see instead? Expected: video and audio to play
Actual: No audio, and video displays "Audio track contains no audio
frames... line 5" What version of the product are you using? On what operating system? ffmpegsource r292 with Avisynth 2.58 on Windows XP SP 3 Please provide any additional information below. 1. When the AVS script above is played above, the index file is correctly
created
2. When the AVS script is played a second time with the index file still
present, audio indexing and playback work
3. If the index file is deleted and the input filename shortened by one or
more characters, audio indexing and playback work the first time round

Attachment: 123456789012345678901234.avi

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=12

Wrong timestamps with some AVI files

From [email protected] on September 29, 2009 21:23:28

The attached AVI sample gives ffmpegsource trouble.

The correct result is 25 black frames, then a white spot appears at frame 25 with a
timestamp of exactly 1000 milliseconds.

When read via ffmpegsource, the white spot appears at frame 17 (680ms) after just 17
black frames. This is true for both the Avisynth plugin (even when using
"fpsnum=25,fpsden=1"), and other library users (Aegisub).

When transcoded via ffmpeg, the result is correct (depending on containser and
options*). However, using "-vcodec copy" (no reencoding) exhibits the same problem as
ffmpegsource, and wreaks real havoc when using a container that supports frame
timestamps (such as MP4 or MKV - it outputs completely broken timestamps).

  • AVI is one frame off as usual, inserting 1+8 container null frames to keep sync
    correct. MKV and MP4 have correct timestamps, with 8 frames missing (80ms between
    frames instead of 40).

Attachment: sample.avi

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=3

Corrupted frames while randomly seeking with FFVideoSource

From wiiaboo on January 08, 2010 18:08:28

What steps will reproduce the problem? 1. FFVideoSource on mkv or mp4 remuxed from BD m2ts with eac3to or tsmuxer
2. Seeking with VirtualDub, AvsP, MPC-HC What is the expected output? What do you see instead? Expected no corruption.
Some frames while randomly seeking show up as solid grey, some times with
noise blocks. See attachment. What version of the product are you using? On what operating system? FFMS2 r234 or r257 , Avisynth 2.58

Attachment: test.png

Original issue: http://code.google.com/p/ffmpegsource/issues/detail?id=6

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.