Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу. раздают патченный xine-lib для coreavc
СoreAVC for Linux (Патчи для MPlayer, mythtv, xine)
- Goga777
- Вопрос темы решён
-
-
еще один vdr-энтузиаст и ярый сторонник hdtv - Morfsta выпустил один-единственный кумулятивный
Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.резюме его такое - Связка coreavc patch + xine-lib + vdr-xine вполне стабильная, и является громадным (vast) улучшением по сравнению с ffmpeg. Он даже купил за 15долларов официальный coreavc. Примечательно, что Darren Salt - главный разработчик и идеолог xine дал свои комментарии по этому поводу.
Цитата
Hi,Attached is a patch to enable decoding of H264 video streams using the
CoreAVC Win32 DLL, the latest HG clone of xine-lib and Reinhard's
vdr-xine and of course VDR. CoreAVC is a commercial and fast
software-based H264 decoder.To make this work: -
1) Download the latest mercurial xine-lib (hg clone
Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.)
2) Patch it (cd xine-lib-1.2 ; patch -p 1 < xine-lib-1.2hg-coreavc.diff)
3) Make and install it in your usual way (e.g. ./autogen.sh
--disable-dxr3 ; make ; make install). You might want to remove old
xine-lib first (rm /usr/local/lib/libxine* ; rm -rf
/usr/local/lib/xine)
4) Make and install xine-ui (skip if already installed)
5) mkdir /usr/lib/win32
6) Put CoreAVCDecoder.ax (version 1.5.0 is the only version I can get
working - the version I have is called coreavcdecoder_unpacked.ax) in
/usr/lib/win32
7) Remove the old external ff decoder references (rm
/usr/local/lib/xine/plugins/2.0/xineplug_decode_ff.so ; rm
/usr/local/lib/xine/plugins/2.0/xineplug_decode_qt.so)
Start VDR -Pxine
9) Run xine (xine -f -pq -I -V xv -A alsa --post vdr_video --post
vdr_audio -Dtvtime:method=Greedy2Frame,cheap_mode=0,pulldown=0,use_progressive_frame_flag=1
vdr://tmp/vdr-xine/stream#demux:mpeg_pes)You can also tweak some of the CoreAVC settings. See this page for
more details: -Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.
but change ~/.mplayer/registry32 with ~/.xine/win32registry.
Note, to increase performance I have disabled the xine de-interlacer
for H264 streams as by default the CoreAVC deinterlacer is enabled. I
don't think it's as good as the xine de-interlacer, but if you want to
try re-enable xine deint on your CPU (too slow on my 2.6Ghz dual core)
then edit xine's src/libw32dll/w32codec.c and re-enable "int field =
VO_BOTH_FIELDS | VO_INTERLACED_FLAG;" and comment out "int field =
VO_BOTH_FIELDS;"Then you can disable CoreAVC's deinterlacer using the instructions on
code.google.com (registercodec -r ~/.xine/win32registry -k
"HKEY_CURRENT_USER\\Software\\CoreCodec\\CoreAVC Pro\\Deinterlace" -v
3 -t dword)Note, I haven't written the majority of this patch, it has been
pulled together from about 4 other patches (budice's work on DVBN and
the google code site itself). I have added code to automatically
detect the size of the H264 stream and to set the aspect ratio of the
resultant picture as well as making it apply cleanly (hopefully!) to
today's HG of xine.Therefore, the code is nothing more than a total hack and will not
likely see inclusion in xine in it's current form. There is currently
H264 parsing occurring in the demuxer which is probably a "bad thing",
it should be moved out of there. Additionally, I have added a new
variable to the BITMAPINFOHEADER to pass the ratio from the demuxer to
the codec source which is also not ideal, but hey, it works!It has been pretty stable for me over the last few days and is a vast
improvement over FFMPEG.Finally, I urge you to go and BUY CoreAVC (Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.) if
you are using this patch - it's only 15USD.Let me know if there are any problems and good luck!
Cheers,
Morfsta
-
вот что проскочило на форуме Coreavc
Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.Цитата
I am the author of CoreAVC for Linux.Regardless of the cause, CoreCodec and I have resolved the conflict, and CoreAVC-for-Linux should be back online soon. In addition, the patches for 1.7.0 are ready to go, and Linux users should see a nice performance improvement on Dual-core machines (compared to 1.5.0) once it is available.
anisota
так что ждем-с coreavc-for-linux 1.7.0
-
который не замедлил себя ждать
hXXp://dvbn.happysat.org/viewtopic.php?t=46250&postdays=0&postorder=asc&start=15 -
Цитата
Компании Google пришлось закрыть проект CoreAVC-for-Linux после получения жалобы в соответствии с законом об авторских правах в цифровую эпоху (DMCA).CoreAVC представляет собой проприетарный кодек для операционных систем Microsoft Windows, предназначенный для работы с высококачественным видео в формате H.264. Кодек разрабатывается компанией CoreCodec и на сегодняшний день считается одним из самых лучших и эффективных решений в своем классе. CoreCodec обеспечивает более высокую производительность по сравнению с открытыми аналогами, однако в зависимости от модификации стоит от 8 до 15 долларов.
В рамках проекта CoreAVC-for-Linux предлагались специальные патчи, позволяющие использовать кодек CoreAVC вместе с медиаплеерами для операционных систем Linux, такими как mplayer, mythtv и xine. Такое положение дел, по всей видимости, не понравилось авторам CoreAVC, и в Google была направлена жалоба с обвинениями в нарушении закона DMCA.
CNET News отмечает, что пока не совсем ясно, от кого именно исходит жалоба. В Google какие-либо комментарии также не дают. На сайте CoreAVC-for-Linux размещена лишь лаконичная надпись, гласящая о том, что проект был закрыт в ответ на претензии в соответствии с законом DMCA. Для получения дополнительной информации Google предлагает посетить сайт ChillingEffects.org, однако материалы по указанной ссылке на момент написания заметки отсутствовали.
все хорошо, что хорошо заканчивается - проект снова жив
Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу. -
на Гугле создана группа, посвященная coreavc-for-Linux
Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.Подписка на нее - пустое письмо на адрес
coreavc-for-linux-subscribe@googlegroups.com -
свежеиспеченные патчи для xine
Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.Цитата
coreavc-xine-1.1.11.patch - main patch (might be the same as the one
in SVN?)
coreavc-xine-1.1.12_more.patch - noone's coreavc 1.7 updates + proper
h264 video detection in mpeg-ts
demux_ts_fixes.patch - more mpeg-ts demuxer fixes
h264_pes.patch - h264 in mpeg-pes detection fix (needed for
xineliboutput/streamdev)никаких опций при конфигурировании и компиляции xine-lib указывать не надо.
Проверьте только, чтобы в config былоengine.decoder_priorities.win32v:1
или другая цифра больше нуля.У меня патчи наложились нормально, xine-1.1.12 скомпилился тоже нормально, теперь надо найти сам coreavc 1.7.0
-
Цитата
Со слов пользователя Courage
попробовать с кореавц конечно надо - но я немного не понимаю как его подцепить -
вернее не понимаю идеологию - к чему он подцепляется в конечном счете - видимо к тому же
ffmpeg как внешний кодек?нет, ксайн использует кореавк как внешний win32 кодек (в конфиге ксайна надо это прописать - смотри мой предыдущий пост)
Цитата
вообще буду благодарен за ссылки на какое нибудь подробное
руководство по имплепентации сего чудавчера я дал ссылки на патчи - ставишь их последовательно на xine 1.1.12, потом уговариваешь сам coreavc 170
Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу. -
hXXp://slil.ru/25769897
пароль - 777 -
Цитата
Со слов пользователя Walery
нет, они для xine не нужны. только для мплеера и mythт.е. можно использовать оригинальный coreavcdecoder.ax без всяких уговоров, кейгенов и хаков ?
(на инсталлер я дал линк)
или надо искать уговоренную версию этого файла ? -
Цитата
Со слов пользователя Goga777
т.е. можно использовать оригинальный coreavcdecoder.ax без всяких уговоров, кейгенов и хаков ?
(на инсталлер я дал линк)
или надо искать уговоренную версию этого файла ?Это актуально для старой - 1.5 версии ломаной и распакованной. С новой - пока не знаю, возможно нужно по инструкции делать.
-
да, ответили мне в рассылке - надо делать по инструкции
Цитата
registercodec -r ~/.xine/win32registry -k "HKLM\\Software\\CoreCodec\
\CoreAVC Pro\\Serial" -v "XXXXX-XXXXX-CORE-XXXXX-XXXXX"пошел качать Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу. - там этот самый registercodec и находится.
-
зарегил, запустил таки. Пока - плохо.
На вдр h264 каналы с кореавк совсем не показывают.
лог вдр
May 8 22:32:34 localhost vdr: [5335] switching to channel 1
May 8 22:32:34 localhost vdr: [5518] transfer thread ended (pid=5335, tid=5518)
May 8 22:32:34 localhost vdr: [5335] cTS2PES got 0 TS errors, 1 TS continuity errors
May 8 22:32:34 localhost vdr: [5335] buffer stats: 167132 (7%) used
May 8 22:32:34 localhost vdr: [5621] transfer thread started (pid=5335, tid=5621)
May 8 22:32:34 localhost vdr: [5339] ERROR (dvbdevice.c,302): Invalid argument
May 8 22:32:34 localhost kernel: dvb_frontend_ioctl: FESTATE_RETUNE: fepriv->state=2
May 8 22:32:35 localhost vdr: [5520] TS buffer on device 1 thread ended (pid=5335, tid=5520)
May 8 22:32:35 localhost vdr: [5519] buffer stats: 123892 (5%) used
May 8 22:32:35 localhost vdr: [5519] receiver on device 1 thread ended (pid=5335, tid=5519)
May 8 22:32:35 localhost vdr: [5622] receiver on device 1 thread started (pid=5335, tid=5622)
May 8 22:32:35 localhost vdr: [5623] TS buffer on device 1 thread started (pid=5335, tid=5623)
May 8 22:32:35 localhost vdr: [5621] cVideoRepacker: operating in H.264 modeлог ксайна
waiting for in_discontinuity update #11
--- CLEAR(-4b)
vpts adjusted with prebuffer to 3174830
vdr: osdflush: n: 1, 10.0, timeout: 0, result: 0
set_speed 125000
video discontinuity #12, type is 2, disc_off 7174763838
waiting for audio discontinuity #12
audio discontinuity #12, type is 2, disc_off 7174763838
waiting for in_discontinuity update #12
vpts adjusted with prebuffer to 3189397
load_plugins: plugin win32v will be used for video streamtype 4d.
load_plugins: plugin a/52 will be used for audio streamtype 00.
audio_alsa_out:open pause_resume=0
output sample rate 48000
audio jump, diff=56958
set_speed 1000000
vdr: osdflush: n: 1, 10.6, timeout: 0, result: 0
set_speed 125000
set_speed 1000000
fixing sound card drift by -3482 pts
fixing sound card drift by -2611 pts
set_speed 125000
set_speed 1000000
fixing sound card drift by -2827 pts
fixing sound card drift by -2123 pts
fixing sound card drift by -1596 ptsСтарые р264 hdtv ts записи тоже на нем не пошли.
xine_play
play_internal ...done
demux_ts: found ISO 639 lang: ita
demux_ts: found ISO 639 lang: eng
load_plugins: plugin win32v will be used for video streamtype 4d.
video discontinuity #2, type is 2, disc_off 5024746955
waiting for audio discontinuity #2
audio discontinuity #2, type is 2, disc_off 5024746955
waiting for in_discontinuity update #2
INIT H264
INIT
w32codec: init DirectShow/DMO video codec...
External func OLEAUT32.dll:19
Called unk_IsDebuggerPresent
load_plugins: plugin mad will be used for audio streamtype 01.
audio_alsa_out:open pause_resume=0
output sample rate 48000
audio jump, diff=59086
External func oleaut32.dll:19
External func oleaut32.dll:24
External func oleaut32.dll:417
External func oleaut32.dll:4
External func oleaut32.dll:8
External func oleaut32.dll:23
External func oleaut32.dll:9
External func oleaut32.dll:20
Using DirectShow codec: CoreAVCDecoder.ax
Decoder supports the following YUV formats: YUY2 UYVY YV12 I420
Decoder is capable of YUV output (flags 0x2b)
video jump
video_out: throwing away image with pts 30460 because it's too old (diff : 22135).
video_out: throwing away image with pts 34180 because it's too old (diff : 29824).
video_out: throwing away image with pts 37896 because it's too old (diff : 30109).
video_out: throwing away image with pts 41608 because it's too old (diff : 35158).
video_out: throwing away image with pts 45556 because it's too old (diff : 35446).
video_out: throwing away image with pts 50212 because it's too old (diff : 38582).
fixing sound card drift by 3378 pts
200 frames delivered, 193 frames skipped, 6 frames discarded
200 frames delivered, 200 frames skipped, 0 frames discarded
200 frames delivered, 200 frames skipped, 0 frames discarded
demux_ts: PID 0x0064: unexpected cc 3 (expected 2)
demux_ts: PID 0x0064: unexpected cc 9 (expected 11)
demux_ts: PID 0x0066: unexpected cc 8 (expected 7)
demux_ts: PID 0x0065: unexpected cc 13 (expected 12)
demux_ts: PID 0x0064: unexpected cc 13 (expected 11)
demux_ts: PID 0x0064: unexpected cc 4 (expected 15)
demux_ts: PID 0x0065: unexpected cc 10 (expected
demux_ts: PID 0x0064: unexpected cc 3 (expected 12)
demux_ts: PID 0x0066: unexpected cc 13 (expected 11)
demux_ts: PID 0x0065: unexpected cc 2 (expected 1)
demux_ts: PID 0x0064: unexpected cc 4 (expected 2)
demux_ts: PID 0x0064: unexpected cc 1 (expected
demux_ts: PID 0x0066: unexpected cc 14 (expected 13)
demux_ts: PID 0x0065: unexpected cc 4 (expected 3)
demux_ts: PID 0x0064: unexpected cc 7 (expected 5)
demux_ts: PID 0x0064: unexpected cc 4 (expected 2)
demux_ts: PID 0x0064: unexpected cc 6 (expected 14)
demux_ts: PID 0x0065: unexpected cc 6 (expected 4)
demux_ts: PID 0x0064: unexpected cc 9 (expected 1)
demux_ts: PID 0x0066: unexpected cc 10 (expected 9)
demux_ts: PID 0x0065: unexpected cc 15 (expected 14)
demux_ts: PID 0x0064: unexpected cc 15 (expected 11)
demux_ts: PID 0x0064: unexpected cc 4 (expected 1)
demux_ts: PID 0x0064: unexpected cc 1 (expected 7)
demux_ts: PID 0x0064: unexpected cc 13 (expected 12)
demux_ts: PID 0x0064: unexpected cc 15 (expected 12)
demux_ts: PID 0x0064: unexpected cc 5 (expected 2)
demux_ts: PID 0x0064: unexpected cc 3 (expected 1)
200 frames delivered, 200 frames skipped, 0 frames discarded
demux_ts: PID 0x0064: unexpected cc 10 (expected 9)
demux_ts: PID 0x0064: unexpected cc 3 (expected 1)
demux_ts: PID 0x0064: unexpected cc 5 (expected 3)
demux_ts: PID 0x0064: unexpected cc 14 (expected 11)
demux_ts: PID 0x0064: unexpected cc 4 (expected 3)load_plugins: probing demux 'mp3'
load_plugins: probing demux 'elem'
xine: found demuxer plugin: Elementary MPEG stream demux plugin
ao_close
Total Unfree 28386132 bytes cnt 49 [(nil),0]
load_plugins: plugin mpeg2 will be used for video streamtype 00.
av_offset=0 pts
spu_offset=0 pts
xine_play
play_internal ...done
video_out: throwing away image with pts 4626895 because it's too old (diff : 1083078).
video_out: throwing away image with pts 4629895 because it's too old (diff : 1080078).
video_out: throwing away image with pts 4632895 because it's too old (diff : 1077078).
video_out: throwing away image with pts 4635895 because it's too old (diff : 1074078).
video_out: throwing away image with pts 4638895 because it's too old (diff : 1071078).
video_out: throwing away image with pts 4641895 because it's too old (diff : 1068078).
video_out: throwing away image with pts 4644895 because it's too old (diff : 1065078). -
мой баг репорт не подтвердился. У другого юзера coreavc for linux c xine 1.1.2 проиграл файлы, который у меня не пошли. Так что надо видимо пересобрать все. Прошу откликнуться счастливчиков, у которых все пучком.
-
А для xine 1.2 нету патчей? неохота пересобирать, да и работает все вроде нормально на ней..
-
про патчи для 1.2 не слышал. Кстати, ты не в курсе - что такое и зачем нужен dshowserver ?
-
насколько я понял - ни mplayer, ни xine его не используют - только myth - там он как-то работает..
-
Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.
Цитата
I have also found a (crude) solution to using 32bit Windows codecs on
x86_64 systems. I have created a 'dshowserver' app which can be built
statically and use shared-memory to pass relevant info back-and-forth to
the player (which can thus be compiled for the native platform). I
haven't yet created the patch to use it with mplayer (though it should
be ready soon), but it works fine with MythTV. It also isn't limited to
CoreAVC; and win32 video codec should work with it. I did not implement
dmo or Audio codec support though it wouldn't be hard.я так понял dshowserver нужен для x86_64 систем , чтобы использовать 32bit coreavc. Кстати, может быть автор выпустит версию для xine тоже (для мплeера уже тестируется)
Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу. -
Не, он про то, что статик-версия сервера будет работать под 64-х битными системами, что позволит использовать coreavc-32 и т.д. - все это для myth
-
SVN R48 (updated xine support)
Цитата
Alan NisotaI've added initial xine support using the dshowserver. This is the only
method I will support going forward. Note that it is still
experimental, but I'll get the rough edges off pretty soon. Feedback is
welcome of course. There is a new Wiki page detailing installation as well.It should work with 64-bit xine (if yu download the 32bit dshowserver)
I've tried it using QT/AVC1, MPEG2-TS/H264 and MKV/H264.
The old patch had support for some other demuxers (namely demux_mpeg.c)
which I haven't implemented because I don't have any example streams.автор добавил поддержку xine для coreavc с использованием dschowserver
XineInstall
Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.