VideoHelp Forum
+ Reply to Thread
Results 1 to 22 of 22
Thread
  1. I am using the command line below to convert ass subtitles into hard coded subtitles.

    Code:
    ffmpeg -i "D:\pending\input.VOB" -vf "ass='D:\pending\input.ass'" -c:v mpeg2video -pix_fmt yuv420p -preset slow
     -r 29.97 -s 720x480 -b:v 4000k -threads 1 -acodec mp2 -ac 2 -ar 44100 -b:a 192k -f vob out.mpg
    I got this result

    Code:
    ffmpeg version N-50442-g4f0d4ac Copyright (c) 2000-2013 the FFmpeg developers
      built on Mar  2 2013 15:25:54 with gcc 4.7.2 (GCC)
      configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enabl
    e-gnutls --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetype --enable-libgsm --enable-libilbc --enable-libmp3lame --enable-l
    ibopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --en
    able-libspeex --enable-libtheora --enable-libtwolame --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-li
    bx264 --enable-libxavs --enable-libxvid --enable-zlib
      libavutil      52. 17.103 / 52. 17.103
      libavcodec     54. 92.100 / 54. 92.100
      libavformat    54. 63.102 / 54. 63.102
      libavdevice    54.  3.103 / 54.  3.103
      libavfilter     3. 41.100 /  3. 41.100
      libswscale      2.  2.100 /  2.  2.100
      libswresample   0. 17.102 /  0. 17.102
      libpostproc    52.  2.100 / 52.  2.100
    [mpeg @ 023a8a40] max_analyze_duration 5000000 reached at 5024000 microseconds
    Input #0, mpeg, from 'D:\pending\input.VOB':
      Duration: 00:16:01.31, start: 0.060000, bitrate: 5773 kb/s
        Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p, 720x480 [SAR 8:9 DAR 4:3], 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
        Stream #0:1[0x80]: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
    No option name near '\pending\input.ass'
    [AVFilterGraph @ 031b4c60] Error initializing filter 'ass' with args 'D:\pending\input.ass'
    Error opening filters!
    It seems that the ass video filter does not file full path. I did try it by copying the file in the folder where I was running this application from and it works. Does anyone know how to make this work?
    Quote Quote  
  2. I'm a MEGA Super Moderator Baldrick's Avatar
    Join Date
    Aug 2000
    Location
    Sweden
    Search Comp PM
    Maybe try with double backslashes like D:\\pending\\input.ass
    Quote Quote  
  3. Code:
    ffmpeg -i "D:\pending\input.VOB" -vf "ass=D:\\pending\\input.ass" -c:v mpeg2video -pix_fmt yuv420p -r 29.97 -s
     720x480 -b:v 4000k -threads 1 -acodec mp2 -ac 2 -ar 44100 -b:a 192k -f vob out.mpg
    ffmpeg version N-61570-gaa86ccc Copyright (c) 2000-2014 the FFmpeg developers
      built on Mar 17 2014 22:01:34 with gcc 4.8.2 (GCC)
      configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enabl
    e-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetype --enable-libgsm --enable-libilbc --enable-libmod
    plug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-li
    bschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-
    amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-zlib
    
      libavutil      52. 67.100 / 52. 67.100
      libavcodec     55. 52.102 / 55. 52.102
      libavformat    55. 34.101 / 55. 34.101
      libavdevice    55. 11.100 / 55. 11.100
      libavfilter     4.  3.100 /  4.  3.100
      libswscale      2.  5.101 /  2.  5.101
      libswresample   0. 18.100 /  0. 18.100
      libpostproc    52.  3.100 / 52.  3.100
    Input #0, mpeg, from 'D:\\pending\input.VOB':
      Duration: 00:16:01.31, start: 0.060000, bitrate: 5773 kb/s
        Stream #0:0[0x1bf]: Data: dvd_nav_packet
        Stream #0:1[0x1e0]: Video: mpeg2video (Main), yuv420p(tv), 720x480 [SAR 8:9 DAR 4:3], max. 7000 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tb
    c
        Stream #0:2[0x80]: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
    File 'out.mpg' already exists. Overwrite ? [y/N] y
    [ass @ 02bad1a0] Unable to parse option value "pendinginput.ass" as image size
        Last message repeated 1 times
    [ass @ 02bad1a0] Error setting option original_size to value pendinginput.ass.
    [Parsed_ass_0 @ 03d19700] Error applying options to the filter.
    [AVFilterGraph @ 03d1ac80] Error initializing filter 'ass' with args 'D:\pending\input.ass'
    Error opening filters!
    Still same problem
    Quote Quote  
  4. Member
    Join Date
    Sep 2007
    Location
    Europe
    Search PM
    In video filter chains you have to escape the colon in file paths because it there is used as a argument separator.

    You can use this...

    -vf "ass=D\:/pending/input.ass"
    Quote Quote  
  5. Member Budman1's Avatar
    Join Date
    Jul 2012
    Location
    NORTHWEST ILLINOIS, USA
    Search Comp PM
    Just had same problem... The "ass=" entry only takes certain '/' not the '\' and doesn't need the base reference c:\ so you would enter:
    -vf "ass=../../../../../../pending/input.ass'" (Notice the slashes are ALL changed to '/')

    The ../ is an old Dos designation to go up a directory so enter enough to get back to the c:\ folder, extras don't matter.

    Further complicating FFMpeg subtitles is the fact that any compiled version much past 2013-01-10 doesn't work on this format and needs a new format found at
    http://en.wikibooks.org/wiki/FFMPEG_An_Intermediate_Guide/subtitle_options and I cannot get this to work EVER, any way.

    My suggestion is download the 2013-01-10 version of FFMpeg and use your format with the slashes changed and no base directory. Unfortunately you are trying to go to the D:\ drive and I don't think that will work.

    Here is actual test entry:
    Click image for larger version

