2

ここで文字列をエンコードする正しい方法を見つけようとしています。クラウドフロント インストール (つまり、S3 バケット) に、特殊文字を含むフォルダーがあります。

プレイリスト/メデュラ/file.m4a

これを使おうとすると:

playlist: [{file: "rtmp://MYCLOUDFRONTDISTRO/cfx/st/mp4:playlists/Medúlla/myfile.m4a"}],

jwplayerプレイリストで、jWPlayerでプレイリストエントリを正しくエンコードするにはどうすればよいですか? (できれば、出力を取得する前に ColdFusion で)。を使用するurlEncodedFormat()と、すべてがエンコードされます。特殊文字に何かをする必要があるだけのようですが、を(そしてどのように) 解決できません。

補足として、このjavascript構成にUTF8文字がある場合を除いて、すべてが完全に機能します。

アップデート:

これを絞り込みました: HTML をハードコードすると、正常に動作します。プレイリストを ColdFusion 変数に保存し、その変数を JS 構成で出力すると、機能しません。

JWPlayer が動作するときのコンソール デバッグは次のとおりです。

JWPLAYERREADY ([PlayerEvent type="jwplayerReady" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115" message="null"])

JWPLAYERPLAYLISTLOADED ([PlaylistEvent type="jwplayerPlaylistLoaded" index="0" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115" message="null"])

JWPLAYERPLAYLISTITEM ([PlaylistEvent type="jwplayerPlaylistItem" index="0" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115" message="null"])

LOG (タイプのディスパッチ キャプション イベント: jwplayerCaptionsList)

JWPLAYERCAPTIONSLIST ([CaptionsEvent type="jwplayerCaptionsList" track="[オブジェクト オブジェクト]" currentTrack="0" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115"])

LOAD (PlaylistItem をロード中: [PlaylistItem file=rtmp://MYCLOUDFRONTURL/cfx/st/mp4:playlists/Róisín Murphy/Overpowered/10 Tell Everyone.m4a provider=rtmp level=0])

JWPLAYERMEDIABEFOREPLAY ([MediaEvent type="jwplayerMediaBeforePlay" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115"])

JWPLAYERMEDIALEVELS ([MediaEvent type="jwplayerMediaLevels" levels="[object Object]" currentQuality="0" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115"])

JWPLAYERMEDIALOADED ([MediaEvent type="jwplayerMediaLoaded" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115"])

JWPLAYERPLAYERSTATE ([PlayerStateEvent type="jwplayerPlayerState" oldstate="IDLE" newstate="BUFFERING" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115" message="null"])

JWPLAYERMEDIABUFFERFULL ([MediaEvent type="jwplayerMediaBufferFull" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115"])

JWPLAYERMEDIAMETA ([MediaEvent type="jwplayerMediaMeta" screenwidth="0" transitioning="false" bufferfill="0" bandwidth="0" qualitylevel="0" id="gwsPlayer" client="FLASH WIN 11,5,502,149" バージョン = "6.2.3115"])

JWPLAYERMEDIAMETA ([MediaEvent type="jwplayerMediaMeta" audiochannels="2" audiosamplerate="44100" tags="" audiocodecid="mp4a" type="metadata" trackinfo="[object Object]" duration="231.48" aacaot="2 " moovPosition="40" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115"])

LOG (タイプのディスパッチ キャプション イベント: jwplayerCaptionsList)

JWPLAYERCAPTIONSLIST ([CaptionsEvent type="jwplayerCaptionsList" track="[オブジェクト オブジェクト]" currentTrack="0" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115"])

JWPLAYERPLAYERSTATE ([PlayerStateEvent type="jwplayerPlayerState" oldstate="BUFFERING" newstate="PLAYING" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115" message="null"])

JWPLAYERMEDIATIME ([MediaEvent type="jwplayerMediaTime" duration="231.48" position="0" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115"])

JWPLAYERMEDIAMETA ([MediaEvent type="jwplayerMediaMeta" screenwidth="0" transitioning="false" bufferfill="1.5" bandwidth="2037" qualitylevel="0" id="gwsPlayer" client="FLASH WIN 11,5,502,149" バージョン = "6.2.3115"])

JWPLAYERMEDIATIME ([MediaEvent type="jwplayerMediaTime" duration="231.48" position="0.1" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115"])

JWPLAYERMEDIAMETA ([MediaEvent type="jwplayerMediaMeta" screenwidth="0" transitioning="false" bufferfill="2" bandwidth="2037" qualitylevel="0" id="gwsPlayer" client="FLASH WIN 11,5,502,149" バージョン = "6.2.3115"])

JWPLAYERMEDIATIME ([MediaEvent type="jwplayerMediaTime" duration="231.48" position="0.3" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115"])
--省略--

同一のHTML を使用するが、CF 経由で出力する

JWPLAYERREADY

([PlayerEvent type="jwplayerReady" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115" message="null"])

JWPLAYERPLAYLISTLOADED ([PlaylistEvent type="jwplayerPlaylistLoaded" index="0" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115" message="null"])

JWPLAYERPLAYLISTITEM ([PlaylistEvent type="jwplayerPlaylistItem" index="0" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115" message="null"])

LOG (タイプのディスパッチ キャプション イベント: jwplayerCaptionsList)

JWPLAYERCAPTIONSLIST ([CaptionsEvent type="jwplayerCaptionsList" track="[オブジェクト オブジェクト]" currentTrack="0" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115"])

LOAD (PlaylistItem をロード中: [PlaylistItem file=rtmp://MYCLOUDFRONTURL/cfx/st/mp4:playlists/Róisín Murphy/Overpowered/10 Tell Everyone.m4a provider=rtmp level=0])

JWPLAYERMEDIABEFOREPLAY ([MediaEvent type="jwplayerMediaBeforePlay" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115"])

JWPLAYERMEDIALEVELS ([MediaEvent type="jwplayerMediaLevels" levels="[object Object]" currentQuality="0" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115"])

JWPLAYERMEDIALOADED ([MediaEvent type="jwplayerMediaLoaded" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115"])

JWPLAYERPLAYERSTATE ([PlayerStateEvent type="jwplayerPlayerState" oldstate="IDLE" newstate="BUFFERING" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115" message="null"])

JWPLAYERMEDIABUFFERFULL ([MediaEvent type="jwplayerMediaBufferFull" id="gwsPlayer" client="FLASH WIN 11,5,502,149" version="6.2.3115"])

JWPLAYERMEDIAMETA ([MediaEvent type="jwplayerMediaMeta" transitioning="false" qualitylevel="0" screenwidth="0" bandwidth="0" bufferfill="0" id="gwsPlayer" client="FLASH WIN 11,5,502,149" バージョン = "6.2.3115"])

JWPLAYERMEDIAMETA ([MediaEvent type="jwplayerMediaMeta" transitioning="false" qualitylevel="0" screenwidth="0" bandwidth="0" bufferfill="0" id="gwsPlayer" client="FLASH WIN 11,5,502,149" バージョン = "6.2.3115"])

- をちょきちょきと切る -

4

1 に答える 1

0

最終的に私自身の答えを見つけました:データがどのようにインポートされているかをもっと詳しく調べるべきだったのに、出力に集中しすぎていました.CFFILEアップロードを使用してから読み取ると、あらゆる種類のエンコーディングの問題が発生する可能性があります. ファイルのアップロードの代わりにテキストフィールドを使用するだけで問題を修正しました。データベースに保存されているエンコーディングは問題ありませんでした。汚染されたデータですべてのテストを行っていました。ため息

教訓、次に進みます... :)

于 2013-05-10T07:55:38.337 に答える