Den 06.11.2022 23:36, skrev Andrew Randrianasulu:


пн, 7 нояб. 2022 г., 01:18 Terje J. Hanssen <terjejhanssen@gmail.com>:


Den 06.11.2022 02:14, skrev Andrew Randrianasulu:


вс, 6 нояб. 2022 г., 03:30 Terje J. Hanssen <terjejhanssen@gmail.com>:


Den 06.11.2022 00:56, skrev Andrew Randrianasulu:


вс, 6 нояб. 2022 г., 02:06 Terje J. Hanssen <terjejhanssen@gmail.com>:


Den 05.11.2022 23:25, skrev Andrew Randrianasulu:


вс, 6 нояб. 2022 г., 01:05 Terje J. Hanssen <terjejhanssen@gmail.com>:


Den 05.11.2022 13:46, skrev Andrew Randrianasulu:


сб, 5 нояб. 2022 г., 15:39 Terje J. Hanssen <terjejhanssen@gmail.com>:


Den 03.11.2022 22:13, skrev Andrew Randrianasulu:


чт, 3 нояб. 2022 г., 21:28 Terje J. Hanssen <terjejhanssen@gmail.com>:


Den 03.11.2022 16:17, skrev Andrew Randrianasulu:


чт, 3 нояб. 2022 г., 17:52 Terje J. Hanssen <terjejhanssen@gmail.com>:


Den 03.11.2022 01:42, skrev Andrew Randrianasulu via Cin:


чт, 3 нояб. 2022 г., 03:34 Andrew Randrianasulu <randrianasulu@gmail.com>:


чт, 3 нояб. 2022 г., 03:14 Andrew Randrianasulu <randrianasulu@gmail.com>:
I think we can add some clarification

---

HDV on a Blu-ray Disc Without Re-encoding

An MTS file is a video file saved in the high-definition (HD) MPEG Transport Stream video format, commonly called AVCHD. It contains HD video compatible with Blu-ray disc format and is based on the MPEG-2 transport stream. MTS files are often used by Sony, Panasonic, Canon and other HD camcorders. Legal input for Video – MPEG1VIDEO, MPEG2VIDEO, H264; Audio – MP1, MP2, AC3, AC3PLUS, DTS, TRUHD.

Note, mp2 and mp1 audio codecs are valid for transport stream itself but not as on-disk format for Blu-Rays.

In this case you still can save original video by using ffmpeg's switches

 -c:v copy -c:a ac3 , while outputting into another temporal ts container.

{waiting for Terje's results on pcm_bluray case}


---


I think all m2ts files you used for testing were h264/aac (or ac3), not from-camcoder HDVs with mpeg2 video/mp2 audio. 

you can try HDV-in-mov from this folder as ffmpeg test file, I think

http://samples.mplayerhq.hu/mov/FCP/


oh, this is not mp2 audio but pcm audio. And ..not exactly kind of pcm used on blurays!

so this line work, note mpegts_m2ts_mode switch for enabling more bluray like output, without it ffmpeg will mux audio into private stream -  good luck getting it back!

ffmpeg -i  HDV_1080i50.mov -c:v copy -c:a pcm_bluray  -mpegts_m2ts_mode 1 hdv.mts

then tsmuxer recognizes mts file as below:

~/tsMuxer $ tsmuxer hdv.mts
tsMuxeR version 2.6.16-dev. github.com/justdan96/tsMuxer
Track ID:    4113                                                       Stream type: MPEG-2
Stream ID:   V_MPEG-2
Stream info: Profile: Main@6. Resolution: 1440:1080i. Frame rate: 25
Stream lang:

Track ID:    4352
Stream type: LPCM
Stream ID:   A_LPCM
Stream info: Bitrate: 1536Kbps  Sample Rate: 48KHz  Channels: 2  Bits per sample: 16bit
Stream lang: eng

Duration: 00:00:08.000

====

I wonder if you can cp this file few times and then cat them back together for simulating longer video ) ?



this one contain real very short hdv sample with mp2 sound




I can try to dig and test further into this matter later this month - or possibly more realistic next month.
Currently I spend some holiday weeks on Gran Canaria 😎


have good times (even without camcoder!)



Some thoughts in advance:

Would it possibly be better/clear to differ/split between the formats, HDV video on tape (M2T container) and the successor H264/AVC(HD) video on disk?
https://en.wikipedia.org/wiki/HDV