Name:	ScreenHunter_65 May. 06 09.07.jpg
Views:	4900
Size:	89.8 KB
ID:	24974

    Here is the CLI running:
    Click image for larger version

Name:	ScreenHunter_65 May. 06 09.08.jpg
Views:	5166
Size:	59.5 KB
ID:	24975

    And here is the result:
    Click image for larger version

Name:	ScreenHunter_67 May. 06 09.08.jpg
Views:	4901
Size:	34.3 KB
ID:	24976
    Quote Quote  
  6. "D\:\\pending\\input.ass" works.
    Thanks everyone.
    Quote Quote  
  7. Member Budman1's Avatar
    Join Date
    Jul 2012
    Location
    NORTHWEST ILLINOIS, USA
    Search Comp PM
    Thank You, Thank You, Thank You Baldrick for the valuable information and Thank You wotdefcuk for providing the feedback. I can now make my program reference external drives! Woot!

    An extra note... my system needs the extra single quotes also but it works great now as below.
    -vf "ass='D\:\\pending\\input.ass'"
    Quote Quote  
  8. you don't even need quotes ass='D\:\\pending\\input.ass' works
    Quote Quote  
  9. Member
    Join Date
    Sep 2007
    Location
    Europe
    Search PM
    Originally Posted by wotdefcuk View Post
    you don't even need quotes ass='D\:\\pending\\input.ass' works
    You need the single quotes if your file path contains spaces.
    Quote Quote  
  10. Member ks47's Avatar
    Join Date
    May 2007
    Location
    United States
    Search Comp PM
    Originally Posted by Budman1 View Post
    Thank You, Thank You, Thank You Baldrick for the valuable information and Thank You wotdefcuk for providing the feedback. I can now make my program reference external drives! Woot!

    An extra note... my system needs the extra single quotes also but it works great now as below.
    -vf "ass='D\:\\pending\\input.ass'"
    Thanks for the above posts. This problem baffled me for a long time to create a subbed video with ffmpeg. In my endeavors, I was able to able to create a soft sub using ffmpeg, but I must play the video with ffplay if I wanted see the sub. On the other hand, if I wanted a permanent sub to the video I needed to frameserve avisynth subtitle and convert with ffmpeg.
    I’m still not satisfactorily able to create subbed video in any folder; if the output file is not in the same project folder ffmpeg will complain that fontconfig is not found even though the video is processed. I’ve tried to configure fonts.conf in environmental variable. http://ffmpeg.zeranoe.com/forum/viewtopic.php?f=10&t=318&start=20
    This did little to help. Yet, I should be thankful for this thread for solving idiosyncratic ffmpeg coding I needed to decipher. @Budman: I, too, needed 2 quotes; however, I did not need double slashes as long as the video was in the same folder. Moreover, I did not need to trace up the directly tree; I was able to use different drive letter to sub with ffmpeg without any problem.
    Quote Quote  
  11. Originally Posted by ks47 View Post
    Originally Posted by Budman1 View Post
    Thank You, Thank You, Thank You Baldrick for the valuable information and Thank You wotdefcuk for providing the feedback. I can now make my program reference external drives! Woot!

    An extra note... my system needs the extra single quotes also but it works great now as below.
    -vf "ass='D\:\\pending\\input.ass'"
    Thanks for the above posts. This problem baffled me for a long time to create a subbed video with ffmpeg. In my endeavors, I was able to able to create a soft sub using ffmpeg, but I must play the video with ffplay if I wanted see the sub. On the other hand, if I wanted a permanent sub to the video I needed to frameserve avisynth subtitle and convert with ffmpeg.
    I’m still not satisfactorily able to create subbed video in any folder; if the output file is not in the same project folder ffmpeg will complain that fontconfig is not found even though the video is processed. I’ve tried to configure fonts.conf in environmental variable. http://ffmpeg.zeranoe.com/forum/viewtopic.php?f=10&t=318&start=20
    This did little to help. Yet, I should be thankful for this thread for solving idiosyncratic ffmpeg coding I needed to decipher. @Budman: I, too, needed 2 quotes; however, I did not need double slashes as long as the video was in the same folder. Moreover, I did not need to trace up the directly tree; I was able to use different drive letter to sub with ffmpeg without any problem.
    Put the fonts.conf in a folder called fonts in your ffmpeg folder and give it another try.
    Quote Quote  
  12. Member
    Join Date
    Sep 2013
    Location
    Europe
    Search PM
    Just what I needed!

    Cheers
    Quote Quote  
  13. Has anyone been able to use the subtitles filter to burn srt file to the video? I always get No such filters
    Quote Quote  
  14. Member
    Join Date
    Sep 2013
    Location
    Europe
    Search PM
    Do you use the shared build? http://ffmpeg.zeranoe.com/builds/

    My command: -vf "ass='E\:\\path\\to\\sub\\subtitle.ass'"

    I have no error using this command. But, no subtitle are burned. ^^ A fontconfig problem, I presume.
    Quote Quote  
  15. Originally Posted by HelpVid View Post
    Do you use the shared build? http://ffmpeg.zeranoe.com/builds/

    My command: -vf "ass='E\:\\path\\to\\sub\\subtitle.ass'"

    I have no error using this command. But, no subtitle are burned. ^^ A fontconfig problem, I presume.
    Did you put the fonts.conf in the fonts folder in your ffmpeg folder?
    What version of ffmpeg?
    Quote Quote  
  16. Member
    Join Date
    Sep 2007
    Location
    Europe
    Search PM
    http://ffmpeg.mplayerhq.hu/ffmpeg-filters.html#subtitles-1

    -vf "subtitles='E\:\\path\\to\\sub\\subtitle.srt'"
    Quote Quote  
  17. Originally Posted by Chris K View Post
    http://ffmpeg.mplayerhq.hu/ffmpeg-filters.html#subtitles-1

    -vf "subtitles='E\:\\path\\to\\sub\\subtitle.srt'"
    no luck. I am getting this

    Code:
    D:\>ffmpeg -nostats -i test.VOB -y -vf "subtitles='test.srt'" -c:v libx264 -pix_fmt yuv420p -profile:v main -level:v 3.1 -preset slow -s 720x480 -b:v 2000k -x264
    opts crf=20:keyint=40:ref=3:vbv-bufsize=14000:vbv-maxrate=2000 -threads 1 -c:a libvo_aacenc -ac 2 -ar 44100 -b:a 128k -af volume=1.5dB test.mp4
    ffmpeg version N-47062-g26c531c Copyright (c) 2000-2012 the FFmpeg developers
      built on Nov 25 2012 12:25:21 with gcc 4.7.2 (GCC)
      configuration: --enable-gpl --enable-version3 --disable-pthreads --enable-runtime-cpudetect --enable-avisynth --enable-bzlib --enable-frei0r --enable-libass --
    enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libfreetype --enable-libgsm --enable-libmp3lame --enable-libnut --enable-libopenjpeg --enable-libopu
    s --enable-librtmp --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libutvideo --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvo
    rbis --enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib
      libavutil      52.  9.100 / 52.  9.100
      libavcodec     54. 77.100 / 54. 77.100
      libavformat    54. 37.100 / 54. 37.100
      libavdevice    54.  3.100 / 54.  3.100
      libavfilter     3. 23.102 /  3. 23.102
      libswscale      2.  1.102 /  2.  1.102
      libswresample   0. 17.101 /  0. 17.101
      libpostproc    52.  2.100 / 52.  2.100
    [mpeg @ 0000000001f572c0] max_analyze_duration 5000000 reached at 5024000
    Input #0, mpeg, from 'test.VOB':
      Duration: 00:16:01.31, start: 0.060000, bitrate: 5773 kb/s
        Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p, 720x480 [SAR 8:9 DAR 4:3], 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
        Stream #0:1[0x80]: Audio: ac3, 48000 Hz, stereo, s16, 192 kb/s
    [AVFilterGraph @ 000000000027bbc0] No such filter: 'subtitles'
    Error opening filters!
    Quote Quote  
  18. Member Budman1's Avatar
    Join Date
    Jul 2012
    Location
    NORTHWEST ILLINOIS, USA
    Search Comp PM
    Just an add on to the already wealth of information in this thread... I set 3 environment variables and then I had to put the font.conf file in the location specified by the variable. I BELIEVE as wotdefcuk mentioned, if the variable is not set then the libass defaults to WHATEVER was specified in the build. This caused me problems as I swapped in and out later and earlier versions of FFMpeg trying to make it work, somedefaulting to the FFMpeg directory and some the fonts directory, so I set the environment variables and I stick with it now.

    Also, I had problems similar to HelpVid, looking back over the conversion and for some reason later FFmpeg's did not like the 'mode' settings in the font.conf file. I removed them and just copied the entries such as:

    <alias>
    <family>Courier</family>
    <prefer><family>Courier New</family></prefer>
    <default><family>monospace</family></default>
    </alias>
    for whatever Fonts I wished to add and I haven't had an issue any more.
    Quote Quote  
  19. Member
    Join Date
    Sep 2007
    Location
    Europe
    Search PM
    @wotdefcuk

    Code:
    ffmpeg version N-47062-g26c531c Copyright (c) 2000-2012 the FFmpeg developers
      built on Nov 25 2012 12:25:21 with gcc 4.7.2 (GCC)
    Your FFmpeg version is way to old. Why not use the latest?
    Quote Quote  
  20. Member
    Join Date
    Sep 2013
    Location
    Europe
    Search PM
    Originally Posted by Chris K View Post
    @wotdefcuk

    Code:
    ffmpeg version N-47062-g26c531c Copyright (c) 2000-2012 the FFmpeg developers
      built on Nov 25 2012 12:25:21 with gcc 4.7.2 (GCC)
    Your FFmpeg version is way to old. Why not use the latest?
    Originally Posted by HelpVid View Post
    Do you use the shared build? http://ffmpeg.zeranoe.com/builds/
    -_-'

    Quote Quote  
  21. Originally Posted by HelpVid View Post
    Originally Posted by Chris K View Post
    @wotdefcuk

    Code:
    ffmpeg version N-47062-g26c531c Copyright (c) 2000-2012 the FFmpeg developers
      built on Nov 25 2012 12:25:21 with gcc 4.7.2 (GCC)
    Your FFmpeg version is way to old. Why not use the latest?
    Originally Posted by HelpVid View Post
    Do you use the shared build? http://ffmpeg.zeranoe.com/builds/
    -_-'

    Nope I used the static builds. Aren't the static builds the stable builds?
    Quote Quote  
  22. Originally Posted by wotdefcuk View Post
    Originally Posted by HelpVid View Post
    Originally Posted by Chris K View Post
    @wotdefcuk

    Code:
    ffmpeg version N-47062-g26c531c Copyright (c) 2000-2012 the FFmpeg developers
      built on Nov 25 2012 12:25:21 with gcc 4.7.2 (GCC)
    Your FFmpeg version is way to old. Why not use the latest?
    Originally Posted by HelpVid View Post
    Do you use the shared build? http://ffmpeg.zeranoe.com/builds/
    -_-'

    Nope I used the static builds. Aren't the static builds the stable builds?
    nevermind. I was stupidly using the old build as the path variable was set to an older build of ffmpeg.
    Quote Quote  
Visit our sponsor! Try DVDFab and backup Blu-rays!