Open Avonna opened 1 year ago
Здравствуйте.
Спасибо. Крутыми были вот эти дядьки %)
[...] жаль, что только видео без звука скачивает.
Не наблюдал такой проблемы. Проверьте сторонней программой, есть ли в получившемся файле аудио-дорожка. Если есть, то проверьте, установлен ли в системе кодек для этого формата дорожки. Если дорожки нет, то это звучит загадочно и можно пробовать 1. другую лекцию; 2. удостовериться, что в отдаваемых сайтом ts файлах дорожка есть.
Здравствуйте. Спасибо, что ответили. Не ожидала, если честно. Это большая честь для меня, получить от Вас ответ. Благодарю от всей души.
Спасибо. Крутыми были вот эти дядьки %)
За шикарное чувство юмора - отдельные звезды!!!
По поводу звука в скачиваемых файлах достоверно ответить не могу, потому что реально новичок, знатный рукожоп и пенсионерка в одном лице (прошу прощения за это). Ваш код запускаю в colab (вдруг это важно), в jupiter через анаконду не запускается. Затем просто скачиваю готовый файл.
Если вдруг у Вас будет время и возможность проверить, то вот, например, вот эти ссылки. Можете ли подсказать, что именно я делаю не так? Я буду очень Вам благодарна.
а) https://events.webinar.ru/28373707/165353927/record-new/1775044077
https://events-delivery-records.webinar.ru/streamer/default/storage/events-storage.webinar.ru/api-storage/files/wowza/2022/11/19/c0efeca1da5329d90416df4ae6593dbb92ba5ac60d8f8a29f2d995ac55c.mp4/chunklist.m3u8 Только видео, но без звука
А если https://events-delivery-records.webinar.ru/streamer/default/storage/events-storage.webinar.ru/api-storage/files/wowza/2022/11/19/262e9c74304a71348cebcc16538ee4ab2556e58b7d434fb2f2d99ec5676.mp4/chunklist.m3u8 есть звук, но без видео.
Где именно я ошибаюсь и как это можно исправить?
Благодарю и хорошего Вам дня. С глубочайшим уважением и признательностью, Оксана.
По поводу звука в скачиваемых файлах достоверно ответить не могу, потому что реально новичок, знатный рукожоп и пенсионерка в одном лице (прошу прощения за это).
Теряюсь, когда вижу «рукожоп» и «пенсионерка» в одном предложении.
Если вдруг у Вас будет время и возможность проверить, то вот, например, вот эти ссылки.
Тут нужна была бы ссылка на исходную страницу, а не на те, что видны в консоли. Так или иначе, курс, я вижу уже не доступен, поэтому там пустой экран и нет звука.
Получить информацию о созданном файле можно при помощи ffmpeg:
$ ffprobe -v quiet -print_format json -show_format -show_streams myfile.mp4
Здравствуйте ! А как найти chunklist.m3u8, обычным поиском не находит? Можно для новичка объяснить ?))) record_new находит сразу, chunklist.m3u8 нет. Использую chrome. Проверял дополнительно на разных ссылках. типа https://events.webinar.ru/
@bobka-dv
Здравствуйте ! А как найти chunklist.m3u8, обычным поиском не находит?
Здравствуйте.
Поскольку ваш вопрос не относится к обсуждавшейся здесь проблеме, для него следовало бы завести новую задачу (https://github.com/idlesign/webinardump/issues/new/choose).
А про использование написано тут: https://github.com/idlesign/webinardump#использование Что значит «обычный поиск» в данном контексте, увы, непонятно. В инструкции речь шла о необходимости перехода сначала на страницу с конкретным вебинаром.
поимел ту же проблему только с youtube-dl. выглядит как баг в ffmpeg или опциях его.
исходный чанк
ffprobe -v quiet -print_format json -show_format -show_streams media_359.ts
{
"streams": [
{
"index": 0,
"codec_name": "timed_id3",
"codec_long_name": "timed ID3 metadata",
"codec_type": "data",
"codec_tag_string": "ID3 ",
"codec_tag": "0x20334449",
"id": "0x102",
"r_frame_rate": "0/0",
"avg_frame_rate": "0/0",
"time_base": "1/90000",
"start_pts": 341140770,
"start_time": "3790.453000",
"duration_ts": 547020,
"duration": "6.078000",
"disposition": {
"default": 0,
"dub": 0,
"original": 0,
"comment": 0,
"lyrics": 0,
"karaoke": 0,
"forced": 0,
"hearing_impaired": 0,
"visual_impaired": 0,
"clean_effects": 0,
"attached_pic": 0,
"timed_thumbnails": 0
}
},
{
"index": 1,
"codec_name": "h264",
"codec_long_name": "H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10",
"profile": "Constrained Baseline",
"codec_type": "video",
"codec_tag_string": "[27][0][0][0]",
"codec_tag": "0x001b",
"width": 1920,
"height": 1080,
"coded_width": 1920,
"coded_height": 1080,
"closed_captions": 0,
"has_b_frames": 0,
"pix_fmt": "yuv420p",
"level": 42,
"chroma_location": "left",
"field_order": "progressive",
"refs": 1,
"is_avc": "false",
"nal_length_size": "0",
"id": "0x100",
"r_frame_rate": "1/1",
"avg_frame_rate": "0/0",
"time_base": "1/90000",
"start_pts": 341140770,
"start_time": "3790.453000",
"duration_ts": 547020,
"duration": "6.078000",
"bits_per_raw_sample": "8",
"disposition": {
"default": 0,
"dub": 0,
"original": 0,
"comment": 0,
"lyrics": 0,
"karaoke": 0,
"forced": 0,
"hearing_impaired": 0,
"visual_impaired": 0,
"clean_effects": 0,
"attached_pic": 0,
"timed_thumbnails": 0
}
}
],
"format": {
"filename": "media_359.ts",
"nb_streams": 2,
"nb_programs": 1,
"format_name": "mpegts",
"format_long_name": "MPEG-TS (MPEG-2 Transport Stream)",
"start_time": "3790.453000",
"duration": "6.078000",
"size": "152656",
"bit_rate": "200929",
"probe_score": 50
}
}
то как склеилось
ffprobe -v quiet -print_format json -show_format -show_streams chunklist-chunklist.mp4
{
"streams": [
{
"index": 0,
"codec_name": "h264",
"codec_long_name": "H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10",
"profile": "Constrained Baseline",
"codec_type": "video",
"codec_tag_string": "avc1",
"codec_tag": "0x31637661",
"width": 1920,
"height": 1080,
"coded_width": 1920,
"coded_height": 1080,
"closed_captions": 0,
"has_b_frames": 0,
"pix_fmt": "yuv420p",
"level": 42,
"chroma_location": "left",
"refs": 1,
"is_avc": "true",
"nal_length_size": "4",
"r_frame_rate": "1/1",
"avg_frame_rate": "19666000/3796531",
"time_base": "1/90000",
"start_pts": 0,
"start_time": "0.000000",
"duration_ts": 341687790,
"duration": "3796.531000",
"bit_rate": "144848",
"bits_per_raw_sample": "8",
"nb_frames": "19666",
"disposition": {
"default": 1,
"dub": 0,
"original": 0,
"comment": 0,
"lyrics": 0,
"karaoke": 0,
"forced": 0,
"hearing_impaired": 0,
"visual_impaired": 0,
"clean_effects": 0,
"attached_pic": 0,
"timed_thumbnails": 0
},
"tags": {
"language": "und",
"handler_name": "VideoHandler",
"vendor_id": "[0][0][0][0]"
}
}
],
"format": {
"filename": "chunklist-chunklist.mp4",
"nb_streams": 1,
"nb_programs": 0,
"format_name": "mov,mp4,m4a,3gp,3g2,mj2",
"format_long_name": "QuickTime / MOV",
"start_time": "0.000000",
"duration": "3796.531000",
"size": "68974407",
"bit_rate": "145341",
"probe_score": 100,
"tags": {
"major_brand": "isom",
"minor_version": "512",
"compatible_brands": "isomiso2avc1mp41",
"encoder": "Lavf58.76.100"
}
}
}
ffmpeg -i media_0.ts -c copy -bsf:v h264_mp4toannexb -f mpegts temp1.ts
ffmpeg version 4.4.4 Copyright (c) 2000-2023 the FFmpeg developers
built with Apple clang version 13.1.6 (clang-1316.0.21.2.5)
configuration: --prefix=/opt/local --cc=/usr/bin/clang --mandir=/opt/local/share/man --enable-audiotoolbox --disable-indev=jack --disable-libjack --disable-libopencore-amrnb --disable-libopencore-amrwb --disable-libxcb --disable-libxcb-shm --disable-libxcb-xfixes --enable-opencl --disable-outdev=xv --enable-sdl2 --disable-securetransport --enable-videotoolbox --enable-avfilter --enable-avresample --enable-fontconfig --enable-gnutls --enable-libass --enable-libbluray --enable-libdav1d --enable-libfreetype --enable-libfribidi --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-librsvg --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libzimg --enable-libzvbi --enable-lzma --enable-pthreads --enable-shared --enable-swscale --enable-zlib --enable-libaom --enable-libsvtav1 --arch=x86_64 --enable-x86asm --enable-gpl --enable-libvidstab --enable-libx264 --enable-libx265 --enable-libxvid --enable-postproc
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
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 9.100 / 5. 9.100
libswresample 3. 9.100 / 3. 9.100
libpostproc 55. 9.100 / 55. 9.100
[mpegts @ 0x7fbbe200ae00] start time for stream 0 is not set in estimate_timings_from_pts
Input #0, mpegts, from 'media_0.ts':
Duration: 00:00:10.07, start: 0.000000, bitrate: 56 kb/s
Program 1
Stream #0:0[0x102]: Data: timed_id3 (ID3 / 0x20334449)
Stream #0:1[0x100]: Video: h264 (Constrained Baseline) ([27][0][0][0] / 0x001B), yuv420p(progressive), 1920x1080, 1 tbr, 90k tbn, 180k tbc
Output #0, mpegts, to 'temp1.ts':
Metadata:
encoder : Lavf58.76.100
Stream #0:0: Video: h264 (Constrained Baseline) ([27][0][0][0] / 0x001B), yuv420p(progressive), 1920x1080, q=2-31, 1 tbr, 90k tbn, 90k tbc
Stream mapping:
Stream #0:1 -> #0:0 (copy)
Press [q] to stop, [?] for help
frame= 8 fps=0.0 q=-1.0 Lsize= 74kB time=00:00:09.07 bitrate= 66.7kbits/s speed=1.98e+04x
video:67kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 10.037564
вот так и теряется аудио.
@a-lyashkov как так? поясните, пожалуйста. Что сделать что б не терялось видео.
Здравствуйте!
Вы очень крутой! Хотела бы выразить мою искреннюю признательность Вашему творчеству. Смотрю на Ваши коды - и восхищаюсь! Это супер!!! Меня, как полного новичка, очень вдохновляют Ваши мысли развиваться и двигаться дальше.
Классный код для скачивания с вебинар. ру, жаль, что только видео без звука скачивает. Или я что-то делаю не так, но только видео качает, а звука нет. А так вообще улет! Вы - супер!!!