sure, right now it confusing.




Possibly you still have the probably little longer HDV 1080i sample file, "20081103140154.m2t" we used for the HDV format patch here
https://www.mail-archive.com/cin@lists.cinelerra-gg.org/msg02048.html


yeah, will call my friend 'find' )

thanks!




And if  Phyllis has access to a Blu-ray disc burner and BD hw player, testing could possibly start sooner(?)

 










----

For creating a blu-ray disc, if you have HDV MPEG-2 media that is in blu-ray format, you can save the original quality of your work, rather than rendering it to another format. 


{I hope Terje will let us know if bdwrite still works with bluray pcm audio as produced by ffmpeg 5.1+}


I forgot one question:
Will it be possible and how to access and use ffmpeg-5.x included with Cin-GG in a terminal as usual?



if you compile your own cinelerra ffmpeg binary will be in thirdparty/ffmpeg-5.1/ffmpeg 


we do not install this binary because cin does all work via library interface.

So I think you can do single-user build and then play with compiled binary and may be even use it in shell scripting as described in




The latest openSUSE Leap 15.4 distro I use, has so far no official ffmpeg-5.x package or codec enabled from Packman.
I have add-installed ffmpeg-5.1.2 from OBS (Open Build Service), but don't know if it works.



===========================

A first test step with add-installed Experimental ffmpeg-5-5.1.2-lp154.35.1.x86_64.rpm for Leap 15.4 from
https://software.opensuse.org/download/package?package=ffmpeg-5&project=multimedia%3Alibs
https://build.opensuse.org/package/show/multimedia%3Alibs/ffmpeg-5

zypper addrepo https://download.opensuse.org/repositories/multimedia:libs/15.4/multimedia:libs.repo
zypper refresh
zypper install ffmpeg-5
----------------

ffmpeg -i 3.m2t -c:v copy -c:a pcm_bluray output.ts
ffmpeg version 5.1.2 Copyright (c) 2000-2022 the FFmpeg developers
  built with gcc 7 (SUSE Linux)
-------------
Input #0, mpegts, from '3.m2t':
  Duration: 00:00:03.10, start: 1.400000, bitrate: 21633 kb/s
  Program 1
    Metadata:
      service_name    : Service01
      service_provider: FFmpeg
  Stream #0:0[0x100]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv, bt709, top first), 1440x1080 [SAR 4:3 DAR 16:9], 25000 kb/s, 29.97 fps, 29.97 tbr, 90k tbn
    Side data:
      cpb: bitrate max/min/avg: 25000000/0/0 buffer size: 7340032 vbv_delay: N/A
  Stream #0:1[0x101]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, fltp, 384 kb/s
Unknown encoder 'pcm_bluray'

-----------

Obviously pcm_bluray encoder is not enabled - only the decoder is enabled. Then it will be difficult ...

