トップ 検索 一覧 差分 ソース ヘルプ RSS ログイン

L-SMASH's restrictions

L-SMASH's restrictions

L-SMASHの制限をここに列記する。修正予定のものも、そうでないものもある。

A list of restrictions of L-SMASH. Some will be fixed, while others won't.

 multiplexer body

Common

  • Videos with extremely low fps are not multiplexed preferably with audio. This is correct, and compliant with the spec, but not preferable.
  • Multiple sample_entry (This happens if the stream switches any of its properties in the middle of it) is not fully supported. Fields relative to bitrate does not have correct value in this case. This may be fixed in the future.
  • The output is suboptimal for streaming. This is not actually problem, because it's unavoidable with 1-pass muxing.

.3gp/.3g2 support

  • No check for compliance. Even if given any streams violating to the spec of 3gpp/3gpp2, L-SMASH just multiplexes them silently.
    • L-SMASH solely gives 'brands' for .3gp/.3g2.
  • Playback on some stupid devices are not supported. Blame the vendor of such devices.
    • Some devices require absence of 'pasp' box which contains aspect ratio information. This can be achieved with x264_L-SMASH by using --no-container-sar.
    • Some devices require their custom box structure which is not mandatory in the spec.

Issues come from the standards themselves.

There are some difficulties due to the gap between the spec of mp4 and H.264/AVC.

In the future, implementation for Open-GOP may change since its specification is still in draft.

 Importers

Importerの制限。現在のところ、muxer(以前のaudiomuxer, m4amuxer)と、unofficialであるx264_L-SMASHで--ademuxer lsmashとした場合のみ影響する。

Restrictions of importers. Currently, only muxer (previously known as audiomuxer or m4amuxer) and the unofficial x264_L-SMASH with the command line option "--ademuxer lsmash" are affected.

ADTS importer

  • By its definition, ADIF is not supported.
  • channel_config=0(custom channel configuration) is not supported.
  • Never does re-sync. The stream shall be fully consistent.
  • audioProfileLevelIndication is determined by its number of channels, and not by channels' layout.
  • Never detects HE-AAC automatically. HE-AAC streams are multiplexed in the way of Implicit Signaling.

MPEG-1/2BC Audio Legacy Interface importer

  • By its definition, using Legacy Interface defined by ISO/IEC 14496-3.
  • Never does timestamp adjustment even if it might be required. This only matters if the stream is cut and lacks preceding data of the first frame given.
  • Never does re-sync. The stream shall be fully consistent.
  • bitrate_index="free" is not supported.
  • ID3 tag is not supported. This may be fixed in the future.
  • MPEG-2.5 Audio is not supported. This is not of legitimate MPEG standard and MP4 does not have definitions for them.

AMR importer

  • AMR-WB+ is not supported.
  • Supports only the Single-Channel Storage Format, defined by RFC. The Multi-Channel Storage Format and IF1/IF2 are not supported.
  • Latest features might not be supported. We don't know recent AMR's detail.
  • Uses dummy and sub-optimal safe values for 'damr' box.

AC-3 importer

  • DolbyNet (bsid = 9 and 10) is not supported. The specifications we refer to does not have any definition for it.
  • The DecoderSpecificInfo for QuickTime file format is not supported. Its definition is closed and unknown.

Enhanced AC-3 importer

  • We might make a 'sample' which consists of non-6 audio blocks at the end of stream though the specification we refer to defines a 'sample' consists of 6 audio blocks.
  • The DecoderSpecificInfo for QuickTime file format is not supported. Its definition is closed and unknown.

MPEG-4 ALS importer

  • Unspecified number of samples i.e. samples = 0xffffffff is not supported.
  • ra_flag = 0 i.e. absence of ra_unit_size is not supported.

H.264 importer

  • SVC and MVC is not supported.
  • When probing the stream, importer parses the entire stream in order to decide decoding and composition timestamps.
  • Streams with HRD + filler is not supported, because we have to remove filler and update HRD information due to that, but the current importer does not have HRD updater.
  • Remove AU delimiter when importing because it doesn't guarantee what slice types are in. AU delimiter is redundant for AVC file format.

SMPTE VC-1 importer

  • Simple and Main profiles are not supported because their container format defined in SMPTE 421m Annex L is different from Advanced profile's.
  • When probing the stream, importer parses the entire stream in order to decide decoding and composition timestamps, presence of B-frames, frame coding mode and so on.

 As x264_L-SMASH

Restrictions on x264_L-SMASH.

Common

  • When L-SMASH's importers are used as audio input filter, it does not support piped (stdin) input.

AC-3

  • Direct encoding with libavcodec's enhanced AC-3 encoder is not supported yet.

最終更新時間:2011年11月15日 22時42分09秒