ubuntuusers.de

Teletext aus .ts Datei extrahieren

Status: Ungelöst | Ubuntu-Version: Kubuntu 22.04 (Jammy Jellyfish)
Antworten |

gerold123

Avatar von gerold123

Anmeldungsdatum:
18. April 2006

Beiträge: 1323

Wohnort: /Wild/Eastern/Europe

Hallo,

ist es möglich aus einer .ts Datei den Videotext zu extrahieren? Und wenn ja, wie. (als .pdf oder ähnlich) Danke

mediainfo:

mediainfo 'vlc-record-2024-08-23-06h49m24s-CH_ SRF Zwei-.ts'
General
ID                                       : 1 (0x1)
Complete name                            : vlc-record-2024-08-23-06h49m24s-CH_ SRF Zwei-.ts
Format                                   : MPEG-TS
File size                                : 102 MiB
Duration                                 : 3 min 16 s
Overall bit rate mode                    : Variable
Overall bit rate                         : 4 346 kb/s

Video
ID                                       : 256 (0x100)
Menu ID                                  : 1 (0x1)
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Format profile                           : High@L3.2
Format settings                          : CABAC / 4 Ref Frames
Format settings, CABAC                   : Yes
Format settings, Reference frames        : 4 frames
Format settings, GOP                     : M=8, N=24
Codec ID                                 : 27
Duration                                 : 3 min 16 s
Bit rate                                 : 3 679 kb/s
Width                                    : 1 280 pixels
Height                                   : 720 pixels
Display aspect ratio                     : 16:9
Frame rate                               : 50.000 FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : Progressive
Bits/(Pixel*Frame)                       : 0.080
Stream size                              : 86.3 MiB (85%)

Audio
ID                                       : 257 (0x101)
Menu ID                                  : 1 (0x1)
Format                                   : AC-3
Format/Info                              : Audio Coding 3
Commercial name                          : Dolby Digital
Codec ID                                 : 129
Duration                                 : 3 min 16 s
Bit rate mode                            : Constant
Bit rate                                 : 448 kb/s
Channel(s)                               : 6 channels
Channel layout                           : L R C LFE Ls Rs
Sampling rate                            : 48.0 kHz
Frame rate                               : 31.250 FPS (1536 SPF)
Compression mode                         : Lossy
Delay relative to video                  : -85 ms
Stream size                              : 10.5 MiB (10%)
Language                                 : German
Service kind                             : Complete Main

Text
ID                                       : 258 (0x102)-777
Menu ID                                  : 1 (0x1)
Format                                   : Teletext Subtitle
Language                                 : German

Other
ID                                       : 258 (0x102)-100
Menu ID                                  : 1 (0x1)
Format                                   : Teletext
Language                                 : German

Menu
ID                                       : 4096 (0x1000)
Menu ID                                  : 1 (0x1)
Duration                                 : 3 min 16 s
List                                     : 256 (0x100) (AVC) / 257 (0x101) (AC-3, German) / 258 (0x102)-100 (Teletext, de) / 258 (0x102)-777 (Teletext Subtitle, de)
Language                                 :  / German / German / German
Service name                             : Service01
Service provider                         : FFmpeg
Service type                             : digital television

vlc:

23.08.2024-06.48.57.avif (247.1 KiB)
Download 23.08.2024-06.48.57.avif

micneu

Avatar von micneu

Anmeldungsdatum:
19. Januar 2021

Beiträge: 697

Wohnort: Hamburg

* Was genau hast du denn schon probiert

  • Was sagt denn google (ich wüsste jetzt nicht nach welchen begriffen ich suchen müsste)

  • Da ich so eine Datei NICHT habe könnte ich es NICHT testen

Marantkurz

Anmeldungsdatum:
7. September 2023

Beiträge: 785

@gerold123

Mit ffmpeg kannst Du den Textstream rausziehen.