ffmpeg -codecs -hide_banner | egrep "pcm|pcm_bluray"

 ..AIL. adpcm_4xm            ADPCM 4X Movie
 ..AIL. adpcm_adx            SEGA CRI ADX ADPCM
 ..AIL. adpcm_afc            ADPCM Nintendo Gamecube AFC
 ..AIL. adpcm_agm            ADPCM AmuseGraphics Movie AGM
 ..AIL. adpcm_aica           ADPCM Yamaha AICA
 ..AIL. adpcm_argo           ADPCM Argonaut Games
 ..AIL. adpcm_ct             ADPCM Creative Technology
 ..AIL. adpcm_dtk            ADPCM Nintendo Gamecube DTK
 ..AIL. adpcm_ea             ADPCM Electronic Arts
 ..AIL. adpcm_ea_maxis_xa    ADPCM Electronic Arts Maxis CDROM XA
 ..AIL. adpcm_ea_r1          ADPCM Electronic Arts R1
 ..AIL. adpcm_ea_r2          ADPCM Electronic Arts R2
 ..AIL. adpcm_ea_r3          ADPCM Electronic Arts R3
 ..AIL. adpcm_ea_xas         ADPCM Electronic Arts XAS
 ..AIL. adpcm_g722           G.722 ADPCM
 ..AIL. adpcm_g726           G.726 ADPCM
 ..AIL. adpcm_g726le         G.726 ADPCM little-endian
 ..AIL. adpcm_ima_acorn      ADPCM IMA Acorn Replay
 ..AIL. adpcm_ima_alp        ADPCM IMA High Voltage Software ALP
 ..AIL. adpcm_ima_amv        ADPCM IMA AMV
 ..AIL. adpcm_ima_apc        ADPCM IMA CRYO APC
 ..AIL. adpcm_ima_apm        ADPCM IMA Ubisoft APM
 ..AIL. adpcm_ima_cunning    ADPCM IMA Cunning Developments
 ..AIL. adpcm_ima_dat4       ADPCM IMA Eurocom DAT4
 ..AIL. adpcm_ima_dk3        ADPCM IMA Duck DK3
 ..AIL. adpcm_ima_dk4        ADPCM IMA Duck DK4
 ..AIL. adpcm_ima_ea_eacs    ADPCM IMA Electronic Arts EACS
 ..AIL. adpcm_ima_ea_sead    ADPCM IMA Electronic Arts SEAD
 ..AIL. adpcm_ima_iss        ADPCM IMA Funcom ISS
 ..AIL. adpcm_ima_moflex     ADPCM IMA MobiClip MOFLEX
 ..AIL. adpcm_ima_mtf        ADPCM IMA Capcom's MT Framework
 ..AIL. adpcm_ima_oki        ADPCM IMA Dialogic OKI
 ..AIL. adpcm_ima_qt         ADPCM IMA QuickTime
 ..AIL. adpcm_ima_rad        ADPCM IMA Radical
 ..AIL. adpcm_ima_smjpeg     ADPCM IMA Loki SDL MJPEG
 ..AIL. adpcm_ima_ssi        ADPCM IMA Simon & Schuster Interactive
 ..AIL. adpcm_ima_wav        ADPCM IMA WAV
 ..AIL. adpcm_ima_ws         ADPCM IMA Westwood
 ..AIL. adpcm_ms             ADPCM Microsoft
 ..AIL. adpcm_mtaf           ADPCM MTAF
 ..AIL. adpcm_psx            ADPCM Playstation
 ..AIL. adpcm_sbpro_2        ADPCM Sound Blaster Pro 2-bit
 ..AIL. adpcm_sbpro_3        ADPCM Sound Blaster Pro 2.6-bit
 ..AIL. adpcm_sbpro_4        ADPCM Sound Blaster Pro 4-bit
 ..AIL. adpcm_swf            ADPCM Shockwave Flash
 ..AIL. adpcm_thp            ADPCM Nintendo THP
 ..AIL. adpcm_thp_le         ADPCM Nintendo THP (Little-Endian)
 ..AIL. adpcm_vima           LucasArts VIMA audio
 ..AIL. adpcm_xa             ADPCM CDROM XA
 ..AIL. adpcm_yamaha         ADPCM Yamaha
 ..AIL. adpcm_zork           ADPCM Zork
 ..AIL. derf_dpcm            DPCM Xilam DERF
 ..AIL. gremlin_dpcm         DPCM Gremlin
 ..AIL. interplay_dpcm       DPCM Interplay
 DEAIL. pcm_alaw             PCM A-law / G.711 A-law
 D.AI.S pcm_bluray           PCM signed 16|20|24-bit big-endian for Blu-ray media
 D.AI.S pcm_dvd              PCM signed 20|24-bit big-endian
 ..AI.S pcm_f16le            PCM 16.8 floating point little-endian
 ..AI.S pcm_f24le            PCM 24.0 floating point little-endian
 DEAI.S pcm_f32be            PCM 32-bit floating point big-endian
 DEAI.S pcm_f32le            PCM 32-bit floating point little-endian
 DEAI.S pcm_f64be            PCM 64-bit floating point big-endian
 DEAI.S pcm_f64le            PCM 64-bit floating point little-endian
 ..AI.S pcm_lxf              PCM signed 20-bit little-endian planar
 DEAIL. pcm_mulaw            PCM mu-law / G.711 mu-law
 DEAI.S pcm_s16be            PCM signed 16-bit big-endian
 DEAI.S pcm_s16be_planar     PCM signed 16-bit big-endian planar
 DEAI.S pcm_s16le            PCM signed 16-bit little-endian
 DEAI.S pcm_s16le_planar     PCM signed 16-bit little-endian planar
 DEAI.S pcm_s24be            PCM signed 24-bit big-endian
 ..AI.S pcm_s24daud          PCM D-Cinema audio signed 24-bit
 DEAI.S pcm_s24le            PCM signed 24-bit little-endian
 DEAI.S pcm_s24le_planar     PCM signed 24-bit little-endian planar
 DEAI.S pcm_s32be            PCM signed 32-bit big-endian
 DEAI.S pcm_s32le            PCM signed 32-bit little-endian
 DEAI.S pcm_s32le_planar     PCM signed 32-bit little-endian planar
 ..AI.S pcm_s64be            PCM signed 64-bit big-endian
 ..AI.S pcm_s64le            PCM signed 64-bit little-endian
 DEAI.S pcm_s8               PCM signed 8-bit
 DEAI.S pcm_s8_planar        PCM signed 8-bit planar
 ..AI.S pcm_sga              PCM SGA
 DEAI.S pcm_u16be            PCM unsigned 16-bit big-endian
 DEAI.S pcm_u16le            PCM unsigned 16-bit little-endian
 DEAI.S pcm_u24be            PCM unsigned 24-bit big-endian
 DEAI.S pcm_u24le            PCM unsigned 24-bit little-endian
 DEAI.S pcm_u32be            PCM unsigned 32-bit big-endian
 DEAI.S pcm_u32le            PCM unsigned 32-bit little-endian
 DEAI.S pcm_u8               PCM unsigned 8-bit
 ..AIL. pcm_vidc             PCM Archimedes VIDC
 ..AIL. roq_dpcm             DPCM id RoQ
 ..AIL. sdx2_dpcm            DPCM Squareroot-Delta-Exact
 ..AIL. sol_dpcm             DPCM Sol
 ..AIL. xan_dpcm             DPCM Xan


