Log in

View Full Version : How common is it that m4v files contain audio?


stax76
24th July 2017, 11:43
How common is it that m4v files contain audio? Are there standards, tools or anything else that use, suggest or promote this? What about ogg/ogm?

I'm asking because staxrip avoids inspecting files with mediainfo for improved performance but makes certain assumptions based on the used file types which are defined like so:


Shared Property AudioRaw As String() = {"thd", "aac", "eac3"}
Shared Property Audio As String() = {"flac", "dtshd", "dtsma", "dtshr", "thd", "thd+ac3", "true-hd", "truehd", "aac", "ac3", "dts", "eac3", "m4a", "mka", "mp2", "mp3", "mpa", "opus", "wav", "w64"}
Shared Property VideoAudio As String() = {"avi", "mp4", "mkv", "divx", "flv", "mov", "mpeg", "mpg", "ts", "m2ts", "vob", "webm", "wmv", "pva", "ogg", "ogm"}
Shared Property BeSweetInput As String() = {"wav", "mp2", "mpa", "mp3", "ac3", "ogg"}
Shared Property DGDecNVInput As String() = {"264", "h264", "265", "h265", "avc", "hevc", "hvc", "mkv", "mp4", "mpg", "vob", "ts", "m2ts", "mts", "m2t", "mpv", "m2v"}
Shared Property eac3toInput As String() = {"dts", "dtshd", "dtshr", "dtsma", "evo", "vob", "ts", "m2ts", "wav", "w64", "pcm", "raw", "flac", "ac3", "eac3", "thd", "thd+ac3", "mlp", "mp2", "mp3", "mpa"}
Shared Property NicAudioInput As String() = {"wav", "mp2", "mpa", "mp3", "ac3", "dts"}
Shared Property qaacInput As String() = {"wav", "flac", "w64"}
Shared Property SubtitleExludingContainers As String() = {"srt", "ass", "idx", "sup", "ttxt", "ssa", "smi"}
Shared Property SubtitleSingle As String() = {"srt", "ass", "sup", "ttxt", "ssa", "smi"}
Shared Property SubtitleIncludingContainers As String() = {"m2ts", "mkv", "mp4", "ass", "idx", "smi", "srt", "ssa", "sup", "ttxt"}
Shared Property TextSub As String() = {"ass", "idx", "smi", "srt", "ssa", "ttxt", "usf", "ssf", "psb", "sub"}
Shared Property Video As String() = {"264", "265", "avc", "avi", "avs", "d2v", "dgi", "dgim", "divx", "flv", "h264", "h265", "hevc", "hvc", "m2t", "m2ts", "m2v", "mkv", "mov", "mp4", "mpeg", "mpg", "mpv", "mts", "ogg", "ogm", "pva", "rmvb", "ts", "vdr", "vob", "vpy", "webm", "wmv", "y4m"}
Shared Property VideoIndex As String() = {"d2v", "dgi", "dga", "dgim"}
Shared Property VideoOnly As String() = {"264", "265", "avc", "h264", "h265", "hevc", "hvc", "m2v", "m4v", "mpv", "y4m"}
Shared Property VideoRaw As String() = {"264", "265", "h264", "h265", "avc", "hevc", "hvc"}
Shared Property VideoText As String() = {"d2v", "dgi", "dga", "dgim", "avs", "vpy"}
Shared Property VideoDemuxOutput As String() = {"mpg", "h264", "avi", "h265"}

StainlessS
24th July 2017, 12:23
Not that uncommon to have audio (less common probably to not contain audio).

Apple variation of mp4 with optional DRM. https://en.wikipedia.org/wiki/M4V

from above link

Apple uses M4V to encode video files in its iTunes Store. # EDIT: Never used iTunes, but reads like audio not so rare

It is used as the default video conversion format for HandBrake and Air Video Server on the Macintosh.

Handbrake-produced M4V files can also be played on the PlayStation 3, with full Dolby Digital 5.1 surround support.


EDIT: I've seen nothing anywhere about it being a Video Elementary Stream, it is a container format.

EDIT: Although not mentioned here:- https://en.wikipedia.org/wiki/Comparison_of_video_container_formats

stax76
24th July 2017, 12:33
Thanks, I've changed it to be recognized as audio+video.

StainlessS
24th July 2017, 12:48
Here function I did for something to establish if should use LSMASHVideoSource() in preference to other source filters.



Function IsISOFileName(String s) {
s=RT_GetFileExtension(s) Return(s==".mov"||s==".mp4"||s==".m4v"||s==".3gp"||s==".3g2"||s==".mj2"||s==".dvb"||s==".dcf"||s==".m21")
}



Dont know how useful it might be and I probably missed some out.

I also try use LSMASHAudioSource() if above true (before other audio sources).

StainlessS
24th July 2017, 12:58
Looks like I missed out ".m4v", thanx for the nudge :)

ISO base media file format
https://en.wikipedia.org/wiki/ISO_base_media_file_format

EDIT: Did not have any m4v (that I could find), so did conversion mp4 (disguised as flv) -> m4v, in ffmpeg and loads just fine via LSMASHVideoSource().
Did not try the audio.

stax76
24th July 2017, 13:08
Do you know if any apart from mp4, m4v and mov are popular? I would like to keep my list as short as possible but still cover common use cases.

StainlessS
24th July 2017, 13:20
Quite a few phones (including my MOTO G LTE) use '.3gp'. [EDIT: Up to 1920x1080].

[Think MOTO G probably most popular Motorola phone ever, unless Motorola Atrix].

stax76
24th July 2017, 13:26
Thanks, I've added it to my definitions.

StainlessS
24th July 2017, 13:40
Think I remember seeing DVB files produced by Digital TV (which probably means there is a lot of it about), but I have not had a TV for some years
and am not sure about that. (maybe someone can comment further).

Google

DVB File Format DVB.org.


First on list (pdf).

Note, search on 'DVB file' alone will probably bring up stuff on some kind of Autocad file format.

poisondeathray
24th July 2017, 14:56
Not that uncommon to have audio (less common probably to not contain audio).

Apple variation of mp4 with optional DRM. https://en.wikipedia.org/wiki/M4V

from above link


EDIT: I've seen nothing anywhere about it being a Video Elementary Stream, it is a container format.

EDIT: Although not mentioned here:- https://en.wikipedia.org/wiki/Comparison_of_video_container_formats


Yes, far more common is the Apple version . "m4v" is a modified mp4 container used when apple/itunes uses ac3 audio .

But "m4v" also is used by Adobe to indicate elementary h264 video stream for authoring in Encore , when the video is produced by Adobe applications.

burfadel
26th July 2017, 11:21
Transport streams .TS is what modern digital TV cards record HD content in. It is basically a direct dump of them of the stream. Some of these can have multiple embedded channels depending on how the card/dongle is set up to record in the software. The relevant audio streams are linked to the video PID.

StainlessS
26th July 2017, 12:25
Transport streams .TS is what modern digital TV cards record HD content in. It is basically a direct dump of them of the stream. Some of these can have multiple embedded channels depending on how the card/dongle is set up to record in the software. The relevant audio streams are linked to the video PID.

Not sure I may have this back-to-front, but aint those described as BASIC cards, better ones being able to extract individual streams in the card itself, and only the selected streams being sent over the bus to the cap software/driver. BASIC cards driver gets the whole lot and have to extract themselves. Good cards can do both.

Is not TS somewhat like VOB, and not an ISO container. (No idea what they call them that carry "bouquet").

EDIT: Carry "bouquet", I guess they call them Transport Streams :)