Und wenn ja, wie. (als .pdf oder ähnlich)

Verstehe ich nicht, soll das dann eine einzelne Tafel etwa als Bild sein, oder was..?

gerold123

(Themenstarter)
Avatar von gerold123

Anmeldungsdatum:
18. April 2006

Beiträge: 1323

Wohnort: /Wild/Eastern/Europe

Als farbiger Text würde reichen. Also keine Bilder. Dient eh nur zum Test.

dirkolus

Anmeldungsdatum:
17. Mai 2011

Beiträge: 2173

Wohnort: dahoam

Marantkurz schrieb:

@gerold123

Mit ffmpeg kannst Du den Textstream rausziehen.

Google ist Dein Freund: https://www.martin-riedl.de/2021/07/02/extract-subtitles-from-teletext-via-ffmpeg/

gerold123

(Themenstarter)
Avatar von gerold123

Anmeldungsdatum:
18. April 2006

Beiträge: 1323

Wohnort: /Wild/Eastern/Europe

Ich habe mal im laufenden Programm SRF2 mit UT auf Seite 777 die Aufnahme gestartet. Im Livemodi werden selbstverständlich die UT angezeigt. Ein Extrahieren aus der Aufnahme funktioniert auch:

tuxracer@kubuntu:~/Downloads$ ffmpeg -txt_format text -txt_page 777 -i vlc-record-2024-08-24-10h39m28s-CH_\ SRF\ Zwei-.ts outputSubtitles.ger.srt
ffmpeg version 4.4.2-0ubuntu0.22.04.1+esm4 Copyright (c) 2000-2021 the FFmpeg developers
  built with gcc 11 (Ubuntu 11.4.0-1ubuntu1~22.04)
  configuration: --prefix=/usr --extra-version=0ubuntu0.22.04.1+esm4 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-pocketsphinx --enable-librsvg --enable-libmfx --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared
  libavutil      56. 70.100 / 56. 70.100
  libavcodec     58.134.100 / 58.134.100
  libavformat    58. 76.100 / 58. 76.100
  libavdevice    58. 13.100 / 58. 13.100
  libavfilter     7.110.100 /  7.110.100
  libswscale      5.  9.100 /  5.  9.100
  libswresample   3.  9.100 /  3.  9.100
  libpostproc    55.  9.100 / 55.  9.100
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
[h264 @ 0x55f9c27eb180] non-existing PPS 0 referenced
    Last message repeated 1 times
[h264 @ 0x55f9c27eb180] decode_slice_header error
[h264 @ 0x55f9c27eb180] no frame!
Input #0, mpegts, from 'vlc-record-2024-08-24-10h39m28s-CH_ SRF Zwei-.ts':
  Duration: 00:10:42.08, start: 16202.700000, bitrate: 5940 kb/s
  Program 1 
    Metadata:
      service_name    : Service01
      service_provider: FFmpeg
  Stream #0:0[0x100]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p(progressive), 1280x720 [SAR 1:1 DAR 16:9], 50 fps, 50 tbr, 90k tbn, 100 tbc
  Stream #0:1[0x101](deu): Audio: ac3 ([129][0][0][0] / 0x0081), 48000 Hz, 5.1(side), fltp, 448 kb/s
  Stream #0:2[0x102](deu,deu): Subtitle: dvb_teletext ([6][0][0][0] / 0x0006), 492x250
Output #0, srt, to 'outputSubtitles.ger.srt':
  Metadata:
    encoder         : Lavf58.76.100
  Stream #0:0(deu,deu): Subtitle: subrip, 492x250
    Metadata:
      encoder         : Lavc58.134.100 srt
Stream mapping:
  Stream #0:2 -> #0:0 (dvb_teletext (libzvbi_teletextdec) -> subrip (srt))