for me it says

DEAI.S pcm_bluray           PCM signed 16|20|24-bit big-endian for Blu-ray media


on termux. Guess suse people a bit afraid about enabling anything bluray related in widely-distributed packages. Just for checking you can ask  package maintainer, may be he (?) disabled it by oversight.

So yeah, for this test self-compiled ffmpeg will be more interesting (on x86/glibc system simple configure/make should give you ff* binaries)




======================


I upgraded instead my rolling openSUSE Tumbleweed with the recent multimedia codec enabled ffmpeg 5.1.2 from Packman
https://opensuse.github.io/openSUSE-docs-revamped-temp/codecs/

where also the pcm_bluray encoder is enabled:

ffmpeg -codecs -hide_banner | grep pcm_bluray
 DEAI.S pcm_bluray           PCM signed 16|20|24-bit big-endian for Blu-ray media

 
and verified first the input file

 ffprobe -hide_banner 3.m2t
Input #0, mpegts, from '3.m2t':
  Duration: 00:00:03.10, start: 1.400000, bitrate: 21633 kb/s
  Program 1
    Metadata:
      service_name    : Service01
      service_provider: FFmpeg
  Stream #0:0[0x100]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv, bt709, top first), 1440x1080 [SAR 4:3 DAR 16:9], 25000 kb/s, 29.97 fps, 29.97 tbr, 90k tbn
    Side data:
      cpb: bitrate max/min/avg: 25000000/0/0 buffer size: 7340032 vbv_delay: N/A
  Stream #0:1[0x101]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, fltp, 384 kb/s


Then a new attempt with the first step to transcode the mp2 audio to pcm_blu-ray.
Added also for this case the "-mpegts_m2ts_mode 1" switch for enabling more bluray like output, because without it didn't seem to be recognized!?


ffmpeg -i 3.m2t -c:v copy -c:a pcm_bluray -mpegts_m2ts_mode 1 output.mts
ffmpeg version 5.1.2 Copyright (c) 2000-2022 the FFmpeg developers
  built with gcc 12 (SUSE Linux)
..........
Input #0, mpegts, from '3.m2t':
  Duration: 00:00:03.10, start: 1.400000, bitrate: 21633 kb/s
  Program 1
    Metadata:
      service_name    : Service01
      service_provider: FFmpeg
  Stream #0:0[0x100]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv, bt709, top first), 1440x1080 [SAR 4:3 DAR 16:9], 25000 kb/s, 29.97 fps, 29.97 tbr, 90k tbn
    Side data:
      cpb: bitrate max/min/avg: 25000000/0/0 buffer size: 7340032 vbv_delay: N/A
  Stream #0:1[0x101]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, fltp, 384 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #0:1 -> #0:1 (mp2 (native) -> pcm_bluray (native))
