Skip to content

Releases: cubicibo/ass2bdnxml

v0.7f

18 Jul 21:03
Compare
Choose a tag to compare

Uneventful update.

  • Update to libass v0.17.3. Refer to their changelog for details.
  • Add --full-bitmaps to output uncropped PNGs.

v0.7e

22 May 19:20
Compare
Choose a tag to compare

Small update to bump dependencies and get rid of a rare bug.

  • Fix a bug that could lead to wrong coordinates whenever libass returned empty bitmaps for numerous frames.
  • Update to libass v0.17.2 and libimagequant v4.0.3.
  • Set default libimagequant quality to 99, as 100 is too excessive to be the default.

v0.7c

23 Mar 18:55
1257871
Compare
Choose a tag to compare

Very minor release again.

  • Add --downsample (-z) to subsample the ASS. -z prevents XML events shorter than 2 frames, -z -z 3 frames, and so on.
    Halving the subtitle framerate can help the subtitle decoder. Also, subtitles generally do not need to run at HFR (50, 59.94, 60). This option does not restrict the timing to even or odd frames and is fully adaptive.
  • Add --dim P to dim the subtitles for HDR exports. P is a percentage, and 33.3% would roughly results in 200-nits white.
  • Fix --squarepx for SD 4/3 content.
  • Add 2160p for exotic exports. 2160p IS NOT BLU-RAY COMPLIANT. This is just provided to help users with DCP exports and other UHD XML+PNG formats. UHD BD will never support 4K subtitles, as PGS cannot display anything above 2K.

v0.7b

13 Jan 12:26
b6d42f8
Compare
Choose a tag to compare

Minor release. It eases the work of authorers to help them produce files adapted to the compatible Blu-ray video formats.

Key changes

  • Fix broken --split option.
  • Add ugly split mode (--split 4), similar to avs2bdnxml ugly split.
  • Add --anamorphic (-h) to appropriately squeeze the bitmaps for SD anamorphic content. On playback, the 720x480 container will be unsqueezed to 16:9 (e.g. 852x480), and so will the subtitles.
  • Add real 60 FPS framerate for UHD BD.
  • Add 576p, as it can be used for the PIP secondary video, like 480p.
  • Support fractional parametrization of the PAR (e.g. --par 852:720)
  • Ensure bitmaps are never less than 8x8 pixels.

Others

  • Add --fullscreen (-u) to render ASS in 4:3 containers that are to be displayed as pillarboxed (e.g 4:3 pillardboxed show in a 16:9 1080p container). This should not be used if the ASS was created on the pillarboxed footage.
  • Add experimental --squarepx to account for DAR correction in SD 4/3.
  • Remove -z to flag the offset as negative. Only the long parameter name --negative may be used.
  • Add --version to get the version and exit.
  • Add some additional logging, like: ass2bdnxml: BDN format: (720x480), rendering at (720x480) for (852x480) display.

v0.7a

13 Dec 21:57
bc2d19e
Compare
Choose a tag to compare

ass2bdnxml v0.7a

Changes

  • Detect false positive of "changed" ASS_Image by comparing the current blended RGBA composition to the last one. This fixes the excessive event generation whenever some ASSDraw were encountered.
  • Optimise palette generation for the PGS format. 256 (255 with --rleopt) are now usable rather than 255 (254 resp.)
  • Always allocate the background transparent pixel to the last palette entry (0xFF typically).
  • Adaptively reduce the usable number of colors by one when no transparency is found in a blended image.

Notes / Q&A

  • "I get line width/encoding errors when I import the BDN in Scenarist." Use --rleopt flag. You could also reduce the max color count in --quantize.
  • "I would like to reduce the total filesize." Use --liq-quality N, N below 100. E.g 90 is visually lossless and will significantly reduce the PNG files, and hence, the PGS bitrate.
  • "I want to generate the BDN for SUPer" Do NOT use --quantize or --split.
  • "For SD-BD, the resulting PGS is stretched." You must set the --par or the --width-store appropriately.

v0.6a

09 Oct 20:25
Compare
Choose a tag to compare

This is a minor release. The accuracy of TC is further improved and checked against VLC and MPV.

v0.6

03 Oct 21:09
Compare
Choose a tag to compare

ass2bdnxml v0.6

Changes

  • Add --copyname (-c) to reflect the .ASS filename to the output XML.
  • Fix imprecise seek of next subtitle event with NTSC framerates.
  • Add --liq-speed, --liq-quality and --liq-dither to tune the behaviour of libimagequant. --liq-quality is notably handy to reduce the filesize without impacting visual quality.

v0.5

06 Sep 21:36
Compare
Choose a tag to compare

ass2bdnxml v0.5

Changes

  • Add libimagequant to output palettized PNG images, required by some authoring suites. This is enabled by specifying --quantize (-q) followed by the maximum number of colours accepted (typically 255 for PGS).
  • Add flag --rleopt (-r) to prevent the usage of palette entry zero. May fix the "Line could not be encoded" error seen on Scenarist.
  • Change --split (-s) flag to parameter. 4 modes availables: {0: Disabled, 1: Vertical, 2: Vertical + opt. Horiz, 3: Both ("aggressive")}
  • Add argument --offset (-o) to specify a TC offset to apply to all BDN timecodes.
  • Add flag --negative (-z) to mark the TC offset specified with --offset as negative. Value warp-around is not implemented, use with care.
  • Fix --par (-p) to be the real PAR and not 1/PAR.
  • Add --splitmargin (-m) to specify a minimum margin between two crops to effectively split them. Argument format is VxH, where V is the minimum y axis difference, and H the minimum x axis difference. 'x' is a separator and is only required if H is provided. V can be provided alone. This argument greatly affects the behaviour of the split. It is very handy with the aggressive split mode --split 3.

v0.4

27 Aug 10:28
32f73b4
Compare
Choose a tag to compare

ass2bdnxml v0.4

Changes

  • Change the base time unit from integer millisecond to frame.
  • Update the sampling logic to sample in the middle of the active ASS frame.

Masking effects and signs that require precise time accuracy should now (un)display on the desired frames.
This version also fixes the occasional zero duration events.

v0.3

26 Jul 21:01
Compare
Choose a tag to compare

ass2bdnxml v0.3

Changes

  • Fix alpha blending.
  • Add --split (-s) option to split event in two graphics whenever possible.
  • Specify additional font look-up directory with --fontdir (-a).

The Windows executable is released here. It is optimised for x86_64 architecture.
macOS and other platforms are not distributed. However, building the app on these OSes is easy, just follow the instructions.