Press [q] to stop, [?] for help
Subtitle packets must have a pts bitrate=N/A speed=N/A    
size=      12kB time=00:10:35.00 bitrate=   0.2kbits/s speed=1.93e+03x    
video:0kB audio:0kB subtitle:7kB other streams:0kB global headers:0kB muxing overhead: 83.663727%

gleich:

tuxracer@kubuntu:~/Downloads$ cat outputSubtitles.ger.srt 
1
00:00:02,100 --> 1193:02:49,395
Wir sind extrem
mit dem Ausland verwoben.

2
00:00:05,700 --> 1193:02:52,995
Darum wäre ein Obligatorium

3
00:00:07,900 --> 1193:02:55,195
auf nur einer Strecke
in der Schweiz unrealistisch.

4
00:00:12,300 --> 1193:02:59,595
Auch die Bahngüterbranche
ist skeptisch:

5
00:00:18,100 --> 1193:03:05,395
Wir haben in Europa
650'000 Güterwägen.

6
00:00:21,700 --> 1193:03:08,995
Die Umrüstung mit einem Detektor
ist im Moment eine Situation,

7
00:00:27,800 --> 1193:03:15,095
bei der man merkt,
dass sie nicht mehrheitsfähig ist.

#Ausgabe gekürzt

140
00:08:11,600 --> 1193:10:58,895
Auf diesem Sender
geht es jetzt weiter

141
00:08:14,200 --> 1193:11:01,495
mit den Kolleg/-innen von "10 vor 10"

142
00:08:16,400 --> 1193:11:03,695
und aktuellen Hintergründen
des Tages.

143
00:08:18,400 --> 1193:11:05,695
Ich wünsche Ihnen
einen schönen Abend, auf Wiedersehen.

144
00:08:24,500 --> 1193:11:11,795
SWISS TXT / Accessibility Services
puretype gmbh

Mit dem gleichen Prozedere lassen sich auch andere Teletextseiten speichen. Alles noch nicht perfekt, aber immerhin:

1
00:00:01,500 --> 1193:02:48,795
  
  TELETEXT
  SRF ZWEI
 
 
Solingen: Tote bei Messerangriff 133
Zahlreiche Feuer in Brasilien... 136
ISR: Neuer Fluchtaufruf für Gaza 134
Leverkusen startet mit Sieg..... 183
Van Aert gewinnt - Küng Vierter. 186
Jetzt auf SRF zwei
10:10 Einstein/UT...............  734
10:50 Knochenjobs/UT............  735
11:40 My India - Ein Trip mit/UT  725
12:30 Magie der Märchen/UT......  726
KURZÜBERSICHT                    101
 INLAND     104  SPORT        180
 AUSLAND    130  METEO        500
 WIRTSCHAFT 150  TV&RADIO     700

2
00:00:05,600 --> 1193:02:52,895
  
  TELETEXT
  SRF ZWEI
 
 
Solingen: Tote bei Messerangriff 133
Zahlreiche Feuer in Brasilien... 136
ISR: Neuer Fluchtaufruf für Gaza 134
Leverkusen startet mit Sieg..... 183
Van Aert gewinnt - Küng Vierter. 186
Jetzt auf SRF zwei
10:10 Einstein/UT...............  734
10:50 Knochenjobs/UT............  735
11:40 My India - Ein Trip mit/UT  725
12:30 Magie der Märchen/UT......  726
KURZÜBERSICHT                    101
 INLAND     104  SPORT        180
 AUSLAND    130  METEO        500
 WIRTSCHAFT 150  TV&RADIO     700
recordsrt.avif (372.2 KiB)
Download recordsrt.avif

dirkolus

Anmeldungsdatum:
17. Mai 2011

Beiträge: 2173

Wohnort: dahoam

Hi Gerold,

Das schaut doch schon gut aus!

Für Sprachen und Grafik kannst Du jetzt die Sonderzeichen in den Specs nachsehen (ETSI Standard oder Wikipedia) oder Du schaust Dir gleich einen Interpreter an.

Antworten |