Press [q] to stop, [?] for help
Output #0, mpegts, to 'output.mts':
  Metadata:
    encoder         : Lavf59.27.100
  Stream #0:0: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv, bt709, top first), 1440x1080 [SAR 4:3 DAR 16:9], q=2-31, 25000 kb/s, 29.97 fps, 29.97 tbr, 90k tbn
    Side data:
      cpb: bitrate max/min/avg: 25000000/0/0 buffer size: 7340032 vbv_delay: N/A
  Stream #0:1: Audio: pcm_bluray, 48000 Hz, stereo, s16, 128 kb/s
    Metadata:
      encoder         : Lavc59.37.100 pcm_bluray
frame=   76 fps=0.0 q=-1.0 Lsize=    8898kB time=00:00:03.00 bitrate=24297.5kbits/s speed= 139x    
video:7854kB audio:565kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 5.697285%
 
---------------------

At last verified the output file:

ffprobe -hide_banner output.ts
Input #0, mpegts, from 'output.ts':

above you output in mts not ts .... ?



=======================

It looks to be copy-error from my note. To be sure I  repete it below for ffprobe and additional mediainfo. (I also had "output.ts" from the attempt without the mode switch.)
Not sure if TS and MTS by the way can be used interchangeable, both are MPEG-transport streams, possibly TS is for MPEG-2 and MTS for H264/AVC only?
My HDV files on disk get .M2T extension when transfered from tape.



from output it seems audio is there? Can you hear it in vlc/mpv ?


Yes, the "output.mts" audio can be heard ok via playback in vlc and mpv.



so, let stick to this specific 'extension' and hope ffmpeg behavior will not change!

now attempt to use this *.mts file as input to bdwrite or tsmuxer ...

=====================

BDWRITE:

Tried to follow the manual's 6 procedure steps to create a Blu-ray structure, but lost or mis-interpreted the paths(?) around steps 4-5, because I got an empty 12 directory-structure but 0 files?

1. du -sb /yourHDVfile.MTS

du -sb output.mts
9111552    output.mts


put your output.mts in /tmp , or point bbwrite to exact location of output.mts

yes, second run over same mountpoint/ file pair will fail ...



2. blocks=((size-in-bytes/2048 + 4096))

(9111552/2048) + 4096 = 8545

3. mkudffs /tmp/newfilename.udfs blocks

mkudffs /tmp/out


I think the first manual generic step should be better corrected to(?)

1. du -sb /<path>/yourHDVfile.MTS

because /yourHDVfile.MTS is a filename located at /

(Although I usual prefere and find it simplest to make the "filedir" local first by typing
cd /<path> )

umount /mntX
rmdir /mntX
rm /tmp/output_mts.udfs
mkdir /mntX

mkudffs /tmp/output_mts.udfs 8545

filename=/tmp/output_mts.udfs
label=LinuxUDF
uuid=6368efc6e3403a65
blocksize=2048
blocks=8545
udfrev=201
start=0, blocks=16, type=RESERVED
start=16, blocks=3, type=VRS
start=19, blocks=237, type=USPACE
start=256, blocks=1, type=ANCHOR
start=257, blocks=16, type=PVDS
start=273, blocks=1, type=LVID
start=274, blocks=8014, type=PSPACE
start=8288, blocks=1, type=ANCHOR
start=8289, blocks=239, type=USPACE
start=8528, blocks=16, type=RVDS
start=8544, blocks=1, type=ANCHOR

mount -o loop /tmp/output_mts.udfs /mntX

bdwrite /mntX /home/terje/Videoklipp/output.mts
interlace probe failed

tree -h /mntX/BDMV

/mntX/BDMV
├── [  40]  AUXDATA
├── [ 224]  BACKUP
│   ├── [  40]  BDJO
│   ├── [  40]  CLIPINF
│   ├── [  40]  JAR
│   └── [  40]  PLAYLIST
├── [  40]  BDJO
├── [  40]  CLIPINF
├── [  40]  JAR
├── [  40]  META
├── [  40]  PLAYLIST
└── [  40]  STREAM

12 directories, 0 files



To verify this, could you kindly dual-repeat my steps and see if you get the same results?


If required for Bluray image, how to possibly de-interlace the hdv.mts file?